Questo sito contribuisce alla audience di

Risoluzione di sistemi di equazioni lineari

Come faccio a risolvere un sistema di due equazioni in due incognite con l'utilizzo della scrittura in M-File in MATLAB


In questa lezione impareremo a risolvere un sistema di equazioni lineari con matlab. Supponiamo di integrare un sistema di N×N equazione e cioè un sistema di N equazione in N incognite, ed indichiamo con A la matrice dei coefficienti delle incognite e con B in vettore contenente i termini noti; ad esempio se il sistema è il seguente:
2x+3y=11
x +5y=16

allora sarà:

A=[2 3;1 5];
B=[11 16];

Il sistema precedente in notazione matriciale viene indicato come:

A * X = B

dove X rappresenta il vettore soluzione.
La soluzione del sistema precedente è data da:

X = inv(A)*B;

L’m-file che effettua tale operazione è riportato di seguito:

%———————————————————–
%Soluzione di un sistema lineare a Cura di Giuseppe Ciaburro
%———————————————————–
%Sia A la matrice dei coefficienti delle incognite e
%B il vettore termine noti
%Bisogna prima immettere nel promt di matlab A e B
%Valutiamo l’inversa di A
C=inv(A);
%Determiniamo la trasposta
C=C’;
%Calcoliamo il vettore soluzione
X=B*C;
disp(’Il vettore delle soluzioni è’)
X

Come si vede è necessario effettuare la trasposta della matrice inversa perchèmatlab esegue solo il prodotto di un vettore per una matrice e non il prodottodi una matrice per un vettore .Effettuiamo allora tali calcoli con matlab:

C=inv(A)
C =
0.7143 -0.4286
-0.1429 0.2857

effettuiamone la trasposta:

C=C’
C =
0.7143 -0.1429
-0.4286 0.2857

Calcoliamo infine il vettore soluzione:

X=B*C
X =
1.0000 3.0000

PER APPROFONDIRE L’ARGOMENTO CLICCA SUI SEGUENTI LINK:

- Sistemi lineari overdetermined

- ALGORITMO DI GAUSS-JORDAN

- Come utilizzare Matlab nell’algebra lineare

- Algebra lineare numerica

- Modulo di geometria analitica della retta

-