Calcolatore Metodo di Jacobi
Calcola le prime due iterazioni del metodo di Jacobi per sistemi lineari con precisione matematica e visualizzazione grafica dei risultati
Risultati del Metodo di Jacobi
Prima Iterazione (x¹)
Seconda Iterazione (x²)
Errore Relativo
Verifica Convergenza
Guida Completa al Metodo di Jacobi per Sistemi Lineari
Il metodo di Jacobi è un algoritmo iterativo utilizzato per risolvere sistemi di equazioni lineari della forma Ax = b, dove A è una matrice quadrata non singolare, x è il vettore delle incognite e b è il vettore dei termini noti. Questo metodo è particolarmente utile per sistemi di grandi dimensioni dove i metodi diretti (come l’eliminazione di Gauss) diventano computazionalmente costosi.
Fondamenti Matematici
Il metodo di Jacobi si basa sulla decomposizione della matrice A nella somma di tre matrici:
- D: matrice diagonale contenente gli elementi diagonali di A
- L: matrice triangolare inferiore con zeri sulla diagonale
- U: matrice triangolare superiore con zeri sulla diagonale
L’algoritmo può essere espresso come:
x(k+1) = D-1(b – (L + U)x(k))
Condizioni di Convergenza
Affiché il metodo di Jacobi converga alla soluzione esatta, devono essere soddisfatte alcune condizioni:
- Diagonale dominante: Per ogni riga i, |aii| ≥ Σ|aij
- Matrice non singolare: det(A) ≠ 0
- Raggio spettrale: ρ(D-1(L+U)) < 1
| Metodo | Velocità Convergenza | Memoria Richiesta | Parallelizzabilità |
|---|---|---|---|
| Metodo di Jacobi | Lenta (ρ ≈ 0.9-0.99) | O(n²) | Elevata |
| Metodo di Gauss-Seidel | Media (ρ ≈ 0.8-0.95) | O(n²) | Bassa |
| Metodo SOR | Veloce (ρ ≈ 0.5-0.8) | O(n²) | Media |
Implementazione Pratica
L’implementazione del metodo di Jacobi richiede i seguenti passaggi:
- Verifica che la matrice sia diagonalmente dominante
- Inizializza il vettore x⁰ (spesso x⁰ = 0 o x⁰ = b)
- Per k = 1, 2, … fino a convergenza:
- Calcola x(k+1)i = (bi – Σaijx(k)j) / aii per j ≠ i
- Verifica il criterio di arresto: ||x(k+1) – x(k)|| < tolleranza
Analisi dell’Errore
L’errore nel metodo di Jacobi può essere analizzato attraverso:
- Errore assoluto: ||x(k) – x*||
- Errore relativo: ||x(k) – x*|| / ||x*||
- Residuo: ||Ax(k) – b||
Per le prime iterazioni, l’errore relativo tra x¹ e x² fornisce una stima della velocità di convergenza:
Errore relativo = max(|(x₂ᵢ – x₁ᵢ)/x₂ᵢ|) per i = 1,…,n
Applicazioni Pratiche
Il metodo di Jacobi trova applicazione in diversi campi:
- Fisica computazionale: Soluzione di equazioni alle derivate parziali
- Economia: Modelli input-output di Leontief
- Ingegneria: Analisi di reti elettriche e strutturali
- Machine Learning: Ottimizzazione di funzioni di costo
| Campo Applicativo | Dimensione Tipica (n) | Tolleranza Tipica | Iterazioni Medie |
|---|---|---|---|
| Analisi strutturale | 10³ – 10⁵ | 10⁻⁶ | 50-200 |
| Simulazioni fluidodinamiche | 10⁴ – 10⁶ | 10⁻⁸ | 100-500 |
| Modelli economici | 10² – 10⁴ | 10⁻⁵ | 20-100 |
Ottimizzazioni e Varianti
Esistono diverse varianti e ottimizzazioni del metodo di Jacobi:
- Jacobi sovrarilassato (JOR): Introduce un parametro di rilassamento ω
- Jacobi a blocchi: Tratta gruppi di equazioni contemporaneamente
- Jacobi simmetrico: Per matrici simmetriche positive definite
- Jacobi con precondizionamento: Miglioramento della convergenza
Confronto con Altri Metodi Iterativi
Rispetto ad altri metodi iterativi, Jacobi presenta vantaggi e svantaggi:
| Caratteristica | Jacobi | Gauss-Seidel | SOR | Gradiente Coniugato |
|---|---|---|---|---|
| Velocità convergenza | Lenta | Media | Veloce | Molto veloce |
| Memoria richiesta | Bassa | Bassa | Bassa | Media |
| Parallelizzabilità | Elevata | Bassa | Media | Media |
| Implementazione | Semplice | Semplice | Media | Complessa |
Limitazioni e Considerazioni
Nonostante la sua semplicità, il metodo di Jacobi presenta alcune limitazioni:
- Convergenza lenta per matrici non strettamente diagonalmente dominanti
- Sensibilità alla scelta del vettore iniziale
- Difficoltà nel trattare matrici mal condizionate
- Necessità di criteri di arresto appropriati
Per sistemi di grandi dimensioni, spesso si preferiscono metodi più avanzati come il gradiente coniugato o GMRES, soprattutto quando la matrice è sparsa ma non diagonalmente dominante.