Sunteți pe pagina 1din 23

METODE INDIRECTE SAU METODE DE TIP

PREDICTOR-CORECTOR

După cum s-a putut constata la paragraful anterior, metodele de tip Runge-Kutta prezintă
următoarele două caracteristici:
La determinarea punctului următor,  x m 1 , y m 1  , nu se folosesc decât informaţiile date la
punctul anterior  x m , y m 
Evaluarea erorii de trunchiere presupune un volum mare de calcule, ceea ce afectează
durata de calcul.

Metodele de tip predictor-corector propun relaţii de recurenţă care pe de o parte să permită


utilizarea de informaţii suplimentare la determinarea punctului următor:  x m 1 , y m 1 
şi anume informaţiile disponibile de la două puncte obţinute anterior, iar pe de altă parte
să permită corectarea în mod convenabil a valorii y m 1
Determinarea punctului următor,  x m 1 , y m 1  , se efectuează în două etape:
Predictor
În această etapă se efectuează o primă evaluare a mărimii y m 1 obţinându-se o valoare estimată
( 0)
y m(0)1 . Cea mai utilizată metodă determină valoarea y m 1 utilizând informaţiile disponibile de la
două puncte determinate anterior  x m 1 , y m 1  şi  x m , y m  după cum urmează:

Presupunem cunoscute coordonatele  x m , y m  ale unui punct aparţinând graficului funcţiei.


Calculând valoarea derivatei funcţiei în acel punct, cu ajutorul relaţiei, se obţine
valoarea y m'  f  x m , y m  care reprezintă panta tangentei la grafic în acel punct, dreapta L1 din
figura:
f (x) L1
ym
L

(0)
y m+1
y m-1

h h
xm-1 xm xm+1 x
f (x) L1
ym
L

(0)
y m+1
y m-1

h h
xm-1 xm xm+1 x

Dreapta L paralelă cu dreapta L1 şi care trece prin punctul de coordonate  x m 1 , y m 1  va avea


ecuaţia: y  y m1  f  x m , y m    x  x m1 

Obţinem o primă evaluare a mărimii y m 1 , intersectând dreapta L cu verticala dusă în dreptul


abscisei x m1  x m  h , ordonata acestui punct va fi: y m1  y m1  2  h  f  x m , y m 
(0)

Relaţia reprezintă formula de calcul utilizată în etapa predictor pentru a obţine o primă
evaluare a valorii y m 1
Observaţie. Datorită faptului că etapa predictor necesită existenţa a două puncte calculate anterior, rezultă că această
etapă nu poate fi aplicată la efectuarea primului pas de integrare. Ca urmare primul pas de integrare va trebui
efectuat cu ajutorul unei metode directe, de tip Runge-Kutta, după care, la efectuarea următorilor paşi poate fi
aplicată metoda predictor-corector.
Corector

Această etapă constă în corectarea valorii estimate, y m(0)1 , prin determinarea unui şir de valori
(1) (i )
y
corectate, notate cu m 1 , … , y m 1 . Procesul de corectare se încheie în momentul în care este

îndeplinită o condiţie referitoare la precizia de calcul. Această relaţie poate fi de forma:


y m(i )1  y m(i 11)   unde  reprezintă precizia de calcul, impusă iniţial.

Procesul de corectare este ilustrat în figura de mai jos şi constă în următoarele.

f(x)

L1 L3
y(0) m+1 L2
L

y(1) m+1

ym

h x

xm xm+1
f(x)

L1 L3
y(0) m+1 L2
L

y(1) m+1

ym

h x

xm xm+1

Calculând valoarea derivatei funcţiei în punctul  xm , y m  , se obţine


valoarea y m  f  x m , y m  care reprezintă panta tangentei la grafic în acel punct, dreapta L1 din
'

figură.
(0)
Pentru punctul de coordonate x m 1 , y m1  se recalculează valoarea derivatei funcţiei cu relaţia

obţinându-se o valoare, 
f x m1 , y m( 0)1  , care reprezintă panta dreptei L2
Se determină panta dreptei L3 ca medie aritmetică a pantelor dreptelor L1 şi L2:


1
2
 
 f  x m , y m   f x m 1 , y m( 0)1 
f(x)

L1 L3
y
(0)
m+1 L2

  
L
1
  f  x m , y m   f x m 1 , y m( 0)1 y(1) m+1
2
ym

h x

xm xm+1

