Salta al contenuto
Note per Studenti Esercizio - passo massimo di Eulero esplicito per un'equazione test e confronto con i metodi impliciti

Esercizio - passo massimo di Eulero esplicito per un'equazione test e confronto con i metodi impliciti

Teoria: Stabilità assoluta, problemi stiff e sistemi di equazioni differenzialiSul problema test $y'=\lambda y$ ($\mathrm{Re},\lambda<0$, soluzione che decade) i metodi danno $u_{n+1}=R(z),u_n$ con $z=h\lambda$: EE $R=1+z$, EI $R=\frac1{1-z}$, CN $R=\frac{1+z/2}{1-z/2}$. La regione di stabilità assoluta è ${z:|R(z)|<1}$: per EE il disco di centro $-1$ e raggio $1$ (per $\lambda<0$ reale: $h<\frac2{|\lambda|}$), per EI l'esterno del disco di centro $1$ e raggio $1$, per CN il semipiano $\mathrm{Re},z<0$. EI e CN sono A-stabili (nessun limite su $h$ per $\mathrm{Re},\lambda<0$); per $z\to-\infty$ è $R_{EI}\to0$ (smorza) e $R_{CN}\to-1$ (oscilla con smorzamento lento). Un problema è stiff quando ha componenti che decadono a velocità molto diverse (rapporto $\frac{\max|\mathrm{Re}\lambda_i|}{\min|\mathrm{Re}\lambda_i|}$ grande): l'accuratezza permetterebbe $h$ grande, ma la stabilità di un metodo esplicito impone $h<\frac2{\max|\lambda_i|}$. Sistemi $\mathbf y'=A\mathbf y$: EE $\mathbf u_{n+1}=(I+hA)\mathbf u_n$, EI $(I-hA)\mathbf u_{n+1}=\mathbf u_n$, CN $(I-\frac h2A)\mathbf u_{n+1}=(I+\frac h2A)\mathbf u_n$; stabilità se $h\lambda_i$ sta nella regione per ogni autovalore. Oscillatore ($\lambda=\pm i\omega$): $|R_{EE}|=\sqrt{1+\omega^2h^2}>1$ (energia cresce), $|R_{EI}|<1$ (smorza), $|R_{CN}|=1$ (conserva). Equazioni di ordine $m$ si riducono a sistemi del primo ordine.Stabilità assoluta, problemi stiff e sistemi di equazioni differenziali →, Metodi di Eulero esplicito, implicito e Crank-NicolsonProblema di Cauchy $y'=f(t,y)$, $y(t_0)=y_0$, con $f$ lipschitziana in $y$ (costante $L$): ben posto. Nodi $t_n=t_0+nh$, $u_n\approx y(t_n)$. Eulero esplicito $u_{n+1}=u_n+h,f(t_n,u_n)$; Eulero implicito $u_{n+1}=u_n+h,f(t_{n+1},u_{n+1})$ (equazione da risolvere a ogni passo: punto fisso se $hL<1$, Newton, o formula chiusa se $f$ è lineare); Crank-Nicolson $u_{n+1}=u_n+\frac h2[f(t_n,u_n)+f(t_{n+1},u_{n+1})]$ (regola dei trapezi). Errore di troncamento locale $\tau_n=\frac{y(t_{n+1})-y(t_n)}h-\Phi$: $\frac h2y''$ (EE), $-\frac h2y''$ (EI), $-\frac{h^2}{12}y'''$ (CN). Consistenza + stabilità $\Rightarrow$ convergenza: ordine 1 per EE e EI, ordine 2 per CN, cioè errore globale $O(h)$ e $O(h^2)$; per EE $|e_n|\le\frac{Mh}{2L}\big(e^{L(t_n-t_0)}-1\big)$ con $M=\max|y''|$ (D). Dimezzando $h$ l'errore si divide per 2 (EE, EI) o per 4 (CN).Metodi di Eulero esplicito, implicito e Crank-Nicolson →.

Testo. La tensione vv su un condensatore che si scarica attraverso una resistenza obbedisce a v′=−80 vv'=-80\,v (tt in secondi, vv in volt), con v(0)=5v(0)=5 V (costante di tempo τ=180=12,5\tau=\frac1{80}=12{,}5 ms).

  1. Ricavare il fattore di amplificazione di Eulero esplicito (EE), Eulero implicito (EI) e Crank-Nicolson (CN) e il passo massimo hh per la stabilità di EE.
  2. Calcolare i fattori per h=0,01; 0,02; 0,025; 0,03; 0,05h=0{,}01;\ 0{,}02;\ 0{,}025;\ 0{,}03;\ 0{,}05 s e classificare il comportamento di EE.
  3. Con h=0,05h=0{,}05 s calcolare 4 passi dei tre metodi (fino a t=0,2t=0{,}2 s) e confrontare con v(0,2)=5 e−16=5,6⋅10−7v(0{,}2)=5\,e^{-16}=5{,}6\cdot10^{-7} V.
  4. (Teoria) Con h=0,02h=0{,}02 s si può dire che EE è «accettabile»? Fino a quale hh la soluzione di EE è anche monotona?

