Example #1
0
    def setUp(self):
        self.adims = (aobj.DimSweep("f", 1),
                      aobj.DimMatrix_i("i", 2),
                      aobj.DimMatrix_j("j", 2))
        self.a = aobj.hfarray([[[0, 0j], [0, 0]]], dims=self.adims)
        self.bdims = (aobj.DimSweep("f", 10),
                      aobj.DimMatrix_i("i", 2),
                      aobj.DimMatrix_j("j", 2))
        self.b = aobj.hfarray(np.array([[[1, 2 + 0j], [3, 4]]]) +
                              np.arange(10)[:, newaxis, newaxis],
                              dims=self.bdims)

        self.c, = aobj.make_same_dims_list([random_value_array(4, 5)])
        self.cdims = self.c.dims
        self.ddims = self.bdims
        self.d = aobj.hfarray(np.array([[[1, 2], [3, 4]]]) +
                              np.arange(10)[:, newaxis, newaxis],
                              dims=self.ddims)

        self.i1 = i1 = aobj.DimSweep("i1", 1)
        self.i2 = i2 = aobj.DimSweep("i2", 1)
        self.i3 = i3 = aobj.DimSweep("i3", 1)
        self.i4 = i4 = aobj.DimSweep("i4", 1)
        self.i5 = i5 = aobj.DimSweep("i5", 1)
        self.fi = fi = aobj.DimSweep("f", 2),
        self.gi = gi = aobj.DimSweep("g", 3),

        self.e = aobj.hfarray(np.zeros((1, 2, 3)), dims=(i1, fi, gi))
        self.f = aobj.hfarray(np.zeros((2, 3, 1)), dims=(fi, gi, i1))
        self.g = aobj.hfarray(np.zeros((1, 2, 3, 1)), dims=(i2, fi, gi, i1))
        dims = (i2, fi, i3, gi, i1)
        self.h = aobj.hfarray(np.zeros((1, 2, 1, 3, 1)), dims=dims)
        dims = (i4, i5)
Example #2
0
 def test_defaults(self):
     v = random_value_array(4, 5)
     a = np.array(v)
     r1 = getattr(v, self.methodname)()
     r2 = getattr(a, self.methodname)()
     r1.verify_dimension()
     self.assertTrue(np.allclose(r1, r2))
     self.assertIsInstance(r1, v.__class__)
Example #3
0
 def test_1(methodname="argsort", **kw):
     v = random_value_array(4, 5)
     a = np.array(v)
     for i in range(v.ndim):
         r1 = getattr(a, methodname)(axis=i, **kw)
         r2 = getattr(v, methodname)(axis=i, **kw)
         print(i, np.allclose(r1, r2), isinstance(r2, v.__class__))
     return v, a
Example #4
0
 def test_axis_none(self):
     v = random_value_array(4, 5)
     a = np.array(v)
     args = self.kw.copy()
     args.update(axis=None)
     r1 = getattr(v, self.methodname)(**args)
     r2 = getattr(a, self.methodname)(**args)
     r1.verify_dimension()
     self.assertTrue(np.allclose(r1, r2))
     self.assertIsInstance(r1, v.__class__)
Example #5
0
    def test_1(self):
        v = random_value_array(4, 5, minsize=2)
        a = np.array(v)

        args = self.kw.copy()
        for i in range(v.ndim):
            r1 = getattr(v, self.methodname)(axis=i, **args)
            r2 = getattr(a, self.methodname)(axis=i, **args)
            r1.verify_dimension()
            self.assertTrue(np.allclose(r1, r2))
            self.assertIsInstance(r1, v.__class__)
Example #6
0
 def test_4(self):
     a = random_value_array(3, 5)
     self.assertRaises(aobj.HFArrayShapeDimsMismatchError,
                       aobj.make_vector, np.array(a), a.dims[:0])
Example #7
0
 def test_1(self):
     a = random_value_array(3, 5)
     m = aobj.make_vector(np.array(a), a.dims[:-1])
     self.assertAllclose(m, a)
     self.assertEqual(m.dims[-1:], (ds.DimMatrix_j("j", a.shape[-1]),))
Example #8
0
 def test_3(self):
     a = random_value_array(3, 5)
     self.assertRaises(aobj.HFArrayShapeDimsMismatchError,
                       aobj.make_matrix, np.array(a), a.dims[:3])
Example #9
0
 def test_1(self):
     a = random_value_array(3, 5)
     m = aobj.make_matrix(np.array(a), a.dims[:-2])
     self.assertAllclose(m, a)
     self.assertEqual(m.dims[-2:], (ds.DimMatrix_i("i", a.shape[-2]),
                                    ds.DimMatrix_j("j", a.shape[-1])))
Example #10
0
 def test_error_2(self):
     v = random_value_array(4, 5)
     self.assertRaises(IndexError, getattr(v, self.methodname), (0, 1))
Example #11
0
 def test_error_1(self):
     v = random_value_array(4, 5)
     self.assertRaises(aobj.HFArrayError, getattr(v, self.methodname),
                       None)
Example #12
0
 def test_index_error_dont_raise(self):
     v = random_value_array(4, 5, minsize=2)
     method = getattr(v, self.methodname)
     q = method("NONEXISTING", dimerror=False)
     self.assertAllclose(q, v)
Example #13
0
 def test_index_error(self):
     v = random_value_array(4, 5, minsize=2)
     method = getattr(v, self.methodname)
     self.assertRaises(IndexError, method, "NONEXISTING")
Example #14
0
 def test_3(self):
     v, = aobj.make_same_dims_list([random_value_array(4, 5)])
     a = np.array(v)
     facit = np.sqrt((abs(a) ** 2).sum(1))
     res = v.rss(1)
     self.assertAllclose(res, facit)