Metode Adams#

Metodele Adams sunt de fapt metode multipas ce încearcă să calculeze soluții ale ODE-lor. În acest subcapitol, vom explica ce înțelegem prin metode multipas și ne vom familiariza cu algoritmii Adams-Bashforth, respectiv Adams-Moulton.

Metode multipas#

O metodă multipas este o metodă numerică ce utilizează mai multe valori calculate în trecut pentru a menține o acuratețe cât mai mare, adică pentru a minimiza erorile numerice.

Cu alte cuvinte, o metodă numerică liniară în \((q+1)\in\mathbb{N}^*\) pași va avea forma:

\[ \boxed{u_{n+1}=\sum_{k=0}^qa_ku_{n-k}+h\sum_{k=0}^qb_kf_{n-k}+hb_{-1}f_{n+1}}\,,\,\,\forall n\geq q \]

În formula anterioară, am utilizat notațiile explicate mai jos:

  • \(u_{n+1}\) reprezintă iterația următoare a algoritmului, în timp ce \(u_{0},u_1,\dots,u_n\) sunt iterațiile anterioare;

  • \(f_0,f_1,\dots,f_n\) sunt evaluările unei funcții \(f:\mathbb{R}\rightarrow\mathbb{R}\) la diverse momente de timp;

  • \(a_0,a_1,\dots,a_q\in\mathbb{R}\), \(b_{-1},b_0,\dots,b_q\in\mathbb{R}\) și \(h\in\mathbb{R}\) sunt doar constante (în general, \(h\in\mathbb{R}\) reprezintă un fel de distanță).

În funcție de valoarea lui \(b_{-1}\), metoda se consideră:

  • Explicită, atunci când \(b_{-1}=0\);

  • Implicită, atunci când \(b_{-1}\neq0\).

Nu vom insista mai mult decât este nevoie pe acest concept. Detalii suplimentare, precum alte proprietăți specifice acestor metode, se găsesc întotdeauna în cadrul subcapitolului dedicat.

Metode Adams#

Problema pe care încearcă aceste metode să o rezolve este cea de până acum, în care se oferă ecuația diferențială \(\frac{dy}{dt}=f(t,y)\), respectiv evaluarea lui \(y\) într-un punct \(t_0\), \(y(t_0)=y_0\).

Folosind aceste egalități și presupunând că \(f\) este continuă, se obține că:

\[ \frac{dy}{dt}=f(t,y)\Rightarrow dy=f(t,y)\,dt\Rightarrow y(t)=\int_0^tf(\tau,y)\,d\tau \]

Vom sparge acum integrala din partea dreaptă pentru a o scrie în funcție de \(y_0\):

\[ y(t)=\int_0^{t_0}f(\tau,y)\,d\tau+\int_{t_0}^tf(\tau,y)\,d\tau=y_0+\int_{t_0}^tf(\tau,y)\,d\tau \]

Vom folosi așadar următoarea egalitate în metodele Adams:

\[ \boxed{y(t)=y_0+\int_{t_0}^tf(\tau,y)\,d\tau} \]

Metodele Adams se folosesc de această formulă, însă cum se calculează integrala? Evident, utilizându-se un soi de interpolare polinomială, de exemplu Lagrange, peste care se aplică operația de integrare.

Vom particulariza (fără demonstrație) formula de la metodele multipas pentru a obține recurența specifică metodelor Adams - spre exemplu, o metodă în \((q+1)\in\mathbb{N}^*\) pași va rezulta în recurența (prin \(f_n\) se înțelege \(f_n(t_n,y_n)\)):

\[ \boxed{y_{n+1}=y_n+h\sum_{k=-1}^qb_kf_{n-k}} \]

Cele două metode Adams pe care le cunoaștem sunt separate exclusiv prin caracterul lor:

  • Metoda Adams-Bashforth este o metodă Adams explicită (\(b_{-1}=0\));

  • Metoda Adams-Moulton este o metodă Adams implicită (\(b_{-1}\neq0\)).

Cu alte cuvinte, metoda Adams-Bashforth nu se folosește de evaluarea lui \(f\) la momentul curent, în timp ce Adams-Moulton se va folosi și de aceasta. Pentru cei interesați de profunzimea acestui subiect, vă rugăm să consultați subcapitolului dedicat.

Metoda Adams-Bashforth#

În funcție de numărul \(q+1\) de pași, ajungem la următorul tabel ce conține primele câteva metode Adams-Bashforth:

\(q\) și \(q+1\) Metoda Adams-Bashforth cu \(q+1\) pași
\(q=0\Rightarrow q+1=1\) \(y_{n+1}=y_n+hf_n\)
\(q=1\Rightarrow q+1=2\) \(y_{n+1}=y_n+\dfrac{h}{2}\Big[3f_n-f_{n-1}\Big]\)
\(q=2\Rightarrow q+1=3\) \(y_{n+1}=y_n+\dfrac{h}{12}\Big[23f_n-16f_{n-1}+5f_{n-2}\Big]\)
\(q=3\Rightarrow q+1=4\) \(y_{n+1}=y_n+\dfrac{h}{24}\Big[55f_n-59f_{n-1}+37f_{n-2}-9f_{n-3}\Big]\)

Metoda Adams-Moulton#

În funcție de numărul \(q+1\) de pași, ajungem la următorul tabel ce conține primele câteva metode Adams-Moulton:

\(q\) și \(q+1\) Metoda Adams-Moulton cu \(q+1\) pași
\(q=0\Rightarrow q+1=1\) \(y_{n+1}=y_n+\dfrac{h}{2}\Big[f_{n+1}+f_{n}\Big]\)
\(q=1\Rightarrow q+1=2\) \(y_{n+1}=y_n+\dfrac{h}{12}\Big[5f_{n+1}+8f_{n}-f_{n-1}\Big]\)
\(q=2\Rightarrow q+1=3\) \(y_{n+1}=y_n+\dfrac{h}{24}\Big[9f_{n+1}+19f_{n}-5f_{n-1}+f_{n-2}\Big]\)
\(q=3\Rightarrow q+1=4\) \(y_{n+1}=y_n+\dfrac{h}{720}\Big[251f_{n+1}+646f_{n}-264f_{n-1}+106f_{n-2}-19f_{n-3}\Big]\)

Licență#

The book "Metode Numerice", written by Valentin-Ioan Vintilă, is licensed under CC BY-NC-SA 4.0