Ejemplo n.º 1
0
 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,)
Ejemplo n.º 2
0
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)
Ejemplo n.º 3
0
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)
Ejemplo n.º 4
0
 def setup_method(self, method):
     expression = "a / (x + 1) + b"
     self.axis = FunctionalDataAxis(size=10, expression=expression,
                                    a=0.1, b=10)
Ejemplo n.º 5
0
 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))
Ejemplo n.º 6
0
 def setup_method(self, method):
     expression = "x ** power"
     self.axis = FunctionalDataAxis(
         size=10,
         expression=expression,
         power=2,)