Eliminazione di Gauss

Maple può eseguiore il processo di eliminazione di Gauss per calcolare una riduzione a gradini di una matrice, con il comando gausselim

> A:=randmatrix(5,9);

> gausselim(A);

contando i pivots della riduzione a scala si ottiene quindi il rango della matrice. Ciò poteva essere ottenuto anche con l'istruzione rank :

> rank(A);

A partire da una ridotta a scala di una matrice, si può, ancora con operazioni di riga, far sì che i pivot diventino tutti 1 e che anche al di sopra dei pivot ci siano tutti 0. Questo procedimento, noto con il nome di riduzione a forma di Gauss-Jordan, può essere effettuato direttamente con il comando gaussjord

> gaussjord(A);

Esempio

Esempio

Consideriamo la seguente matrice

> A := matrix(5,8,
[
88, -28, 32, 292, -82, 58, 554, -3120,
1, 4, 9, -1, -48, -94, -282, 1135,
30, -11, 8, 101, -11, -68, -73, -22,
81, 10, 101, 233, 38, 14, 356, -2113,
-5, 57, 109, -72, -7, -35, -182, 1001
]):

e calcoliamone il rango

> rank(A);

in effetti, se eseguiamo l'eliminazione di Gauss e la riduzione in forma di Gauss-Jordan si ottiene:

> gausselim(A);

> gaussjord(A);

Risolvendo con linsolve il sistema lineare omogeneo associato alla matrice A , si ottiene l'insieme di soluzioni

> soluzioni := linsolve(A,vector(5,0));

che è parametrizzato da 4 variabili libere _t[1] , _t[2] , _t[3] , _t[4] .

> x[1] = soluzioni[1];
x[2] = soluzioni[2];
x[3] = soluzioni[3];
x[4] = soluzioni[4];
x[5] = soluzioni[5];
x[6] = soluzioni[6];
x[7] = soluzioni[7];
x[8] = soluzioni[8];

>