next up previous contents
Next: Graphics Up: Axiom Previous: Substitutions - pattern matching

Matrices

 

In Axiom

For comparison with other CAS choose from: Derive Macsyma Maple Mathematica Reduce

xx:= matrix([[a11, a12], [a21, a22]])

    +a11  a12+
    |        |
    +a21  a22+
                                              Type: Matrix Polynomial Integer
yy:= matrix([[y1], [y2]])
    +y1+
    |  |
    +y2+
                                              Type: Matrix Polynomial Integer
determinant xx
    a11 a22 - a12 a21
                                                     Type: Polynomial Integer
zz:= inverse(xx)*yy
    +- a12 y2 + a22 y1+
    |-----------------|
    |a11 a22 - a12 a21|
    |                 |
    | a11 y2 - a21 y1 |
    |-----------------|
    +a11 a22 - a12 a21+
                                     Type: Matrix Fraction Polynomial Integer
inverse(xx)**2
   [
                     2
                  a22  + a12 a21
     [--------------------------------------,
         2   2                         2   2
      a11 a22  - 2a11 a12 a21 a22 + a12 a21
               - a12 a22 - a11 a12
      --------------------------------------]
         2   2                         2   2
      a11 a22  - 2a11 a12 a21 a22 + a12 a21
     ,

               - a21 a22 - a11 a21
     [--------------------------------------,
         2   2                         2   2
      a11 a22  - 2a11 a12 a21 a22 + a12 a21
                               2
                  a12 a21 + a11
      --------------------------------------]
         2   2                         2   2
      a11 a22  - 2a11 a12 a21 a22 + a12 a21
     ]
                                     Type: Matrix Fraction Polynomial Integer
v := matrix([[2, -1, 1], [0, 1, 1], [-1, 1, 1]])
    + 2   - 1  1+
    |           |
    | 0    1   1|
    |           |
    +- 1   1   1+
                                                         Type: Matrix Integer
eigenvectors v
                                   +0+                                  +1+
                                   | |                                  | |
   [[eigval= 2,eigmult= 1,eigvec= [|1|]],[eigval= 1,eigmult= 2,eigvec= [|1|]]]
                                   | |                                  | |
                                   +1+                                  +0+
Type: List Union(Record(algrel: Fraction Polynomial Integer,algmult: Integer,algvec: List Matrix Fraction Polynomial Integer),Record(eigval: Fraction Polynomial Integer,eigmult: Integer,eigvec: List Matrix Fraction Polynomial Integer))



Richard Liska