Maxima peut calculer le déterminant, l'inverse, les valeurs propres et les vecteurs propres d'une matrice qui comporte des éléments symboliques ( c'est à dire des expressions avec des variables algébriques ). On commence par entrer une matrice élément par élément :
maxima] m:entermatrix(3,3);
Is the matrix 1. Diagonal 2. Symmetric 3. Antisymmetric 4. General
Answer 1, 2, 3 or 4 : 4;
Row 1 Column 1: 0;
Row 1 Column 2: 1;
Row 1 Column 3: a;
Row 2 Column 1: 1;
Row 2 Column 2: 0;
Row 2 Column 3: 1;
Row 3 Column 1: 1;
Row 3 Column 2: 1;
Row 3 Column 3: 0;
Matrix entered.
On calcule ensuite sa transposée, son déterminant et son inverse :
maxima] transpose(m);
(C23) determinant(m);
(C24) invert(m),detout;
Dans l'entrée C24, l'option detout impose la factorisation par le déterminant, ce dernier restant à l'extérieur de la matrice. Comme vérification, on peut multiplier par son inverse ( remarquer l'usage du point (.) pour désigner le produit matriciel ) :
maxima] m.d24;
(C26) expand(%)
(C27) factor(%)
Pour trouver valeurs et vecteurs propres, on utilise la commande EIGENVECTORS :
maxima] eigenvectors(m);
Warning - you are redefining the MACSYMA function EIGENVALUES
Warning - you are redefining the MACSYMA function EIGENVECTORS
Dans l'expression D28, le premier crochet à l'intérieur du triple crochet donne les trois valeurs propres, le suivant leur ordre de multiplicité respectifs, et les crochets suivants fournissent les coordonnées des vecteurs propres associés aux valeurs propres. Afin d'extraire un vecteur propre de l'expression précédente, on utilise la commande PART :
maxima] part(D28,2);