Come implementare la risoluzione di sistemi di equazioni in Matlab

di Marco Capitano tramite: O2O difficoltà: facile

Si inizia a sentir parlare di equazioni già a partire dalla scuola secondaria di primo grado, durante le lezioni di matematica e di sistemi. Come si può immaginare, saper risolvere un'equazione è fondamentale per risolvere sistemi. Infatti un sistema di equazioni lineari si presenta, ad esempio, come un insieme di due o più equazioni nelle variabili x e y, che sono le variabili di cui si vuole determinare il valore e che devono soddisfarle contemporaneamente. Esistono tra l'altro vari metodi di risoluzione per i sistemi di equazioni. Tra i più noti ricordiamo il metodo di sostituzione, il metodo del confronto, di riduzione e il metodo di Cramer, che utilizza le nozioni dell'algebra matriciale, quali per esempio il calcolo del determinante. Per ovviare a questa difficoltà è utile implementare un programma con software matematici come il Matlab. Vediamo insieme come procedere.

Assicurati di avere a portata di mano: Basi di matematica Una versione di Matlab installata sul pc

1 Supponiamo di voler risolvere il seguente sistema di due equazioni in due incognite. Le incognite da determinare sono x e y. L'esito dell'esercizio ci darà quindi una coppia di numeri che verifica entrambe le equazioni del sistema. La risoluzione in matlab prevede la costruzione di due matrici in modo da poter scrivere il sistema nella seguente forma detta "matriciale": Ax = B. La matrice A sarà la matrice quadrata di tipo 2x2 dei coefficienti, il vettore x è il vettore delle incognite e il vettore B è il vettore dei termini noti (termini a destra dell'equazione privi della x e della y). La matrice A sarà composta dai numeri che moltiplicano la x disposti sulla prima riga e da quelli che moltiplicano la y sulla seconda riga.

2 In Matlab scrivete
1) la matrice A: A=[3 4;5 6]
2) il vettore B: B=[10;7].
Il punto e virgola nelle parentesi quadre indica che i coefficienti dopo di esso sono disposti su un'altra riga. Naturalmente potete dare un nome arbitrario alle matrici. A questo punto per concludere basta scrivere: 3) sol=inv (A)*B. Il comando inv sta ad indicare l'inversa di A. In alternativa potete utilizzare il comando A^-1 che da esattamente lo stesso risultato. Nel nostro caso la soluzione che il software presenterà nella command window sarà -16 e 14.5. Per verificare l'esattezza del calcolo basta sostituire i due valori nell'equazione e vedere se i risultati sono gli stessi dei termini noti.

Guarda il video:

Continua la lettura

3 Ovviamente lo stesso procedimento lo potete applicare a sistemi di più di due equazioni; se le equazioni sono tre, la matrice A sarà caratterizzata da tre righe e tre colonne e il vettore B avrà tre righe (e sempre una sola colonna).  Un modo veloce per verificare a priori che il sistema ammetta soluzione unica è calcolare il determinante di A con il seguente comando: det (A).  Approfondimento Appunti sui sistemi lineari (clicca qui) Se esso è diverso da zero, la matrice è invertibile.  Esisterà dunque una soluzione unica.

Non dimenticare mai: Esercitatevi con sistemi di piccole dimensioni e poi passate a quelli con più equazioni. Alcuni link che potrebbero esserti utili: Soluzione in Matlab di un sistema di equazioni MATLAB - Il linguaggio del calcolo tecnico Per iniziare - Manuale Matlab Risoluzione di sistemi di equazioni lineari Argomenti - Symbolic Math Toolbox - MathWorks Italia

Svolgere i sistemi lineari Come risolvere un sistema con la matrice inversa Il Teorema di Rouché-Capelli Come risolvere un sistema di tre equazioni

Il presente contributo è stato redatto dall'autore ivi menzionato a solo scopo informativo tramite l’utilizzo della piattaforma www.o2o.it e può essere modificato dallo stesso in qualsiasi momento. Il sito web, www.o2o.it e Banzai Media S.r.l., quale editore dello stesso, non garantiscono la veridicità, correttezza e completezza di tale contributo e, pertanto, non si assumono alcuna responsabilità in merito all’utilizzo delle informazioni ivi riportate. Per maggiori informazioni leggi il “Disclaimer»”.
Stampa la guida Segnala inappropriato
Devi inserire una descrizione del problema

Altri articoli