Salta al contenuto
Note per Studenti Esercizio - numero di condizionamento di un sistema 2x2 quasi singolare

Esercizio - numero di condizionamento di un sistema 2x2 quasi singolare

Teoria: Norme di matrici e condizionamento dei sistemi lineariNorme di vettore $|x|1=\sum|x_i|$, $|x|2=\sqrt{\sum x_i^2}$, $|x|\infty=\max|x_i|$. Norma di matrice indotta $|A|=\max{x\ne0}\frac{|Ax|}{|x|}$: $|A|1$ = massima somma per colonne, $|A|\infty$ = massima somma per righe, $|A|2=\sqrt{\lambda{\max}(A^TA)}$ (= $\rho(A)$ se $A$ simmetrica); valgono $|Ax|\le|A||x|$, $|AB|\le|A||B|$, $\rho(A)\le|A|$. Numero di condizionamento $\kappa(A)=|A||A^{-1}|\ge1$ ($\kappa_2=\frac{\sigma_{\max}}{\sigma_{\min}}$, per SPD $\frac{\lambda_{\max}}{\lambda_{\min}}$, per ortogonali 1). Se $A\mathbf x=\mathbf b$ e $A(\mathbf x+\delta\mathbf x)=\mathbf b+\delta\mathbf b$: $\frac{|\delta\mathbf x|}{|\mathbf x|}\le\kappa(A)\frac{|\delta\mathbf b|}{|\mathbf b|}$ (D); con residuo $\mathbf r=\mathbf b-A\hat{\mathbf x}$: $\frac1\kappa\frac{|\mathbf r|}{|\mathbf b|}\le\frac{|\mathbf x-\hat{\mathbf x}|}{|\mathbf x|}\le\kappa\frac{|\mathbf r|}{|\mathbf b|}$. Si perdono circa $\log_{10}\kappa$ cifre; un residuo piccolo non garantisce un errore piccolo se $\kappa$ è grande.Norme di matrici e condizionamento dei sistemi lineari →.

Testo. Due forze incognite x1,x2x_1,x_2 in una struttura soddisfano (1224,002)(x1x2)=(36,002)(soluzione x1=x2=1).\begin{pmatrix}1&2\\2&4{,}002\end{pmatrix}\begin{pmatrix}x_1\\x_2\end{pmatrix}=\begin{pmatrix}3\\6{,}002\end{pmatrix}\quad(\text{soluzione }x_1=x_2=1). La seconda componente del termine noto è misurata con una strumentazione che ha precisione 10−310^{-3}.

  1. Calcolare A−1A^{-1} e κ∞(A)\kappa_\infty(A).
  2. Se b2b_2 viene letto 6,0036{,}003 invece di 6,0026{,}002, calcolare la nuova soluzione e confrontare l'amplificazione con quanto previsto da κ∞\kappa_\infty.
  3. Se la matrice fosse nota solo con a22=4,000a_{22}=4{,}000 invece di 4,0024{,}002, cosa accadrebbe? Confrontare con 1κ\frac1{\kappa}.
  4. Quante cifre significative decimali si possono ritenere affidabili con dati a 6 cifre?

Soluzione

1. Condizionamento. det⁡A=1⋅4,002−2⋅2=0,002\det A=1\cdot4{,}002-2\cdot2=0{,}002 e A−1=10,002(4,002−2−21)=(2001−1000−1000500).A^{-1}=\frac1{0{,}002}\begin{pmatrix}4{,}002&-2\\-2&1\end{pmatrix}=\begin{pmatrix}2001&-1000\\-1000&500\end{pmatrix}. ∥A∥∞=max⁡(1+2, 2+4,002)=6,002\|A\|_\infty=\max(1+2,\ 2+4{,}002)=6{,}002 e ∥A−1∥∞=max⁡(2001+1000, 1000+500)=3001\|A^{-1}\|_\infty=\max(2001+1000,\ 1000+500)=3001. Allora κ∞(A)=6,002⋅3001=18 012.\kappa_\infty(A)=6{,}002\cdot3001=18\,012 . (Poiché AA è simmetrica, κ1=κ∞\kappa_1=\kappa_\infty.) Le due righe sono quasi proporzionali: (1,2)(1,2) e (2,4,002)≈2 (1,2)(2,4{,}002)\approx2\,(1,2).

