Una matrice è in forma Row Echelon se ha le seguenti proprietà:
invertendo la stringa in Java
- Qualsiasi riga composta interamente da zeri si trova nella parte inferiore della matrice.
- Per ogni riga che non contiene interamente zeri, la prima voce diversa da zero è 1 (chiamata 1 iniziale).
- Per due righe successive (diverse da zero), l'1 iniziale nella riga superiore è più a sinistra di quello iniziale nella riga inferiore.
Per la forma a scaglioni di riga ridotta, l'1 iniziale di ogni riga contiene 0 sotto e sopra in quella colonna.
Di seguito è riportato un esempio di forma a scaglioni:
e forma ridotta a scaglioni:
Qualsiasi matrice può essere trasformata in una forma a scaglioni di righe ridotte, utilizzando una tecnica chiamata eliminazione gaussiana. Ciò è particolarmente utile per risolvere sistemi di equazioni lineari.
Eliminazione gaussiana
L'eliminazione gaussiana è un modo per convertire una matrice nella forma a scaglioni di righe ridotte. Può anche essere usato come un modo per trovare una soluzione a una soluzione al sistema di equazioni lineari. L'idea alla base di ciò è che eseguiamo alcune operazioni matematiche sulla riga e continuiamo finché non rimane una sola variabile.
Di seguito sono elencate alcune operazioni che possiamo eseguire:
conversione della data in stringa
- Scambia due righe qualsiasi
- Aggiungi due righe insieme.
- Moltiplica una riga per una costante diversa da zero (ad esempio 1/3, -1/5, 2).
Data la seguente equazione lineare:
e la matrice aumentata sopra
Ora dobbiamo convertirlo nella forma a scaglioni. Per convertirlo nella forma a scaglioni, dobbiamo eseguire l'eliminazione gaussiana.
- Per prima cosa dobbiamo sottrarre 2*r1dalla r2e 4*r1dalla r3per ottenere lo 0 al primo posto di r2E R3.
- Successivamente, scambieremo le righe, r2 e r3 e successivamente sottrarremo 5*r2da r3per ottenere il secondo 0 nella terza riga.
- Ora possiamo dedurne il valore Con da r3,cioè 10 z =0 ⇾ z=0. Con l'aiuto del valore di z = 0, possiamo metterlo in r2, y = 2. Allo stesso modo, possiamo mettere il valore di y e z in r1e otteniamo un valore di x=3
Rango della matrice
Il rango della matrice è il numero di righe diverse da zero nella forma a scaglioni di riga. Per trovare il rango, dobbiamo eseguire i seguenti passaggi:
- Trova la forma a scaglioni della matrice data
- Contare il numero di righe diverse da zero.
Prendiamo una matrice di esempio:
esempio di classe Java
Ora riduciamo la matrice sopra alla forma a scaglioni
Qui, solo due righe contengono elementi diversi da zero. Quindi il rango della matrice è 2.
Implementazione
- Per convertire una matrice in una forma ridotta a scaglioni di righe, abbiamo utilizzato il pacchetto Sympy in Python, dobbiamo prima installarlo.
python3
# install sympy> ! pip install sympy> # import sympy> import> sympy> # find the reduced row echelon form> sympy.Matrix([[> 4> ,> 0> ,> 1> ],[> 2> ,> 0> ,> 2> ],[> 3> ,> 0> ,> 3> ]]).rref()> # find the rank of matrix> print> ('Rank of matrix :',sympy.Matrix([[> 4> ,> 0> ,> 1> ],[> 2> ,> 0> ,> 2> ],[> 3> ,> 0> ,> 3> ]]).rank())> |
>
>
Produzione:
(Matrix([ [1, 0, 0], [0, 0, 1], [0, 0, 0]]), (0, 2)) Rank of matrix : 2>