Dreapta L de pantă  şi care trece prin punctul de coordonate  x m , y m  va avea ecuaţia:

y  y m     x  xm 

( 0)
Obţinem prima corectare a valorii y m 1 intersectând dreapta L cu verticala dusă în dreptul
abscisei x m1  x m  h , ordonata acestui punct va fi :

y m(1) 1  y m 
h
2
 
 f  x m , y m   f x m1 , y m( 0)1 
A doua corectare a valorii y m 1 se obţine utilizând valoarea y m(1) 1 , ca urmare relaţia de
recurenţă pentru etapa corector se poate scrie sub forma:
h
 
y m(i )1  y m   f  x m , y m   f x m1 , y m(i 11)
2

care reprezintă formula de recurenţă pentru etapa corector.
Pentru a stabili condiţiile în care aplicarea repetată a relaţiei de recurenţă determină un proces
convergent se procedează astfel:

y m(i )1  y m(i 11) 


h
2
  
 f x m1 , y m(i 11)  f x m1 , y m(i 12) 
Utilizând formula de dezvoltare în serie Taylor pentru o funcţie de două variabile:
f f
f  x  x, y  y   f  x, y   x   y   
x y

putem scrie:  
f x m1 , y m(i 11)  f  x m , y m   h 
f
x

 y m(i 11)  y m 
f
y

respectiv :  
f x m 1 , y m(i 12)  f  x m , y m   h 
f
x

 y m(i 12)  y m 
f
y

Prin înlocuire se obţinem:
h
 
y m(i )1  y m(i 11)   y m(i 11)  y m(i 12) 
2
f
y
(i  2) (i 1) (i )
care reprezintă o relaţie de legătură între trei valori obţinute succesiv: y m 1 , y m1 şi y m 1

f f
Presupunem că funcţia este mărginită, ca urmare există o valoare M astfel încât: M
y y
hM
ca urmare: ym(i) 1  ym( i11)   ym( i11)  ym( i12 )
2
hM
În mod analog putem scrie: y m(i 11)  y m(i 12)   y m(i 12)  y m(i 13)
2
2
 hM 
Prin substituţie obţinem: ym(i) 1  ym(i11)  (i 2) ( i 3)
  ym 1  ym 1
 2 
i
hM 
Procedând în mod analog se obţine în final relaţia: y m(i )1  y m(i 11)  (1) (0)
  y m 1  y m 1
 2 
2
Prin urmare dacă pasul de integrare h se alege astfel încât să fie îndeplinită inegalitatea: h 
M
diferenţa valorilor corectate tinde spre zero şi ca urmare procedeul este convergent. Deci
convergenţa este mai rapidă cu cât pasul de integrare h este mai mic.
Caz particular: f  x, y   F  x 

În situaţia în care funcţia de integrat depinde numai de x obţinem: y  F  x 


'

x
şi ca urmare  F  x   dx  y x   y x0   y x   y 0
x0

Dacă în relaţia se renunţă la indicele superior: y m(i )1  y m(i 11) 


h
2
  
 f x m 1 , y m(i 11)  f x m1 , y m(i 12) 
y m 1  y m 
h
2
 
 f  x m , y m   f x m 1 , y m1 
h
întrucât f  x, y   F  x  , relaţia devine: y m1  y m    F  x m   F  x m 1  
2

Adunând relaţiile pentru m  1, 2,  , n se obţine:

h
yn  y0   F  x0   2  F  x1   2  F  x2       2  F  xn1   F  xn  
2
care reprezintă formula de calcul utilizată în metoda trapezelor, ca urmare formula de
corecţie este o generalizare a metodei trapezelor pentru funcţii de mai multe variabile.
REZOLVAREA SISTEMELOR DE ECUAŢII
DIFERENŢIALE DE ORDINUL UNU
Se consideră sistemul de ecuaţii diferenţiale, scris sub formă matricială:
dX  t 
 A  X  t   B  E t 
dt

în care

 x1  t    a1,1    a1,n   b1,1   b1,m 


       e1  t  
 x2  t    
            
   

X t       ; A 
       ; B        ; E  t    
 
                 
      e  t  
 m 
 x n  t   a n,1
    a n,n  bn,1
   bn,m 

Presupunem că valorile iniţiale ale necunoscutelor sunt cunoscute având valorile exprimate prin
matricea coloană X  t 0  .
Pentru rezolvarea sistemului de ecuaţii vom utiliza metoda variaţiei parametrului.
Această metodă utilizează o transformare de forma: X  t   Y  t   X 1  t 