2. Perturbazione di b2b_2. δb=(0, 0,001)T\delta\mathbf b=(0,\ 0{,}001)^T: δx=A−1δb=(−1000⋅0,001, 500⋅0,001)=(−1, 0,5)\delta\mathbf x=A^{-1}\delta\mathbf b=(-1000\cdot0{,}001,\ 500\cdot0{,}001)=(-1,\ 0{,}5). La nuova soluzione è x+δx=(0, 1,5)\mathbf x+\delta\mathbf x=(0,\ 1{,}5).

  • Errore relativo sui dati: ∥δb∥∞∥b∥∞=0,0016,002=1,67⋅10−4\frac{\|\delta\mathbf b\|_\infty}{\|\mathbf b\|_\infty}=\frac{0{,}001}{6{,}002}=1{,}67\cdot10^{-4} (0,017%).
  • Errore relativo sul risultato: ∥δx∥∞∥x∥∞=11=1\frac{\|\delta\mathbf x\|_\infty}{\|\mathbf x\|_\infty}=\frac11=1 (100%).
  • Amplificazione: 11,67⋅10−4=6002≤κ∞=18 012\frac{1}{1{,}67\cdot10^{-4}}=6002\le\kappa_\infty=18\,012 ✓. Una variazione dello 0,017% sul dato cambia completamente la soluzione.

3. Perturbazione della matrice. Con a22=4,000a_{22}=4{,}000 la matrice diventa (1224)\begin{pmatrix}1&2\\2&4\end{pmatrix}, singolare (seconda riga =2×=2\times prima): il sistema non ha più soluzione unica. L'errore relativo sulla matrice è ∥δA∥∞∥A∥∞=0,0026,002=3,33⋅10−4\frac{\|\delta A\|_\infty}{\|A\|_\infty}=\frac{0{,}002}{6{,}002}=3{,}33\cdot10^{-4}. Il teorema sulla distanza dalla singolarità dice che questo valore deve essere almeno 1κ∞=118012=5,55⋅10−5\frac1{\kappa_\infty}=\frac1{18012}=5{,}55\cdot10^{-5} ✓ (lo è: 3,33⋅10−4≥5,55⋅10−53{,}33\cdot10^{-4}\ge5{,}55\cdot10^{-5}). Una matrice con κ\kappa grande è «a poca distanza» da una singolare.

4. Cifre affidabili. log⁡10κ∞=log⁡1018012=4,26\log_{10}\kappa_\infty=\log_{10}18012=4{,}26: si perdono circa 44 cifre decimali. Con dati a 6 cifre significative restano circa 6−4=26-4=2 cifre corrette nella soluzione; con la doppia precisione (≈16\approx16 cifre) ne restano circa 16−4=1216-4=12. In una struttura con carichi misurati con 0,1% (10−310^{-3}) di incertezza e κ≈2⋅104\kappa\approx2\cdot10^4 i risultati non hanno nessuna cifra affidabile: bisogna rivedere il modello (il sistema è quasi labile in una direzione) o ridurre l'incertezza sui dati.

Risultati: κ∞=18 012\kappa_\infty=18\,012; con δb2=0,001\delta b_2=0{,}001 la soluzione passa da (1,1)(1,1) a (0, 1,5)(0,\ 1{,}5) (errore relativo 100%100\%, amplificazione 60026002); ≈4\approx4 cifre perse.

Errori tipici. Usare det⁡A=0,002\det A=0{,}002 come misura del condizionamento (conta il rapporto con la scala: κ\kappa, non il determinante); dimenticare di normalizzare le variazioni per ∥b∥\|\mathbf b\| e ∥x∥\|\mathbf x\|; confondere l'amplificazione effettiva 60026002 con il limite κ=18012\kappa=18012.

Versione ripasso