Soluzione

1. Fattori. Con z=hλ=−80hz=h\lambda=-80h: EE R=1+z=1−80hR=1+z=1-80h; EI R=11−z=11+80hR=\frac1{1-z}=\frac1{1+80h}; CN R=1+z/21−z/2=1−40h1+40hR=\frac{1+z/2}{1-z/2}=\frac{1-40h}{1+40h}. EE è stabile se ∣1−80h∣<1|1-80h|<1, cioè 0<h<280=0,0250<h<\frac2{80}=0{,}025 s. EI e CN sono stabili per ogni h>0h>0.

2. Tabella dei fattori.

hh (s) z=−80hz=-80h EE EI CN comportamento di EE
0,01 −0,8-0{,}8 0,2 0,556 0,429 decade monotona
0,02 −1,6-1{,}6 −0,6-0{,}6 0,385 0,111 decade oscillando
0,025 −2-2 −1-1 0,333 0 oscillazione permanente (al limite)
0,03 −2,4-2{,}4 −1,4-1{,}4 0,294 −0,091-0{,}091 diverge oscillando
0,05 −4-4 −3-3 0,2 −0,333-0{,}333 diverge
(il valore esatto per un passo è eze^{z}: 0,45; 0,20; 0,135;…0{,}45;\ 0{,}20;\ 0{,}135;\dots; EI e CN sono sempre in (−1,1)(-1,1).)

3. Con h=0,05h=0{,}05. vn=v0Rnv_n=v_0R^n, v0=5v_0=5:

  • EE (R=−3R=-3): −15; 45; −135; 405-15;\ 45;\ -135;\ 405 V. La soluzione numerica esplode e cambia segno a ogni passo: fisicamente assurda (una tensione di 405405 V da un condensatore a 55 V!).
  • EI (R=0,2R=0{,}2): 1; 0,2; 0,04; 0,0081;\ 0{,}2;\ 0{,}04;\ 0{,}008 V.
  • CN (R=−13R=-\frac13): −1,667; 0,556; −0,185; 0,0617-1{,}667;\ 0{,}556;\ -0{,}185;\ 0{,}0617 V. Valore esatto a t=0,2t=0{,}2 s: 5,6⋅10−75{,}6\cdot10^{-7} V. EI e CN sono molto più vicini di EE (405405 V); CN oscilla ma decade, EI decade monotono (è più piatto del vero, ma non oscilla). L'accuratezza con h=0,05h=0{,}05 è comunque scarsa perché ∣λ∣h=4|\lambda|h=4 è grande rispetto a un'accuratezza reale (τ=0,0125\tau=0{,}0125 s è minore di hh): se si volesse seguire la scarica si userebbe h≲τ/5h\lesssim\tau/5; ma la stabilità di EI e CN è garantita.

4. Teoria. Con h=0,02h=0{,}02 il fattore è −0,6-0{,}6: la soluzione decade (stabile) ma oscilla di segno (5; −3; 1,8; −1,08;…5;\ -3;\ 1{,}8;\ -1{,}08;\dots), mentre la vera è positiva e monotona. Per avere decadimento monotono serve R≥0R\ge0, cioè 1−80h≥0  ⟺  h≤180=0,01251-80h\ge0\iff h\le\frac1{80}=0{,}0125 s =τ=\tau. Quindi: stabilità h<2τ=0,025h<2\tau=0{,}025 s; assenza di oscillazioni spurie h≤τ=0,0125h\le\tau=0{,}0125 s. Per un'accuratezza ragionevole (errore dell'ordine del 10% per passo) h≈τ5=2,5h\approx\frac\tau5=2{,}5 ms. Qui la stabilità non è il vincolo (si usa spesso h≪2τh\ll2\tau per accuratezza), ma lo diventa se il sistema contiene anche una componente lenta e una molto veloce (problema stiff).

Risultati: hmax⁡EE=280=0,025h_{\max}^{EE}=\frac2{80}=0{,}025 s; con h=0,05h=0{,}05 s: EE 405405 V al quarto passo (instabile), EI 0,0080{,}008 V, CN 0,0620{,}062 V.

