Calcolatore Sistemi Lineari (Cramer, Gauss-Jordan)

Calcolatore sistemi lineari A x = b: regola di Cramer, eliminazione di Gauss-Jordan, teorema Rouche-Capelli, sistemi sotto/sovra determinati e applicazioni.

Parametri di calcolo
Questo calcolatore ti è stato utile?

Sistemi lineari

Un sistema di equazioni lineari A x = b consiste di n equazioni in m incognite x_1, ..., x_m. In forma matriciale:

A x = b dove A e matrice n x m, x vettore m x 1, b vettore n x 1.

Risolvere il sistema significa trovare il vettore x che soddisfa tutte le equazioni simultaneamente. E uno dei problemi fondamentali dell algebra lineare con applicazioni in fisica, ingegneria, statistica, computer graphics.

Esempio numerico

Sistema 3x3:

2 x_1 + x_2 - x_3 = 8

-3 x_1 - x_2 + 2 x_3 = -11

-2 x_1 + x_2 + 2 x_3 = -3

Soluzione: x_1 = 2, x_2 = 3, x_3 = -1. Verificare: 2*2 + 3 - (-1) = 8 ok.

Regola di Cramer (sistemi quadrati)

Per A quadrata n x n con det(A) != 0:

x_i = det(A_i) / det(A)

dove A_i e la matrice ottenuta sostituendo la i-esima colonna di A con b. Esempio 2x2 con det(A) = ad - bc != 0: x_1 = (b_1 d - b_2 b) / det, x_2 = (a b_2 - c b_1) / det. Cramer (1750) elegantissimo ma costo O(n!) o O(n^4) con cofattori. Inefficiente per n > 4.

Eliminazione di Gauss-Jordan

Algoritmo standard per risolvere sistemi lineari arbitrari (anche non quadrati). Operazioni elementari su righe:

  1. Scambiare due righe.
  2. Moltiplicare una riga per scalare non zero.
  3. Sommare a una riga un multiplo di un altra riga.

Obiettivo: ridurre [A|b] in forma a scala ridotta (RREF, Reduced Row Echelon Form). Costo: O(n^3) flop (con pivot parziale per stabilità numerica). Standard in produzione (LAPACK).

Decomposizione LU

Variante di Gauss: A = L U dove L triangolare inferiore con 1 sulla diagonale, U triangolare superiore. Risoluzione in due passi: L y = b (forward sub), U x = y (backward sub). Vantaggio: per più vettori b, fattorizzare A una sola volta poi risolvere O(n^2) per ogni b. Variante PA = LU (con pivot) per stabilità.

Teorema di Rouche-Capelli

Caratterizzazione completa delle soluzioni:

  • Se rank(A) < rank(A|b): sistema INCONSISTENTE (no soluzione).
  • Se rank(A) = rank(A|b) = m (numero variabili): SOLUZIONE UNICA.
  • Se rank(A) = rank(A|b) < m: INFINITE soluzioni con (m - rank) parametri liberi.

Per sistemi quadrati n = m: det(A) != 0 implica soluzione unica. det(A) = 0 implica nessuna soluzione o infinite.

Sistemi sottodeterminati

n < m (più incognite che equazioni). Ammette infinite soluzioni (se consistente). Soluzione generale: x = x_p + Null(A) (particolare + spazio nullo). Soluzione di minima norma euclidea: x_min = A^+ b dove A^+ e pseudoinversa di Moore-Penrose. Comune in compressed sensing (signali sparsi), regressione regolarizzata.

Sistemi sovradeterminati

n > m (più equazioni che incognite). Generalmente NO soluzione esatta. Soluzione least squares: minimizza ||A x - b||^2. Equazioni normali: A^T A x = A^T b -> x = (A^T A)^(-1) A^T b (se A^T A invertibile). Tipico in: regressione lineare, data fitting, image reconstruction.

Stabilità numerica e condizionamento

Numero di condizionamento: cond(A) = ||A|| ||A^(-1)||. Indica sensibilità della soluzione a piccole perturbazioni di b. cond(A) = 1: ben condizionato. cond(A) >> 1: mal condizionato (soluzione sensibile a errori di arrotondamento). Pivot parziale (scambia righe per pivot massimo) migliora stabilità ma non basta per matrici molto mal condizionate. Pivot totale: anche scambio colonne, costo aggiuntivo O(n).

Metodi iterativi

Per matrici sparse (molti zeri) e n grande, metodi iterativi sono più efficienti del Gauss diretto:

  • Jacobi: x^(k+1) = D^(-1) (b - (L+U) x^(k)).
  • Gauss-Seidel: usa valori aggiornati immediatamente. Convergenza più rapida.
  • SOR (Successive Over-Relaxation): introduce parametro omega per accelerare.
  • Conjugate gradient: per A simmetrica positiva definita, ottimo.
  • GMRES: per matrici generiche.

Applicazioni

  • FEM (Finite Element Method): K u = f con K stiffness matrix.
  • Reti elettriche: leggi di Kirchhoff.
  • Programmazione lineare: simplex method.
  • Reti neurali: backprop risolve sistemi.
  • Image processing: filtri lineari.
  • Quantum mechanics: operatori come matrici.
  • Catene Markov: stato stazionario via (P^T - I) pi = 0.
  • Curve fitting: regressione polinomiale.

Storia

Cina antica (Jiuzhang Suanshu, 200 a.C.): primo metodo simile a Gauss. Cramer (1750): formule esplicite. Gauss (1809, "Theoria motus corporum coelestium"): elimination metodo per orbite. Jordan (1888): variante a scala ridotta. Cholesky (1910): variante per matrici simmetriche. Wilkinson (1960s): analisi stabilità numerica. LAPACK (1992-): standard moderno.

