def testcreation2(self):
        a=g.symbol("a")
        b=g.symbol("b")
        x=g.symbol("x")
        y=g.symbol("y")
        m=g.matrix([[a,0],[0,b]])
        self.assertEqual(repr(m),"[[a,0],[0,b]]")
        self.assertNotEqual(repr(m),"[[a,1],[0,b]]")
        m=g.matrix([[0,0],[0,0]])
        self.assertEqual(repr(m),"[[0,0],[0,0]]")
        m[0,0]=a
        self.assertEqual(repr(m),"[[a,0],[0,0]]")
        m[1,1]=b
        self.assertEqual(repr(m),"[[a,0],[0,b]]")
        self.assertNotEqual(repr(m),"[[a,0],[b,0]]")
        self.assertEqual(m[0,0],a)
        self.assertNotEqual(m[0,0],b)
        self.assertEqual(m[0,1],0)
        self.assertNotEqual(m[0,1],b)
        self.assertEqual(m[1,1],b)
        self.assertNotEqual(m[1,1],0)

        M=g.matrix
        m[0,1]=a
        self.assertEqual(m,M([[a,a],[0,b]]))
        m[0,1]=b
        self.assertEqual(m,M([[a,b],[0,b]]))
        m[0,1]=b*a
        self.assertEqual(m,M([[a,a*b],[0,b]]))
예제 #2
0
 def __init2__(self, l, symbs=None, time=None):
     self.i = len(l)
     self.j = len(l[0])
     self.data = _g.matrix(l)
     self.spatial_symbs = symbs
     self.time = time
     if not symbs:
         self.symbs = range(self.j)
     self._lhs = []
예제 #3
0
 def __init2__(self, l, symbs=None, time=None):
     self.i = len(l)
     self.j = len(l[0])
     l = [[_toex(x) for x in sl] for sl in l] #Convert to nested list of swiginac types
     self.data = _g.matrix(l)
     self.spatial_symbs = symbs
     self.time = time
     if not symbs:
         self.symbs = range(self.j)
     self._lhs = []
예제 #4
0
 def __init1__(self, i, j, symbs=None, time=None):
     self.i = i; self.j = j
     self.data = _g.matrix(i, j)
     self.spatial_symbs = symbs
     self.time = time
     if not symbs:
         self.symbs = range(self.j)
     for i in range(self.i):
         for j in range(self.j):
             self[i, j] = Expr()
     self._lhs = []