Errori tipici. Confondere h<2∣λ∣h<\frac2{|\lambda|} (stabilità) con h<1∣λ∣h<\frac1{|\lambda|} (assenza di oscillazioni); pensare che «decade» significhi «accurato»; usare ∣λ∣h|\lambda|h con λ\lambda positivo.

Versione ripasso

(Stabilità assoluta, problemi stiff e sistemi di equazioni differenzialiSul problema test $y'=\lambda y$ ($\mathrm{Re},\lambda<0$, soluzione che decade) i metodi danno $u_{n+1}=R(z),u_n$ con $z=h\lambda$: EE $R=1+z$, EI $R=\frac1{1-z}$, CN $R=\frac{1+z/2}{1-z/2}$. La regione di stabilità assoluta è ${z:|R(z)|<1}$: per EE il disco di centro $-1$ e raggio $1$ (per $\lambda<0$ reale: $h<\frac2{|\lambda|}$), per EI l'esterno del disco di centro $1$ e raggio $1$, per CN il semipiano $\mathrm{Re},z<0$. EI e CN sono A-stabili (nessun limite su $h$ per $\mathrm{Re},\lambda<0$); per $z\to-\infty$ è $R_{EI}\to0$ (smorza) e $R_{CN}\to-1$ (oscilla con smorzamento lento). Un problema è stiff quando ha componenti che decadono a velocità molto diverse (rapporto $\frac{\max|\mathrm{Re}\lambda_i|}{\min|\mathrm{Re}\lambda_i|}$ grande): l'accuratezza permetterebbe $h$ grande, ma la stabilità di un metodo esplicito impone $h<\frac2{\max|\lambda_i|}$. Sistemi $\mathbf y'=A\mathbf y$: EE $\mathbf u_{n+1}=(I+hA)\mathbf u_n$, EI $(I-hA)\mathbf u_{n+1}=\mathbf u_n$, CN $(I-\frac h2A)\mathbf u_{n+1}=(I+\frac h2A)\mathbf u_n$; stabilità se $h\lambda_i$ sta nella regione per ogni autovalore. Oscillatore ($\lambda=\pm i\omega$): $|R_{EE}|=\sqrt{1+\omega^2h^2}>1$ (energia cresce), $|R_{EI}|<1$ (smorza), $|R_{CN}|=1$ (conserva). Equazioni di ordine $m$ si riducono a sistemi del primo ordine.Stabilità assoluta, problemi stiff e sistemi di equazioni differenziali →)

v′=−80vv'=-80v, v(0)=5v(0)=5 V, τ=12,5\tau=12{,}5 ms.

  • Fattori: EE 1−80h1-80h; EI 11+80h\frac1{1+80h}; CN 1−40h1+40h\frac{1-40h}{1+40h}. EE stabile: h<280=0,025h<\frac2{80}=0{,}025 s.

  • EE: h=0,01h=0{,}01: 0,20{,}2 (monotona); 0,020{,}02: −0,6-0{,}6 (oscilla smorzata); 0,0250{,}025: −1-1; 0,030{,}03: −1,4-1{,}4 e 0,050{,}05: −3-3 (divergono).

  • h=0,05h=0{,}05, vn=5Rnv_n=5R^n: EE (R=−3R=-3) −15; 45; −135; 405-15;\,45;\,-135;\,405; EI (R=0,2R=0{,}2) 1; 0,2; 0,04; 0,0081;\,0{,}2;\,0{,}04;\,0{,}008; CN (R=−13R=-\frac13) −1,667; 0,556; −0,185; 0,0617-1{,}667;\,0{,}556;\,-0{,}185;\,0{,}0617; esatto 5,6⋅10−75{,}6\cdot10^{-7}.

  • Monotonia di EE: R≥0  ⟺  h≤180=τR\ge0\iff h\le\frac1{80}=\tau; stabilità: h<2τh<2\tau; accuratezza: h≈τ5h\approx\frac\tau5.

  • Con h=0,02h=0{,}02 EE dà 5; −3; 1,8; −1,085;\,-3;\,1{,}8;\,-1{,}08: decade ma con segni alternati, mentre la soluzione vera è positiva e monotona. EI e CN sono stabili per ogni hh; EI non oscilla.

Errori tipici: 2∣λ∣\frac2{|\lambda|} (stabile) scambiato con 1∣λ∣\frac1{|\lambda|} (monotona); decadimento preso per accuratezza.

Teoria collegata