Modalita del calcolatore

Cinque modalita: eliminazione di Gauss-Jordan (standard); regola di Cramer (sistemi quadrati); verifica soluzione candidata; analisi rango via Rouche-Capelli; sistemi sottodeterminati e sovradeterminati con least squares.

La geometria dei sistemi lineari: intersezioni nello spazio

Ogni equazione lineare rappresenta geometricamente un oggetto piatto: una retta in due dimensioni, un piano in tre, un iperpiano in generale. Risolvere un sistema significa trovare i punti che appartengono contemporaneamente a tutte queste superfici, cioe la loro intersezione. Questa visione geometrica illumina immediatamente perche un sistema puo avere una, infinite o nessuna soluzione.

Se due rette nel piano si incrociano in un punto, il sistema ha soluzione unica. Se coincidono, ogni punto e soluzione e le soluzioni sono infinite. Se sono parallele e distinte, non si incontrano mai e il sistema e impossibile. In dimensioni superiori la stessa logica si estende a piani e iperpiani. Il teorema di Rouche-Capelli traduce questa geometria in aritmetica: confrontando il rango della matrice dei coefficienti con quello della matrice completa si stabilisce esattamente quale dei tre casi si verifica, senza bisogno di visualizzare.

Il condizionamento: quando piccoli errori diventano grandi

Non tutti i sistemi lineari sono ugualmente facili da risolvere in pratica. Alcuni sono mal condizionati: piccole variazioni nei coefficienti o nei termini noti producono enormi variazioni nella soluzione. Geometricamente corrisponde a rette quasi parallele, il cui punto di intersezione si sposta violentemente al minimo cambiamento di pendenza. In questi casi anche gli inevitabili errori di arrotondamento del calcolatore possono rendere la soluzione numerica del tutto inaffidabile.

La gravita del problema si misura con il numero di condizionamento della matrice: un valore vicino a 1 indica un sistema ben posto, valori enormi segnalano condizionamento pessimo. Un esempio classico e la matrice di Hilbert, i cui numeri di condizionamento crescono esponenzialmente con la dimensione, rendendola un banco di prova per gli algoritmi. Riconoscere e gestire il malcondizionamento e essenziale in ingegneria e nel calcolo scientifico, dove si ricorre a tecniche come il pivoting, la regolarizzazione o l'aumento della precisione per ottenere risultati affidabili.

Aggiornato a luglio 2026

Domande frequenti

Cos'e un sistema di equazioni lineari?

E un insieme di equazioni lineari nelle stesse incognite, che si cerca di soddisfare tutte contemporaneamente. Si scrive in forma matriciale come A x = b, dove A e la matrice dei coefficienti, x il vettore delle incognite e b i termini noti. Risolverlo significa trovare i valori delle incognite.

Come si risolve con l'eliminazione di Gauss?

Si trasforma la matrice completa in forma a scalini con operazioni elementari sulle righe: scambio, moltiplicazione per una costante, somma di multipli. Riducendo il sistema a una forma triangolare o ridotta si leggono direttamente le soluzioni. E il metodo standard, con complessita proporzionale a n al cubo.

Cos'e la regola di Cramer?

Fornisce le soluzioni di un sistema quadrato come rapporti di determinanti: ogni incognita x_i e uguale al determinante della matrice ottenuta sostituendo la colonna i con i termini noti, diviso il determinante di A. E elegante ma inefficiente per sistemi grandi, poiche il calcolo dei determinanti e costoso.

Quante soluzioni puo avere un sistema?

Tre casi: soluzione unica, infinite soluzioni o nessuna soluzione. Geometricamente corrispondono a superfici che si incontrano in un punto, che coincidono, o che sono parallele senza intersecarsi. Il teorema di Rouche-Capelli determina il caso confrontando i ranghi delle matrici.

Cosa dice il teorema di Rouche-Capelli?

Un sistema ha soluzioni se e solo se il rango della matrice dei coefficienti e uguale al rango della matrice completa. Se questo rango comune uguaglia il numero di incognite, la soluzione e unica; se e minore, le soluzioni sono infinite con un certo numero di variabili libere.

Cosa sono i sistemi sovradeterminati?

Sono sistemi con piu equazioni che incognite, che in generale non hanno una soluzione esatta. Si cerca allora la soluzione ai minimi quadrati, che minimizza l'errore complessivo, risolvendo le equazioni normali A trasposta A x = A trasposta b. E la base della regressione lineare.

Cos'e il condizionamento di un sistema?

E una misura di quanto la soluzione sia sensibile a piccoli errori nei dati. Un sistema mal condizionato, con rette quasi parallele, amplifica gli errori di arrotondamento e da soluzioni inaffidabili. Il numero di condizionamento quantifica il problema: piu e grande, meno affidabile e il risultato numerico.

A cosa servono i sistemi lineari?

Sono ovunque: in ingegneria per analisi di strutture e circuiti, in fisica per l'equilibrio di forze, in economia per modelli input-output, in computer grafica, nell'ottimizzazione e nella soluzione numerica di equazioni differenziali tramite discretizzazione (metodo degli elementi finiti).

Formula

A x = b. Cramer: x_i = det(A_i)/det(A). Gauss: ridurre [A|b] a RREF. LU: A = LU, risolvere L y = b, U x = y. Rouche-Capelli: rank(A) vs rank(A|b). Least squares: A^T A x = A^T b.

Commenti (0)

Ancora nessun commento. Sii il primo!