Vai al contenuto

Informatica 5 Liceo Scientifico Scienze Applicate/Sistema di equazioni lineari

Wikibooks, manuali e libri di testo liberi.
Indice del libro

Risoluzione di un sistema di equazioni lineari

[modifica | modifica sorgente]

E' possibile calcolare le soluzioni di un sistema di equazioni lineari rappresentandolo in forma matriciale e risolvendolo tramite programmi matematici come Octave o tramite un comune foglio di calcolo. Risolvere un sistema di equazioni lineari risulta così un'operazione estremamente semplice e veloce.

Quando si studiano i primi circuiti resistivi in elettronica o in fisica
CircuitoResistivo
per risolverli e trovare le correnti nei diversi rami bisogna risolvere un sistema di equazioni lineari; quando si ha una reazione chimica
formula
e si vuole determinare le quantita' di sostanze da impiegare come reagenti per ottenere un certo quantitativo di prodotto finale si può riformulare il tutto scrivendo un sistema di equazioni lineari.


Introduzione teorica sulla risoluzione di un sistema

Dato un sistema di equazioni lineari del tipo:



si consideri la matrice A contenente i coefficienti delle incognite del sistema, il vettore b contenente i termini noti del sistema ed il vettore x contenente le incognite del sistema stesso.
La formula per la risoluzione del sistema risulta:



Quindi, per il calcolo matriciale(la proprietà commutativa in generale non vale per il prodotto tra matrici):





Risoluzione di un sistema di equazioni lineari con Octave

Si consideri il sistema di equazioni seguente come esempio da risolvere:



Inseriamo su Octave la matrice A contenente i coefficienti delle incognite del sistema digitando A=[1 -4 -3 ;6 1 -1;1 3 2 ], ed il vettore b contenente i termini noti con l'istruzione b=[2;7;8] in questo caso gli elementi del vettore b devono essere disposti su una colonna:
e creiamo la matrice C inversa di A digitando C=inv(A)
Infine, per ottenere i valori delle incognite sotto forma di vettore x, sfruttando la formula di risoluzione del sistema, digitiamo x=C*b
Il programma scritto in Octave e' allora

A=[1 -4 -3; 6 1 -1; 1 3 2]
b=[2 ;7 ;8]
C=inv(A)
x=C*b

e dalla sua esecuzione si ottiene

A=  1 -4  -3
    6  1  -1
    1  3   2
b= 2
   7 
   8
C=  0.83  -0.16   1.16
   -2.16   0.83  -2.83
    2.83   1.16  -4.16
x=   9.83
   -21.1
    30.8 



Risoluzione di un sistema di equazioni lineari con un foglio elettronico

Anche con un foglio elettronico è possibile risolvere sistemi con procedure simili a quelle illustrate per Octave. Le matrici ed i vettori andranno in questo caso inseriti nelle celle del foglio di calcolo (nel nostro caso OpenOffice Calc)

Inseriamo nel blocco di celle B3:D5 i coefficienti delle incognite, nelle celle G3:G5 i termini noti, calcoliamo l'inversa selezionando il blocco di celle B9:D11 e scriviamo la formula =MINVERS(B3:D5) e poi invece di premere Invio premiamo ctrl+shift+invio : la formula scritta prima compare fra parentesi graffe e nelle celle B9:D11 compare la matrice inversa; a questo punto selezioniamo tre celle (in colonna ), ad esempio B16:B18, e scriviamo la formula =MMULT(B9:D11;G3:G5). Premiamo ctrl+shift+invio e ci compare il risultato.