def test_initialisation_errors(self): expression = "x ** power" with pytest.raises(ValueError, match="Please provide"): self.axis = FunctionalDataAxis( expression=expression, power=2,) with pytest.raises(ValueError, match="The values of"): self.axis = FunctionalDataAxis( size=10, expression=expression,)
def test_check_axes_calibration(): axisDA1 = DataAxis(axis=arange(10)**2) axisDA2 = DataAxis(axis=arange(10)) axisDA3 = DataAxis(axis=arange(10), units='s') axisDA4 = DataAxis(axis=arange(10), units='seconds') expression = "x ** power" axisFDA1 = FunctionalDataAxis(size=10, expression=expression, power=2) axisFDA2 = FunctionalDataAxis(size=12, expression=expression, power=2) axisUDA1 = UniformDataAxis(size=10, scale=1, offset=10) axisUDA2 = UniformDataAxis(size=10, scale=1, offset=0) assert check_axes_calibration(axisDA1, axisDA1) assert not check_axes_calibration(axisDA1, axisDA2) assert check_axes_calibration(axisDA3, axisDA4) assert check_axes_calibration(axisFDA1, axisFDA1) assert not check_axes_calibration(axisFDA1, axisFDA2) assert check_axes_calibration(axisUDA1, axisUDA1) assert not check_axes_calibration(axisUDA1, axisUDA2) assert not check_axes_calibration(axisDA1, axisUDA1) assert not check_axes_calibration(axisFDA1, axisUDA1) assert check_axes_calibration(axisDA1, axisFDA1) assert check_axes_calibration(axisDA2, axisUDA2)
def test_nonuniformFDA(tmp_path, file, lazy): fname = tmp_path / file data = np.arange(10) x0 = UniformDataAxis(size=data.size, offset=1) axis = FunctionalDataAxis(expression='1/x', x=x0, navigate=False) s = Signal1D(data, axes=(axis.get_axis_dictionary(), )) if lazy: s = s.as_lazy() print(axis.get_axis_dictionary()) s.save(fname, overwrite=True) s2 = load(fname) np.testing.assert_array_almost_equal(s.axes_manager[0].axis, s2.axes_manager[0].axis) assert (s2.axes_manager[0].is_uniform == False) assert (s2.axes_manager[0].navigate == False) assert (s2.axes_manager[0].size == data.size)
def setup_method(self, method): expression = "a / (x + 1) + b" self.axis = FunctionalDataAxis(size=10, expression=expression, a=0.1, b=10)
def test_update_from(self): ax2 = FunctionalDataAxis(size=2, units="nm", expression="x ** power", power=3) self.axis.update_from(ax2, attributes=("units", "power")) assert ((ax2.units, ax2.power) == (self.axis.units, self.axis.power))
def setup_method(self, method): expression = "x ** power" self.axis = FunctionalDataAxis( size=10, expression=expression, power=2,)