în care Y(t) este o matrice pătrată de ordinul n presupusă nesingulară pentru orice t  t 0

Înlocuind transformarea în sistemul de ecuaţii se obţine, după gruparea termenilor:

 dY  t   dX 1
 dt  A  Y  t  
 1 X  t   Y  t    B  E t 
  dt

Deoarece Y(t) nu este specificată, alegerea acesteia se va face astfel încât să se obţină
simplificarea rezolvării ecuaţiei. Ca urmare Y(t) se determină astfel încât paranteza
pătrată din membrul stâng al ecuaţiei să fie zero. Următoarea succesiune de calcule va
conduce la obţinerea soluţiei ecuaţiei.
dY  t 
Se rezolvă mai întâi ecuaţia:  A Y t  0
dt

care este o ecuaţie diferenţială omogenă având ca necunoscută matricea Y(t). După
rezolvarea acestei ecuaţii rezultatul va fi introdus în ecuaţia:

dX 1
 Y  t  1  B  E  t 
dt

care poate fi rezolvată prin integrare directă de la t0 la t.


dY  t 
Presupunem că ecuaţia  A Y  t   0 a fost rezolvată
dt

dX 1
prin integrarea ecuaţiei  Y  t  1  B  E  t  se obţine:
dt

t t t
dX 1
 dt  dt   Y    1
 B  E     dt adică X 1  t   X 1  t0    Y    1  B  E    dt
t0 t 0 t0

Utilizând relaţia X  t   Y  t   X 1  t  se poate obţine relaţia de legătură între matricile


valorilor iniţiale:

X  t 0   Y  t0   X 1  t0  sau X 1  t0   Y  t0  1  X  t0 

Existenţa acestei egalităţii impune pentru matricea Y(t) o condiţie iniţială nesingulară de forma:
Y  t0   U în care s-a notat cu U matricea unitate de ordinul n.

Pe de altă parte, mai rezultă că: X 1  t   Y  t  1  X  t 


Prin premultiplicarea ecuaţiei
t
X 1  t   X 1  t0    Y   1  B  E    dt cu Y  t  1
t0

şi ţinând seama de relaţiile:

X 1  t   Y  t  1  X  t  X 1  t0   Y  t0  1  X  t0 

Se obţine
t
X  t   Y  t   Y  t0  1  X  t0    Y  t  1  Y    1  B  E     dt
t0

Utilizând notaţia simbolică Y  t   Y    1   t   relaţia devine:

t
X  t    t  t0   X  t0     t     B  E    dt
t0
dX  t 
care reprezintă soluţia ecuaţiei diferenţiale neomogene iniţiale  A  X  t   B  E t 
dt
a cărei rezolvare completă necesită rezolvarea dY  t 
 A Y t   0
în prealabil a ecuaţiei diferenţiale omogene dt
Exponenţiala matricială
dY  t 
Pentru stabilirea soluţiei ecuaţiei diferenţiale omogene  A Y t   0
dt
vom considera ecuaţia diferenţială omogenă scalară:

dy
 a  y  0 în care a este o constantă.
dt

Presupunem condiţia iniţială ca fiind y  t0   1

a  t  t 0 
Soluţia ecuaţiei scalare este: y  t   e care poate fi verificată prin substituţie directă.

Deoarece forma ecuaţiei matriciale este identică cu a ecuaţiei scalare


A t  t 0 
vom scrie soluţia sub aceeaşi formă: Y t  e

expresie în care apare o exponenţială având o matrice la exponent care


.
poartă denumirea de exponenţială matricială.
Valoarea exponenţialei matriciale va fi definită utilizând expresia de
dezvoltare în serie a unei exponenţiale scalare, astfel:


Ak  t k A2  t 2 A3  t 3 Ak  t k
e At
 U  At       
k 0 k ! 2 ! 3 ! k !

At
Deoarece A este o matrice pătrată de ordinul n, rezultă că şi e

este tot o matrice pătrată de ordinul n


Exemplu
2 0
Fie: A  ;
  2  1

2 4 0 38 0
şi A   ; A  
  2 1    6  1

atunci

At 1 0  2 0  4 0 t 2  8 0  t3
e    t        
0 1  2  1  2 1 2!  6  1 3!

deci
 2 4 3 
1  2  t  2  t   t     0 
e At  3
1 2 1 3 
  2 t  t  t  