(Norme di matrici e condizionamento dei sistemi lineariNorme di vettore $|x|1=\sum|x_i|$, $|x|2=\sqrt{\sum x_i^2}$, $|x|\infty=\max|x_i|$. Norma di matrice indotta $|A|=\max{x\ne0}\frac{|Ax|}{|x|}$: $|A|1$ = massima somma per colonne, $|A|\infty$ = massima somma per righe, $|A|2=\sqrt{\lambda{\max}(A^TA)}$ (= $\rho(A)$ se $A$ simmetrica); valgono $|Ax|\le|A||x|$, $|AB|\le|A||B|$, $\rho(A)\le|A|$. Numero di condizionamento $\kappa(A)=|A||A^{-1}|\ge1$ ($\kappa_2=\frac{\sigma_{\max}}{\sigma_{\min}}$, per SPD $\frac{\lambda_{\max}}{\lambda_{\min}}$, per ortogonali 1). Se $A\mathbf x=\mathbf b$ e $A(\mathbf x+\delta\mathbf x)=\mathbf b+\delta\mathbf b$: $\frac{|\delta\mathbf x|}{|\mathbf x|}\le\kappa(A)\frac{|\delta\mathbf b|}{|\mathbf b|}$ (D); con residuo $\mathbf r=\mathbf b-A\hat{\mathbf x}$: $\frac1\kappa\frac{|\mathbf r|}{|\mathbf b|}\le\frac{|\mathbf x-\hat{\mathbf x}|}{|\mathbf x|}\le\kappa\frac{|\mathbf r|}{|\mathbf b|}$. Si perdono circa $\log_{10}\kappa$ cifre; un residuo piccolo non garantisce un errore piccolo se $\kappa$ è grande.Norme di matrici e condizionamento dei sistemi lineari →)

A=(1224,002)A=\begin{pmatrix}1&2\\2&4{,}002\end{pmatrix}, b=(3; 6,002)\mathbf b=(3;\,6{,}002), x=(1,1)\mathbf x=(1,1).

  • det⁡=0,002\det=0{,}002, A−1=(2001−1000−1000500)A^{-1}=\begin{pmatrix}2001&-1000\\-1000&500\end{pmatrix}, ∥A∥∞=6,002\|A\|_\infty=6{,}002, ∥A−1∥∞=3001\|A^{-1}\|_\infty=3001, κ∞=18 012\kappa_\infty=18\,012.

  • δb2=0,001\delta b_2=0{,}001 (relativo 1,67⋅10−41{,}67\cdot10^{-4}): δx=A−1δb=(−1; 0,5)\delta\mathbf x=A^{-1}\delta\mathbf b=(-1;\,0{,}5), nuova soluzione (0; 1,5)(0;\,1{,}5), errore relativo 11; amplificazione 6002≤κ6002\le\kappa.

  • a22=4,000a_{22}=4{,}000: AA singolare, ∥δA∥∥A∥=3,33⋅10−4≥1κ=5,55⋅10−5\frac{\|\delta A\|}{\|A\|}=3{,}33\cdot10^{-4}\ge\frac1\kappa=5{,}55\cdot10^{-5}.

  • log⁡10κ=4,26\log_{10}\kappa=4{,}26: dati a 6 cifre →\to circa 2 cifre; doppia precisione →\to circa 12.

  • ∥A∥∞=max⁡(3; 6,002)\|A\|_\infty=\max(3;\,6{,}002), ∥A−1∥∞=max⁡(3001; 1500)\|A^{-1}\|_\infty=\max(3001;\,1500); AA simmetrica, κ1=κ∞\kappa_1=\kappa_\infty. Righe quasi proporzionali: (2;4,002)≈2(1;2)(2;4{,}002)\approx2(1;2).

  • Esattamente: δx=(−1000⋅0,001; 500⋅0,001)\delta\mathbf x=(-1000\cdot0{,}001;\,500\cdot0{,}001).

Errori tipici: condizionamento dal determinante; variazioni non normalizzate; amplificazione effettiva scambiata con κ\kappa.

Teoria collegata