def test_positions_and_heights(self): x = np.array((0, 1, 1.5, 2, 3)) h = 2 * x t = NonuniformLineScan(x, h) assert_array_equal(t.heights(), h) assert_array_equal(t.positions(), x) x2, h2 = t.positions_and_heights() assert_array_equal(x2, x) assert_array_equal(h2, h)
def test_nonuniform2(self): x = np.array((1, 2, 3)) y = 2 * x surf = NonuniformLineScan(x, y) self.assertFalse(surf.is_uniform) self.assertEqual(surf.dim, 1) der = surf.derivative(n=1) assert_array_equal(der, [2, 2]) der = surf.derivative(n=2) assert_array_equal(der, [0]) surf = surf.detrend(detrend_mode='height') self.assertFalse(surf.is_uniform) self.assertEqual(surf.dim, 1) der = surf.derivative(n=1) assert_array_equal(der, [0, 0]) assert_array_equal(surf.heights(), np.zeros(y.shape)) p = surf.positions_and_heights() assert_array_equal(p[0], x) assert_array_equal(p[1], np.zeros(y.shape))