2 3
1  t   t   t    
 2 3 

Aşa cum rezultă din relaţia de definiţie şi din exemplul precedent exponenţiala matricială este
reprezentată de o sumă infinită.
Se poate obţine o formă echivalentă cu termeni finiţi utilizând transformata Laplace.

Pentru simplificare considerăm t0  0 , ca urmare rezultă:

A t  t 0 
Y t  e  e At

de asemenea avem în vedere condiţia Y  t 0   U

dY  t 
Aplicând transformata Laplace, ecuaţia  A Y t   0
dt
se transformă astfel:

s  Y  s   Y  0  A  Y  s   0

sau  s  U  A  Y  s   Y  0  sau  s  U  A  Y  s   U

din care rezultă expresia transformatei Laplace


Y  s    s  U  A
1
Efectuând transformarea inversă se obţine expresia exponenţialei matriciale în termeni finiţi, ca

fiind:
Y  t   e At  L1 s  U  A 
1

Exemplu

 2 0 1 0  2 0  s  2 0 
s U  A  s   
  
  s  1
Dacă A    atunci
  2  1 0 1  2  1  2

1 s  1 0 
Inversa matricei precedente se calculează astfel:  s  U  A 1

 s  2   s  1   2 s  2

 1   1 
 0   0 
 s2  s2
adică  s  U  A  
 
 sau  s U  A  
1 1

 2 1   2 2 1 
  s  2    s  1 
s  1  3   s  1 3   s  2  s  1
sau

 1 
 0 
 s2 
 s  U  A  
1

 2 
2 1 
 3   s  1 3   s  2  s  1

Efectuând transformata inversă, se obţine

 2t

 e 0 
 L1  s U  A    
1
e At
 
  e  e  e 
2  t 2t  t
 3 

Prin descompunerea în serie a elementelor matricii rezultat se obţine o expresie identică cu cea
obţinută la precedentul exemplu.
At
Se demonstrează că fiecare din elementele matricei e converge către o funcţie continuă de t,

pentru orice t finit şi uniform, pentru orice interval de timp finit.

Ca urmare, diferenţierea termen cu termen a seriei este permisă. Rezultă:

d At A3  t 2 A4  t 3  A 2 2
 t A3 3
t 
2
e  A  A t        A  U  A  t       
dt 2! 3!  2! 3! 

deci d At
e  A  e At
dt

ca urmare formula de derivare a exponenţialei matriciale este aceeaşi ca pentru


exponenţiala scalară
A t  t 0 
Acest rezultat permite concluzia că valoarea Y t  e

dY  t 
este soluţia unică a ecuaţiei  A Y t   0
dt

cu condiţia iniţială Y  t0   U

Ak  t k A2  t 2 A3  t 3 Ak  t k
Utilizând relaţia: e At   U  At       
k 0 k ! 2 ! 3 ! k !

putem scrie:

e  At


  1 k  Ak  t k  U  At 
A2  t 2 A3  t 3
   
  1 k  Ak  t k
 
k 0 k! 2! 3! k!

Efectuând produsul relaţiilor, rezultă că: e At  e  At  U

ca urmare inversa matricii e At este matricea e  At

Acest rezultat justifică notaţia introdusă anterior:   t    e A t   

deoarece: Y  t   Y   1  e At  e  A  e A t   


t
A t  t 0 
Prin urmare se poate nota: X t  e  X  t0    e A t     B  E     dt
t0

formă care permite deducerea unei relaţii prin care să fie efectuată integrarea numerică.
t
A  t  t 0 
X t  e  X  t 0    e A  t     B  E     d t
t0

 
n
A nt 
X  n  t   e  X  0    e A nt  k t   B  E  k  t   t
k 1

separând ultimul termen al sumei, rezultă:

 
n 1
A nt 
X  n  t   e  X  0    e A n  k  t  B  E  k  t   t B  E  n  t   t
k 1
Mărimea e A t se dă factor comun forţat între primii doi termeni,
ca urmare se obţine:

    B  E n  t   t
 A n 1 t n 1
X  n  t   e At
e  X  0    e A n  k 1 t  B  E  k  t   t
 k 1 

prin urmare se poate scrie formula de recurenţă:

X  n  t   e At  X   n  1  t   B  E  n  t   t , n  1, 2, 3, ...

care permite integrarea numerică a relaţiei:

t
A t  t 0 
X t  e  X  t0    e A t     B  E     dt
t0

S-ar putea să vă placă și