Sunteți pe pagina 1din 280

Erori

0. Erori

0.1. Tipuri i surse de erori


De regul, n matematic, prin eroare se nelege diferena dintre valoarea exact a unui numr i valoarea sa aproximativ. Se disting trei tipuri de erori. 1. Erorile inerente sunt cele care provin din simplificarea modelului fizic, pentru a putea fi descris printr-un model matematic. n aceast categorie intr i erorile de date (aparatele de msur lucreaz inevitabil cu anumite abateri) . 2. Erorile de metod (trunchiere) apar datorit faptului c formulele i ecuaiile exacte se nlocuiesc cu formule i ecuaii aproximative, pentru a permite calculul printr-un numr finit de operaii aritmetice. De exemplu, numrul e este suma seriei 1 1 1 1 + + + ... + + ... , care nu poate fi calculat exact. nsumnd numai un numr 1! 2! n! finit de termeni apare n mod inevitabil o eroare de trunchiere. 3. Erorile de rotunjire se datoreaz faptului c n calcule, numerele cu un numr infinit de zecimale se aproximeaz prin numere cu un numr finit de zecimale. Pe de alt parte, orice calculator opereaz doar cu un numr finit de numere reale (evident cu un numr finit de zecimale), n timp ce mulimea numerelor reale este infinit. Apare astfel o aproximare inevitabil a numerelor reale care intervin n calcule cu numerele reprezentate n calculator. n acest capitol sunt analizate erorile inerente i erorile de rotunjire, urmnd ca erorile de trunchiere s fie studiate pe parcursul crii, odat cu prezentarea metodelor numerice respective.

Bazele Analizei Numerice

0.2. Reprezentarea numerelor n calculator


La baza construciei majoritii tipurilor de calculatoare numerice stau elementele bistabile i de aceea se folosete ca baz de reprezentare a numerelor n calculator baza 2, ale crei cifre sunt 0 i 1. Este cunoscut c orice numr real x se poate reprezenta n baza 2 sub forma: x = ( n 2 n + n 1 2 n 1 + ... + 0 2 0 + 1 2 1 + 2 2 2 + ...) , cu i = 0 sau 1 . De exemplu numrul 13.5 n baza 10 se poate scrie n baza 2 sub forma:

13.5 = 1 2 3 + 1 2 2 + 0 2 + 1 2 0 + 1 2 1 = 1101.1 Reprezentarea numerelor n calculator (reprezentarea intern) se face pe un numr finit de poziii, n , numit lungimea cuvntului, care este fixat la construcia calculatorului. Pentru precizii mai bune, unele calculatoare au posibilitatea reprezentrii numrului pe 2n, 3n , poziii (reprezentare pe dublu cuvnt, triplu cuvnt, ). Pe cele n poziii ale unui cuvnt, un numr poate fi reprezentat n virgul fix (proprie numerelor ntregi sau numerelor subunitare) sau n virgul mobil. Majoritatea tipurilor de calculatoare numerice folosesc pentru calcule tiinifice reprezentarea numerelor n virgul mobil. n aceast reprezentare, poziia virgulei zecimale nu este fix. Orice numr real x se poate scrie sub forma x = a 10b sau x = a 2b cu a < 1 i b Z ; a se numete mantisa numrului real x, iar b exponentul. Reprezentarea n virgul mobil este normalizat dac prima cifr a mantisei este nenul, deci dac a 10 1 , respectiv a 2 1 . n acest caz reprezentarea este unic. Cifrele semnificative ale unui numr sunt cifrele mantisei, nelund n seam zerourile care le preced.
Exemplul Reprezentarea normalizat, n virgul mobil a numrului n baza 10 x = 13.5 este: 0.135 10 2 = 0.13510 2 , indicele 10 artnd c reprezentarea este n baza 10. n acest caz mantisa este a = 0.135, iar exponentul b =2. n baza 2, acelai numr are reprezentarea normalizat n virgul mobil 0.110112100 = 0.11011 2 4 , avnd mantisa a = 0.11011 i exponentul b = 100.

Pentru orice calculator numeric exist numerele fixe t i e care reprezint numrul de cifre ale mantisei, respectiv ale exponentului unui numr real ce poate fi reprezentat n calculatorul respectiv (n = t + e). Numerele t i e determin

Erori

mpreun cu baza de numeraie (10 sau 2) o mulime finit de numere reale F R care pot fi reprezentate exact n calculator.

0.3. Erorile de rotunjire i calculele n virgul mobil


Deoarece mulimea F a numerelor reprezentabile ntr-un calculator este finit, se pune problema aproximrii unui numr real x F printr-un numr g F . Aceast problem apare nu numai n datele de intrare n calculator, ci i pentru rezultate intermediare sau finale n urma calculelor efectuate n calculator. x nu fac parte din Sunt frecvente cazurile cnd x, y F i x y sau x y sau y mulimea F. n mod natural, orice numr x F se aproximeaz printr-un numr din F, notat cu rd (x ) , care este cel mai apropiat numr de x ce aparine lui F. Numrul rd (x ) va satisface x rd ( x ) x g , g F , obinndu-se n multe cazuri prin rotunjire.
Exemplul 1. Fie un calculator cu t = 4 i e = 1. Atunci rd (0.1428510 0 ) = 0.142910 0 rd (3.1415910 0 ) = 0.3142101 rd (0.14284210 2 ) = 0.142810 2 .

n general, pentru t fixat, dac x F , rd (x ) se poate determina astfel. Se aduce x la forma normalizat x = a 10b , cu a 10 1 , adic a = 0.1 2 ... i i +1... , 0 i 9 , 1 0 . Se determin
def 0. ... , dac 0 t +1 4 a' = 1 2 t , t 0.1 2 ... t + 10 , dac t +1 5 adic t crete cu 1 dac t +1 5 i se renun la celelalte zecimale ncepnd cu t +1 .

n final, definim rd ( x ) = sign ( x ) a '10 b .

~ rd ( x ) x . Pentru orice numr real x 0 , eroarea relativ este raportul x

Deoarece a 10 1 , eroarea relativ admite urmtoarea margine

Bazele Analizei Numerice

~ rd ( x ) x 5 10 (t +1) 5 10 t . x a ~ Notm eps = 5 10 t . Dac rd ( x ) = x(1 + ) , atunci, din inegalitatea de mai sus

rezult eps . Numrul real eps se numete precizia calculatorului. Pentru rotunjirea n sistemul binar se procedeaz analog. Se aduce x F la forma normal x = a 2b cu 2 1 a < 1 i a = 0.1 2 ... i i +1... cu i = 0 sau 1 i 1 = 1 .

dac t +1 = 0 0.1 2 ... t , ~ , iar rd (x ) = sgn ( x ) a '2 b . n Se determin a' = t 0.1 2 ... t + 2 , dac t +1 = 1
~ ~ n cazul n care rd (x ) F , atunci rd (x ) este chiar rd (x ) . Deoarece numrul poziiilor pentru exponentul e este finit, exist , din pcate, numere ~ x F pentru care rd (x ) F .
Exemplul 2. Considerm t = 4 i e = 2. Atunci ~ a) rd (0.3179410110 ) = 0.317910110 F ~ b) rd (0.999971099 ) = 0.100010100 F ~ c) rd (0.01234510 99 ) = 0.123510 100 F ~ d) rd (0.5432110 110) = 0.543210 110 F n cazurile a) i b) exponentul pozitiv este prea mare ca s poat fi reprezentat pe spaiul alocat (e = 2). n situaiile acestea se spune c avem depire superioar a exponentului. n cazul b) depirea superioar a exponentului apare abia dup rotunjire. n exemplele c) i d) are loc depire de exponent inferioar, adic exponentul negativ este prea mic pentru a putea fi reprezentat pe spaiul alocat. n aceste dou situaii, depirea inferioar a exponentului poate fi prevenit definind rd (0.01234510 99 ) = 0.012310 99 F (reprezentarea nu mai este normalizat) i rd (0.5432110 110 ) = 0 F . Atunci rd nu satisface egalitatea rd (x ) = x(1 + ) , deci eroarea relativ poate fi mai mare ca eps. Situaiile de depire de exponent superioar sau inferioar sunt tratate de calculatoarele numerice ca fiind excepii. ~ n mod obinuit, rd (x ) se definete prin egalitatea rd ( x ) = rd (x ) .

acest caz eps = 2 t .

n continuare, innd seama c depirile de exponent superioare i/sau inferioare nu sunt frecvente, vom considera cazul ideal e = i

Erori

rd : R F prin rd (x ) = x(1 + ) cu eps , () x R .

Se poate ntmpla ca rezultatul operaiilor aritmetice x y , x y ,

x s y

nu fie elemente ale mulimii F, chiar dac operanzii x i y F . Vom nota cu + , , , / operaiile n virgul mobil corespunztoare operaiilor aritmetice care sunt definite astfel:

x + y = rd ( x + y ) , x y = rd ( x y ) , x y = rd ( x y ) , x / y = rd ( x / y ) , deci x + y = ( x + y )(1 + 1 ) , x y = ( x y )(1 + 2 ) , cu i eps, i = 1,4 . x y = ( x y )(1 + 3 ) , x / y = ( x / y )(1 + 4 ) . Aceste operaii n virgul mobil nu au proprietile binecunoscute ale operaiilor aritmetice. De exemplu: eps x , unde x, y F , iar B este baza de 1) x + y = x , dac y < B numeraie. Precizia mainii eps ar putea fi definit ca fiind cel mai mic numr g F pentru care 1 + g > 1 , adic eps = min{ g F 1 + g > 1, g > 0} . 2) Asociativitatea nu se mai pstreaz, aa cum va rezulta din urmtorul exemplu.
Exemplul 3. Fie a = 0.2337125810 4 , b = 0.33678429 10 2 , c = 0.3367781110 2 .
def def def

def

pentru orice x, y F

ntr-un calculator cu t = 8 i e = , operaia

a + b + c = 0.2337125810 4 + 0.61800000 10 3 =

+ conduce la:

(a + b)+ c = (0.2337125810 4 + 0.3367842910 2) 0.3367781110 2 = = (0.0000002310 2 + 0.3367842910 2 ) 0.3367781110 2 =


= 0.3367845210 2 0.3367781110 2 = 0.6410000010 3 Rezultatul exact al adunrii este:

= 0.0233712610 3 + 0.6180000010 3 = 0.6413712610 3

Bazele Analizei Numerice

a + b + c = 0.0000002337 125810 2 + 0.33678429 10 2 0.3367781110 2 = = 0.641371258 10 3 .

Dac E este o expresie aritmetic, va rezulta din context cum se evalueaz E. Dac este nevoie se pot folosi paranteze care s precizeze ordinea operaiilor. Vom nota cu fl (E ) valoarea expresiei E obinut din calculul n virgul mobil. De exemplu:
fl (x + y ) = x + y
def

fl ( x + ( y + z )) = x + y + z fl ((x + y ) + z ) = x + y + z
def

def

0.4. Propagarea erorilor


Aa cum am vzut n Exemplul 3 din paragraful precedent, n funcie de schema aleas pentru evaluarea unei expresii am obinut rezultate diferite n calcule n aritmetica virgulei mobile. De aceea este necesar s distingem ntre diferitele scheme de calcul, chiar dac din punct de vedere matematic ele sunt echivalente. Desemnm cu termenul algoritm o secven finit de operaii elementare care descriu cum se calculeaz soluia unei probleme. n cele ce urmeaz vom formaliza noiunea de algoritm, pentru a putea descrie propagarea erorilor. Presupunem c numerele y1 , y 2 ,..., y m constituie soluia unei probleme ale crei date de intrare sunt x1 ,..., x n . Dac introducem vectorii coloan

x1 y1 x2 y2 x= , y = , atunci algoritmul pentru rezolvarea problemei de mai sus M M x y n m


revine la determinarea funciei vectoriale y = (x ) , : D R m , D R n , fiind dat de m funcii i : D R , yi = i ( x1 ,..., x n ) , i = 1, m . La fiecare etap de calcul exist o mulime operand de numere, care sunt fie numerele de intrare xi sau au rezultat din operaii anterioare. O operaie elementar calculeaz un nou numr din unul sau mai multe elemente ale mulimii operand. Acest nou numr este, fie un rezultat intermediar, fie unul final i se adaug mulimii operand, care este curat de datele care nu mai sunt necesare

Erori

elementar astfel: (i ) : Di R ni +1 , Di R ni astfel nct (i ) x (i ) = x (i +1) cu

pentru restul calculelor. Mulimea operand final va consta din rezultatele dorite y1 , y 2 ,..., y m . n concluzie, o operaie corespunde unei transformri a mulimii operand. Scriind mulimile operand consecutive ca vectori coloan x (i ) 1 (i ) (i ) x 2 x = R ni , putem asocia fiecrei operaii elementare o funcie vectorial M (i ) xn i

x (0 ) = x , unde x (i +1) este o reprezentare vectorial a mulimii operand transformate. Fiind dat un algoritm, irul su de operaii elementare d natere unei descompuneri a lui ntr-un ir de funcii elementare (i ) : Di Di +1 , i = 0, r ,
Dj R
nj

( )

, = (r ) o (r 1) o ... o (0 ) , D0 = D , Dr +1 R nr +1 = R m .

Exemplul 1. Pentru (a, b, c ) = a + b + c s evideniem doi algoritmi: a) Fie = a + b i y = c + . Atunci, descompunerea de mai sus este:

(0 ) (a, b, c ) =

a + b (1) (0 ) (1) 2 R , (u , v ) = u + v R , (a, b, c ) = (a, b, c ) . c b) Fie = b + c i y = a + . n acest caz: a (1) (0 ) (1) 2 R , (u , v ) = u + v R , (a, b, c ) = (a, b, c ) . b + c

(0 ) (a, b, c ) =

Un argument pentru alegerea unui algoritm l constituie propagarea erorilor n aritmetica virgulei mobile. S analizm algoritmii a) i b) din exemplul de mai sus pentru intrrile numerice din Exemplul 3 al seciunii precedente. n cazul a) = fl ( a + b) = ( a + b)(1 + 1 ) , ~ y = fl ( + c ) = ( + c )(1 + 2 ) = [( a + b)(1 + 1 ) + c](1 + 2 ) =

a+b = (a + b + c) 1 + 1 (1 + 2 ) + 2 . + + a b c ~ y y + a b = 1 (1 + 2 ) + 2 , sau, dup y , y = Eroarea relativ a lui ~ y a+b+c a+b 1 + 1 2 . renunarea la termenii neliniari n avem y a+b+c

Bazele Analizei Numerice

Coeficienii lui 1 i 2 msoar efectul erorilor de rotunjire 1 i 2 asupra erorii y a rezultatului.

a+b este critic; n funcie de care dintre numerele a + b a+b+c sau b + c este mai mic, este mai bine s se procedeze via (a+b)+c dect a+(b+c) pentru a calcula a+b+c. Metoda de mai sus, de studiu a propagrii erorilor, neglijnd termenii de ordin superior, se poate extinde, conducnd la analiza diferenial a erorilor unui algoritm , pentru a calcula ( x) , dac = (r ) o (r 1) o ... o (0 ) . Pentru aceasta vom investiga cum erorile x asupra datelor de intrare, ca i erorile de rotunjire acumulate de-a lungul algoritmului afecteaz rezultatul final y = (x ) . 1 ( x1 ,..., x n ) m M Fie : D R , ( x) = , D fiind o submulime deschis ( x ,..., x ) n m 1 n a lui R . Presupunem c funciile , i = 1, m , au derivate continue pe D. Fie ~ x o
Factorul
i

valoare aproximativ pentru x. Notm x = ~ x x , x i = ~ xi xi erorile absolute ale lui ~ x i respectiv ~ xi . ~ x i xi , dac xi 0 erorile relative. Fie ~ xi = xi x , obinem ~ nlocuind datele de intrare x cu ~ y = (~ x ) n loc de y = ( x ) . Dezvoltnd n serie Taylor i renunnd la termenii neliniari n xi obinem: n n i (x ) = i (x ) x j , i = 1, m . y i y i = i (~ x ) i (x ) = ~ xj xj yi = ~ x j j =1 j =1 x j

Matriceal putem scrie:

y = D (x )x , unde D (x ) este matricea jacobian a funciei ,

Cantitile

i (x ) semnific modul n care x j

1 1 ( x) ... ( x) x x 1 n ... ... . D ( x) = ... m m ( x) ... ( x) x1 x n


yi

sunt afectai de erorile

absolute x j ale lui x j .

Erori

Dac y i 0, i = 1, m i x j 0, j = 1, n atunci formula pentru propagarea erorilor relative devine: n xj i ( x) yi = xj (1) xj j =1 i ( x) Cantitile

x j i se numesc numere de condiionare. i x j

Dac numerele de condiionare au valori (absolute) mari se spune c respectiva problem este ru condiionat, altfel problema este bine condiionat. Pentru problemele ru condiionate, erori relative mici n datele de intrare x, pot cauza erori relative mari n rezultatele y , y = ( x ) .
Exempul 3. Pentru y = (a, b, c) = a + b + c avem: a b c y = a + b + c . a+b+c a+b+c a+b+c Aceast problem este bine condiionat dac termenii a, b, c sunt mici n comparaie cu suma lor a+b+c .

Eroarea relativ (1) pentru cteva operaii elementare, n care operanzii x i y sunt nenuli, este dat n tabelul:

x+y xy x y

y x x + y , dac x + y 0 x+ y x+ y
x y x y , dac x y 0 x y x y x +y

x/ y
x

x y
1 x 2

Se observ c la nmulire, mprire i extragere de rdcin ptrat erorile relative ale operanzilor nu se propag puternic n rezultate. Acelai lucru se ntmpl i n cazul adunrii dac cei doi operanzi au acelai semn. Atunci x y numerele de condiionare sunt n (0,1) i o margine a erorii i x+ y x+ y relative este x + y max{ x , y } .

10

Bazele Analizei Numerice

Dac operanzii care se adun au semne diferite, atunci cel puin unul dintre x y este mai mare ca 1 i erorile relative numerele de condiionare , x+ y x+ y

x , y sunt amplificate. Dac

x y atunci se abandoneaz calculele (apare

cancelarea rezultatului). Pentru descrierea propagrii erorilor de rotunjire ntr-un algoritm dat , vom apela tot la formula y = D ( x) x .
Presupunem c admite reprezentarea = ( r ) o ( r 1) o .... o ( 0) i c rezultatele calculelor pornind de la vectorul datelor de intrare, x = x (0) sunt date de relaiile:

x = x (0) , x (1) = (0) ( x (0) ) ,, y = x ( r +1) = ( r ) ( x ( r ) ) , (i ) C 1 ( Di ) , i = 0, r .


Notm (i ) = ( r ) o .... o (i ) : Di R m , i = 0, r i (0) = . Erorile din datele de intrare i erorile de rotunjire vor perturba rezultatele intermediare exacte x(i), obinndu-se n aritmetica virgulei mobile aproximrile ~ x (i ) date de relaiile : ~ x (i +1) = fl ( (i ) ( ~ x (i ) )) . Atunci erorile absolute se pot evalua astfel: Dar

x (i +1) = [ fl ( ( i ) ( ~ x ( i ) )) ( i ) ( ~ x ( i ) )] + [ ( i ) ( ~ x ( i ) ) ( i ) ( x ( i ) )] .
(i ) ( ~ x ( i ) ) ( i ) ( x ( i ) ) D ( i ) ( x ( i ) ) x ( i )
fl ( (i ) (u )) = rd ( (i ) (u )) ,

(2) (3).

Cum (i ) este o funcie elementar, evaluarea sa n virgul mobil va fi care pe componente devine:

fl ( (ji ) (u )) = rd ( (ji ) (u )) = (1 + j ) (ji ) (u ) cu j eps, j = 1, ni +1 .


Aici j este eroarea de rotunjire generat n timpul calculului n virgul mobil a componentei a j-a, a lui (i ) . Relaiile de mai sus se scriu matriceal sub forma fl ( (i ) (u )) = ( I + E i +1 ) (i ) (u ) , unde I este matricea unitate de ordinul ni+1 , iar Ei+1 este matricea diagonal a erorilor: 0 1 0 ... ... 0 0 2 0 ... cu j eps . E i +1 = ... ... ... ... ... 0 0 ... ... n i +1 Prima parantez dreapt din x (i +1) devine:

Erori

11

fl ( (i ) ( ~ x ( i ) )) ( i ) ( ~ x ( i ) ) = Ei +1 ( i ) ( ~ x ( i ) ) Ei +1 (i ) ( x ( i ) ) = Ei +1 x ( i +1) = i +1 . Vectorul coloan i +1 poate fi interpretat ca eroarea absolut de rotunjire aprut


atunci cnd se evalueaz n aritmetica virgulei mobile (i ) , iar elementele diagonale ale matricei Ei+1 pot fi interpretate ca erori relative de rotunjire corespunztoare. innd seam de (2) i (3) rezult: x (i +1) = i +1 + D (i ) ( x (i ) ) x (i ) = E i +1 x (i +1) + D (i ) ( x (i ) ) x (i )
i 0, x (0) = x . Prin urmare:

x (1) = D (0) ( x) x + 1 x ( 2) = D (1) ( x1 )[ D (0) ( x) x + 1 ] + 2 . y = x ( r +1) = D ( r ) ...D (0) x + D ( r ) ...D (1)1 + ... + r +1 . Sau dac inem seama de ceea ce am notat cu avem:

y = D ( x)x + D (1) ( x (1) ) 1 + ... + D ( r ) ( x ( r ) ) r + r +1 = = D ( x)x + D (1) ( x (1) ) E1 x (1) + ... + D ( r ) ( x ( r ) ) E r x ( r ) + E r +1 y


Aceasta arat c matricea jacobian D ( i ) este important pentru efectul erorilor de rotunjire intermediare i sau Ei asupra rezultatului final.
Exemplul 5 . Fie de calculat expresia a 2 b 2 = ( a + b)(a b) . Vom prezenta 2 algoritmi: Algoritmul 1:

a2 , 1 = a a , 2 = b b , y = 1 2 . Atunci (0) (a, b) = b u ( 2) ( 2) o (1) o (0) . (1) (u , v) = v2 , ( s, t ) = s t , = Algoritmul 2: a ( 0) 1 = a + b , 2 = a b , y = 1 2 . Atunci (a, b) = b a + b

(1) (a, b, u ) =
n primul caz avem:

u ( 2) ( 2) (1) (0) ; ( s, t ) = s t , = o o . a b

2 2 a (1) 2 2 a ( 2) a (3) x = x ( 0) = b , x = , x = 2 , x = y = a b , b b

12

Bazele Analizei Numerice

(1) (u , v) = u v 2 , ( 2) (u , v ) = u v , D ( x) = ( 2a,2b) ,
D (1) ( x (1) ) = (1, 2b) , D ( 2) ( x ( 2) ) = (1, 1) ,

1 =

1a 2 1 0 , E1 = , 0 0 0

a a a 2 (eroarea de rotunjire n deoarece fl ( (0) ( x (0) )) (0) ( x (0) ) = b b virgul mobil apare doar pe prima poziie). Similar 0 0 0 2 2 2 = b2 , E 2 = 0 , 3 = 3 (a b ) , i eps, i = 1,3. 2 2
a 2 2 2 2 Dac x = b , y = 2aa 2bb + a 1 b 2 + ( a b ) 3 . n cazul algoritmului 2, avem: a (1) a + b ( 2) (1) 2 2 x = x (0) = b a b ,x = , x = y = a b ; (u , v) = u v ,

1 ( a + b) D ( x) = (2a,2b) , D (1) ( x (1) ) = ( a b, a + b) ; 1 = ( a b) , 2 1 0 2 = 3 (a 2 b 2 ) i E1 = 0 ; i eps . 2


Atunci y = 2a a 2b b + ( a 2 b 2 )( 1 + 2 + 3 ) . Se poate da o margine a efectului erorilor de rotunjire astfel: - n algoritmul 1:
a 21 b 2 2 + ( a 2 b 2 ) 3 ( a 2 + b 2 + a 2 b 2 ) eps

- n algoritmul 2:
( a 2 b 2 )(1 + 2 + 3 ) 3 a 2 b 2 eps.

Cnd selectm un anumit algoritm de calcul pentru un ( x ) (cu alte cuvinte, o anumit descompunere a lui n funcii elementare), D rmne neschimbat; matricele jacobiene D (i ) care msoar propagarea rotunjirilor vor fi totui diferite, efectul total al erorilor de rotunjire va fi: D (1) 1 + ... + D ( 2) 2 + r +1 . Un algoritm este numeric mai bun dect alt algoritm pentru calculul lui ( x ) , dac pentru o mulime de date x, efectul total al erorilor de rotunjire este mai mic n cazul primului algoritm.

Sisteme de ecuaii liniare

13

1. Sisteme de ecuaii liniare


Reamintim c un sistem de n ecuaii algebrice liniare cu n necunoscute este de forma: a11x1 + a12 x2 + K + a1n xn = b1 a21x1 + a22 x2 + K + a2n xn = b2 (1) .................... an1 x1 + an 2 x2 + K + ann xn = bn Dac notm cu A matricea coeficienilor, cu x vectorul coloan format cu necunoscutele sistemului i cu b coloana termenilor liberi, sistemul (1) se scrie sub form matriceal : Ax=b, (2) unde: a11 a12 K a1n x1 b1 a21 a22 L a2n x2 b A= x= , b= 2 , M M M M M a n1 an 2 K ann xn bn Metodele numerice de rezolvare a sistemelor algebrice de ecuaii liniare sunt de dou tipuri: metode directe i metode indirecte (sau iterative). Metodele directe constau n transformarea sistemului (1) ntrun sistem triunghiular echivalent, care se rezolv uor. Cele mai cunoscute metode directe sunt: metoda Gauss, metoda Cholesky (utilizat pentru sistemele n care matricea A este simetric i pozitiv definit) i metoda Householder. Metodele directe permit determinarea soluiei exacte a sistemului n cazul ideal, cnd nu avem erori de rotunjire. Numrul operaiilor aritmetice efectuate este de ordinul n3. Pentru sisteme cu un numr de ecuaii mai mare de 100, metodele directe devin inutilizabile datorit acumulrii erorilor de rotunjire care altereaz soluia. Metodele indirecte (sau iterative) constau n construcia unui ir {x(k)} de vectori ndimensionali, care converge la soluia exact a sistemului. Se alege ca

14

Bazele Analizei Numerice

soluie aproximativ a sistemului un termen x(s) al irului, al crui ordin depinde de precizia impus. O iteraie presupune efectuarea unui numr de operaii aritmetice de ordinul n2. Metodele iterative sunt utilizate la rezolvarea sistemelor mari de ecuaii. Cele mai cunoscute metode iterative sunt: Jacobi, GaussSeidel, metodele de relaxare.

1.1. Metoda Gauss. Factorizarea LU


Fie

0 0 M M 0 i e = 1 mr = r mr +1,r 0 M M 0 mn , r (elementul 1 din er se afl pe linia r). O matrice de forma Mr = In mrer T, unde erT= (0, ... , 1, ... ,0) , se numete matrice Frobenius. O astfel de matrice are urmtoarea structur: 0 0 L 0 1 O 0 1 0 L Mr = 0 L mr +1,r 1 L 0 M 0 L m 0 L 1 nr De exemplu, dac n = 4 i r = 2 , avem: 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 (0 1 0 0) = = M2 = 0 0 1 0 0 m32 0 0 0 0 1 0 m32 0 0 0 1 0 m 0 0 0 1 m 42 0 0 42 0 0 0 1 1 0 0 0 = 0 m32 1 0 0 m 0 1 42

Sisteme de ecuaii liniare

15

Propoziia 1. Orice matrice Frobenius Mr este inversabil i inversa sa este: Mr1 = In + mr erT. Demonstraie. (In mr erT)( In + mr erT)= In mr erT + mr erT mr (erT mr ) erT. Deoarece erT mr = 0 , rezult: Mr (In + mr erT) = In, i deci Mr1 = In + mr erT. Teorema 1. Fie A o matrice ptrat de ordinul n care satisface condiia: a11 K a1r M 0 pentru orice r = 1, n 1 . (*) det M a r1 K arr Atunci exist o matrice inferior triunghiular MM n(R) astfel nct matricea = MA este superior triunghiular. Demonstraie. Deoarece a110 , putem considera matricea Frobenius 0 K 0 1 a 21 1 0 K 0 a . M 1 = 11 M M a n1 0 K 1 a 11 Dac notm A1 = A i A2 =M1A1 , atunci avem a ( 2 ) a ( 2) K a ( 2) 11 12 1n ( 2) ( 2) 0 a22 K a2 n , A2 = M M M ( 2) 0 ( 2) an 2 K ann

unde, notnd cu j = 1, n ;
( 2) aij

(1) aij = aij,

pentru i, j = 1, n , ,

avem:

( 2) (1) a1 j = a1 j

pentru

(1) = aij

1) (1) ai(1 a1 j (1) a11

pentru orice i, j = 2, n .

Observm c
( 2) a22 = a22

a21a12 a11

1 a11

a11 a12 0. a21 a22

Dac notm

16

Bazele Analizei Numerice

0 1 1 0 ( 2) a32 0 ( 2) a22 M2 = M M ( 2) an 2 0 ( 2) a22 atunci


a (3) 11 0 A3 = M 2 A2 = 0 M 0
(3) a12 (3) a22

0 K 0 0 K 0 1 K 0 , M M 0 K 1
(3) (3) K a1 a13 n (3) (3) K a2 a23 n (3) (3) , a33 K a3n M M (3) 0 K ann

0 M 0

unde

(3) aij

( 2) = aij

pentru i=1, 2, j = 1, n i

) ai(3 j

ai( 2j )

2) ( 2) ai(2 a2 j ( 2) a22

, i, j = 3, n .

Un calcul simplu ne arat c


(3) a33

a11 a12 = a a22 (1) ( 2) 21 a11 a22 a31 a32 1

a13 a23 0 . a33

(r ) n general, arr 0 i se poate considera matricea Frobenius: 0 0 L 0 1 O 0 1 0 L (r ) ar +1,r Mr = 0 L 1 L 0 . (r ) arr M (r ) 0 L anr 0 L 1 (r ) arr Dac notm cu Ar+1=MrAr , atunci

Sisteme de ecuaii liniare

17

a(r +1) a(r +1) 11 12 (r +1) 0 a22 M M 0 Ar +1 = 0 0 0 M M 0 0 unde


+1) ai(r j ) = ai( r j ,

(r +1) K a1 r (r +1) K a2 r M

(r +1) a1 n (r +1) K a2 n M (r +1) (r +1) K ar r K ar n , (r +1) (r +1) K 0 ar +1, r +1 K ar +1, n . M M M (r +1) (r +1) K 0 an, r +1 K an n

pentru i=1,r , j = 1, n , ai j

( r + 1)

) = ai( r j

) (r ) ai( r a r r j (r ) ar r

i, j = r + 1, n . n final se obine matricea superior triunghiular a ( n) a ( n) K a ( n) 11 12 1n 0 a ( n) K a ( n) 22 2n . U = An = M n1...M 2 M1 A = .M M M 0 ( n) 0 K ann Notm cu M=Mn1 Mn2 ... M2 M1 i demonstraia teoremei este complet.
Exemplu.

5 2 1 8 1 A2 = , 0 18 9 0 5 5 0 0 2 1 1 0 0 1 5 M 2 = 0 1 0 , U = A3 = 0 8 1 , M = M 2 M 1 = 1 1 0 . 7 9 9 9 0 0 1 1 0 4 20 20 20 Considerm sistemul 5 x1 + 2 x2 + x3 = 12 5 x1 6 x2 + 2 x3 = 1 , 4x + 2x + x = 3 1 2 3
2 1 5 A1 = A = 5 6 2 , 4 2 1

1 0 0 1 1 0 M1 = 4 , 0 1 5

18

Bazele Analizei Numerice

a crui soluie este x1=1, x2=2, x3=3. Sub form matriceal sistemul se scrie: 12 Ax=b , unde b = 1 . Acest sistem este echivalent cu urmtorul sistem: 3 (M2M1A)x=(M2M1)b . Efectund calculele obinem 5 x1 + 2 x2 + x3 = 12 8 x2 + x3 = 13 . 9 27 x3 = 4 4 Numrul operaiilor pentru determinarea matricei U i a vectorului Mb

a (r ) Pentru o linie fixat i se calculeaz ir , apoi se fac nmulirile cu (r ) arr


(r ) arj , r + 1 j n , i se adun (r ) aij , r + 1 j n . La fel i cu

bi( r +1) . Sunt

2(nr)+3 operaii elementare pentru fiecare linie i, r + 1 i n , i pentru fiecare (n r )[2(n r ) + 3] operaii. n total vor fi etap r vor fi
r =1

[2(n r )2 + 3(n r )] = 3 n3 + 2 n 2 6 n
n

operaii elementare. Dac adugm i

cele n2 operaii pentru rezolvarea sistemului triunghiular, rezult c numrul de 2 3 7 operaii pentru rezolvarea sistemului Ax=b este n3 + n 2 n . 3 2 6
1 . Din Propoziia 1 rezult c Lr este de n continuare notm cu Lr = M r

forma:
K 0 0 1 K M M M O 0 1 0 K (r ) ar +1,r Lr = 0 0 . L (r ) arr M M M (r ) 0 K anr 0 K 1 (r ) arr Dac notm cu L=L1L2...Ln1, atunci L este o matrice inferior triunghiular de tipul urmtor

Sisteme de ecuaii liniare

19

0 1 1 l L = 21 M M l n1 l n 2

0 K 0 .0 K 0 . M M l n3 K 1

1 1 1 Deoarece A = M 1 M 2 ...M n 1U , rezult c: A=LU (3) Aadar, orice matrice ptratic ce ndeplinete condiia (*) din Teorema 1 admite o descompunere unic de forma (3), unde L este inferior triunghiular avnd elementele de pe diagonala principal egale cu 1 i U este superior triunghiular. Descompunerea (3) este cunoscut sub numele de factorizarea LU.

Algoritmul pentru factorizarea LU { Determinarea matricelor U i L cu pstrarea matricei A } Pentru i:=1,n execut Pentru j:=1,n execut uij:=aij ; dac i=j atunci l i i:=1 altfel l i j:=0 ; sfrit pentru j ; sfrit pentru i ; Pentru r:=1,n1 execut Pentru i:=r+1,n execut Pentru j:=r+1,n execut uir u rj ; uij := uij u rr sfrit pentru j ; u lir := ir ; urr sfrit pentru i ; sfrit pentru r ; Pentru i:=2,n execut Pentru j:=1,i1 execut uij:=0 ; sfrit pentru j ; sfrit pentru i . Algoritmul se afl programat n MATLAB i poate fi apelat cu secvena: [L,U ] = lu ( A) { se afieaz cele dou matrice } n exemplul precedent avem:

20

Bazele Analizei Numerice

1 L1 = 1 4 5 1 A = LU = 1 4 5

0 0 1 0 0 1 0 , L2 = 0 1 0 , 9 0 1 0 1 20 0 0 5 2 1 5 2 1 1 0 0 8 1 = 5 6 2 9 9 4 2 1 1 0 0 20 4

Observaia 1. Dac pivotul este

foarte mic

, adic

(r ) arr << 1 ,

atunci

mpririle la acest pivot produc erori de rotunjire foarte mari, care altereaz soluia. n acest caz se recomand schimbarea pivotului. Se poate alege un nou pivot
(r ) r = a ir = max

sau

r) r = a (jr

{a = max { a

(r ) ij

; r jn

(r ) kl

; r k, l n

} }

Aceasta presupune schimbarea ntre ele a dou linii i eventual i a dou coloane. Algoritmul Gauss pentru rezolvarea sistemelor de ecuaii liniare Pentru r:=1,n1 execut Pentru i:=r+1,n execut Pentru j:=r+1,n execut gsete pivotul conform cu () ; schimb linia i cu linia pivotului i coloana j cu coloana pivotului dac este cazul ; sfrit pentru j sfrit pentru i Pentru i:=r+1,n execut a b bi = bi ir i arr Pentru j:=r+1,n execut air arj ; ; aij = aij arr sfrit pentru j ; sfrit pentru i ; sfrit pentru r ; b xn := n ; ann

Sisteme de ecuaii liniare

21

Pentru i:=n1,1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+aijxj ; sfrit pentru j ; (b s ) xi := i ; aii sfrit pentru i .

1.2. Matrice simetrice pozitiv definite


Reamintim c o matrice simetric se numete pozitiv definit, dac forma ptratic asociat este pozitiv definit. Mai precis, dac A este o matrice simetric, atunci A se numete pozitiv definit dac (x)=xTAx > 0 , pentru orice x0 , unde x = (x1 , x 2 ,..., x n )T . Din Algebra Liniar, se tie c o matrice simetric A, este pozitiv definit dac i numai dac r >0 pentru orice r = 1, n , unde a11 K a1r M . r = det M a r1 K arr n practic aceste condiii sunt greu de verificat pentru matrice de dimensiuni mari. De aceea, n continuare vom prezenta unele condiii necesare, respectiv i suficiente, pentru ca o matrice simetric s fie pozitiv definit.
Propoziia 1. Dac A este o matrice simetric pozitiv definit, atunci: pentru orice i = 1, n , (a) aii > 0

(b) aiiajj>aij2 Demonstraie.


T

pentru orice i, j = 1, n .

+ (a21x1 + a22 x2 + ... + a2n xn )x2 + ... + (an1x1 + an 2 x2 + ... + ann xn )xn innd seama c aij = aji , n continuare avem

a11x1 + ... + a1n xn (x ) = x Ax = (x1 ,..., xn ) M = (a11x1 + a12 x2 + ... + a1n xn )x1 + a x + ... + a x nn n n1 1

22

Bazele Analizei Numerice

(x ) =

aij xi x j =
i =1 j =1

n n

2 a11 x1 + 2a12 x1 x2 +...+ 2a1n x1 xn + 2 + a22 x2 +....+ 2a2n x2 xn + M 2 +ann xn

0 M n particular, pentru x = ei = 1 avem (ei) = aii . Cum este pozitiv definit i M 0 ei 0 , rezult c aii = (ei) > 0 , adic (a). Pentru un numr real oarecare avem (ei+ej)=aii2+2aij+ajj > 0 . (1) Pentru ca inegalitatea (1) s fie adevrat pentru orice R, trebuie ca 2 = 4 aij aii a jj < 0 .

2 < aii a jj pentru orice i, j = 1, n , adic (b). Aadar am demonstrat c aij

Observaia 2. Condiiile care apar n Propoziia 1 sunt doar necesare nu i suficiente. Exemplu.

3 2 2 Matricea A = 2 3 2 satisface condiiile din Propoziia 1, dar nu este 2 2 3 pozitiv definit. ntradevr, 2 2 2 (x ) = 3 x1 + x2 + x3 + 4(x1 x2 x1 x3 + x2 x3 ) . 1 Dac x = 1 , atunci (x)=912=3<0, deci nu este pozitiv definit. 1

Definiia 1. Spunem c matricea A este tare diagonal dominant dac elementele sale satisfac inegalitile:

aii > aij , i = 1, n .


j =1 j i

(d)

Sisteme de ecuaii liniare

23

Dac inegalitile (d) devin egaliti pentru anumii indici, dar nu pentru toi, matricea se numete slab diagonal dominant.
Teorema 1. Fie A o matrice simetric cu urmtoarele proprieti: (i) A este tare diagonal dominant, (ii) aii > 0 pentru i = 1, n . Atunci A este pozitiv definit. Demonstraie. Din condiia (i) rezult c dac x0 , atunci:

(x ) = aii xi2 + aij xi x j > aij xi2 aij xi x j =


i =1 i =1 j =1 j i n n i =1 j =1 j i i =1 j =1 j i

n n

n n

n n

= aij xi xi x j
i =1 j =1 j i

)
)

Deoarece aij=aji avem i inegalitatea:


n n i =1 j =1 j i
n n

(x ) > aij x j x j xi .
Adunnd cele dou inegaliti rezult
2 ( x ) > aij xi x j
i =1 j =1 j i

0.

Aadar, (x) > 0 pentru orice x0 , deci este pozitiv definit.


Definiia 2. Fie M={1,2,...,n}. O matrice A se numete reductibil dac exist dou submulimi S, T M cu proprietile: (i) S , T (ii) ST= (iii) ST=M (iv) aij = 0 pentru orice iS i jT . Matricea A se numete ireductibil dac oricare ar fi submulimile S i T ale lui M cu proprietile (i)(iii), exist i0S i j0T astfel nct ai0 j0 0 .

Cel mai simplu exemplu de matrice reductibil este matricea diagonal. Teorema 2. Fie A o matrice simetric avnd urmtoarele proprieti: (i) A este slab diagonal dominant, (ii) A este ireductibil, (iii) aii > 0 pentru orice i = 1, n .

24

Bazele Analizei Numerice

Atunci A este pozitiv definit. Demonstraie. Procednd ca n demonstraia Teoremei 1, rezult:

( x)

1 n n aij xi x j 2 i =1 j =1
j i

0.

Vom arta c situaia (x)=0 pentru x0 nu poate avea loc. ntradevr, (x) se anuleaz n urmtoarele cazuri: 1) aij = 0 pentru orice ij . Atunci matricea A are forma diagonal i este reductibil. 2) xi = x j = 0 pentru orice i i j.

(x ) = aii 2 + aij xi x j (aii aij ) 2 0 .


i =1 i =1 j =1 j i i =1 j =1 j i

n n

Cum exist cel puin un indice i0 astfel nct

j =1 j i0

ai0 j < ai0i0 , rezult

(x) > 0 pentru x0.


3) aij=0 pentru orice pereche de indici aij0 dac xi = x j 0 . (i,j) pentru care
xi x j i

Fie M={1,2, ... , n} i S = i, j M ; xi = x j 0 . Dac S=M, atunci suntem n cazul 2). Dac S= , atunci xi x j pentru orice i i j i evident (x) > 0 pentru
x0. Aadar, putem presupune c SM (incluziune strict). Dac notm cu T=M \ S atunci S i T satisfac condiiile (i)(iv) din Definiia 2, deci A este reductibil. Exemplu. Fie 2 1 0 0 1 2 1 0 . A= 0 1 2 1 0 0 1 2 Matricea A este simetric, slab diagonal dominant, ireductibil i are elementele de pe diagonala principal strict pozitive. Din Teorema 2 rezult c A este pozitiv definit.

Sisteme de ecuaii liniare

25

Oservaia 2. Teorema 2 este util la stabilirea faptului c anumite matrice care apar n rezolvarea numeric a ecuaiilor cu derivate pariale de tip eliptic sunt pozitiv definite.

1.3. Metoda Cholesky


Fie A o matrice simetric, pozitiv definit i

(x ) = xT Ax = aij xi x j
i =1 j =1
n

n n

forma ptratic asociat. Deoarece a11 > 0 avem:


n a 1j 2 xj + (x ) = a11x1 + 2a12 x1x2 +...+ 2a1n x1xn + aij xi x j = a11 x1 + i =2 j =2 j =2 a11 n n a1i a1 j (1) (1) + aij xi x j , unde aij = aij , i, j = 2, n a11 i =2 j =2 n 2

Dac notm cu
(1) 1 (x ) = aij xi x j , i =2 j =2 n n

atunci 1 este la rndul su o form ptratic pozitiv definit. z2 ntradevr, s presupunem prin absurd c exist z = M 0 astfel nct z n

1(z) 0.
z1 a1 j z z j i z = 2 . Fie z1 = . j= 2 a11 z n n continuare avem
n
n a 1j ( z ) = a11 z1 + z j + 1 (z ) = 0 + 1 (z ) 0 , j = 2 a11 ceea ce contrazice faptul c este pozitiv definit. Aadar, am demonstrat c 1 este pozitiv definit. n particular, rezult c (1) a22 > 0 . Mai departe procedm cu 1 aa cum am procedat cu i obinem 2

26

Bazele Analizei Numerice

n (1) 1 (x ) = a22 x2 + j =3
unde
n

(1 ) a2 j

x j + 2 (x ) (1) a22

( 2) 2 (x ) = aij xi x j i =3 j = 3

este pozitiv definit. n final (x) se reprezint ca o sum de ptrate. Mai precis (x) admite urmtoarea scriere:
(i 1) n aij (i 1) (x ) = aii xi + xj , (i 1) i =1 j =i +1 aii n 2

unde
( 0) aij

= aij i

( p) aij

( p 1) = aij

p 1) ( p 1) a( a pj pi p 1) a( pp

, p = 1, n 1 .

Introducem notaiile:
(i 1) rii = aii , i = 1, n (i 1) aij

rij =

rii

, i< j j<i

(1)

rij = 0,

( p) ( p 1) aij = aij rpi rpj , p = 1, n 1, i, j = p + 1, n. Cu aceste notaii avem

n (x ) = rij x j = (r11x1 + r12 x2 + ... + r1n xn )2 + (r22 x2 + ... + r2n xn )2 + i =1 j =i


n

+ ... + (rnn xn )2 Dac notm cu R urmtoarea matrice superior triunghiular r11 r12 K r1n 0 r22 K r2 n R= , M M M 0 0 K rnn T T T T atunci (x)=(x R )(Rx)=x (R R)x . Pe de alt parte, (x)=xTAx. Se obine astfel urmtoarea descompunere a matricei A (2) A=RTR

Sisteme de ecuaii liniare

27

unde R este o matrice superior triunghiular. Descompunerea (2) poart numele de factorizarea Cholesky a matricei A i are loc pentru matrice simetrice pozitiv definite. Numrul de operaii pentru determinarea matricei R Pentru a calcula elementele liniei a ia a matricei R sunt necesare (ni)(2i1)+2i 2 operaii elementare i o extragere de rdcin ptrat. Pentru toate liniile sunt necesare n n 3 n 2 5n [ (n i)(2i 1) + 2i 2 ] = 3 + 2 6 i =1 operaii elementare plus n extrageri de rdcin ptrat.
Exemplu. S se determine descompunerea Cholesky a matricei 3 2 2 A = 2 3 2 2 2 3

r11 = 3 , r12 =

2 3

, r13 =

5 5 (1) 2 = a22 r12 = , r22 = , a22 , 3 3 3


(1) a23

(1) a23 = a23 r12 r13 =

2 , r23 = 3

r22

2 15

(1) 2 = a33 r13 = , a33

5 , 3

7 7 ( 2) (1) 2 a33 = a33 r23 = , r33 = 5 5 2 2 3 3 3 5 2 R= 0 . 3 15 7 0 0 5 Se verific imediat c A=RTR . Rezolvarea sistemului Ax=b cu metoda Cholesky, n cazul cnd matricea A este simetric i pozitiv definit, revine la rezolvarea a dou sisteme triunghiulare i anume RT y = b Rx = y Algoritmul Cholesky pentru rezolvarea sistemelor de ecuaii liniare Pentru p:=1,n1 execut

28

Bazele Analizei Numerice

rpp: = a pp ; Pentru k:=p+1,n1 execut a pk rpk := ; rpp sfrit pentru k ; Pentru i:=p+1,n execut Pentru j:=i,n execut aij:=aijrpirpj ; sfrit pentru j ; sfrit pentru i ; sfrit pentru p ; { Rezolvarea sistemului RTy=b } b y1 = 1 ; r11 Pentru i:=2,n execut s:=0 ; Pentru j:=1,i execut s:=s+rijyj ; sfrit pentru j ; b s yi := i ; rii sfrit pentru i ; { Rezolvarea sistemului Rx=y } y xn = n ; rnn Pentru i:=n1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+rijxj ; sfrit pentru j ; y s xi := i ; rii sfrit pentru i . Algoritmul se afl programat i n MATLAB i se apeleaz cu secvena: R=chol(A); x=R\R'\b { pentru afiarea soluiei }

Sisteme de ecuaii liniare

29

1.4. Metoda Householder. Factorizarea QR


O matrice Householder este o matrice de forma H = In 2hhT, unde
2 h 2 = hi2 + ... + hn = 1 . Se observ imediat c o matrice Householder este simetric i are urmtoarea structur: 0 1 O 1 H = 1 2hi2 2hi hi +1 K 2hi hn 0 M M M 2 2hn hi 2hn hi +1 K 1 2hn Mai mult, constatm c H este ortogonal. ntradevr, H2 = (In 2hhT)(In 2hhT) = In 2hhT 2hhT + 4h(hTh)hT. T Cum h h = 1, rezult H2 = In. Aadar, avem H1 = H = HT. Un calcul simplu ne arat c (hhT)x = (hTx)h , pentru orice x = (x1 , x 2 ,..., x n )T . n continuare ne punem urmtoarea problem: dat fiind un vector coloan x 0, se poate determina o matrice Householder H , astfel nct Hx s fie colinear cu e1 ? ( unde e1T = (1,0,...,0) ). Cu alte cuvinte, se poate determina un vector coloan h, cu h 2 = 1 i un numr

hT=(0,..., 0, hi, ..., hn) i

real astfel nct Hx=x2hhTx=e1 ? innd seama de observaia de mai sus, aceasta revine la x2(hTx)h=e1, de unde rezult x e1=2(hTx)h. Aadar, h trebuie s fie colinear cu xe1. Cum h 2 = 1 rezult
x e1 . x e1 2 Pe de alt parte, H fiind ortogonal avem x 2 = Hx 2 = e1 = . h=

(1)

Alegem = sgn(x1) x 2 i facem convenia sgn(x1) = 1 dac x1 = 0. n continuare avem

30

Bazele Analizei Numerice

x1 + sgn( x1 ) x 2 x1 + x 2 sgn( x1 ) x2 x2 x e1 = = i M M xn xn

x e1 2 = 2 x 2 + 2 x1 x 2 = 2 x 2 x 2 + x1 nlocuind n (1) obinem x1 + x 2 sgn x1 x2 1 h= . M 2 x 2 x 2 + x1 x n

(2)

Se obine astfel urmtorul algoritm pentru determinarea lui h i deci a matricei H: H = In u uT

( 2 ( x 2 + x1 ))1 T u = (( x1 + x 2 )sgn( x1 ), x2 , ..., xn )


= x

(3)

sgn(x1) = 1 dac x1 = 0.
Teorema 1. Pentru orice matrice AM n(R) nesingular exist o matrice ortogonal H astfel nct matricea R = HA este superior triunghiular. Demonstraie. a11 a21 Fie a1 = , prima coloan a matricei A. Din cele artate mai nainte rezult M a n1 c exist o matrice Householder H1 astfel nct H1a1=e1. Matricea H1 se determin astfel:

n s = a2 j1 j =1

1/ 2

, = (s (s + a11 ))

, u = (( a11 + s )sgn(a11 ), a 21 , ..., a n1 ) ,


T

sgn( a11 ) = 1 daca a11 = 0 , H 1 = I n uu T . Dac notm cu A1 = H1A, atunci A1 are urmtoarea form: sgn(a ) s a (1) K a (1) 11 12 1n (1) (1) 0 K a2 a22 n A1 = M M M (1) (1) 0 a K a nn n2

(4)

Sisteme de ecuaii liniare

31

a (1) 22 (1) = M i determinm o matrice n continuare considerm vectorul a2 (1) an 2 ~ ortogonal H 2 Mn1(R) astfel nct ~ ~, H a (1) = e
unde ~ e1T = (1, 0 , ..., 0) Rn1.
2 2 1

1 0 Notm cu H 2 = ~ 0 H M n(R) i cu A2 = H2A1. 2 a ( 2) a ( 2) a ( 2) K a ( 2) 12 13 1n 11 ( 2) ( 2) ( 2) 0 a22 a23 K a2 n ( 2) ( 2) , unde A2 = 0 0 a33 K a3n M M M M ( 2) ( 2) 0 0 an 3 K ann


n continuare se determin o ~ ~ ( 2) ~ , unde proprietatea c H 2 a 3 = e 1

Matricea A2 va arta astfel

( 2) (1) a1 j = a1 j , j = 1, n .

~ matrice Householder H 3 Mn2(R) cu ~ ~ T = (1, 0, ..., 0) M (R). Vom nota cu e n2 1

I2 0 H3 = ~ 0 H M n(R) i cu A3=H3A2. Matricea A3 va avea toate elementele de 3 sub diagonala principal, din primele trei coloane, zero. Procedeul continu ntr-un mod evident. n final, obinem o matrice superior triunghiular An1 = Hn1An2 = =Hn1...H2H1A. Dac notm H=Hn1...H2H1 i cu R=HA, atunci H este ortogonal i R superior triunghiular.
Corolar. Pentru orice matrice nesingular AM n(R) exist o matrice ortogonal Q i o matrice superior triunghiular R astfel nct A= QR.

Algoritmul Householder pentru rezolvarea sistemelor de ecuaii liniare Fie sistemul Ax =b cu AM n(R). Notm cu C=(A|b)=(cij)M n,n+1 (R) matricea extins. Pentru i: = 1,n1 execut

s :=

c2 ji
j =i

dac s = 0 atunci A este singular . Stop! altfel := (s(|cii|+s))1 ; dac cii = 0 atunci sgn(cii): = 1 ; u := (0, ..., 0, (cii + s)sgn(cii), ci+1,i , ..., cni)T ;

32

Bazele Analizei Numerice

sfrit pentru i ;

Hi: = In uuT ; C: = HiC ;

Exemplu. Fie sistemul 5 x1 + 2 x2 + x3 = 12 5 x1 6 x2 + 2 x3 = 1 4 x + 2 x + x = 3 1 2 3

Soluia exact este x1 = 1, x2 = 2, x1 = 3. Aplicm metoda Householder. 2 1 12 2 1 5 12 5 A = 5 6 2 ; b = 1 , C = 5 6 2 1 ; 4 2 1 3 3 4 2 1 Iteraia I 5 a1 = 5 ; c11 = 5 ; s = 66 = 8.124038405 ; 4

13.124038405 1 -3 = 9.379086466 10 = ;u = 5 ; 8.124038405 13.124038405 4


0.615457455 0.615457455 0.492365964 H1 = 0.615457455 0.765522838 0.187581729 0.492365964 0.187581729 0.849934617 8.12403840 3.44656174 1.35400640 0 A1 = H1 A = 5.44888848 1.10316995 ; 0 1.55911078 1.71746403 5.292934112 b1 = H1b = 7.588267109 ; C = H1 C = [A1 b1 ] 8.270613687 Iteraia a IIa
(1) 5.448888481 2 2 a2 = 1.559110785 ; s = c22 + c32 = 5.667557862 ; 0 c22=5.448888481 ; ; =0.015872234 ; u = 11.116446343 ; 1.559110785

Sisteme de ecuaii liniare

33

0 0 1 H 2 = 0 0.961417354 0.275093933 ; 0 0.275093933 0.961417354 - 8.124038405 3.446561747 1.354006401 0 5.667557862 0.588142797 ; A2 = H 2 A1 = 0 0 1.954675092 5.292934112 b2 = H 2b1 = 9.570687333 ; C = H 2 C = [A2 b2 ] ; 5.864025277 0.615457455 0.615457455 0.492365964 H = H 2 H1 = 0.727158367 0.684384346 0.053467527 ; 0.30406057 0.390935018 0.868744486 8.124038405 3.446561747 1.354006401 R= H A= 0 5.667557862 0.588142797 ; 0 0 1.954675092 Soluia sistemului iniial este x=R1Hb , unde: 0.123091491 0.074854538 0.062742657 1 R = 0 0.176442839 0.053089941 . 0 0 0.511593975 Se obine soluia x1=1 ; x2= 2 ; x3= 3.000000001 .

1.5. Norme de matrice


Cele mai utilizate norme vectoriale pe Rn sunt: 1) x = max { x1 , x2 ,..., xn } n p 2) x p = xi i =1 unde xT = (x1, x2, ..., xn)Rn.
1/ p

, 1 p <

Definiia 1. Se numete norm de matrice orice aplicaie A A M : M n(R)R+

cu proprietile:

34

Bazele Analizei Numerice

(i) (ii) (iii)

A M = 0 dac i numai dac A = 0 , A M = A M , ; R, AM n(R) ,

A+ B M A M + B M , AB M A M B M , A, BM n(R). (iv) Un exemplu de norm de matrice este norma euclidian de matrice, care se definete astfel
1/ 2

n n 2 A E = aij . (1) 1 1 i = j = Proprietile (i) i (ii) sunt evidente. Pentru a demonstra proprietile (iii) i (iv) se folosete inegalitatea CauchyBuniakovskiSchwarz pe Rn. Pentru exemplificare demonstrm (iv). Fie C = AB. Atunci
2 cij

n n 2 n 2 bkj = aik bkj aik k =1 k =1 k =1

n continuare avem
n n n n n n 2 2 2 2 bkj = A 2 B 2 , aik AB E = cij E E i =1 j =1 i =1 k =1 j =1 k =1 de unde rezult AB E A E B E .

Definiia 2. O norm de matrice

vectorial

p dac

Ax p A M

M se numete compatibil cu norma x p pentru orice x.

Observaia 1.

Ax 2 A E x 2 , () x.
n n n n 2 2 2 2 Ax 2 = (ai1x1 + ... + ain xn )2 aij x2 = A E x 2 . j i =1 i =1 j =1 j =1

ntradevr,

Observaia 2. Dac este o valoare proprie a matricei A, atunci A M pentru orice norm de matrice compatibil cu o norm vectorial.

ntradevr, fie v un vector propriu al matricei A care corespunde valorii proprii . Atunci avem v = v = Av A M v ,

Sisteme de ecuaii liniare

35

deci

AM.

Dup cum se tie, ntre mulimea M n(R) a matricelor ptratice cu elemente din R i mulimea L(Rn) a aplicaiilor liniare i continue, U : RnRn , exist o coresponden bijectiv. Mai precis, dac A este matricea asociat transformrii liniare U, atunci U(eiT) = (a1i, a2i, ..., ani), unde eiT = (0, ..., 1, ..., 0)Rn i U(xT) = (Ax)T. Pe de alt parte, spaiul L(Rn) este un spaiu normat n raport cu norma operatorial:
U o = sup

{ U (x ) ;
T

xT = 1

(2)

unde cu
U

am notat o norm oarecare pe Rn.


= inf c > 0 ; U x T

Se tie de asemenea c:
o

( ) c xT

, () x T R n

(3)

Definiia 3. Se numete norma matricei A subordonat normei vectoriale urmtorul numr: Ax A = sup { Ax ; x = 1 } = sup (4) x0 x

Ca i n cazul normei operatoriale, avem A = inf { c > 0 ; Ax c x , () x } .

(5)

Ax A x , x R n , deci norma Din relaia (5) rezult n particular c matriceal definit de (4) este compatibil cu norma vectorial creia i este subordonat. Este evident c aplicaia A A definit de (4) satisface proprietile (i)(iii) din definiia 1. De asemenea avem ABx A Bx A B x ,
de unde rezult A B A B . Aadar, formula (4) definete ntradevr o norm de matrice.
Definiia 4. Dac 1, ..., n sunt valorile proprii ale matricei A , atunci se noteaz cu (A)= max i i (A) se numete raza spectral a matricei A (n aceast
1i n

definiie i pot fi reale sau complexe)


Teorema 1. Pentru AM n(R) avem:

(1)

A = max aij ,
1i n j =1

36

Bazele Analizei Numerice

(2) (3) unde cu

A 1= max aij ,
1 j n i =1

A 2= A A , A p am notat norma matricei A subordonat normei vectoriale x p .

((

))

1 2

Demonstraie.

Ax = max
n

aij x j 1max aij x j x 1max aij 1i n j =1 i n j =1 i n j =1

Rezult

A max aij . Rmne s artm c exist ~ x cu ~ x = 1


1i n j =1

astfel nct
n

A~ x = max aij . Pentru aceasta, fie k astfel nct s avem = max aij
1i j =1
1i n j =1 n

akj
j =1

(6)

0 i fie ~ x j = akj a kj

dac dac

akj = 0 akj 0

.
n n

x = 1 i Evident c ~
(1). n continuare avem
n

A~ x = akj = max aij . Aadar, am demonstrat


j =1 1i n j =1
n

Ax 1= ai1x1 + ... + ain xn ( ai1 x1 + ... + ain xn )


i =1 i =1 n max aij 1 j n i =1

n ( x1 + ... + xn ) = max aij 1 j n i =1

x 1

de unde rezult

A 1 max aij .
1 j n i =1

Sisteme de ecuaii liniare


n

37

Pe de alt parte dac eTj=(0,...,1,...,0) , atunci

e j = 1 i
1

Ae j = aij , de
1 i =1

unde rezult

A 1 aij , pentru orice


i =1

j = 1, n . Aadar,

A 1 max

1 j n i = 1

aij

i cu aceasta afirmaia (2) este dovedit. Fie B=ATA i fie

{ } 2 Evident 1 = sup{( Ax )T Ax ; x 2 = 1 }= A 2 , deci


1 = sup xT Bx ; x 2 = 1
Deoarece mulimea S = x ; x 2 = 1 proprietile: 1=vTBv i v 2 = 1 .

(7) A 2 = 1

este compact, rezult c exist v cu

Vom arta n continuare c Bv=1v , deci c v este un vector propriu pentru B i corespunde valorii proprii 1.
z z B i deci ntr-adevr, pentru orice z0 avem: z z 1 2 2
T

z T Bz 1 z 2 = 1z T z (8) Pe de alt parte este evident c relaia (8) este verificat i pentru z=0. Deci relaia (8) are loc pentru orice z. De asemenea avem: (9) vTBv=1vTv Dac notm cu C=B1In , atunci avem: (8') zTCz0 , () z i (9') vTCv=0 Fie z=v+ty , unde tR este oarecare i y este un vector oarecare. Din (8') i din faptul c C este simetric rezult vTCv+2tyT(Cv)+t2yTCy0 . innd seama de (9') avem (10) t 2 y T Cy + 2ty T (Cv ) 0 . T Pentru ca (10) s fie adevrat pentru orice tR trebuie ca y Cv = 0. Cum y a fost arbitrar rezult 0=Cv=(B1In)v=Bv1v.
Aadar, avem Bv=1v, deci 1 este valoare proprie pentru B i n plus 1 = A 2 . Pe de alt parte, fie o alt valoare proprie a matricei B i fie u0, u 2 = 1 , astfel nct Bu=u. n continuare avem
2

1 = A 2 Au

2 2

= u T Bu = u T u = .

Aadar, 1 este cea mai mare valoare proprie a matricei B, deci am demonstrat i afirmaia (3).

38

Bazele Analizei Numerice

n particular dac presupunem c matricea A este simetric, rezult c B=A2. Fie 1, 2, ..., n valorile proprii ale matricei A, care n acest caz sunt 2 2 reale. Se tie c 1 sunt valorile proprii ale matricei A2. S , 2 , ..., 2 n
2 presupunem c 1 = max 2 j. 1 j n

Din Teorema 1 rezult c

i>0
rezult

A 2 = 1 . Dac, n plus, A este pozitiv definit, atunci pentru orice i. S presupunem c: 1 2 ... n . Din cele de mai sus

A 2 = 1 , unde 1 este cea mai mare valoare proprie a matricei simetrice i pozitiv definite A.

1.6. Perturbarea sistemelor liniare. Numrul de condiionare al unei matrice


Considerm urmtorul sistem de ecuaii liniare 10 x1 + 7 x2 + 8 x3 + 7 x4 = 32 7 x + 5 x + 6 x + 5 x = 23 1 2 3 4 (1) + + + x x x x 8 6 10 9 2 3 4 = 33 1 7 x1 + 5 x2 + 9 x3 + 10 x4 = 31 a crui soluie exact este x1=x2=x3=x4=1. S considerm acum sistemul (1') n care am modificat puin termenii liberi 10 x1 + 7 x2 + 8 x3 + 7 x4 = 32.1 7 x + 5 x + 6 x + 5 x = 22.9 1 2 3 4 . (1') 8 x1 + 6 x2 + 10 x3 + 9 x4 = 33.1 7 x1 + 5 x2 + 9 x3 + 10 x4 = 30.9 Soluia sistemului (1') este x1= 9.2 ; x2= 12.6 ; x3= 4.5 ; x4= 1.1 . Aadar, o eroare mic, de ordinul 0.1, a termenilor liberi, produce o eroare mare, de ordinul 10, a soluiei sistemului. Fie acum sistemul (1") n care modificm puin coeficienii sistemului 10 x1 + 7 x2 + 8.1x3 + 7.2 x4 = 32 7.08 x + 5.04 x + 6 x + 5 x = 23 1 2 3 4 . (1") + + + x x x x 8 5 . 98 9 . 89 9 2 3 4 = 33 1 6.99 x1 + 4.99 x2 + 9 x3 + 9.98 x4 = 31 Soluia sistemului (1") este: x1= 81 ; x2= 137 ; x3= 34 ; x4= 22 . S analizm acum efectul perturbrii membrului drept asupra soluiei unui sistem liniar Ax=b, n care matricea A este nesingular.

Sisteme de ecuaii liniare

39

Notm cu b perturbarea membrului drept i cu x perturbarea care rezult pentru soluie. Avem: A(x+ x )=b + b , de unde rezult A x = b i deci x =A1 b . Pentru orice norm de matrice compatibil avem:

x A 1 b
Pe de alt parte b = Ax A x , de unde rezult:

(2)

A 1 x b
Din relaiile (2) i (3) obinem

(3)

x
x

A A1

b
b

Numrul de condiionare al unei matrice se definete astfel


cond ( A) = A A 1

(4)

Aadar, ntre eroarea relativ a membrului drept i eroarea relativ a soluiei sistemului avem urmtoarea inegalitate x b cond ( A) . (5) b x Observm c dac numrul de condiionare al matricei coeficienilor sistemului este mare, atunci la erori relativ mici ale termenilor liberi, pot apare erori relativ mari pentru soluia sistemului. n cazul exemplului (1) avem 10 6 10 7 8 8 25 41 68 17 10 7 5 6 5 1 41 , A = A= 10 17 5 3 8 6 10 9 7 5 9 10 6 10 3 2 i cond2(A) 2984. (Sa folosit norma de matrice 2 ). Dup cum se vede, numrul de condiionare este destul de mare, ceea ce explic instabilitatea soluiei sistemului. Numrul de condiionare are urmtoarele proprieti: (i) cond(In)1 (ii) cond(A)=cond(A1) (iii) cond(A)=cond(A) pentru orice 0 1 , unde 12...n>0 sunt valorile proprii ale matricei (iv) cond 2 ( A) = n B=ATA

40

Bazele Analizei Numerice

(v)

Dac A este simetric, atunci cond 2 ( A) =

max i min i

, unde 1, ..., n sunt

valorile proprii ale matricei A (vi) Dac A este ortogonal, atunci cond(A)=1 . Pentru a evalua eroarea soluiei sistemului la o perturbare a coeficienilor sistemului, avem nevoie de urmtoarele dou leme.
Lema 1. Dac AM n(R) i A < 1 , atunci: (i) A+In i AIn sunt nesingulare, i 1 1 ( A I n )1 . (ii) A +1 1 A Demonstraie. Prezentm demonstraia pentru A+In . Presupunem prin absurd c A+In este singular. Atunci exist x 0, x = 1 astfel nct (A+In)x = 0. n continuare avem x = Ax, deci x A x .

Rezult A 1 ceea ce contrazice ipoteza Pentru a demonstra (ii) observm c de unde rezult

A < 1.

1 = I n = (I n + A)(I n + A)1 I n + A (I n + A)1 (1 + A ) (I n + A)1

1 ( A + I n )1 . A +1 Pe de alt parte avem de unde rezult In=(In+A)1+A(In+A)1 ,


= I n A(I n + A)1 1 + A (I n + A)1

(I n + A)1
i mai departe

(I n + A)1

1 . 1 A

Lema 2 (a perturbrii). Fie A, BM n(R) cu proprietile:

(i) (ii)

A 1 A 1 ( B A ) k < 1 .

Atunci B este nesingular i

B 1

1 k

Demonstraie. Din Lema 1 rezult c In+A1(BA)=A1B este nesingular.

Sisteme de ecuaii liniare

41

Cum det(A1B) = det(A1)detB, va rezulta detB 0, deci B este nesingular. Tot din Lema 1 rezult 1 1 1 . B 1 A = I n + A 1 (B A) 1 A 1 (B A) 1 k

Mai departe avem

B 1 = B 1 A A1 B 1 A A1

1 k

Teorema 1. Dac perturbm matricea coeficienilor sistemului Ax = b cu A i


A1A < 1 , atunci ntre eroarea relativ a soluiei i eroarea relativ a matricei

coeficienilor are loc inegalitatea x x

cond( A) 1 cond( A)

A A
A A

Demonstraie. Din egalitile Ax=b i (A+A)(x+x)=b rezult Ax+Ax+Ax=0. n continuare avem x = (A+A)1A x i mai departe x ( A + A)1 A (6) x

Dac alegem n Lema 2 = A 1

i B=A+A, atunci

A 1 (B A) = A1A < 1

i va rezulta B
1

= ( A + A )

A1 1 A1A

A1 1 A1 A
A 1 A

(7)

Din (6) i (7) obinem

x
x

A 1 A 1 A
1

1 A

A
A

A
A

innd seama de definiia numrului de condiionare, ultima inegalitate devine x A cond( A) . A A x 1 cond( A) A

42

Bazele Analizei Numerice

Observaia 1. Dac presupunem n plus c perturbm i membrul drept al sistemului cu b atunci rezult

x
x

A b . + A A b 1 cond ( A) A cond ( A)

Observaia 2. Rezolvarea sistemului Ax=b, cu metoda Gauss revine la rezolvarea a dou sisteme triunghiulare Uy=b i Lx=y. Rezolvarea fiecrui sistem necesit n2 operaii. Dac unul din aceste sisteme este ru condiionat (ceea ce se poate ntmpla chiar dac sistemul iniial Ax=b este bine condiionat) metoda Gauss conduce la erori mari.

Cu totul altfel stau lucrurile n cazul metodei Householder. Deoarece cond(Q) = 1 i cond(QR) = cond(R), rezult c sistemul Qy = b este bine condiionat i deci c sistemul Ax = b are aceeai condiionare ca sistemul Rx = y. Aadar, algoritmul Householder are proprieti de stabilitate mai bune dect algoritmul Gauss.
Observaia 3. Pentru evaluarea numrului de condiionare cond(A), este suficient
A1 . A1

s cunoatem un majorant pentru Calculul lui

(LU )1

este mai uor dect calculul lui

, deoarece

inversarea matricelor triunghiulare este uoar. S presupunem c (LU )1 = i A LU < k unde 0<k<1. Atunci din Lema 2 rezult . 1 k ntradevr, s alegem n Lema 2 matricea LU n loc de A i matricea A n loc de B. Avem k A1 ( A LU ) A1 A LU = k < 1 .

A1

Atunci rezult

A1

1 k

i deci cond ( A)

A
1 k

Sisteme de ecuaii liniare

43

1.7. Metode iterative de rezolvare a sistemelor de ecuaii liniare


Metodele directe de rezolvare numeric a sistemelor de ecuaii liniare se utilizeaz pentru sisteme care au matricea coeficienilor dens (aproape toi coeficienii sunt nenuli) i cu un numr de ecuaii moderat (pn la 100 de ecuaii). Pentru sisteme mari de ecuaii de ordinul 103 105 i care au matricea coeficienilor rar (cu multe elemente nule), se utilizeaz metode iterative de rezolvare numeric. S presupunem c sistemul Ax = b (1) se poate pune sub forma echivalent x = Bx + c (2) Forma echivalent (2) ne sugereaz urmtorul proces iterativ: x (m+1) = Bx (m ) + c, m 0 , (3) unde x(0) este un vector arbitrar. Dac notm cu x* soluia exact a sistemului, atunci avem (4) x*=Bx*+c Fie e(m) = x*x(m) vectorul eroare. Din (3) i (4) rezult e ( m+1) = Be ( m) , mN* i mai departe

e ( m ) = B m e ( 0)

(5)
m

Teorema 1. Dac B < 1 , atunci irul ( x (m ) ) este convergent i lim x (m ) = x . Demonstraie.

Este suficient s artm c lim e (m ) = 0 .


m

Din (5) avem


m

e (m ) B m e (0 ) B

e (0 )

Deoarece

lim B

= 0 , rezult

lim e (m ) = 0 .

Teorema 2. Condiia necesar i suficient ca irul ( x (m ) ) definit de (3) s fie convergent este ca ( B ) < 1 , unde cu ( B ) sa notat raza spectral a matricei B.

44

Bazele Analizei Numerice

Demonstraie.

Este suficient s artm c

lim B m = 0 dac i numai dac

( B ) < 1 . Din

Algebra liniar se tie c matricea B se poate aduce la forma canonic Jordan, deci c exist o matrice nesingular C astfel nct J p (1 ) 0 L 1 1 , M M C B C = J = J p2 ( 2 ) 0 J pr ( r ) unde 1 0 L 0 1 M J p ( ) = M O 1 0 este o celul Jordan, 1, ... , r sunt valorile proprii ale matricei B i p1, ... , pr sunt ordinele de multiplicitate ale acestor valori proprii. Deoarece

C 1 B m C = J m , rezult c

lim B m = 0 dac i numai dac

lim J m = 0 . Pe

0 0 O r este o matrice diagonal de ordinul n, iar N este o matrice nilpotent de ordinul n, adic Nn = 0 .
k m k k n continuare avem J m = C m D N . Deoarece Nk=0 pentru kn, vom k =0 m

de alt parte, J = D + N, unde 0 1 O 0 1 D= O r 0 0

avea
k m k k J m = Cm D N . k =0 n

(6)

Observm c

D = max 1 = ( B ) < 1 . Din (6) rezult: 1i r


n mk m(m 1)...(m k + 1) mk k k D N < N ( ( B ) )m k k! k =0 k =0 k! n

Jm

Sisteme de ecuaii liniare

45

Cum
m

lim m k ( ( B)) mk = 0 ,

rezult c

lim J m = 0 ,

deci c

lim J m = 0 .
Reciproc, s presupunem c
m

lim B m = 0 i c (B ) 1 . Atunci exist

un vector propriu x 0 i o valoare proprie , cu 1 , astfel nct Bx=x i deci Bmx = m x. Cum (m x) nu converge la 0, rezult c Bm nu converge la 0, ceea ce contrazice ipoteza fcut. Una din cele mai cunoscute metode iterative este metoda Jacobi. S presupunem c matricea sistemului Ax=b are proprietatea aii 0, i = 1, n . Dac notm cu D = diag ( a11 , ..., a nn ) i cu E=DA, atunci obinem sistemul echivalent (DE)x=b i mai departe
x=D -1 E x + D 1b

(7)
D 1 E = max
n

1 1 Cum D -1 = diag , rezult c a , ..., a nn 11

aij

1i n j =1 a ii j i

Observm c dac matricea A este tare diagonal dominant, atunci D 1 E < 1 i n virtutea Teoremei 1, irul x (m +1) = D 1 E x (m ) + D 1b, m 0 este convergent pentru orice aproximaie iniial const n urmtoarele: Sistemul Ax = b se pune sub forma echivalent (7). Scris pe componente, sistemul (7) arat astfel n 1 bi aij x j , i = 1,n . xi = aii j =1 j i

(8) x . Aadar, metoda Jacobi


(0)

(7)

Se obine irul recurent

{ x (m ) }
j =1 j i

unde (8)

n 1 bi aij x (jm ) , i = 1,n . xi(m+1) = aii

46

Bazele Analizei Numerice

Dac matricea A este tare diagonal dominant, irul ( x (m ) ) converge la soluia exact a sistemului.
Exemplu. Fie sistemul 5 1 1 1 x1 4 1 10 1 1 x 2 12 1 1 5 1 x = 8 3 1 1 1 10 x 34 4 Soluia exact este x1 = 1, x2 = 2, x3 = 3, 5 0 0 0 0 1 1 0 10 0 0 1 0 1 , E= D= 0 0 5 0 1 1 0 0 0 0 10 1 1 1

x4 = 4. 1 0 0,2 0,2 0,2 1 0,1 0 0,1 0,1 -1 , D E = , 1 0,2 0,2 0 0,2 0,1 0,1 0,1 0 0

0,8 1,2 -1 , D -1 E = 0.6 < 1 . D b= 1,6 3,4 Obinem urmtorul proces iterativ: x (m+1 ) = 0.2 x (m) + 0.2 x (m) + 0.2 x (m) 0.8 2 3 4 1 (m) (m) x (m+1 ) = 0.1x (m) + 0.1x3 + 0.1x 4 1.2 2 1 (m+1 ) (m) (m) (m) = 0.2 x1 + 0 .2 x 2 + 0 .2 x 4 + 1 .6 x3 (m+1 ) (m) (m) (m) x4 = 0.1x1 + 0.1x 2 + 0.1x3 + 3 .4

Dac alegem aproximaia iniial iteraii obinem

0 0 0 0 x1 = x2 = x3 = x4 = 0 atunci dup 5

(5) (5) (5) (5) x1 = 0,948; x 2 = 1,969; x3 = 2,948; x 4 = 3,969

O alt metod iterativ cunoscut este metoda GaussSeidel corespunde urmtoarei spargeri a matricei coeficienilor: A = (D+L ) + U unde D = diag (a11, ..., ann ),

i care

0 a L = 21 ... a n1

0 0 ... an2

... ... ... ...

0 0 a12 0 0 0 , iar U = ... ... ... 0 0 0

... a1n ... a 2n . ... ... ... 0

Sisteme de ecuaii liniare

47

Sistemul (1) devine (D+L) x = Ux +b iterativ: (D+L) x(m+1) = Ux(m) +b . Pe componente obinem i-1 1 bi aij x (m+1) xi(m+1) = j aii j =1

i mai departe obinem urmtorul proces (9)


n (m ) , i = 1,n . aij x j

j =i +1

(10)

, este imediat Din algoritmul (10) se observ c fiecare nou component, x j utilizat la calculul urmtoarei componente. Se poate arta c procesul iterativ GaussSeidel este convergent dac matricea A este tare diagonal dominant. n cazul exemplului precedent obinem (m+1) (m ) x1 0 1 1 1 0 0 0 4 5 x1 ( ) ( ) + 1 m m 0 0 1 1 x 12 x2 1 10 0 0 2 + = 1 1 5 0 ( ) (m ) + 1 m 8 0 0 0 1 x3 x3 0 0 0 0 (m ) 34 1 1 1 10 ( ) + 1 m x4 x4
(m+1 ) x1 x (m+1 ) 2 x (m+1 ) 3 x (m+1 ) 4
(5) x1

( m+1)

sau

1 (m) (m) (m) = x 2 + x3 + x 4 4 5 1 ( m+1) m m ( ) ( ) = x1 + x3 + x 4 + 12 10 . 1 ( m+1) m+1) m) ( ( = x1 + x2 + x4 + 8 5 1 ( m+1) 1 1 m+ m+ ( ) + x ( ) + 34 = x1 + x2 3 10 dup 5 iteraii obinem
(5) x3 (5) x2

(0) Pentru x1

(0) (0) ( 0) = x2 = x3 = x4 = 0,

= 0.995 ;

= 1.998 ;

= 2.998 ;

(5) x4

= 3.999

1.8. Metode de relaxare. Principiile de baz


Metodele de relaxare sunt metode iterative i sunt utilizate pentru rezolvarea numeric a sistemelor liniare care au matricea coeficienilor simetric i pozitiv definit. Fie sistemul liniar Ax b = 0 (1)

48

Bazele Analizei Numerice

v1 v2 unde matricea A este simetric i pozitiv definit. Dac v = este un vector de M v n prob oarecare, atunci notm cu r= Av b . (2) Vectorul r se numete vectorul rezidual. Scopul oricrei metode de relaxare este ca prin schimbarea sistematic a vectorului v, vectorul rezidual corespunztor r s se micoreze, eventual s se anuleze. n cele ce urmeaz, pentru orice doi vectori u1 v1 u2 v u = i v = 2 M M u v n n vom nota produsul lor scalar cu u,v = v T u = u1v1 + u 2 v 2 + ... + u n v n (3) Asociem sistemului (1) funcia ptratic n 1 n n 1 F (v) = aij vi v j bi vi = Av,v b,v (4) 2 i =1 j =1 2 i =1
Deoarece A este pozitiv definit, rezult Q(v)>0 pentru orice v0, unde Q(v) = Av,v . Observm de asemenea c pentru orice i = 1,n avem

F n = aij v j bi , vi j=1
deci vectorul rezidual r = gradF . (5)

Teorema 1. Problema determinrii soluiei sistemului (1) este echivalent cu problema determinrii punctului de minim al funciei ptratice (4). Demonstraie. Fie v0 soluia sistemului (1). Atunci r0=Av0b=0. Cum F (v0 ) = 0 . Aadar, v=v0 este punct critic pentru F. Pe r0=gradF(v0), rezult vi de alt parte,

d 2 F(v0 ) = aij dvi dv j > 0 .


i=1 j =1

n n

Rezult c v=v0 este un punct de minim global pentru F.

Sisteme de ecuaii liniare

49

Reciproc, dac v=v0 este punct de minim pentru F atunci F (v0 ) = 0 , i = 1,n . vi Rezult
j =1 0 aij v j bi = 0, i=1,n , deci v=v0 este soluie pentru (1). n

n continuare prezentm principiul de baz al metodei relaxrii. Fie v un vector de prob oarecare, p o direcie dat i D = { v = v + tp; t R } , dreapta D care trece prin v i este paralel cu p. Ne propunem s determinm v 0 ) = min{F (v ); v D} . innd seama de (4), rezult astfel nct F (v 0
F (v ) = = 1 A(v + tp) ,v + tp b,v + tp = 2

1 t t2 t Av,v b,v + Av,p + Ap,p + Ap,v t b,p = 2 2 2 2 t2 t2 Ap,p + t Av,p t b,p = F (v) + Ap,p + t Av b,p = 2 2 = F (v ) + t2 Ap,p + t r,p . 2

= F (v ) +

Folosim notaia

t2 Ap,p + t r,p (6) 2 Determinm pe t astfel nct f (t ) = F (v ) s fie minim. Pentru aceasta trebuie s avem f (t ) = 0 , de unde rezult t Ap,p + r,p = 0 . Aadar, obinem: f (t ) = F (v ) = F (v + tp ) = F (v) + t min =
Cum

r,p Ap,p

(7)

f (t ) = Ap,p > 0 , rezult c vectorul v 0 minim pentru F( v ) . n continuare avem

= v + t min p
2

este un punct de

1 r,p ) = F (v) f (t min ) = F (v0 2 Ap,p de unde rezult


2

1 r,p ) F(v) = 0 . F = F(v0 2 Ap,p r,p 0 . Rezult c direcia Pentru ca F<0, trebuie ca astfel nct p s nu fie perpendicular pe r. p se alege

50

Bazele Analizei Numerice

= Av 0 b este vectorul rezidual corespunztor vectorului Observaia 1. Dac r0 ,p = 0 . = v + t min p , atunci r0 v0

ntradevr,

,p = Av-b,p + t min Ap,p = r,p r0

r,p Ap,p

Ap,p = 0 .

Pentru interpretarea geometric a principiului relaxrii s considerm cazul particular n = 2. Ecuaiile F(v) = constant, reprezint ecuaiile unor elipse concentrice, al cror centru comun, coincide cu punctul de minim al funciei F. ntradevr, ecuaia F(v) = c revine la 2 2 (8) a11v1 + 2a12 v1v 2 + a 22 v 2 2b1v1 2b2 v 2 = 2c . Deoarece A este pozitiv definit, rezult c a11 a12 = a >0 , 12 a 22 deci (8) reprezint o elips. Fie v0 un vector de prob oarecare i c0=F(v0). Ecuaia F(v)=c0 reprezint o elips i v=v0 aparine acestei elipse. Deoarece r0=gradF(v0), rezult c r0 este perpendicular pe tangenta n v=v0 la elips. Direcia p1 o alegem astfel nct s nu fie perpendicular pe r0. Fie v1=v0+tminp1 i fie c1=F(v1). Punctul v=v1 aparine elipsei F(v)=c1 i de asemenea aparine dreptei ce trece prin v0 i are direcia p1. Fie r1=Av1b. Din Observaia 1, r0 v0 rezult c r1 este perpendicular v1 pe direcia p1. Pe de alt parte r1=gradF(v1) este perpendicular pe tangenta n v=v1 la elipsa p1 F(v)=c1. Rezult c v=v1, este r1 punctul de tangen la elipsa F(v)=c1 al dreptei care trece prin v0 i are direcia p1.

1.9. Metoda relaxrii simple


Este o metod specific calculelor de mn, avnd mai ales o semnificaie istoric. Fie v un vector de prob oarecare i fie corespunztor. r=Av b vectorul rezidual

Sisteme de ecuaii liniare

51

Dac max ri = r j , atunci alegem p=ej unde e T j = (0,...,1,...,0 ) . Rezult


1i n

t min =

r, p Ap,p

rj a jj rj a jj

i ej i j i= j . rj a jj (2) (1)

v = v + t min p = v Pe componente avem: vi rj = vi vj a jj

daca daca

De asemenea vom avea r = Av b = r

Ae j i mai departe

rj r1 = r1 a1 j a jj ................. r j =0 ................... rj rn = rn a nj a jj
F = F (v) F (v ) =
2 1 rj <0, 2 a jj

(3)

ceea ce asigur convergena metodei. Dei convergena este asigurat, experienele numerice arat c aceasta este foarte lent. Convergena este mbuntit dac matricea A este tare diagonal dominant.
Exemplu. x1 0.2 x1 0.2 x 1

+ 0.2 x 2 x2 + 0.2 x 2
(1)

+ 0.2 x3 + 0.2 x3 x3

+ 0.6 + 0.5 + 0,4

=0 =0 =0

Dac alegem v

0 = 0 , atunci 0

52

Bazele Analizei Numerice

0.6 (1) (1) 1 ( ) = 0.5 i max(r1(1) , r2 r , r3 ) = r1(1) = 0.6 . 0.4 Aadar 1 r1(1) r1(1) (2) (2) (1) (1) e1 i r = r Ae1 . p1 = e1 = 0 , v = v a11 a11 0 Pe componente avem

v ( 2) 1 ( 2) v 2 ( 2) v 3
Rezult

= 0.6 =0 =0 ,

( 2) (2) (2) r2 = max r1(2) , r2 , r3 = 0.62 .

r (2) 1 (2) r2 (2) r 3

=0 = 0.62 , = 0.52

0 (2) (3) (2) r2 e2 p 2 = e2 = 1 , v = v a 22 0 v (3) 1 (3) v 2 (3) v 3


r3
(3)

i r

(3)

=r

(2)

(2) r2

a 22

Ae2 ;

= 0 .6 = 0.62 , =0

= max r1 , r2

r (3) 1 (3) r 2 (3) r 3


(3)

= 0.124 =0 = 0.644

(3)

, r3

(3)

) = 0.644 .
(3)

n continuare 0 r (3) p3 = e3 = 0 , v (4) = v (3) 3 e3 a33 1

r i r (4) = r (3) 3 Ae3 . a33 = 0.2528 = 0.1288 , etc. =0

v ( 4) 1 ( 4) v 2 ( 4) v 3

= 0.6 = 0.62 = 0.644 ,

r (4) 1 (4) r2 (4) r3

Sisteme de ecuaii liniare

53

1.10. Metoda deplasrilor succesive (Gauss - Seidel)


n metoda deplasrilor succesive, direcia de relaxare urmeaz ciclic direciile e1, e2, ... , en, indiferent de reziduurile respective, dup care ciclul se reia. Pentru simplificare s presupunem c avem sistemul a11 x1 + a12 x 2 + a13 x3 b1 = 0 a 21 x1 + a 22 x 2 + a 23 x3 b2 = 0 a x + a x +a x b = 0 32 2 33 3 3 31 1 Fie v
(0)

1 vectorul de prob iniial i fie p = e1 = 0 . Conform formulei (1) din 9 0

(0) ( 0 ) r1 rezult v = v e1 , iar pe componente a11

1 (0) (0) (0) (0) = v1 a11v1 + a12 v2 + a13v3 b1 v1 a11 (0) = v2 v2 (0) v3 = v3 n continuare alegem direcia de relaxare 0 p = e2 = 1 0

)
.

i obinem vectorul v de componente v1 = v1 1 (0) = v2 b2 ) . (a v + a v + a23v3 v2 a22 21 1 22 2 (0) = v3 v3 n sfrit, pentru direcia de relaxare 0 p = e3 = 0 , 1

54

Bazele Analizei Numerice

obinem vectorul v de componente v = v 1 1 . v2 = v2 1 (0) v3 = v3 + a32 v2 + a33v3 b3 ) (a31v1 a33

Dup ncheierea acestui ciclu, vectorul gsit va fi notat cu v(1) i va avea componentele: (1) a ( 0 ) a13 ( 0 ) b1 = 12 v2 v + v1 = v1 a11 a11 3 a11 (1) a b ( 1 ) a23 ( 0 ) = 21 v1 (1) v3 + 2 v2 = v2 a22 a22 a22 (1) a b ( 1 ) a32 ( 1 ) = 31 v1 v2 + 3 v3 = v3 a33 a33 a33 Efectund calculele obinem: a v (1) + a v (0) + a v (0) = b 1 13 3 12 2 11 1 ( 0) (1) (1) a 21v1 + a 22 v 2 + a 23 v3 = b2 . (1) (1) (1) a31v1 + a32 v 2 + a33 v3 = b3 n general, pentru un sistem de n ecuaii, dup (m+1) cicluri se obine vectorul

v ( m+1) care verific ecuaiile: a v(m+1 ) + a v(m) + a v(m) + ... + a v(m) = b 12 2 13 3 1n n 1 11 1 (m+1 ) (m+1 ) (m) (m) + a22v2 + a23v3 + ... + a2 n vn = b2 a21v1 .......................................................................... (m+1 ) (m+1 ) (m+1 ) (m+1 ) + a n 2 v2 + ... + ann vn = bn +an3v3 an1v1

(2)

Observaia 1. Formulele (1) coincid cu formulele (10) din 7. Dac notm cu 0 0... 0 0 a11 0 L 0 0 0... 0 a 21 0 a22 L 0 T , E = a31 a32 0... 0 , F = E i D = M M M 0 ... ... 0 L ann a n1 a n 2 ... 0

Sisteme de ecuaii liniare

55

atunci matricea A admite descompunerea A=E+D+F verific relaia matricial (D+E)v(m+1) + Fv(m) = b , de unde rezult v(m+1)= (D+E) 1Fv(m)+(D+E) 1b . n sfrit, notnd M= (D+E) 1F i C=(D+E) 1b obinem procesul iterativ v(m+1)=Mv(m)+C .

i irul de vectori v ( m) (3) (4) (5) (6)

Exemplu. S se gseasc soluia aproximativ obinut dup 5 iteraii cu metoda deplasrilor succesive, lund vectorul iniial (0, 0, 0), pentru sistemul Ax = b, unde: 1 2 1 0 0 1 1 3 1 0 A= , b= . 0 1 3 1 1 1 0 0 1 2 Rezolvare 18 0 0 0 0 -1 0 0 1 6 12 0 0 0 0 -1 0 -1 F= ( D+E ) = 0 0 0 -1 36 2 4 12 0 1 2 6 18 0 0 0 0
0 18 0 0 1 0 6 12 0 1 M = ( D + E ) F = 36 0 2 4 12 0 1 2 6 4 1 det ( M I ) = 2 2 + . 9 36 Valorile proprii ale matricei M sunt 1 = 0.369 ; 2 = 0.077 ; ( M ) = 0.369 < 1 , deci procesul este convergent. Pe componente algoritmul conduce la:

3 = 0 ; 4 = 0 .

56

Bazele Analizei Numerice

Iteraia I 1 (1) ( 0) ( 0) x1 = a (b a12 x2 a1 3x 3 11 x (1) = 1 (b a x ( 1) a x (0) 21 1 23 3 2 a22 1 (1) 1 ) (1 ) x3 (b a 31x ( = 1 a 32x 2 a33 (1) 1 1 ) (1 ) (b a 41x ( x4 = 1 a 42x 2 a 44

0) a1 4x (4 )

0.5 (1) 0.5 rezult x = 0) 0.5 ) a 34x (4 0.75


0) a 24x (4 ) 1 ) a 43x ( 3 )

Iteraia a II a 1 ( 2) (1 ) (1 ) (1 ) x1 = a (b a12 x2 a1 3x 3 a1 4x 4 ) 11 0.75 x ( 2) = 1 (b a x ( 2) a x ( 1) a x ( 1) ) 21 23 24 2 1 3 4 a22 ( 2) 0.75 rezult x = 1 ( 2) 2) ( 2) (1 ) 0.83333 x3 (b a 31x ( ) = a x a x 32 2 34 4 1 0.91667 a33 ( 2) 1 ( 2) ( 2) ( 2) ( ) = x b a x a x a x 4 41 1 42 2 43 3 a44 Iteraia a III a 1 (3) ( 2) x1 = a (b a12 x2 11 x (3) = 1 (b a x ( 3) 21 1 2 a22 1 (3) 3) x3 (b a 31x ( = 1 a33 (3) 1 3) (b a 41x ( x4 = 1 a 44 Iteraia a IV a 1 ( 4) ( 3) x1 = a (b a12 x2 11 x ( 4) = 1 (b a x ( 4) 21 1 2 a22 1 ( 4) 4) x3 = (b a 31x ( 1 a33 ( 4) 1 4) (b a 41x ( x4 = 1 a 44
Iteraia a V a
2) ( 2) a1 3x ( 3 a1 4x 4 )

0.875 (3) 0.90278 rezult x = 0.93981 a 32x (23) a 34x (42) ) 0.96991
2) ( 2) a 23x ( 3 a 24x 4 ) 3) a 42x (23) a 43x ( 3 )

3) ( 3) a1 3x ( 3 a1 4x 4 )

4) a 42x (24) a 43x ( 3 )

0.95139 ( 4) 0.96373 rezult x = 0.97788 a 32x (24) a 34x (43) ) 0.98894


3) ( 3) a 23x ( 3 a 24x 4 )

Sisteme de ecuaii liniare

57

1 ( 5) ( 4) x1 = a (b a12 x2 11 1 ( 5 ) 5) x = (b a 21x ( 1 2 a22 1 5) (5) x3 = (b a 31x ( 1 a33 (5) 1 5) (b a 41x ( x4 = 1 a 44

4) ( 4) a1 3x ( 3 a1 4x 4 )

0.98187 (5) 0.98658 rezult x = . ( 5) ( 4) 0.99184 a 32x 2 a 34x 4 ) 0.99592


4) ( 4) a 23x ( 3 a 24x 4 ) 5) a 42x (25) a 43x ( 3 )

Teorema 1. Dac matricea A este simetric i pozitiv definit, procesul iterativ Gauss Seidel este convergent. Demonstraia rezult din analiza descreterii funciei ptratice F prin trecerea de la o iteraie la alta. O alt demonstraie se bazeaz pe faptul c se poate arta c dac A este simetric i pozitiv definit, atunci ( M ) < 1 i conform Teoremei 2 din 7, procesul iterativ este convergent.

1.11. Metoda suprarelaxrii


Pentru sisteme mari de ecuaii, procesul iterativ Gauss Seidel converge lent, deoarece raza spectral ( M ) este n vecintatea lui 1. Metoda suprarelaxrii este o generalizare a metodei Gauss Seidel, care const n introducerea unui parametru n vederea accelerrii convergenei. Ca i n metoda Gauss Seidel, direcia de relaxare urmeaz ciclic direciile e1, e2 , ..., en dar se nlocuiete tmin cu t=tmin. Exemplificm metoda pe cazul particular al unui sistem de trei ecuaii. Fie v(0) vectorul de prob iniial. Dup un ciclu n care direcia de relaxare urmeaz succesiv direciile e1, e2 , e3 obinem vectorul v(1) de componente: (1) (0) (0) (0) (0) a11v1 + a12 v2 + a13v3 b1 v1 = v1 a11 (1) (0) (1) (0) (0) (1) a21v1 + a22 v2 + a23v3 b2 v2 = v2 a22 (1) (0) (1 ) (1 ) (0) a31v1 + a32 v2 + a33v3 b3 v3 = v3 a33

( ( (

) )

Dac = 1, obinem din nou formulele (1) din 10. Dup efectuarea calculelor rezult:

58

Bazele Analizei Numerice

-1a v( 1 ) + ( 1 1 )a v( 0 ) + a v( 0 ) + a v( 0 ) = b 11 1 11 1 12 2 13 3 1 (1 ) (0) (0) 1 -1 ( 1 ) (2) a21v1 + a22 v2 + ( 1 )a22 v2 + a23v3 = b2 (1) (1 ) (0) 1 -1 ( 1 ) a31v1 + a32v2 +a33 v3 + ( 1 )a33v3 = b3 Dac introducem notaiile 0 0 0 0 0 a11 E = a 21 0 0 , D = 0 a 22 0 i F=ET , a 0 0 a33 31 a32 0 relaiile (2) capt forma matricial (3) (E+ 1D)v(1) + [F+(1 1)D]v(0) = b . n general, pentru un sistem de n ecuaii, irul de vectori v(m) satisface relaia: (E+ 1D) v(m+1) + [F+(1 1)D] v(m) = b . (4) n continuare avem v(m+1)= (E+ 1D) 1 [F+(1 1)D] v(m)+ (E+ 1D) 1b . Notm cu M () = ( E + 1 D) 1 F + (1 1 ) D . (5) 1 1 C () = E + D b

Obinem astfel procesul iterativ (6) v(m+1) =M( )v(m) + C() . Pentru = 1 obinem algoritmul Gauss Seidel (vezi (4), (5), (6) din 10). Parametrul optim, opt, va fi acela pentru care raza spectral a matricei M() va fi minim. Evident, pentru acest parametru se obine cea mai rapid convergen. Se poate demonstra urmtoarea teorem.
Teorema 1. Dac matricea A este simetric i pozitiv definit, metoda suprarelaxrii este convergent pentru orice 0 < < 2. n particular, rezult c metoda Gauss Seidel este convergent dac A este simetric i pozitiv definit, deoarece corespunde cazului particular = 1. Determinarea parametrului optim, opt, este posibil n cazul matricelor bloc tridiagonale. Definiia 1. O matrice A se numete bloc tridiagonal, dac are urmtoarea structur:

Sisteme de ecuaii liniare

59

0 L 0 D1 F1 0 0 E1 D2 F2 0 L 0 E 0 2 D3 F3 L , A = O M M L Em 2 Dm1 Fm1 0 0 L 0 Em1 Dm unde Di sunt matrice ptratice de diferite ordine, Ek i Fk sunt, n general, matrice dreptunghiulare. Fk are acelai numr de linii ca matricea Dk i acelai numr de coloane ca matricea Dk+1. Ek are acelai numr de linii cu Dk+1 i acelai numr de coloane cu Dk. n afara matricelor care intr n band, toate elementele sunt nule. Dac, n plus, matricele Di sunt diagonale, A se numete diagonal bloc tridiagonal. Prezentm de asemenea fr demonstraie urmtoarea teorem. Teorema 2. Fie A o matrice simetric, pozitiv definit i diagonal tridiagonal. 2 , unde Atunci parametrul optim de relaxare este dat de relaia opt = 2 1 + 1 1

1 este cea mai mare valoare proprie a matricei D 1(E+F) .


Exemplu. Fie sistemul Ax = b din exemplul din paragraful precedent, care are matricea diagonal bloc tridiagonal 0 2 1 0 0 0 1 0 1 3 1 0 1 0 1 0 , E+F = A= , 0 1 0 1 0 1 3 1 0 0 0 1 2 0 1 0 1 0 0 0 2 2 0 0 0 1 0 1 0 0 3 0 0 3 , D 1 ( E + F ) = 3 D= . 1 1 0 0 3 0 0 0 0 0 0 2 3 3 1 0 0 0 2 Ecuaia caracteristic este

60

Bazele Analizei Numerice

1 1 0 3 3 =0, 1 1 0 3 3 1 0 0 2

1 2

care este echivalent cu 2 1 0 0 1 3 1 0 = 36 4 + 16 2 + 1 = 0 . 0 1 3 1 0 0 1 2 Rezult

i =

4 7 18

1 =0.60763 .
2 1+
2 1 1

Parametrul optim de relaxare opt =


(m+1) (m)

=1.11469 .

=M( )x + C() , unde Procedeul iterativ x 0.55734 0 0 0.11469 0.55734 0.0924 0.37156 0 0.04261 0.57865 , C ( ) = , M ( ) = 0.01583 0.58657 0.03433 0.02337 0.37156 0.00882482 0.01913 0.01303 0.0924 0.88426 conduce la urmtoarele valori ale vectorului soluiilor pentru primele cinci iteraii: 0.55734 0.81593 0.92431 0.99166 (1) 0.57865 ( 2) 0.82631 (3) 0.96946 ( 4) 0.99595 , x = , x = , x = , x = 0.58657 0.93988 0.98803 0.99825 0.88426 0.97976 0.99565 0.99953
0.9987 (5) 0.99933 . x = 0.99978 0.99993

Sisteme de ecuaii liniare

61

1.12. Metoda gradienilor conjugai


Fie sistemul Ax=b, unde A este simetric i pozitiv definit.
Definiia 1. Spunem c direciile p i q sunt direcii conjugate n raport cu matricea A dac Ap,q = p,Aq = 0 .

Fie v(0) un vector de prob i r(0)=Av(0) b vectorul rezidual corespunztor. n metoda gradienilor conjugai pentru rezolvarea sistemului Ax=b, prima direcie de relaxare se alege p(1) = r(0) . n continuare avem: t min = r ( 0 ) ,p (1) Ap (1) ,p (1) = r (0) ,r (0) Ap (1) ,p (1) , (1) (2)

unde

v(1) = v(0) + q1p(1) , r (0) ,p (1) Ap (1) ,p (1)

q1 = t min =

(3) cnd v parcurge dreapta ce trece

Valoarea minim a funciei F=F(v), prin v(0) i are direcia p(1)= r(0) este v(1). Fie

r(1)=gradF(v(1))=Av(1) b. Din Observaia 1 din 8 rezult c


r (1) ,p (1) = r (1) ,r (0) = 0 .

(4)

Urmtoarea direcie de relaxare p(2) se alege de forma p(2)= r(1)+c1p(1) i n plus s fie conjugat direciei p(1) n raport cu A. Aadar, avem:
0 = Ap (2) ,p (1) = p (2) ,Ap (1) = r (1) ,Ap (1) + c1 Ap (1) ,p (1)

de unde rezult c1 = r (1) ,Ap (1) Ap (1) ,p (1) . (5)

Avem de asemenea

62

Bazele Analizei Numerice

(2)

=v

(1)

+ t min p

(2)

=v

(1)

r (1) ,p (2) Ap
(2)

,p

(2)

p (2) .

(6)

n general, pentru orice k2 obinem ck-1 = r ( k 1) ,Ap ( k 1) Ap ( k 1) ,p ( k 1)


r ( k 1) ,p ( k ) Ap ( k ) ,p ( k)

(7) (8) (9)

p ( k ) = r ( k 1) + ck 1 p ( k 1) ,

qk =

vk = v ( k 1) + qk p ( k ) . (10) Metoda gradienilor conjugai este definit de formulele (7) (10). n continuare prezentm unele simplificri i proprieti suplimentare. Deoarece r(k 1) este ortogonal pe direcia p(k 1) rezult

r ( k 1) , p ( k ) = r ( k 1) , r ( k 1) + c k 1 p ( k 1) = r ( k 1) , r ( k 1)

i deci qk = r ( k 1) ,r ( k 1) Ap ( k ) ,p ( k ) >0. (9)

Pe de alt parte, din (10) avem r ( k ) = Av ( k ) b = Av ( k 1) + qk Ap ( k ) b = r ( k 1) + qk Ap ( k ) . Obinem deci urmtoarea relaia de recuren (11) r ( k ) = r ( k 1) + qk Ap ( k ) . Observm c
r ( k ) ,r ( k 1) = 0 .

(12) . (13) p(k) i p(k 1) sunt


= r ( k 1) , r (k 1 )

ntr adevr, din (11) rezult


r ( k ) , r ( k 1) = r ( k 1) , r ( k 1) + q k r ( k 1) , Ap ( k )

Pe de alt parte, innd seama de (8), de (9) i de faptul c A conjugate, rezult


qk r
(k 1 )

,Ap

(k)

= r

( k 1)

,r

( k 1)

r ( k 1) , Ap ( k ) Ap
(k )

, r

( k 1)

+ c k 1 p

( k 1)

. Din (13) i (14) rezult acum (12) .

Sisteme de ecuaii liniare

63

Deoarece Ap(k) oricum trebuie calculat, rezult c vectorul rezidual r(k) se va calcula din relaia de recuren (11) i nu prin nlocuirea direct a lui v(k) n expresia Av=b. n continuare vom stabili o alt formul pentru coeficientul ck 1. Din (11) i (12) rezult

r ( k 1) ,Ap ( k 1) = r (k 1) ,

1 qk 1

(r

( k 1)

r ( k 2) =

1 qk 1

r ( k 1) ,r ( k 1) .

innd seama de (7) i de (9) obinem ck 1 = r (k 1 ) ,Ap(k 1 ) Ap(k 1 ) ,p(k 1 ) = r (k 1 ) ,r (k 1 ) r (k 2 ) ,r (k 2 ) .

Algoritm pentru rezolvarea sistemelor de ecuaii liniare cu metoda gradienilor conjugai Calculeaz

r ( 0 ) = Av( 0 ) b ; p ( 1 ) = r ( 0 ) ;
q1 = r ( 0 ) ,r ( 0 ) Ap
(1) (1)

,p

; v( 1 ) = v( 0 ) + q1 p( 1 ) ; r ( 1 ) = r ( 0 ) + q1 Ap( 1 ) ;

Pentru k:=2,n calculeaz ck 1 = r (k 1 ) ,r (k 1 ) r


(k 2 ) (k 2 )

,r

; p(k) = r (k 1 ) + ck 1 p(k 1 ) ;

qk =

r (k 1 ) ,r (k 1 ) Ap ,p
(k) (k)

; v(k) = v(k 1 ) + qk p(k) ; r (k) = r (k 1 ) + qk Ap(k) ;

sfrit pentru k . n Mathcad algoritmul de mai sus este aplicat unui exempu.

64

Bazele Analizei Numerice

Metoda gradientilor conjugati


Folosind metoda gradientilor conjugati sa se gaseasca solutia sistemului de ecuatii liniare Ax=b 5 A 1 1 1 6 1 1 2 7 2 1 8 b 6 7 9 8 Vectorul de proba x 0 0 0 0 n 4

1 2

2 1

Algoritmul metodei gradientilor conjugati < 0> r p q A .x b < 0> r < 0> . < 0> r r . A p .p < 0> r <k r <k r <k r <k r q .A .p
1> 2>

GrCon( A , b , x, n )

x x q .p < 1> r

for k 2 .. n c p q . r< k . r< k . r< k


1> 2>

1> 1>

c .p
1>

A .p .p <k r
1>

x x q .p < k> r x q .A .p

Apelarea programului si afisarea rezultatelor

1 GrCon( A , b , x, n ) = 1 1 1

Sisteme de ecuaii liniare

65

Teorema 1. n metoda gradienilor conjugai direciile de relaxare p(k), (k=1,2,...) sunt conjugate dou cte dou n raport cu matricea A, iar vectorii reziduali r(k), (k=0,1,...) sunt ortogonali doi cte doi. Demonstraie.

Demonstraia se face prin inducie relativ la k . Pentru k=1 avem r (1) , r (0) = 0 din (4), iar pentru prima afirmaie nu avem ce arta. Ipoteza de inducie este:
r (i ) , r ( j ) = 0 p (i ) , Ap ( j ) = 0

pentru ij , 0i, pentru ij , pentru j = 0 ,k j = 1,k .

jk ,

(15) (16) (17) (18)

1ijk .

Va trebui s artm c
r (k +1 ) ,r (j) = 0 , p ( k +1) , Ap ( j ) = 0 , pentru

Fie j=k, atunci


p ( k +1) , Ap ( k ) = Ap (k +1 ) ,p (k) = 0

deoarece pk i pk+1 sunt A conjugate. Fie 1j<k , atunci


p(k+1 ),Ap(j) = -r +ck p ,Ap
(k) (k) (j)

= r (k),Ap(j)

deoarece

p(k),Ap(j) = 0 conform ipotezei (16). Ap(j) = 1 (j) (j-1 ) r -r qj

Pe de alt parte,

i din (15) rezult

r (k) ,Ap(j) = 0 .

Aadar am demonstrat (18). Pentru j=k, (17) este adevrat din (12). Fie 0j<k. Din (11) i (15) rezult:
r (k +1 ) ,r (j) = r (k)+q k+1 Ap (k+1 ) ,r (j) = q k +1 Ap ( k +1) , r ( j ) = = q k +1 Ap (k+1 ) ,-p (j) + c j 1 p (j 1 )

innd seama de (18) i de faptul c A este simetric, rezult cu aceasta teorema este demonstrat.

r (k +1 ) ,r (j) = 0 i

Din Teorema 1 rezult c vectorii reziduali r(k) sunt ortogonali doi cte doi i deci sunt liniar independeni (dac sunt nenuli). Aadar, nu pot exista (n+1) vectori reziduali nenuli. Rezult c n metoda gradienilor conjugai soluia exact

66

Bazele Analizei Numerice

se gsete n cel mult n pai. Teoretic ar trebui ca vectorul rezidual r(n) s fie zero i deci v=v(n) s fie soluia exact a sistemului. n practic acest lucru nu se ntmpl, deoarece n determinarea vectorilor r(k) intervin erori de calcul, care fac ca acetia s nu formeze un sistem ortogonal. Deoarece n general r(n)0, continum s calculm r(k), k>n pn obinem un (k) vector rezidual nul sau foarte mic r << 1 . Aceast atitudine se justific prin faptul c metoda gradienilor conjugai este o metod de relaxare prin care valoarea funciei ptratice F=F(v) se micoreaz la fiecare pas. Metoda gradienilor conjugai se dovedete foarte util pentru sistemele n care matricea A are multe zerouri i fiecare ecuaie are o anumit regularitate intern. Astfel de sisteme apar n procesul de discretizare a problemei la limit a ecuaiilor cu derivate pariale de tip eliptic.

1.13. Metoda celor mai mici ptrate


n procesul de prelucrare i ajustare a datelor, apar sisteme de ecuaii liniare supradimensionate sau subdimensionate. Abordm pentru nceput problema sistemelor supradimensionate. Fie sistemul a11 x1 +...+ a1n xn = b1 (1) , m>n . .......................... a x +...+ a x = b mn n m m1 1 Evident, un asemenea sistem poate s nu aib soluie. Fie
r = Ax b = (r1, r2 , ..., rm )T vectorul rezidual , unde ri = ai1 x1 +...+ ain xn bi , i = 1, m .

(2)

Considerm funcia ptratic


2 2 f(x) = f(x1,...,xn ) = r,r = r12 + r2 +...+ rm

(3)

Definiia 1. Se numete soluie n sensul celor mai mici ptrate a sistemului (1), acel vector x* , pentru care funcia (2) are valoarea minim.

Dac:

sistemul (1) este compatibil i x=x* este soluia exact a sa.

xR n

min f(x) = f(x* ) = 0 , atunci ri(x*)=0, pentru orice i = 1, m . Rezult c

Sisteme de ecuaii liniare

67

n general, sistemul (1) nu este compatibil i

xR

min f(x) = f(x* ) > 0 , iar


n

x=x*

este un substitut pentru soluia sistemului i anume soluia n sensul celor mai mici ptrate. Funcia f se poate pune sub forma f(x)= r,r = Ax-b,Ax-b = Ax,Ax 2 Ax,b + b,b i mai departe
f(x)= AT Ax,x 2 AT b,x + b,b

(4)

Teorema 1. Dac rangA = n, atunci sistemul (1) admite o singur soluie n sensul celor mai mici ptrate i aceasta este soluia (unic) a sistemului.

AT Ax=AT b (5) (Sistemul (5) se numete sistemul normal al lui Gauss). Demonstraie. Punctele de extrem ale funciei ptratice f dat de (4), se caut printre punctele sale critice, iar acestea, se afl rezolvnd sistemul: grad f = 0 Cum grad f=ATAx ATb, obinem sistemul ATAx=ATb. Pe de alt parte se tie c: rang A=rang AT =rang AT A =rang AAT . Matricea B=ATA este o matrice ptratic de ordinul n i rangB=n, conform celor de mai sus. Rezult c sistemul (5) admite o soluie unic, x=x*, care este punct critic pentru f. Matricea B este evident simetric i semipozitiv definit. Mai mult, n ipoteza noastr, matricea B este pozitiv definit. ntr adevr, dac presupunem c Bx,x = 0 , atunci rezult Ax,Ax = 0 i deci Ax=0. Cum rang A=n<m rezult x=0. Pe de alt parte avem

( )

( )

d 2 f(x) = bij dxi dx j > 0 ,


i =1 j =1

de unde rezult c x=x demonstrat.

este punct de minim pentru f i cu aceasta teorema este

Aadar, n ipoteza rangA=n, soluia sistemului (1), n sensul celor mai mici ptrate, este unic i se afl rezolvnd sistemul (5). Acest sistem este simetric pozitiv definit. Rezolvarea sa se poate face prin metoda Cholesky sau una din metodele de relaxare.
Observaia 1. Teoretic, soluia sistemului (5) este x*=(ATA) 1ATb. Matricea P=(ATA) 1AT se numete pseudoinversa matricei (dreptunghiu lare) A.

68

Bazele Analizei Numerice

Se observ c dac A este ptratic, atunci P=A 1(AT) 1AT=A 1, deci noiunea de matrice pseudoinvers generalizeaz noiunea de matrice invers (pentru matrice dreptunghiulare). Rezolvarea practic a sistemului (5) ridic probleme din cauza faptului c numrul de condiionare al matricei B=ATA este mare. Fie 1 2 ... n > 0 valorile proprii ale matricei B. Atunci: cond(B) = 1 . (6) n Cum Bx,x Bx,x min Bei ,ei = minbii , 1 = sup max Bei ,ei = maxbii i n = inf x0 x,x i i i i x0 x,x

rezult

cond( B)

maxbii . minbii

(7)

Exemplul 1. (Dreapta de regresie) S presupunem c vrem s gsim o dreapt y=mx+n care s treac prin punctele: M1(0,0) ; M2(2,1) ; M3(5,3) ; M4(8,5) ; M6(10,6) Se obine astfel sistemul 0 m+n=0 2 m+n=1 . (8) 5 m+n=3 8 m+n=5 10 m+n=6 Evident, sistemul (8) este supradimensionat i incompatibil. Avem: 0 1 0 2 1 1 193 25 117 A = 5 1 ; b = 3 ; B = AT A = ; AT b = 15 . 25 5 8 1 5 10 1 6 Ecuaiile normale ale lui Gauss sunt 193m + 25n = 117 . 25m + 5n = 15

Soluia exact este

21 3 ,n = , iar valorile proprii sunt 1 = 196.268 i 34 34 2 = 1.732 . Rezult cond( B ) 113 . Dac folosim estimarea (7) obinem m=

Sisteme de ecuaii liniare

69

maxbii 193 = = 38,6 . minbii 5


Dreapta de regresie n acest caz este:

21 3 x . Aceast dreapt nu trece 34 34 prin punctele Mi, dar este acea dreapt din plan care trece cel mai aproape de aceste puncte. S presupunem c vrem s determinm dreapta de regresie corespunztoare punctelor M i ( xi ,yi ) , i = 1,n . Matricele 1 1 n(n + 1)(2n + 1) n(n + 1) 2 1 T 6 2 i B = A A = A= n(n + 1) M M n n 1 2 conduc la max bii (n + 1)(2n + 1) n 2 = > . min bii 6 3 Pentru n=100, cond(B)>13333, deci sistemul normal al lui Gauss este prost condiionat.
y=
Sistemele subdimensionate apar n probleme legate de ajustarea datelor. S presupunem c msurnd n cantiti x1, x2, ... , xn, gsim valorile l1, l2, ... , ln. Pe de alt parte, necunoscutele x1, x2, ... , xn satisfac anumite ecuaii i anume a11 x1 + ... + a1n xn = b1 (9) , m<n . ........................ a x + ... + a x = b mn n m m1 1 Datorit lipsei de acuratee a msurtorilor se pune condiia ca suma ptratelor coreciilor extrem cu legturi.
i =1 2 (li xi ) s fie minim. Se obine astfel o problem de n

Exemplul 2. S presupunem c msurnd unghiurile x1, x2, x3 ale unui triunghi gsim valorile l1, l2, l3. Evident avem legtura x1+ x2+ x3 = 180 . Impunem condiia ca abaterile datorate impreciziei msurtorilor s fie ct mai mici, deci ca expresia (x1 l1 )2 + (x2 l2 )2 + (x3 l3 )2 s fie minim.

70

Bazele Analizei Numerice

Revenind la cazul general, se pune problema s determinm n necunoscute x1, x2, ... , xn care satisfac legturile (9) i care minimizeaz funcia: f(x1,...,xn ) = (x1 l1 )2 + ... + (xn ln )2 . Considerm funcia auxiliar ( x1 ,..., xn , 1 ,..., m ) = ( x1 l1 ) 2 + ... + ( xn ln ) 2 21 (a11x1 + ... + a1n xn b1 )... 2m (am1x1 + ... + amn xn bm ) Punctele critice ale funciei sunt date de sistemul x1 l1 (a111 + ... + am1m ) = 0 ............................................ xn ln (a1n 1 + ... + amn m ) = 0 . (10) a11 x1 + ................. + a1n xn b1 = 0 ................................................ am1x1 + ................. + amn xn bm = 0 Dac notm cu l = (l1 ,..., ln )T i cu = (1 ,..., m )T , atunci sistemul (10) se scrie sub forma matricial

x = AT + l Ax = b nlocuind (10) n (10) obinem sistemul AAT = b Al .


T

(10) (10) (11)

Dac rang A = m , atunci rang ( AA ) = m i sistemul (11) are soluie unic. Mai mult, matricea AAT este ptratic, simetric i pozitiv definit, deci rezolvarea sistemului (11) se poate face cu metoda Cholesky sau una din metodele de relaxare. Rezolvnd sistemul (11) gsim multiplicatorii lui Lagrange 1 ,..., m , iar din relaia x = AT + l determinm punctul de minim condiionat al funciei f.
2 2 (Cum d 2 = 2(dx1 + ... + dxn ) > 0 rezult c avem ntr adevr un punct de minim).

Exerciii

Sisteme de ecuaii liniare

71

Folosind metoda Gauss s se rezolve urmtoarele sisteme de ecuaii liniare: =2 6 x1 + x2 x3 + x4 x + 7x + 2x x = 1 1 2 3 4 1. x1 + 2 x2 + 8 x3 + x4 = 12 = 5 x1 x2 + x3 + 9 x4 1.0 0.1667 0.1667 0.1667 1.0 0.3171 0.1707 ~ 0 R. Matricea triunghiular A = , 0 0 1.0 0.2150 0 0 0 1 .0
0 .333 ~ 0 .1951 . vectorul termenilor liberi transformat b = 1 .7850 1 .0 1 1 Soluia sistemului x = 2 1 4 x1 + x2 x3 + x4 x + 8x + x + x 1 2 3 4 2. x1 + x2 + 6 x3 + x4 x1 + x2 + x3 + 7 x4

=1 =7 = 10 = 12
0.2500 0.0968 , 0.1105 1.0

1.0 0.2500 0.2500 1 .0 0.1613 ~ 0 R. Matricea triunghiular A = 0 0 1 .0 0 0 0 0.2500 ~ 0.8710 vectorul termenilor liberi transformat b = 1.7789 2 .0 Soluia sistemului x = (1 1 2 2).

72

Bazele Analizei Numerice

3.

5 x1 + x2 + x3 + x4 x + 8x + 2 x + x 1 2 3 4 x x 6 x x + + 3 4 1 2 + + + x x x x 3 4 1 2

= 14 = 127 = 15 = 10

1.0 0.2000 0.2000 0.2000 1 .0 0.2308 0.1026 ~ 0 , R. Matricea triunghiular A = 0 0 1 .0 0.1558 0 0 0 1.0 2.8000 ~ 3.1026 vectorul termenilor liberi transformat b = . 2.3766 4 .0 Soluia sistemului x = (1 2 3 4).

S se rezolve urmtoarele sisteme de ecuaii liniare folosind metoda Cholesky: =9 10 x1 + x2 x3 x4 x + 9x + x x = 6 1 2 3 4 4. x1 + x2 + 11x3 + x4 = 8 x1 x2 + x3 + 8 x4 = 7


0 0 0 3.1623 2.9833 0 0 T 0.3162 R. . Soluia sistemului R = 0 0.3162 0.3687 0.32809 0.3162 0.3017 0.3082 2.7774 2.846 2.3129 T R y=b este y = , iar cea a sistemului Rx=y , i deci soluia 2.9726 2.7774 1 1 sistemului iniial este x = . 1 1

Sisteme de ecuaii liniare

73

5.

8 x1 x2 x3 + x4 x + 6 x + x 2 x 1 2 3 4 x x 7 x x + + + 3 4 1 2 + + x 2 x x 9 x 2 3 4 1

=7 =6 = 8 = 11

R.

0 0 0 2.82843 2.42384 0 0 T 0.35355 . R = 0.361 2.59705 0 0.35355 0.35355 0.77357 0.54071 2.82564

2.47487 2.83641 T Soluia sistemului R y=b este y = iar cea a sistemului Rx=y , i 3.13776 2.82564 1 1 deci soluia sistemului iniial este x = . 1 1

6.

6 x1 + x2 2 x3 x4 x + 5x + x x 1 2 3 4 + + 2 x x 11 x 1 2 3 x4 x1 x2 x3 + 4 x4

= 19 = 15 =8 = 10

R.

0 0 0 2.44949 2.19848 0 0 T 0.40825 . R = 3.15682 0 0.8165 0.60648 0.40825 0.37905 0.34954 1.88878

7.75672 5.3825 T Soluia sistemului R y=b este y = , iar cea a sistemului Rx=y , i 3.50636 1.88878 deci soluia sistemului iniial este x= (3 2 1 1).

74

Bazele Analizei Numerice

7.

R.

Folosind metoda Householder, s se rezolve sistemele: =2 4 x1 + 3x2 2 x3 + x4 5 x + 6 x + 7 x 8 x = 14 1 2 3 4 + 9 x 8 x 7 x 6 x 2 3 4 = 30 1 =0 x1 + x2 x3 x4 det(A)= 1112; descompunerea A=QR este dat de 0.3607 0.3882 0.7877 0.3143 0.4508 0.7068 0.5445 0.0257 , Q= 0.8115 0.5787 0.0784 0.02 0.0902 0.1217 0.2774 0.9487

.0905 2.6148 8.0249 8.0249 11 .1569 0.0016 1.9155 10 0 . R = 0 0 6.2130 5.83368 0 0 0 1.58889 29.9354 8.2430 Soluia sistemului Qy=b este y = , 11.5498 1.5888 iar cea sistemului Rx=y este x=(1 1 1 1). x1 + 2 x2 3 x3 4 x4 = 16 5 x 6 x + 7 x 8 x =2 1 2 3 4 . 8. 9 x1 + 8 x2 + 7 x3 + 6 x4 = 6 4 x1 3 x2 + 2 x3 x4 = 2

R.

det(A)= 2808; descompunerea A=QR este dat 0.09017 0.17005 0.78843 0.58424 0.45083 0.71359 0.2494 0.47469 , Q= 0.8115 0.55307 0.18504 0.03651 0.36067 0.39494 0.53098 0.65727
0.541 11.09054 2.88534 9.2872 10.23107 2.42367 8.7419 0 R = 0 0 4.3444 2.79972 0 0 0 5.69631 .

Sisteme de ecuaii liniare

75

6.49202 5.40201 Soluia sistemului Qy=b este y = , 9.94384 11.39263 1 2 iar cea sistemului Rx=y este x = . 1 2 4 x1 + 3x2 + 2 x3 + x4 = 2 x + 2 x + 3x + 4 x = 2 1 2 3 4 9. . 9 x1 8 x2 + 6 x3 7 x4 = 30 =4 x1 x2 + x3 x4

R.

det(A)= 80 ; descompunerea A=QR este dat de 0.0697 0.40202 0.82257 0.3961 0.1005 0.39663 0.90448 0.12039 , Q= 0.90453 0.4028 0.05925 0.12673 0.1005 0.06173 0.14663 0.98213
9.94987 5.92972 6.63325 6.5451 0.3565 0 R= 0 0 2.42341 0 0 0 5.62821 5.29041 . 2.66043 0.50691

Soluia sistemului Qy=b este

28.14106 11.47901 , y= 0.23702 0.50691 1 1 x = . 1 1

iar cea sistemului Rx=y este

76

Bazele Analizei Numerice

1 1 1 2 1 1 3 2 10. Pentru matricea A = , s se calculeze: 2 1 1 1 1 1 1 1 a) det(A) , A1, det(A1);

b) c)

A 1,

A 2,

A;

A1 ,
1

A1 ,
2

A1

cond1(A) , cond2(A) , cond(A) . 0 0.3333 1 0.6667 0 0.6667 1 1 0.3333 R. a) det(A)=6, A = , 1 0 .5 1 1.5 0 0 .5 0 0.5 det(A1)=0.1667; A 1 = 6, A 2 = 5.7446, A = 7 ; b) A1 = 3, A1 = 2.848, A1 = 4 . 1 2 c) cond1(A)=18, cond2(A)=12.7511, cond(A)=28 . 11. S se calculeze: a) det(A) , A1, det(A1); b) c)

A 1,

A 2,

A;

A1 ,
1

A1 ,
2

A1

cond1(A) , cond2(A) , cond (A) 5 4 1 pentru matricea A = 3 2 2 . 6 1 3 R. a) det(A)=8, A


1

1 1 1 = 2.625 2.25 2.875 , det(A1)=0.125 ; 1.125 1.25 1.375

A 1 = 6, A 2 = 5.7446, A = 7 ; b) A1 = 3, A1 = 2.848, A1 = 4 . 1 2 c) cond1(A)=68.25, cond2(A)=48.28525, cond (A)=77.5 . Folosind metoda Iacobi s se gseasc soluia aproximativ pentru urmtoarele sisteme de ecuaii liniare :

Sisteme de ecuaii liniare

77

12.

5 x1 x2 x3 x1 + 6 x2 + x3 x x + 7 x 3 1 2

=5 = 4 =9 forma x = Bx+c, unde B = D1 (DA), iar D = 1 1 0 1 , 1 0 1 0.66667 , B 2 =0.41997, 1.28571


( 0)

R. Sistemul se poate pune sub 0 5 0 0 0 6 0 , E = DA = 1 1 0 0 7

0 0.2 0.2 0.16667 , c = D1 b = B = 0.16667 0 0.14286 0.14286 0

(B)= 0.29277. Soluia la fiecare iteraie, pornind cu x

0 = 0 , este: 0

1 1.12381 ( 2) x = 0.66667 , x = 1.04762 , 1.28571 1.04762 1 0.98939 (3) ( 4) x = 1.02857 , x = 0.99592 . 0.97551 0199592
(1)

1 Soluia exact fiind x* = 1 1 aproximativ x(4) , este

, eroarea care se face dac se reine ca soluie

x* x ( 4) = 0.01208 .

13.

6 x1 + x2 x3 + x4 x + 7x + x x 1 2 3 4 x 2 x 8 x x + + + 2 3 4 1 + + + x x x 9 x 3 4 1 2

=2 = 4 =6 8

(s se scrie soluia obinut dup patru

iteraii). R. Se poate pune sistemul sub forma x = Bx+c, unde B = D1 E , iar 6 0 0 0 0 1 1 2 0 1 1 0 7 0 0 1 D= , E = DA = , 0 0 8 0 1 2 0 1 0 0 0 9 1 1 1 0

78

Bazele Analizei Numerice

0.16667 0.16667 0.33333 0 0.14286 0.14286 0 0.14286 B= 0.125 0.25 0.125 0 0.11111 0.11111 0.11111 0

0.33333 0.57143 1 c=D b = , B 2 =0.5989, (B)= 0.27926. Soluia pentru primele 0.75 0.88889 0 0.33333 (0) 0 (1) 0.57143 4 iteraii, pornind cu x = , este: x = , 0 0.75 0 0.88889 0.84987 0.95117 0.9886 (2) 0.85317 (3) 0.96542 ( 4) 0.98884 , x = , x = . x = 0.9623 0.97528 0.99689 0.94577 0.99544 0.99567 1 1 Soluia exact fiind x* = , eroarea care se face dac se reine ca soluie 1 1

aproximativ x(4) , este

x* x ( 4) = 0.01682 .

14.

4 x1 x2 x3 + x4 = 3 x + 7 x + x x = 14 1 2 3 4 + + x x 6 x x 3 4 = 21 1 2 x1 x2 x3 + 9 x4 = 38 R. Se poate pune sistemul sub forma x=Bx+c, unde B=D1E , iar 4 0 0 0 0 1 1 1 0 7 0 0 1 0 1 1 D= , E = DA = , 0 0 6 0 1 1 0 1 0 0 0 9 1 1 1 0

Sisteme de ecuaii liniare

79

0.25 0 0.25 0.25 0.14286 0.14286 0 0.14286 B= , 0.16667 0.16667 0.16667 0 0.11111 0.11111 0.11111 0 0.75 2 1 c=D b = , B 2 =0.60753, (B)= 0.22758. Pentru primele 4 iteraii, 3.5 4.22222 0 0.75 2 (0) 0 (1) pornind cu x = , soluia este: x = , 0 3 .5 0 4.22222 1.06944 1.00711 0.99663 ( 2) 1.99603 (3) 1.98545 ( 4) 1.99883 , x = , x = . x = 3.00463 2.99239 2.99784 3.97222 3.99133 3.99844 1 2 Soluia exact fiind x* = , eroarea care se face dac se reine ca soluie 3 4

aproximativ x(4) , este x* x ( 4) = 0.00417 . S se rezolve cu metoda GaussSeidel urmtoarele sisteme: 5 x1 2 x2 2 x3 = 3 15. x1 + 6 x2 x3 = 2 x 3 x + 4 x = 8 2 3 1 5 2 2 R. Se observ c matricea coeficienilor sistemului A = 1 6 1 este tare 1 3 4 diagonal dominant i atunci algoritmul GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=(D+L)1(Ux(m)+b), m0, unde: 0 0 5 0 0 0 2 2 0 L = 1 0 1 , D = 0 6 0 . 0 0 , U = 0 0 0 4 0 1 3 0 0 0 Atunci

80

Bazele Analizei Numerice

( D + L)

0 0 0.2 = 0.03333 0.16667 0 , 0.075 0.125 0.25

0 .4 0 .4 0 (D+L) U = 0 0.06667 0.23333 , 0 0.15 0.275


1

0.6 (D+L) b = 0.23333 2.025


1

. Se obin pornind cu x

( 0)

0 = 0 , vectorii: 0

(1)

0.6 0.30333 0.73531 ( 2) (3) = 0.23333 , x = 0.72139 , x = 0.89203 , 2.025 2.61687 2.85285 0.89795 ( 4) x = 0.95847 . 2.94334

16.

6 x1 x2 2 x3 + x4 2x + 6x x x 1 2 3 4 x 3 x 8 x 2 x4 + + 2 3 1 x1 + x2 + x3 + 4 x4

=2 =8 =2 = 1

R. Se observ c matricea coeficienilor sistemului


1 6 1 2 6 1 1 2 A= 1 3 8 2 1 1 1 4 este tare diagonal dominant i algoritmul GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1) = (D+L)1(Ux(m)+b) , m0, unde: 0 0 0 1 0 0 1 2 0 0 0 2 0 0 1 1 , U = , L= 1 3 0 0 0 0 0 2 1 0 0 1 1 0 0 0

Sisteme de ecuaii liniare

81

6 0 D= 0 0

0 6 0 0

0 0 8 0

0 0 0 4

0 0 0 0.16667 0.16667 0 0 1 0.05556 Atunci ( D + L) = 0 0.0625 0.125 0 0.02778 0.05729 0.03125 0.25

0.33333 0.16667 0 0.16667 0.22222 0 0.05556 0.05556 1 (D+L) U = , 0.1875 0 0 0.0625 0 0.02778 0.11285 0.03299 0.33333 1.22222 1 (D+L) b = . 0.75 0.82639 0 0.5 0.95573 1 (0) 0 (1) ( 2) 1.02778 Alegnd x = , obinem: x = , x = , 0 0.9375 0.96973 0 0.85938 0.98831 0.99259 0.99803 0.99971 (3) 0.99937 ( 4) 1.00048 (5) 1.00006 , x = , x = . x = 0.99592 0.99918 0.99984 0.99697 0.99942 0.9999

=7 10 x1 x2 x3 + x4 x + 11x x x = 10 1 2 3 4 17. x1 x2 + 12 x3 + x4 = 22 = 24 x1 + x2 + x3 + 13x4 R. Se observ c matricea coeficienilor sistemului 10 1 1 1 1 11 1 1 A= 1 1 1 12 1 1 1 13 este tare diagonal dominant i algoritmul GaussSeidel este convergent.

82

Bazele Analizei Numerice

Sistemul se poate pune sub forma 0 0 0 1 0 0 L= 1 1 0 1 1 1

x(m+1)=(D+L)1(Ux(m)+b) , m0, unde: 0 0 1 1 1 0 0 0 1 1 , U = , 0 0 0 0 1 0 0 0 0 0

10 0 0 0 0 11 0 0 D= 0 0 12 0 0 0 0 13

Atunci
0 .1 0 0 0 0.09091 0 0 1 0.00909 , ( D + L) = 0.00758 0.00758 0.08333 0 0.00758 0.00758 0.00641 0.07692 0.1 0 .1 0.1 0 0.1 0 0.00909 0.08182 1 (D+L) U = , 0 0.00758 0.01515 0.08333 0 0.00758 0.01515 0.00641 0 .7 0.97273 1 (D+L) b = 1.81061 1.96445

0 0 .7 (0) 0 (1) 0.97273 Alegnd x = , obinem: x = , 0 1.81061 0 1.96445 0.98023 0.99793 0.99993 ( 2) 1.01219 (3) 1.00001 ( 4) 1.00001 , x = , x = , x = 1.99437 1.99958 1.99998 1.99711 1.99999 1.99999 1 ( 5 ) 1 x = . 2 2

Sisteme de ecuaii liniare

83

Folosind metoda relaxrii simple s se scrie soluia aproximativ pentru urmtoarele sisteme: =3 8 x1 x2 + x3 18. x1 + 6 x2 x3 = 14 x x + 9x = 28 3 1 2 8 1 1 R. Matricea sistemului este A = 1 6 1 . 1 1 9 0 3 (1) (1) Lund vectorul de prob x = 0 se obine r = 14 , deci prima direcie 0 28 0 0 (1) ( 2) 0 de relaxare este p = e3 = 0 . Rezult x = . 1 3.11111 Analog : 0 6.11111 0 ( 2) (3) r = 10.88889 , p = e2 = 1 , x = 1.81481 ; 0 3.11111 0 7.92593 1 0.99074 (3) (3) 0 r (3) = , p = e1 = 0 , x = 1.81481 ; 1.81481 0 3.11111
( 2)

( 4)

0 0 0.99074 ( 4) ( 4) = 0.99074 , p = e2 = 1 , x = 1.91994 . 0.824070 0 3.11111

. a. m. d. 10 x1 + x2 x3 x4 x + 9x x + x 1 2 3 4 19. + + x x 11 x 3 x4 1 2 x1 + x2 + x3 + 8 x4

=9 = 24 = 30 = 32

1 1 1 10 1 9 1 1 R. Matricea sistemului este A = . 1 1 11 1 1 1 1 8

84

Bazele Analizei Numerice

0 (1) 0 Alegnd x = 0 0

0 0 (1) Deci p = e4 = 0 1 Mai departe obinem : 0 0 8.09091 0 0 (3) (3) 16.90909 ( 2) ; r = p = e3 = , x = , 1 3.090901 0 0 4 3.09091 0 1 0.99697 0 ( 4) 1.87879 (5) 1.87879 ( 4) ; p = e1 = , x = ; x = 3.09091 0 3.09091 4 0 4 0 0.99697 1 (6) 1.98956 ( 5) , p = e1 = x = 0 3.09091 0 4

9 (1) 24 se obine r = . 30 32 0 5 ( 2) 0 ( 2) 20 , x = r = . 0 34 4 0

0 1 (3) p = e2 = , 0 0 0 (5) 0.99697 r = 0.88182 0.21515

20.

4 x1 2 x2 + x3 2 x1 + 6 x2 x3 x x + 5x 3 1 2

=9 =5 =6

1 4 2 R. Matricea A = 2 6 1 este simetric, tare diagonal dominant: 1 1 5 4 > 2 + 1 , 6 > 2 + 1 , 5 > 1 + 1 , 1=4 , 2=20 , 3=94 , deci pozitv definit i se poate aplica metoda. Lund vectorul de prob

Sisteme de ecuaii liniare

85

0 9 1 2.25 (1) (1) ( 2) x = 0 se obin: r = 5 , p = e1 = 0 , x = 0 ; 0 6 0 0 0 0 2.25 3.16667 ( 2) ( 2) (3) (3) r = 9.5 , este p = e2 = 1 , x = 1.58333 ; r = 0 3.75 0 0 5.33333
(1)

, p

(3)

0 2.25 2.1 1 ( 4) (3) ( 4) = e3 = 0 , x = 1.5833 ; r = 1.06667 , p = e1 = 0 , 1 1.06667 0 0 2.775 ( 4) x = 1.58333 . 1.06667

S se scrie soluia aproximativ pentru urmtoarele sisteme de ecuaii liniare obinut cu metoda suprarelaxrii: =3 2 x1 x2 21. x1 + 3 x2 x3 = 5 x2 + 4 x3 = 5 R. Matricea coeficienilor sistemului este bloc tridiagonal, simetric i pozitiv definit, deci metoda suprarelaxrii este convergent. Sistemul se poate pune sub forma: x(m+1)=Mx(m)+C, 1 m0, unde: M = E + D 2 0 0 0 1 1 C = E + b , E = 1 0 0 , D = 0 0 0 1 0
2 1+
2 1 1

1 F + 1 D , 0 0 3 0 , F=ET , 0 4

fiind cea mai mare valoare proprie a matricei D1(E+F),

1=0.5 , =1.0718 i considernd vectorul iniial x(0)=b, rezult

86

Bazele Analizei Numerice

(1)

1.28719 1.64605 1.03385 ( 2) (3) = 0.10088 , x = 0.85027 , x = 0.98314 , 0.95373 1.04344 1.0014 1.00661 ( 4) x = 0.99835 . 1.00034

= 13 14 x1 + x2 x + 5 x2 x3 = 3 1 22. x2 + 14 x3 2 x4 = 15 2 x3 + 5 x4 = 7 R. Matricea coeficienilor sistemului este bloc tridiagonal, simetric i pozitiv definit, deci metoda suprarelaxrii este convergent. Sistemul se poate pune sub forma
x
(m+1)

=Mx +C,
1

(m)

m0,

unde

M
0 0 0 0

1 C = E +

0 0 0 0 1 0 b , E = 0 1 0 0 0 2

1 1 = E + D F + 1 D , 14 0 0 0 0 5 0 0 , D= , F=ET , 0 0 14 0 0 0 0 5

2 1+
2 1 1

, 1

fiind cea mai mare valoare proprie a matricei D1(E+F),

1=0.2735 , =1.01943 i considernd vectorul iniial

x(0) = b, rezult: 0.91242 1.20542 0.98111 (1) 3.79769 ( 2) 0.79542 (3) 0.99288 , x = , x = , x = 0.05784 0.96444 0.99882 1.26758 1.0093 1.0003 0.99985 0.99999 ( 4) 0.99987 (5) 0.99999 , x = . x = 0.99997 1 1.00001 1

S se gseasc soluia aproximativ obinut cu metoda GaussSeidel pentru sistemele de ecuaii liniare urmtoare:

Sisteme de ecuaii liniare

87

= 13 14 x1 + x2 x + 5 x2 x3 = 3 1 23. x2 + 14 x3 2 x4 = 15 2 x3 + 5 x4 = 7 S se precizeze numrul de iteraii necesare pentru ca eroarea s se micoreze de 10 ori. R. Matricea A fiind simetric i pozitiv definit procedeul iterativ GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=Mx(m)+C , m0, unde 0 0 0 0 0 0 1 0 1 1 M = (D+E) F , C = (D+E) b , E = , F = ET, 0 1 0 0 0 0 2 0
0 0 0 5 0 0 . 0 14 0 0 0 5 0 0 0 0.07143 0.92857 0 .2 0 0 0.01429 0.78571 Deci M = , C = . 0 0.00102 0.01429 0.14286 1.12755 0 0.94898 0.0004 0.000571 0.05714 Dac se pornete cu v(0) = b obin vectorii: 1.14286 1.20204 0.99353 (1) 3.82857 ( 2) 0.90939 (3) 0.98992 , v = , v = , v = 0.3449 0.95609 0.99677 1.26204 1.01756 1.00129 14 0 D= 0 0 0.99928 0.99994 ( 4) 0.99921 (5) 0.99994 , v = . v = 0.99976 0.99998 1.0001 1.00001 Raza spectral este (M)=0.0748, rata de convergen este R(M)= lg((M))=1.12609 i numrul de iteraii dup care eroarea scade de 10 ori 1 =0.88803, adic la fiecare iteraie eroarea scade de 10 ori. este K R(M )

88

Bazele Analizei Numerice

=5 5 x1 + x2 x3 = 10 24. x1 + 8 x2 + x3 x + x + 15 x = 15 3 1 2 S se precizeze numrul de iteraii necesare pentru ca eroarea s se micoreze de 10 ori. R. Matricea A fiind simetric i pozitiv definit procedeul iterativ GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=Mx(m)+C , m0, unde 0 0 0 5 0 0 1 1 T M = (D+E) F , C = (D+E) b , E = 1 0 0 , F = E , D = 0 8 0 1 1 0 0 0 15 . 0.2 0.2 1 0 M = 0 0.12 , C = 0.9 . Deci 0.02 1.0067 0 0.01467 0.02133 Dac se pornete cu v(0) = b obin vectorii: 2 1.376 1.05954 1.04563 (1) ( 2) (3) ( 4) v = - 0.7 , v = 0.7444 , v = 0.78984 , v = 0.79364 , 1.18 1.04211 1.01798 1.0168 1.04463 ( 5) v = 0.79386 . 1.01672 Raza spectral este (M)=0.06262, rata de convergen este R(M)= lg((M))=1.20326 i numrul de iteraii dup care eroarea scade de 10 ori 1 =0.83108, adic la fiecare iteraie eroarea scade de 10 ori. este K R(M ) S se scrie soluia aproximativ sistemelor de ecuaii liniare: x3 6 x1 + x2 + 8 x2 + x3 25. x1 x + x + 10 x3 2 1 obinut cu metoda gradienilor conjugai aplicat =6 = 8 . = 12

Sisteme de ecuaii liniare

89

R. Matricea coeficienilor sistemului este simetric i pozitiv definit i deci se 0 (0) poate aplica metoda. Lund x = 0 ca vector de prob, se obin rezultatele. 0 Iteraia I. 6 r =Ax0 b= 8 , prima direcie de relaxare, p(1)= r(0) , 12
(0)

0.60797 = 0.10133 , x =x + q1p = 0.81063 . q1 = (1) (1) Ap , p 1.21595 r (0) , p (1)


(1) (0) (1)

Iteraia a II-a . r
(1)

=r

( 0)

+ q1 Ap

(1)

1.94684 r (1) , r (1) = 0.90698 , c1 = = 0.02911 r ( 0) , r ( 0) 1.57807

2.12151 r (1) , p ( 2) = 0.17916 , p = r +c1p = 1.13987 , q2 = Ap ( 2) , p ( 2) 1.22874


(2) (1) (1)

0.98807 x =x + q2p = 1.01485 . 0.9958


(2) (1) (2)

Iteraia a III-a. r
( 2)

=r

(1)

+ q2 Ap

( 2)

0.09062 r ( 2 ) , r ( 2) = 0.12656 , c2 = = 3.62608 10 3 (1) (1) r ,r 0.03906

0.09832 r ( 2) , p (3) = 0.12133 , p = r +c2p = 0.12243 , q3 = Ap (3) , p (3) 0.03461 1 (3) (2) (3) x =x + q3p = 1 . 1
(3) (2) (2)

90

Bazele Analizei Numerice

26. S se determine traseul optim pentru o conduct de gaze naturale care s treac prin "apropierea" localitilor Li , i=1,...,10 , care raportate la un sistem cartezian de referin au coordonatele urmtoare: L1(1,2), L2(2,2), L3(5,3), L4(7,4), L5(10,2), L6(11,3), L7(15,4), L8(16,5), L9(18,1), L10(20,4). R. Lund traseul dup o dreapt, se obine sistemul: a+b =2 2a + b = 2 5a + b = 3 7a + b = 4 10a + b = 2 11a + b = 3 15a + b = 4 16a + b = 5 18a + b = 1 20a + b = 4 care este supradimensionat. Se formeaz sistemul normal al lui Gauss Bu=c, unde 1505 105 340 B=ATA, c=ATb , adic: B = , a crui soluie este , c= 105 10 30 u1=0.06211 , u2=2.34783 . Raportat la acel sistem de coordonate traseul conductei trebuie s urmeze dreapta y = 0.06211x+2.34783 .

Sisteme de ecuaii neliniare

91

2. Sisteme de ecuaii neliniare


n acest capitol abordm problema rezolvrii numerice a sistemelor de ecuaii algebrice neliniare. Considerm urmtorul sistem de ecuaii f1 ( x1,x2 ,...,xn ) = 0 (1) ............................. f ( x ,x ,...,x ) = 0, n n 1 2

n care cel puin una din funciile f i , i = 1, n nu este liniar. Sub form vectorial sistemul se scrie F ( x) = 0 , (2) unde x = ( x1,x2 ,...,xn )T i F ( x) = [ f1 ( x1,...,xn ),..., f n ( x1,...,xn )]T Dac adunm x n ambii membri i notm cu G ( x) = x + F ( x), sistemul (2) se poate pune sub forma echivalent x = G ( x) (3) Evident, exist i alte metode de a pune sistemul (2) sub forma (3).
Exemplul 1. 2 f1(x1,x2 ) 2 x 2 1 + x2 5 = 0 (4) f 2(x1,x2 ) x1+2 x2 3 = 0 Se observ c prima ecuaie nu este liniar. Acest sistem se poate pune sub forma echivalent 2 x1 = 2 x 2 1+ x2 5 + x1 g1(x1,x2 ) . (4) x2=x1+3x2 3 g 2(x1,x2 ) Sistemul fiind foarte simplu se poate rezolva cu metoda substituiei. nlocuind
2 x1 = 3 2 x2 n prima ecuaie obinem 9 x 2 24 x 2 + 13 = 0 , ecuaie care admite

rdcinile x1,2 =

4 3 . 3

92

Bazele Analizei Numerice

Aadar soluiile exacte ale sistemului sunt 1 2 3 4 + 3 i M 2 1 + 2 3 , 4 3 . , M1 3 3 3 3 1 3 Fie D = [1,2] , o vecintate a punctului M2. n aceast vecintate 2 2 sistemul (4) se poate pune sub forma echivalent 2 ~ (x , x ) x1 = 5 x2 g 1 1 2 2 (4) 1 ~ (x , x ) x2 = (3 x1 ) g 2 1 2 2 (4) i (4) sunt variante echivalente (de tipul (3)) ale sistemului (4), n vecintatea punctului M2. n continuare prezentm dou metode numerice de rezolvare aproximativ a sistemelor neliniare.

2.1. Metoda aproximaiilor succesive


Fie D R n o mulime convex, mrginit i nchis i fie sistemul x = G ( x) , x D . Presupunem de asemenea c G C1 ( D) . n aceste condiii exist mij =sup Notm cu m11 m12 ... m1n . . . M = . . m n1 mn 2 ... mnn
M < 1 , atunci sistemul x = G ( x) admite o singur soluie n domeniul D, care se afl cu metoda aproximaiilor succesive. Demonstraie. Fie x D i y D oarecare. Din Teorema lui Lagrange pentru
Teorema 1. Dac

g i ( x) , i = 1, n xD x j

j = 1, n

G C1 ( D) , G ( D ) D

funcii de mai multe variabile, rezult c pentru orice i = 1, n , exist i = x + i ( y x),0 < i < 1, astfel nct

Sisteme de ecuaii neliniare

93

g i ( x) g i ( y ) = innd seama c

g i g ( i )( x1 y1 ) +...+ i ( i )( xn y n ) . x1 xn g i ( x) mij ,() x D, x j

rezult g i ( x) g i ( y ) mi1 x1 y1 + ... + min xn yn x y mij


j =1 n

i mai departe G ( x) G ( y ) = max g i ( x) g i ( y ) x y max mij = x y M . 1i n 1i n j =1 Cum


n

M < 1 , rezult c aplicaia G : D D este o contracie. Conform teoremei de punct fix a lui Banach rezult c exist x* D, unic, astfel nct x* = G ( x*) . Aadar x* este soluia unic a sistemului (3) din domeniul D. Aceast soluie se afl cu metoda aproximaiilor succesive. Fie x (0) D oarecare i fie irul aproximaiilor succesive
x ( k +1) = G ( x ( k ) ),k 0 .

Acest ir este convergent n Rn i limita sa x* = lim x ( k ) este soluia sistemului


k

(3) i deci a sistemului echivalent (1), respectiv (2). Teorema lui Banach ne d i evaluarea erorii i anume

(k )

M x* x (1) x (0) . 1 M

(5)

Observaia 1. Teorema rmne valabil i dac norma M se nlocuiete cu alt norm de matrice, de exemplu M 1 sau M 2 .

1 3 Considerm din nou sistemul (4) din exemplul 1. n domeniul D = [1,2] , , 2 2 acest sistem este echivalent cu sistemul 2 x1 = 5 x2 g1 ( x1 , x2 ) 2 . 1 x2 = (3 x1 ) g 2 ( x1 , x2 ) 2 n acest domeniu, sistemul admite o singur soluie i anume

94

Bazele Analizei Numerice

Deoarece x1 [1,2]

1+ 2 3 1.4880338 x1 = 3 . 4 3 0.7559831 x2 = 3 1 3 i x2 , rezult 2 2

2 5 x2 11 19 3 1 3 x1 = g 2 ( x1, x2 ) i = g1 ( x1 , x2 ) , 2 2 2 8 2 8 deci 1 g1 ( x1 , x2 ) 2 . Aadar, dac (x1 , x2 ) D atunci (g1 (x1 , x2 ), g 2 (x1 , x2 )) D . n continuare avem g1 g1 g 2 x2 1 g 2 ; =0 , = = ; =0 2 2 x2 x1 x2 x1 10 2 x2 3 1 m11 = m22 = 0 ; m12 = ; m21 = 2 22

3 M = M 1= < 1 i 22

29 M 2= < 1. 44

( 0) ( 0) = 1.5 i x2 = 1 (centrul dreptunghiului). Alegem x1 Se obin urmtoarele valori pentru irul aproximaiilor succesive Nr. de iteraii 0 1 2 3 4 x1 1.5 1.414 1.490 1.478 1.488 x2 1.0 0.750 0.793 0.755 0.761

5 1.487 0.756

6 1.488 0.756

n continuare prezentm metoda aproximaiilor succesive pentru o singur ecuaie neliniar. Fie deci ecuaia f ( x) = 0 , x [a, b] . Aceast ecuaie se pune sub forma echivalent x = g ( x) , x [a, b] . Din Teorema 1 rezult c dac g C 1 [a, b] , g : [a, b] [a, b] i g = sup{ g ( x) ; x [a, b] } < 1

atunci ecuaia admite o singur rdcin n intervalul [a, b] i aceasta este x* = lim xk , unde x k +1 = g ( x k ) , k 0 , iar x0 [a, b] este arbitrar.
k

Exemplu 2. Fie ecuaia

x 5 x 0.2 = 0 ; x [ 0.3 ; 0.2] .

Sisteme de ecuaii neliniare

95

Forma echivalent este Avem g = 5 x 4 i

x = x 5 0,2 = 0, x [ 0,3;0,2] . g = 0.0405 < 1 .

Se poate alege x0 = 0.3 . irul aproximaiilor succesive este 5 x k +1 = x k 0.2 . x 0 = 0.3 Se obin urmtoarele valori pentru irul aproximaiilor succesive Numrul 0 1 2 3 4 iteraiei x 0.3 0.20243 0.20034 0.20032 0.200322

5 0.20032

2.2. Metoda Newton - Raphson


Fie DRn o mulime convex, mrginit i nchis i fie sistemul neliniar f1(x1 ,x 2 ,...,x n ) = 0 . (1) ............................. f (x ,x ,...,x ) = 0, n n 1 2 Presupunem c (1) i c

(0) (0) T x( 0 ) = x1 ,...,xn D este un punct apropiat de adic x (0) << 1 . Presupunem, de asemenea, c funciile f i , i = 1, n 1 sunt de clas C pe D. n aceste condiii, dac x D se afl ntr-o vecintate suficient de mic a punctului x(0) avem f i ( x) f i ( x (0) ) + df i ( x (0) )( x x (0) ), i = 1, n . Rezult c sistemul (1) se poate nlocui cu sistemul liniar apropiat f1 ( x (0) ) + df1 ( x (0) )( x x (0) ) = 0 . (2) ........................................ ( 0) ( 0) ( 0) f n ( x ) + df n ( x )( x x ) = 0 Sub forma vectorial sistemul (2) se scrie F ( x (0) ) + dF ( x (0) )( x x (0) ) = 0 (3) unde F = ( f1 , f 2 ,..., f n )T i dF = ( df1 ,..., df n )T . Deoarece sistemul (3) este apropiat de sistemul (1), ne ateptm ca soluia sa, x(1), s fie apropiat de soluia a sistemului (1).

= (1,..., n )T D este o soluie izolat a sistemului

96

Bazele Analizei Numerice

Aadar x(1) verific relaia F ( x (0) ) + dF ( x (0) )( x (1) x (0) ) = 0 . n continuare considerm sistemul liniar F ( x (1) ) + dF ( x (1) )( x x (1) ) = 0 i ne ateptm ca soluia sa, x(2), s se apropie mai mult de . Aadar x(2) verific relaia F ( x (1) ) + dF ( x (1) )( x ( 2) x (1) ) = 0 . n general, considerm irul de vectori F (x
( p)

{ x ( p) }

cu proprietatea: (4)

) + dF ( x

i ne ateptm c x ( p ) s convearg la . Reamintim c pentru orice a D i orice h = (h1 ,...,hn )T R n , unde dF(a)(h) = J F (a)h,

{ }

( p)

)( x

( p +1)

( p)

)=0

f1 f1 (a ) ... (a) xn x1 ... ... J F (a) = ... f n f n (a ) ... (a) x1 xn Dac presupunem c JF() este nesingular, atunci, din continuitate, rezult c exist o vecintate V a punctului x =a, astfel nct JF(x) este nesingular pentru orice x V . n aceast condiie, din (4) rezult 1 ( p ) x ( p +1) = x ( p ) J F ( x ) F ( x ( p ) ), p 0 (5)
Teorema 1. Fie D R n o mulime convex, mrginit i nchis, D o soluie izolat a sistemului F(x) = 0 i fie r > 0 astfel nct bila

Br ( ) = x R n Presupunem c F C 2 ( D) (i) (ii) (iii)

x < r D .

1 Exist M1>0 astfel nct J F ( x)

M 1 , x Br ( )

Exist M2>0 astfel nct

2 fk ( x) M 2 , x Br ( ), xix j

Atunci irul

{ x ( p) }

oricare ar fi i, j , k = 1, n . definit de (5) are proprietile:

Sisteme de ecuaii neliniare

97

a) b)

x ( p +1)

2 1 2 n M 1M 2 x ( p ) 2

2 1 2 Dac n M 1M 2 x (0) < 1 , 2 ( p) convergent i . lim x = .


p

atunci irul

{ x ( p) }

este

Demonstraie. Din formula Taylor rezult c pentru orice k = 1, n i orice p N,


( p) exist un punct k pe segmentul de dreapt deschis de capete i x(p) astfel nct 1 ( p) f k ( ) f k ( x ( p ) ) = df k ( x ( p ) ) ( x ( p ) ) + d 2 f k k x ( p) . 2! innd seama c

( )(

p) p d 2 f k (( k )( x ) =

2 f k ( p) ( k )( i xi( p ) )( j x (j p ) ) x x i =1 j =1 i j

i de ipoteza (iii), rezult


f k ( ) f k ( x ( p ) ) df k ( x ( p ) )( ( x ( p ) )
n n 1 M 2 i xi( p ) j x (j p ) 2 i =1 j =1

2 1 M 2n 2 x ( p) , ()k = 1, n . 2 n continuare, avem 2 1 F ( ) F ( x ( p ) ) dF ( x ( p ) )( x ( p ) ) = M 2 n 2 x ( p ) 2 Pe de alt parte din (4) rezult

(6) (7)

F ( x ( p ) ) + dF ( x ( p ) )( x ( p ) ) = dF ( x ( p ) )( x ( p +1) ) Cum F()=0, din (6) i (7) obinem 2 1 dF ( x ( p ) )( x ( p +1) ) n 2 M 2 x ( p ) sau 2 2 1 J F ( x ( p ) )( x ( p +1) ) n 2 M 2 x ( p ) 2 n sfrit, innd seama i de ipoteza (ii) avem ( x ( p +1) )
1 ( p ) = JF ( x ) J F ( x ( p ) )( x ( p +1) )

(8)

1 ( p ) JF ( x ) J F ( x ( p ) )( x ( p +1) )

2 1 M1 M 2 n 2 x ( p) 2

Aadar, am demonstrat afirmaia a).

98

Bazele Analizei Numerice

1 Dac notm cu c= n 2 M 1M 2 , din a) rezult 2 ( x ( p +1) )

c ( x ( p) )
2 2

(9)

Particulariznd indicele p , obinem succesiv ( x (1) ) ( x ( 2) )


c ( x ( 0) ) c ( x (1) )

c 3 ( x ( 0) )
2 p +1

............................................................. 1 ( x ( p +1) ) c ( x (0) ) c Dac c ( x (0) ) convergent i

. = 0, deci

< 1, atunci

lim ( x ( p +1) )

{ x ( p) }

este

lim x ( p ) = . Cu aceasta teorema este demonstrat.

Exemplu. Relum sistemul (4) din 1 2 f1(x1 , x2 ) 2 x 2 1 + x2 5 = 0 . f 2 (x1 , x2 ) x1 + 2x2 3 = 0 1 3 n domeniul D = [1,2] , sistemul admite o singur soluie i anume 2 2 1+ 2 3 1.4880338 1 = 3 4 3 0.7559831 2 = 3 4 x1 2 x2 ( 0) 3 ( 0) ; x1 = i x2 = 1 ; J F ( x1 , x2 ) = 1 2 2

1 6 2 3 3 1 J F ( ,1) = ; J , 1 = 5 F 1 2 1 2 2 10 3 1 3 1 f1 ,1 = ; f 2 ,1 = . 2 2 2 2 Conform (5) avem

1 5 3 5

Sisteme de ecuaii neliniare

99

11 1 3 3 0 5 2 = 5 1 = 2 . 3 1 2 3 1 1 4 5 2 4 10 Primele 3 iteraii sunt prezentate n tabelul urmtor Numrul iteraiei 0 1 2 3 x1 1.5 1.5 1.488095 1.488034 x2 1.0 0.75 0.755952 0.755983 x (1) 3 1 = x (1) 2 2 1

1 4 x1 x2 1 ( x) = JF 1 2( 4 x x ) 1 2

x2 4 x1 x2 4 x1 2(4 x1 x2 )

1 3 x1 [1,2] ; x2 , 2 2 1 + x2 1 + 4 x1 9 1 . JF ( x) = max , 4 x1 x2 2( 4 x1 x2 ) 5
Aadar, putem lua M 1 = 9 5
.

2 f1
2 x1

= 4;

2 f1 2 f1 2 f2 2 f2 2 f2 =0 ; =2 ; = = =0 2 2 2 x1 x2 x1x2 x2 x1 x 2

i deci M2 = 4 . 3 2 1,488 , ( 0) x = , x 0.06 . 2 0,756 1 2 1 1 9 M 1M 2 n 2 x (0) 4 4 0.06 = 0.864 < 1 2 2 5 Rezult c algoritmul Newton Raphson este convergent n acest caz.
( 0)

Observaia 1. Metoda Newton expus aici are un inconvenient major i anume 1 ( p ) faptul c la fiecare pas trebuie calculat inversa J F ( x ) . Din motive de continuitate, putem presupune c ntr-o vecintate suficient de mic a punctului 1 ( p ) 1 (0) (x ) J F ( x ) . Se obine astfel metoda Newton modificat x(0) avem J F
1 (0 ) ( x ) F ( v (p ) ) , p0 v ( p +1) = v ( p ) J F (10) (0 ) ( ) 0 v x = Observm c v(1)=x(1) dar, n general v(p)x(p) pentru p>1 . L. Kantorovici a studiat metoda Newton modificat i a dat condiii suficiente care asigur convergena algoritmului (10).

100

Bazele Analizei Numerice

n continuare s analizm metoda NewtonRaphson pentru o singur ecuaie neliniar. F(x)=0 , x[a ,b ] . (11) Presupunem c ecuaia (11) admite o singur rdcin [a,b]. Algoritmul (5) revine la f (x p ) , p0 x p +1 = x p (12) f '(x p ) x [ a, b] 0

y B

a A

O x2 x1 x0 b

Din punct de vedere geometric, xp+1 reprezint abscisa punctului n care tangenta la graficul funciei f n punctul Mp[xp, f(xp)] ntlnete axa Ox. ntr-adevr, ecuaia tangentei la grafic n punctul M0[x0, f(x0)] este y f(x0) = f(x0)(x x0) . Fie x1 abscisa punctului n care aceast tangent ntlnete axa Ox. Avem i mai departe 0 f(x0) = f(x0)(x1 x0) x1 = x0 adic prima iteraie din (12). Fie m1 = inf{f(x) ; x[a,b]} . Atunci putem lua M 1 = 1 . Evident m1 f ( x0 ) f ' ( x0 )

m2 = sup{f"(x) ; x[a,b]} . Algoritmul este convergent dac 1 2 M 1M 2 x0 < 1 . 2

Sisteme de ecuaii neliniare

101

Exemplul 2. Fie ecuaia F(x) x3 - 2x - 5 = 0 ; x[2,3] . Ecuaia admite o singur rdcin real (2,3) . F(2) = 1 < 0 ; F(3) = 16 > 0 . Algoritmul este x3 2 x p 5 x p +1 = x p p , p0 (13) 3x 2 p 2 x0 (2,3) arbitrar

1 ; f"(x) = 6x ; M2 = 18 10 1 9 2 M 1M 2 x0 < < 1 , 2 10 de unde rezult convergena irului {xp} definit de (13). Valorile obinute dupa primele 5 iteraii sunt trecute n tabelul de mai jos. f(x) = 3x2 2 ; M 1 = Numrul iteraiei x 0 2.5 1 2.16418 2 2.09714 3 2.09456 4 2.09455 5 2.09455

Exerciii
1. S se gseasc soluia aproximativ a sistemului =0 y 3 20 x 1 3 x + xy 10 y + 10 = 0 situat n dreptunghiul D =[-1, 1][0, 2], folosind metoda aproximaiilor succesive. y3 1 20 g1 ( x, y ) R. Considerm G : D D unde G ( x, y ) = = g ( x, y ) 2 x 3 + xy + 10 10 3 0 g 3 5 , iar M = , deci G M = (mij )1i, j 2 = sup i = 1 1 xD x j 5 1i, j 2 2 10

102

Bazele Analizei Numerice

este o contracie i irul aproximaiilor succesive x(p+1) = G(x(p)) converge la soluia sistemului. Valorile obinute dup primele 3 iteraii sunt trecute n tabelul de mai jos. Numrul iteraiei 0 1 2 3 x 0.5 -0.0437 0.00583 -0.000679 y 0.5 1.0375 0.99545 0.99993 2. S se gseasc soluia aproximativ a sistemului x3 + y 3 6 x + 3 = 0 3 3 x y 6 y + 2 = 0

x(p+1) = G(x(p)) converge la soluia sistemului. Considernd x0=0.5 i avem: Numrul iteraiei 0 1 2 3 x 0. 0.54167 0.53266 0.53256 5 y 0. 0.33333 0.35365 0.35115 5 3. S se gseasc soluia aproximativ a ecuaiei e-x+10x-5=0 situat n intervalul [0, 1] , folosind metoda aproximaiilor succesive.

1 5 1 1 situat n dreptunghiul D = , , , folosind metoda aproximaiilor 2 6 6 2 succesive. x3 + y 3 1 + x= 6 2 i atunci R. Punem sistemul sub forma 3 3 y = x y + 1 6 3 3 3 g1 ( x, y ) = x + y + 1 6 2 este o contracie a lui D. ntr-adevr, G ( x, y ) = 3 3 x y 1 g 2 ( x, y ) = + 6 3 5 2 1 1 2 1 g 6 2 2 2 M = (mij )1i, j 2 = sup i , iar = 2 2 xD x j 5 1 1 1 1i, j 2 6 2 2 2 M = 0.47222 , deci G este o contracie i irul aproximaiilor succesive

y0=0.5

Sisteme de ecuaii neliniare

103

5 e x = ( x) , unde (x) este o 10 contracie i irul aproximaiilor succesive x = (x) converge la soluia ecuaiei. Valorile obinute dup primele 5 iteraii sunt trecute n tabelul de mai jos. R. Ecuaia se poate pune sub forma x = Nr. de iteraii 0 x 0 1 0. 4 2 0.43297 3 0.43514 4 0.43528 5 0.43529

1 3 x5 x* x1 x0 = 0.00525 . 1 1 3 4. S se gseasc soluia aproximativ din cadranul nti pentru sistemul 2 x1 + 3 lg x1 x2 =0 2 2 x1 x1 x2 5 x1 + 1 = 0 folosind metoda Newton. R. irul aproximaiilor succesive unde:
2 x1 + 3 lg x1 x2 F ( x, y ) = 2 2 x x x 5 x + 1 1 2 1 1

1 ( p ) ( x )F ( x( p) ) , p 0 x ( p +1) = x ( p ) J F

f1 x ( p) , J F (x ) = 1 f2 x 1

f1 x2 . f 2 x2

Se obin: - 0.19112 J 1 ( x (0) ) = - 0.31853 - 0.12916 J 1 ( x (1) ) = - 0.25343 - 0.13672 J 1 ( x ( 2) ) = - 0.26238 - 0.13697 J 1 ( x (3) ) = - 0.26267 0.25482 3.59209 , x (1) = 2.32015 ; 0.09137 3.49059 0.16685 , x ( 2) = ; 0.049 2.26341 0.1773 3.48745 , x (3) = 2.26163 ; 0.05379 0.17765 3.48744 , x ( 4) = 2.26163 0.05395

5.

- 0.13697 0.17765 (5) 3.48744 J 1 ( x ( 4) ) = 2.26163 . a. m. d. - 0.26267 0.05395 , x = S se gseasc soluia aproximativ ( x>0 , y>0 ) pentru sistemul

104

Bazele Analizei Numerice

=0 x2 y 2 2 x + y 3x = 0 folosind metoda Newton. R.


1 ( p ) irul aproximaiilor x ( p +1) = x ( p ) J F ( x ) F ( x ( p ) ) , p 0 unde:

f1 x y x ( p) , J F (x ) = 1 F ( x, y ) = 2 x + y 2 3x f 2 x 1
2

f1 x2 . f 2 x2

Se obin urmtoarele rezultate dac se pornete cu 0.66667 J 1 ( x (0) ) = 0.33333 0.38961 J 1 ( x (1) ) = 0.03896 0.44138 J 1 ( x ( 2) ) = 0.08148 0.44792 J 1 ( x (3) ) = 0.08714

1 x ( 0) = 1 : 0.33333 (1) 1.33333 , x = 1.66667 ; 0.66667 0.11688 1.22511 , x ( 2) = 1.48918 ; 0.31169 0.1482 (3) 1.21353 , x = 1.47253 ; 0.36311 0.15209 1.21341 , x ( 4) = 1.47237 0.36914

0.44799 0.15213 (5) 1.21341 J 1 ( x ( 4) ) = , x = 1.47237 . 0.0872 0.3692 6. Folosind metoda Newton s se aproximeze soluia pozitiv a sistemului de ecuaii neliniare x2 + y 2 + z 2 = 1 0 .5 2 2 ( 0) = 0 .5 . +y 4 z = 0 , considernd X 2 x 0 .5 3 x 2 4 y + z 2 = 0 R.
1 ( p ) irul aproximaiilor x ( p +1) = x ( p ) J F ( x )F ( x( p) ) , p 0

, unde :

x2 F ( X ) = 2x2 2 3x

+ y2 + y2 4y

+ z2 4z + z2

1 x ; X = y ; z

Sisteme de ecuaii neliniare

105

f1 x f JF (X ) = 2 x f 3 x

f1 y f 2 y f 3 y

f1 z 2 x 2 y 2 z f 2 = 4 x 2 y -4 . z f 3 6 x -4 2 z z X
( 0)

Se obin urmtoarele rezultate dac se pornete cu

0 .5 = 0 .5 : 0 .5

0.875 0.375 0.125 0.125 (1) 0.35 0.05 0.15 ; X = 0.5 0.375 0.275 0.175 0.025 0.05792 0.07336 0.78982 0.23552 1 (1) ( 2) = 0.49662 0.04054 -0.14865 ; X J F ( X ) = 0.36486 0.36993 0.2973 -0.18919 0.02703 1 ( X ( 0) ) = JF 0.08104 0.78521 (3) -0.149 ; X = 0.49661 0.36992 0.29855 0.02701 7. S se gseasc soluia aproximativ ( x>0 , y>0 ) pentru sistemul =0 x2 y 2 2 x + y 3x = 0 folosind metoda Newton modificat. 1 ( X ( 2) ) = 0.36652 JF 0.26276 0.06359 0.04023 -0.18978 R. unde: f1 x2 y , J F ( x ( p ) ) = x1 F ( x, y ) = 2 x + y 2 3x f 2 x 1 Se obin urmtoarele rezultate dac se pornete cu f1 x2 . f 2 x2 : irul aproximaiilor succesive
1 (0) ( x ) F ( x( p) ) , p 0 x ( p +1) = J F

1 x ( 0) = 1

106

Bazele Analizei Numerice

0.66667 0.33333 (1) 1.23077 J 1 ( x (0) ) = 1.46154 , 0.33333 0.66667 , x = 1.21586 1.21217 1.20791 (3) ( 4) x ( 2) = , x = , , x = 1.47494 1.47093 1.46908 1.21341 x ( 47) = 1.47237 .

Valori i vectori proprii

107

3. Vectori i valori proprii

Reamintim c dac A este o matrice ptratic, atunci un vector x R n se numete vector propriu n raport cu A, dac x 0 i exist un numr (real sau complex) astfel nct Ax = x . Numrul se mai numete i valoarea proprie. Valorile proprii ale matricei A sunt rdcinile polinomului caracteristic P ( ) = det ( A I ) i sunt invariante la transformrile de similitudine ale lui A; acest lucru nseamn c valorile proprii ale matricei A coincid cu valorile proprii

ale matricei C 1 AC , oricare ar fi matricea nesingular C. Dac matricea A este simetric, atunci valorile sale proprii sunt reale i exist o baz ortonormal format din vectori proprii, deci cu proprietatea Avi = i vi , i = 1, n , n raport cu care matricea A se reduce la forma diagonal

1 0 0 2 D= ... ... 0 0

0 ... 0 0 ... 0 ... ... ... 0 n

(1)

Baza v1 ,..., v n se poate alege astfel nct 1 2 ... n . Dac, n plus, A este i pozitiv definit, atunci 1 ... n > 0 i . x, x Fie V matricea de trecere de la baza canonic a spaiului Rn la baza
2 x0

1 = A

= sup

Ax, x

v1 , v 2 ,..., v n . Se verific imediat c V T V = I , deci V este ortogonal. Rezult c

V 1 = V T i c D = V T AV. n practic, valorile proprii ale matricei A nu se determin rezolvnd numeric ecuaia caracteristic det( A I ) = 0 , deoarece, aa cum vom arta n continuare, rdcinile unui polinom sunt foarte sensibile la orice modificare a coeficienilor polinomului. ntr-adevr, fie polinomul

108

Bazele Analizei Numerice

f ( x) = a n x n + a n 1 x n 1 + ... + a1 x + a 0 ,

h( x ) = f ( x ) + g ( x ) polinomul modificat, n care > 0 este arbitrar, iar g ( x ) = bn x n + bn 1 x n 1 + ... + b1 x + b0 este un polinom oarecare. Cum g este arbitrar, putem considera c bi = ai , i = 1, n sau bi = 0 pentru i j i b j = a j etc. Aadar, cazul considerat este practic cazul cel mai general. Fie x1 , x 2 ,..., x n rdcinile polinomului f. Pentru simplificare, vom presupune c aceste rdcini sunt simple, deci c f ( x k ) = 0 i f ( x k ) 0, k = 1, n . S presupunem c vrem s determinm rdcinile ecuaiei h(x) = 0 cu una din metodele numerice cunoscute, de exemplu metoda Newton - Raphson. Ne ateptm ca pentru > 0 foarte mic, rdcinile ecuaiei h(x) = 0 s fie apropiate de rdcinile ecuaiei iniiale f(x) = 0. Notm cu zk o rdcin oarecare a ecuaiei h(x) = 0. Conform algoritmului Newton avem h( x k ) g ( xk ) z k = xk = xk (2) h ( x k ) f ( x k ) + g ( x k ) Dac notm cu g ( xk ) q( ) = , f ( x k ) + g ( x k ) atunci g ( x k ) g ( x k ) . (3) q ( ) = [ f ( x k ) + g ( x k )]2 Cum q ( ) q (0) + q (0) pentru > 0 suficient de mic, din (2) i (3) rezult
g(x ) g ( x k ) g ( x k ) k x g ( xk ) . (4) z k = xk k 2 f ( x k ) ( x k ) f [ ] f ( x ) k S presupunem c bi = 0 pentru i j i b j = a j . Aadar, modificarea

i fie

polinomului f const n faptul c se nlocuiete coeficientul a j cu coeficientul ~ = (1 + )a , iar ceilali coeficieni rmn neschimbai. Din (4) rezult a j j

z k xk
Exemplul 1. Fie

a j x kj f ( x k )

(5)

f ( x) = ( x k ) = ( x 1)( x 2)...( x 12) .


k =1

12

Evident

Valori i vectori proprii

109

x k = k , k = 1,12 Conform (5) avem

f ( x k ) = ( 1) k (12 k )! ( k 1)!

z k xk = Se poate arta c a7 = 6.926.634 .

aj k j (12 k )!(k 1)!

S presupunem c = 10 11 , ceea ce nseamn c modificarea coeficientului a7 se face cu cantitatea a 7 = 0.0000692663 4 0.00007 . Acest lucru este oricnd posibil datorit erorilor inerente la introducerea datelor. S analizm efectul acestei modificri asupra rdcinii x9 = 9 a ecuaiei f(x) = 0. Un calcul direct ne arat c z 9 x9 = 0.00137 0.0014 . Aadar, modificnd un singur coeficient i anume a7 cu 0.00007, rdcina x9 se modific cu 0.0014. Raportul dintre modificarea rdcinii x9 i modificarea coeficientului a7 este 20, ceea ce arat sensibilitatea rdcinilor unui polinom la modificarea coeficienilor. Din cele de mai sus rezult c nu se recomand determinarea valorilor proprii ale unei matrice pe calea rezolvrii numerice a ecuaiei caracteristice. Metoda recomandat este s se aduc, printr-un procedeu oarecare, matricea la forma diagonal i atunci valorile proprii se determin global (toate odat), ele fiind, de fapt, elementele de pe diagonala principal. Se urmrete deci, ca prin transformri de similitudine, care nu modific valorile proprii, s micorm, eventual pn la dispariie, elementele nediagonale ale matricei, astfel nct, n final, s obinem practic matricea diagonal.

3.1. Metoda rotaiilor a lui Jacobi


Fie A o matrice simetric. Metoda Jacobi const n efectuarea unei suite de transformri de similitudine ale matricei A utiliznd cele mai simple matrice ortogonale netriviale (matricele de rotaie) de forma

110

Bazele Analizei Numerice

. . 0 1 0 0 . . 0 0 1 0 O . . cos . . . sin . . 0 0 . . . 1 . U =M O M . . . 1 . 0 . . sin . . . cos . . 0 . . O . . 0 1 0 0 . . 0 0 1 Aadar, elementele matricei U sunt: u ii = 1 dac i p i i q u pp = cos , u pq = sin u qp = sin , u qq = cos u = 0 n rest ij

p
(1)

(2)

i O asemenea matrice este ortogonal ( U T U = I i deci U 1 = U T ) reprezint din punct de vedere geometric o rotaie de unghi n planul determinat de direciile ep i eq. Notm cu A = U T A i cu A = A U = U T AU . n cazul particular n = 5, p = 2 i q = 4, matricea A arat astfel a13 a15 a11 a12cosa14sin a12sin+a14cos 2 a22cos 2a24sin a23cos (a22a44)sincos+ a25cos a21cos 2 a41sin cos+a44sin a43sin a24cos2 a45sin a33 a35 a31 a32cosa34sin a32sin+a34cos (a22a44)sin a23sin+ a22sin2+2a24sin a25sin+ a21sin+ a41cos cos+a24cos2 a43cos cos+ a44cos2 a45cos a51 a53 a55 a52cosa54sin a52sin+a54cos n general, elementele matricei A sunt aij = aij dac i p i i q j = 1, n a pj = a pj cos a qj sin , a qj = a pj sin + a qj cos iar cele ale matricei A sunt

(3)

Valori i vectori proprii

111

aij = aij dac j p i j q = aip cos aiq sin , i = 1, n . (4) aip aiq = aip sin + aiq cos Din (3) i (4) rezult a = a cos 2 2a cos sin + a sin 2 pp pq qq pp = a pp sin 2 + 2a pq cos sin + a qq cos 2 a qq . (5) = (a pp a qq ) sin cos + a pq cos 2 a pq a qp = a pq Cum intenia noastr este ca elementul nediagonal cel mai mare (n valoare absolut) s se anuleze n urma rotaiei, vom alege liniile p i q astfel nct apq s fie cel mai mare element (n valoare absolut) de deasupra diagonalei principale i = 0 . innd seama de (5) rezult vom pune condiia ca a pq

1 (a pp a qq ) sin 2 + a pq cos 2 = 0 2
i mai departe ctg 2 = a qq a pp 2a pq . (6)

Aadar, unghiul de rotaie se afl din relaia (6). Introducem notaiile a qq a pp = i tg = t . (7) 2a pq Cum

1 tg 2 , din (6) i (7) rezult 2tg aceast ecuaie obinem ctg 2 =


t1,2 = 2 + 1 = 1

t 2 + 2 t 1 = 0 . Rezolvnd

2 +1

Pentru a evita ca numitorul s fie mic, lum 1 dac 0 . t = + sgn( ) 2 + 1 dac = 0 1 Conform unor formule elementare de trigonometrie avem

(8)

112

Bazele Analizei Numerice

1 c = cos = 1+ t2 . t s = sin = 1+ t2 Din (8) i (9) rezult c

(9)

t 1,

1 2

1 2

i deci c

, . 4 4 Dac notm cu S(B) suma ptratelor elementelor nediagonale ale unei matrice B oarecare, atunci din (3) i (4), un calcul direct ne conduce la 2 . S ( A) = S ( A) 2a 2 pq + 2a pq

Aadar, dac alegem unghiul rotaie conform (8) i (9) rezult =0 i deci S ( A) = S ( A) 2a 2 a pq pq .
2 Deoarece aij a2 pq pentru i j , vom avea 2 S ( A) n(n 1)a 2 sau S ( A) 2a 2 pq pq . n(n 1) Din (10) i (11) rezult 2 S ( A) S ( A) < S ( A) pentru n 2 . 1 n(n 1)

(10)

(11)

(12)

S considerm acum un ir de rotaii n urma crora se obin matricele A0 , etc. , A1 , A2 , ... , Ak , ... unde A0=A , A1=A , A2 = A1 Din (12) rezult 2 S ( Ak ) (13) S ( A) . 1 n(n 1) 2 (0,1) pentru n > 2, din (13) rezult lim S ( Ak ) = 0 . Cum 1 n(n 1) k Aadar, la limit irul {Ak } tinde la matricea diagonal. Se poate demonstra urmtoarea teorem
Teorema 1. Fie
k

valorile proprii ale matricei


k) a (jj j S ( Ak ) .

i fie a jj

(k )

elementele

diagonale ale matricei Ak . Atunci


k) a( pq

Deoarece

este cel mai mare (n valoare absolut) element

nediagonal al matricei Ak, rezult

Valori i vectori proprii


k) 2 2 (k ) 2 S ( Ak ) (n 2 n)(a ( pq ) < n ( a pq ) .

113

Din Teorema 1 obinem


k) k) a (jj j < n a( pq

. criteriu de oprire.
(k )

(14) Din inegalitatea

Inegalitatea (14) poate fi luat drept

k) n a( pq < , va rezulta numrul k al rotaiilor necesare pentru a aproxima valorile

proprii j ale matricei A cu elementele diagonale a jj ale matricei Ak. irul de matrice Ak se calculeaz recursiv T Ak = U k A k 1 U k , k 1 . (15) A0 = A Algoritm pentru determinarea valorilor proprii prin metoda rotaiilor a lui Jacobi Intrare A , ; Repet Determin : max := elementul maxim n valoare absolut de deasupra diagonalei principale a matricei A ; Fie (p , q) poziia acestui element ; Calculeaz cu formulele (7) , (8) , (9) respectiv , t , c , s ; Determin U prin nlocuirea n In a elementelor ipp i iqq cu c i ipq cu s, iar iqp cu -s ; Calculeaz A := UTAU ; calculeaz S := pn cnd S< .
i =1 j =1 j i

aij

n n

Exemplul 1. Pentru matricea 3 1 1 A = 1 3 1 , a12 = 1 ; 1 1 3


U1 =
=

p = 1;

q = 2 ; = 0 ; t = 1; c = s =

1 2

1 2 1 0 2

1 2 1 2 0
= 1

0 2 T 0 ; A1 = U 1 AU 1 = 0 0 1
; 1+ 2 =

0 4 2

0 2 ; a 23 = 3

2 ; p = 2; q = 3

34 2 2

2 2

9 2 3 ; t= ; 1+ t2 = ; c = 8 2 2

2 3

; s=

1 3

114

Bazele Analizei Numerice


1 U2 = 0 0 ;

0 2 3 1 3

0 1 3 2 3

T A2 = U 2

2 A1U 2 = 0 0

0 5 0

0 0 2

Rezult: 1 = 2 ; 2 = 5 ; 3 = 2 .

3.2. Metoda Householder pentru tridiagonalizarea matricelor simetrice


Pentru matricele simetrice tridiagonale exist o metod special de determinare a valorilor proprii, bazat pe conceptul algebric de ir Sturm; aceast metod va fi prezentat n paragraful urmtor. Prezint deci interes cunoaterea unor metode de tridiagonalizare a matricelor simetrice. Cele mai cunoscute metode din aceast categorie sunt metoda Givens i metoda Householder. Aa cum am vzut n Capitolul I, 4, pentru orice vector x R n , x 0, exist o matrice Householder H, astfel nct Hx = e1 , unde este un numr real. Algoritmul pentru determinarea matricei H este prezentat n (3), respectiv (4). Fie A M n (R ) o matrice simetric i fie ai = ( a1i , a 2i ,..., a ni ) T , i = 1, n , vectorii si coloan. Cutm o matrice Householder H1 astfel nct a11 (1) a 21 H 1a1 = 0 M 0 1 0 ~ Pentru aceasta, alegem H1 de forma H 1 = ~ 0 H , unde H1 este 1 matricea Householder de ordinul (n-1) cu proprietatea c

Valori i vectori proprii

115

a 21 a (1) 21 ~ 0 H1 = . M a n1 0 Conform algoritmului (4) descris n Capitolul I 4 avem:


2 2 1/ 2 , = ( s( a 21 + s ) 1 , u = ( a 21 + s sgn( a 21 ), a31 , ..., a n1 ) T , s = ( a 21 + ... + a n 1) ~ sgn( a 21 ) = 1 dac a 21 = 0 , H 1 = I n 1 uu T . ~ = ( a ,..., a ) T , atunci Dac notm cu a
1 21 n1

s sgn(a 21 ) 0 ~~ H1a1 = M 0
a11 s sgn(a 21 ) 1 0 a11 a11 . Mai departe avem H 1a1 = 0 ~ ~ ~ ~ 0 H a = H = a 1 1 1 1 M 0 Fie A1 = H1AHT1. Atunci s sgn(a 21 ) 0 ... 0 a11 (1) (1) (1) a 22 a 23 ... a 2 s sgn(a 21 ) n (1) (1) (1) 0 a32 a33 ... a3n . . A1 = ... ... ... ... ... . ( 1 ) ( 1 ) ( 1 ) 0 an2 a n3 ... a nn n continuare se caut o matrice Householder H2 cu proprietatea c elementele
2) a i(2

(i = 4, n) din matricea A2 = H2A1H2T sunt nule, etc.

Algoritm pentru tridiagonalizarea matricei A A0 := A ; Pentru i:=1,n-1 calculeaz


n 2 s := a ij j =i +1
1/ 2

; := s ( ai +1,i + s )

)1 ;

116

Bazele Analizei Numerice

u = ai +1,i + s sgn(ai +1,i ), ai + 2,i , ..., a n i T ; dac ai,i+1 0 atunci sgn(ai,i+1) := 1 altfel sgn(ai,i+1) := 1 ; ~ H i := I n 1 u u T ;

Ii H i := 0

0 ; ~ Hi

Ai := H i Ai 1 H iT ; sfrit pentru i.

3.3. Determinarea valorilor proprii ale matricelor simetrice tridiagonale


Urmtoarea teorem precizeaz mulimea din planul complex (respectiv intervalul din R ) n care se afl valorile proprii ale unei matrice. Teorema 1 . (Gerschgorin). Fie A o matrice ptratic de ordinul n,

ri = aij
j =1 j i

i Di = { z C; z aii < ri

;
n

i = 1, n.

Dac este valoarea proprie a matricei A, atunci

U Di .
i =1

Demonstraie. Fie o valoare proprie a matricei A i fie x = ( x1 ,..., x n ) T un vector propriu corespunztor lui . Atunci x 0 i Ax = x. Rezult a i1 x1 + ... + a ii xi + ... + a in x n = xi sau
j =1 j i

aij x j = ( aii ) xi , i = 1, n
astfel nct
n

(1)

1,2,..., n} Fie p {

xp = x > 0 .

Din (1) rezult

a pp a pj
j =1 j p

xj xp

a pj = r p .
j =1 j p

Aadar, D p U Di .
i =1

Valori i vectori proprii

117

n cazul particular cnd A M rezult c


n i =1

(R) i are toate valorile proprii reale,

U [aii ri , aii + ri ] R .
1 1 2 Exemplul 1. Fie A = 2 3 2 , r1=3; r2=4; r3=3. 1 2 2 [ 2, 4] [ 7, 1] [ 1, 5] = [ 7, 5] . O matrice simetric tridiagonal este de forma ... 0 a1 b1 0 0 ... ... ... 0 b1 a 2 b2 0 ... ... 0 b ... ... 0 2 a3 b3 ... . J = (2) ... ... ... ... ... ... ... ... 0 0 ... bn 2 a n 1 bn 1 0 0 0 0 0 0 ... 0 bn 1 a n Pentru o astfel de matrice avem aii = a i ; r1 = b1 ; rn = bn 1 ; ri = bi 1 + bi , i = 2, n 1 .
Fie a = min (ai ri ) i b = max (ai + ri ) .
1i n 1i n

Valorile proprii ale matricei A vor aparine intervalului [a,b].


Definiia 1. Un ir ordonat i finit de polinoame reale f n , f n 1 , ..., f1 , f 0 se numete ir Sturm, dac: 1. Polinoamele vecine nu au rdcini comune; 2. f0 nu are rdcini reale; 3. Dac x = este o rdcin a unuia din polinoamele intermediare f i , i = 1, n 1, atunci f i 1 ( ) f i +1 ( ) < 0 ; 4. Dac f n ( ) = 0 , atunci pentru h > 0, suficient de mic, avem f ( h) f ( + h) = 1 i sgn n = +1 . sgn n f n1 ( h) f n1 ( + h) n continuare, pentru orice x R, notm cu S(x) numrul schimbrilor de semn din irul f n ( x ), f n 1 ( x ), ... , f1 ( x ), f 0 ( x ), dup ce am eliminat elementele nule. Teorema 2. (Sturm) Fie f n , f n 1 ,..., f1 , f 0 un ir Sturm de polinoame. Dac numerele reale a i b, a < b, nu sunt rdcini ale polinomului fn i

118

Bazele Analizei Numerice

dac polinomul fn nu are rdcini multiple, atunci S(a) S(b) i diferena S(a)S(b) este egal cu numrul rdcinilor reale ale polinomului fn din intervalul (a, b). Demonstraie. Deoarece polinoamele sunt funcii continue, att timp ct x crescnd, nu ntlnete nici o rdcin a vreunuia din polinoamele din ir, semnele polinoamelor din ir nu se schimb i deci S(x) rmne neschimbat. Rmne s analizm urmtoarele cazuri posibile: este rdcin pentru unul din polinoamele intermediare. Fie a) x = i {1,2,...,(n 1)} astfel nct f i ( ) = 0 . Din Definiia 1 rezult f i 1 ( ) f i +1 ( ) < 0 . S presupunem c f i 1 ( ) < 0 i f i +1 ( ) > 0 . Din continuitate rezult c exist h > 0 astfel nct f i 1 ( x ) < 0 i f i +1 ( x ) > 0 pentru orice x [ h, + h ] . Avem urmtoarea situaie fi--1(x) fi(x) fi+1(x) + 0 + + m Rezult S( + h) = S( - h). n mod analog, dac f i 1 ( ) > 0 i f i +1 ( ) < 0 avem urmtorul tabel ale semnelor fi(x) fi+1(x) x fi-1(x) + -h + 0 + m +h Rezult, de asemenea S( + h) = S(- h). b) x = este o rdcin a polinomului fn. Evident, n acest caz fn-1() 0 (Definiia 1, proprietatea 1). Din continuitate i din proprietatea 4 a Definiiei 1, rezult c nu putem avea dect urmtoarele situaii x

-h +h

-h +h

fn-1(x) -

fn(x) + 0 -

-h +h

fn-1(x) + + +

fn(x) 0 +

Aadar, la trecerea printr-o rdcin a polinomului fn, S scade cu o unitate (S( + h) = S( h) 1). n definitiv, am demonstrat c numrul rdcinilor reale ale polinoamelor fn, cuprinse n intervalul (a,b) este egal cu

Valori i vectori proprii

119

S(a) -S(b).

Exemplul 2. Fie polinoamele: f 3 ( x) = x 3 3 x 2 + 1 ;


f 2 ( x) = x 2 3x + 1 ; f1 ( x ) = x 1 ; f 0 ( x) = 1 Din reprezentarea grafic a polinoamelor se observ c ele formeaz un ir Sturm. Alegem a = 1 i b = 3. f3(1) =3; f2(1) = 5; f1(1) =2; f0(1) = 1 f2(3) = 1; f1(3) = 2; f3(3) = 1; f0(3) = 1; S(1) = 3; S(3) = 0; Numrul rdcinilor reale ale polinomului f3 cuprinse n intervalul (1, 3) este 3. Fie J matricea simetric tridiagonal dat de (2) i fie 0 a1 b1
f2

f3 f1

f0

b1 a 2 b2 P ( ) = det(I J ) = 0 b2 a3 ... ... ... 0 0 0 Introducem urmtoarele notaii f 0 ( ) = 1 f1 ( ) = a1 f ( ) = ( a ) f ( ) b 2 f ( ) 2 1 1 0 2 2 f 3 ( ) = ( a 3 ) f 2 ( ) b2 f 1 ( ) ............................................... f ( ) = ( a ) f ( ) b 2 f n n 1 n 1 n 2 ( ) n Se observ imediat c matricei A.

0 0 b3 ... 0

... 0 ... 0 ... 0 ... ... ... bn 1

0 0 0 ... an

(3)

f n ( ) P ( ) este polinomul caracteristic ataat

Teorema 3. Dac bi 0 , i = 1, n 1 , atunci fiecare polinom f k , k = 0, n , are exact k rdcini reale simple. Mai mult, pentru orice 1 k n 1, rdcinile polinomului fk separ rdcinile polinomului fk+1.

120

Bazele Analizei Numerice

(1) Demonstraie. Polinomul f1 admite rdcina 1 = a1 . Din (3) i din ipoteza


(1) 2 b1 0 rezult f 2 (1 ) = b1 < 0.

Pe de alt parte, deoarece f 2 ( ) = 2 + ...

i deci

lim f 2 ( ) = +,

( 2) 2) rezult c exist 1 , ( 2 rdcini reale ale lui f2, astfel nct ( 2) (1) ( 2) 1 < 1 < 2 .

innd din nou seama de (3) i de ipoteza b2 0 , rezult


( 2) ( 2) 2 f 3 (1 ) = b 2 f1 (1 )>0

2) ( 2) 2 f 3 ( ( 2 ) = b 2 f 1 ( 2 ) < 0

Cum

f 3 ( ) = 3 + ...

avem

lim f 3 ( ) = i

lim f 3 ( ) = + .

Aadar, polinomul f3 admite 3 rdcini reale simple


(3) ( 2) 3) ( 2) (3) (3) ( 2) 1 ( , 1 ) , ( 2 (1 , 2 ) i 3 ( 2 , ) . Prin inducie matematic se poate arta c fk are k rdcini reale simple i separ rdcinile polinomului fk+1 .

f2
1(3)

2(3)

1(2) 1(1)

2(2) 3(3)

f1 f3

Corolarul 1. Orice matrice simetric tridiagonal ireductibil are n valori proprii reale distincte. ntr-adevr, conform Definiiei 2, Capitolul I, 2, dac matricea J este ireductibil, atunci bi 0 , i = 1, n 1 . Afirmaia rezult acum din Teorema 3 i din observaia c f n ( ) P ( ) este polinomul caracteristic al matricei J. Teorema 4. Dac J este o matrice simetric tridiagonal ireductibil i

Valori i vectori proprii

121

2 f 0 ( ) = 1; f1 ( ) = a1 ; f k ( ) = ( a k ) f k 1 ( ) bk 1 f k 2 ( ), k = 2, n, atunci f n , f n 1 , ... , f1 , f 0 este un ir Sturm. Demonstraie. Evident f 0 ( ) 0 , pentru orice R . Fie k { 1, 2 , ..., n 1} i
2 f k 1 ( ) . Din Teorema 3 R astfel nct f k ( ) = 0 . Atunci f k +1 ( ) = bk rezult f k +1 ( ) 0 i f k 1 ( ) 0 , iar din egalitatea precedent rezult f k +1 ( ) f k 1 ( ) < 0 . Fie x = 1 cea mai mare rdcin a polinomului fn. Din Teorema 3 i din faptul c lim f n ( x) = lim f n1 ( x) = + rezult f n 1 (1 ) > 0 i mai departe c

f n (1 + h) f ( h) = 1 i sgn n 1 = 1 f n1 (1 + h) f n1 (1 h) pentru h > 0 suficient de mic. Dac x = 2 este urmtoarea rdcin a polinomului fn, vom avea f n 1 ( 2 ) < 0 i deci, pentru h > 0 suficient de mic f ( + h) f ( h) = 1 i sgn n 2 = 1 . a. m.d. sgn n 2 f n1 ( 2 + h) f n1 ( 2 h) sgn y fn

f n -1 2 1

Valori i vectori proprii

123

Teorema 5. Fie J o matrice simetric tridiagonal ireductibil i fie a R oarecare. Atunci numrul valorilor proprii ale matricei J, mai mari ca a, este egal cu S(a).

Afirmaia rezult din Teorema 4, Teorema 2 i din observaia c dac b>1, unde 1 este cea mai mare rdcin a polinomului fn, atunci S(b)=0, deoarece f i (b) > 0, i = 0, n . Teorema 5 ne permite s determinm valorile proprii ale unei matrice simetrice tridiagonale ireductibil cu metoda njumtirii. Fie a, b R astfel nct a < n < ... < 2 < 1 < b . Evident S(a) = n i S(b) = 0. Fie c mijlocul intervalului [a, b]. Dorim s localizm valoarea proprie k

Dac S(c) k, atunci la dreapta lui c se afl k valori proprii, deci inclusiv k. n acest caz notm a1 = c, b1 = b. Dac dimpotriv S(c) < k, atunci k (a,c) i notm a1 = a, b1 = c. a +b S presupunem c k (c,b). Fie c1 = 1 1 . Dac S(c1) k, atunci 2 notm a2 = c1, b2 = b1, iar dac S(c1) < k, atunci a2 = a1, b2 = c1 etc. a p + bp ba . Putem alege k Rezult c k(ap,bp), unde b p -a p = 2 2p ba . i eroarea care se face va fi mai mic dect 2p 2 1 0 Exemplul 3. Fie A = 1 2 1 . Atunci r1 = 1, r2 = 2, r3 = 1 , 0 1 2 a = min(21, 22, 21) = 0; b = max(2 + 1, 2 + 2, 2 + 1) = 4. Din Teorema Gershgorin rezult c valorile proprii se afl n intervalul [0,4]. Fie 3 < 2 < 1 aceste valori proprii. S presupunem c vrem s determinm valoarea proprie 1. Notm cu a+b c= = 2. 2 f0() = 1 ; f1() = 2 ; f2() = (2)2 1 ; f3() = (2)3 2(2) f0(2) = 1 ; f1(2) = 0 ; f2(2) =1 ; f3(2) = 0 ; S(2) = 1.

124

Bazele Analizei Numerice

Rezult c n intervalul [2,4] se afl o singur valoare proprie, deci 2+4 =3 , 1 [ 2,4]. Fie c1 = 2 f 0 (3) = 1; f1 (3) = 1; f 2 (3) = 0; f 3 (3) = 1; S (3) = 1. 3+ 4 7 = . Rezult 1 [3,4]. Fie c2 = 2 2 7 7 7 3 7 5 7 3 f 0 = 1 ; f1 = ; f 2 = ; f 3 = ; S ( ) = 0 . 2 2 2 2 2 4 2 8 7 nu se afl nici o valoare proprie. Rezult Aadar, la dreapta lui 2 7 1 (3, ) etc. 2

Exerciii
1. Folosind metoda rotaiilor a lui Jacobi s se calculeze valorile i vectorii proprii 1 1 3 A = 1 3 1 . pentru matricea 3 1 1 R. max aij = 3 = a13 , p = 1 , q = 3 . Rezult c
i< j

a qq a pp a33 a11 1 1 = = = 0 i 2a pq 2a13 6

t=1 ,

cos =

1 1+ t
2

1 2

; sin =

t 1+ t
2

1 2

, iar

Valori i vectori proprii

125

1 2 U1 = 0 1 2 T (1) A = U1 A U1 = 1 2 0 1 2 0

0 1 0

1 2 0 . 1 2 0 1 0 1 2 0 = 1 2

1 1 1 1 3 2 2 1 0 1 3 1 0 1 1 0 3 1 1 2 2 0 2 0 = 0 5 2 0 2 4

(1) max a (1) = 2 = a 23 , p = 2 , q = 3 . Rezult c i < j ij

a qq a pp 2a pq

(1) a (1) a 22 33 (1) 2a 23

45 2 2

1 2 2

i , t =

+ sgn 1 + 2
, iar

1 2 2

cos =

1 1+ t
2

t 1 2 = ; sin = 3 3 1+ t2

1 U2 = 0 0

0 2 3 1 3

0 1 . 3 2 3

126

Bazele Analizei Numerice

1 0 2 T ( 2) (1) A = U 2 A U 2 = 0 3 1 0 3

0 2 1 0 3 0 2 3

0 5 2

0 1 2 0 4 0

0 2 3 1 3

0 1 = 3 2 3

2 0 0 0 6 0 0 0 3 Deoarece S(A(2)) = 0 am obinut chiar valorile proprii exacte pentru matricea A . 1 1 1 6 3 2 2 1 V = U1 U 2 = 0 reprezint matricea de trecere de la baza n 3 3 1 1 1 2 6 3 care matricea A este dat ( canonic ) la baza n care A are forma diagonal. Se tie de la cursul de Algebr liniar c aceast baz este dat de coloanele matricei de trecere . Deci vectorii proprii se obin ca fiind coloanele matricei de trecere, astfel: 1 1 1 3 6 2 2 1 , 3 = 3 , v 3 = 1 = 2 , v1 = 0 , 2 = 6 , v 2 = . 3 1 3 1 1 2 6 3 2. Folosind metoda 1 2 2 1 matricei A = 4 3 3 5 Jacobi s se determine valorile proprii aproximative ale 4 3 3 5 . 1 4 4 1

R. Procednd ca n exerciiul de mai sus se obin succesiv:

Valori i vectori proprii

127

0 1 0 0.70711 U1 = 0 0 0 0.70711

0 0.70711 , 1 0 0 0.70711 0 0

1 4 3.53553 0.70711 0 4 0.70711 0.70711 , A1 = 4 1 4.94975 0.70711 3.53553 0 4.94975 6 1 0 U2 = 0 0 0 0 0 1 0 0 , 0 0.85171 0.52401 0 0.52401 0.85171

1 5.10729 0.70711 1.55422 4 0.60225 0.37053 0.70711 A2 = , 1.55422 0.60225 2.04527 0 5.10729 0.37053 0 9.04527 0.89965 0 U3 = 0 0.43661 0 1 0 0 0 0.43661 0 0 , 1 0.52401 0 0.89965

0 1.4786 0.47438 1.39825 4 0.60225 0.64207 0.47438 A3 = 1.39825 0.60225 2.04527 0.67858 0 0.64207 0.67858 11.52386 0.63301 0 U4 = 0.77414 0 0 0.77414 1 0 0 0.63301 0 0 0 0 , 0 1

128

Bazele Analizei Numerice

0.16595 0 0.52532 3.1886 4 0.74847 0.64207 0.16595 , A4 = 0 0.42955 0.74847 3.3526 0.52532 0.64207 0.42955 11.52386

i aa mai departe se obine la iteraia a noua


0.1458 0 U9 = 0 0.98931 0 1 0 0 0 0.98931 0 0 , 1 0 0 0.1458

0 4.18733 0.01986 0.00427 0 . 01986 0 . 21355 0 . 00026 0 . 00452 , A9 = 0.00452 0.00026 11.58733 0.00062 0 0.00452 0.00062 3.18645 valorile proprii exacte fiind:

S(A9)=0.02944

1=3.18646 , 2=4.18743 , 3=0.21344 , 4=11.58733 .

3. S se determine valorile proprii aproximative ale matricei


1 1 A= 1 4 1 1 0 5 1 0 1 4 4 5 4 1

folosind metoda Jacobi . R. Procednd ca n exerciiul de mai sus se obine succesiv:


0 1 0 0.70711 U1 = 0 0 0 0.70711 0 0 0 0.70711 , 1 0 0 0.70711

Valori i vectori proprii

129

1 2.12132 1 3.53553 4 2.82843 0 2.12132 , A1 = 1 2.82843 1 2.82843 3.53553 0 2.82843 6 0.88807 0 U2 = 0 0.4597 0 1 0 0 0 0.4597 0 0 , 0 0 0 0.88807

0 0.83013 1.88389 0.41216 4 2.82843 0.97517 1.88389 , A2 = 1 2.97155 0.41216 2.82843 0 7.83013 0.97517 2.97155 1 0 U3 = 0 0 0 0 0 1 0 0 , 0 0.93659 0.35043 0 0.35043 0.93659

0.83013 1.88389 0.38602 0.14443 4 2.30734 1.90451 1.88389 A3 = 0 0.38602 2.30734 0.11183 0.14443 1.90451 0 8 . 94196 0 0 1 0.4217 0.90674 0 U4 = 0 0.90674 0.4217 0 0 0 0 0 , 0 1

0.83013 0.44441 1.87097 0.14443 0 0.83313 0.44441 0.96123 , A4 = 0 1.87097 5.07308 1.72689 0.14443 0.83313 1.72689 8..94196

i aa mai departe se obine la iteraia a zecea

130

Bazele Analizei Numerice

0.99999 0.005 0.005 0.99999 U 10 = 0 0 0 0

0 0 0 , 1 0 0 1

9.22995 0.02005 0.00611 0.02598 0.00089 0 0.02005 1.01318 , A10 = 0.00611 0.00089 0.26839 0.0252 0.02598 0 0.0252 5.97535 valorile proprii exacte fiind:

S(A10)=0.05855

1=1.01373 , 2=0.26828 , 3=5.9755 , 4=9.23005 .

S se aduc la forma tridiagonal matricele urmtoare folosind metoda Householder.


4 1 A= 1 1 1 1 5 0 0 6 1 0 1 1 0 7

4.

R.

s=

j =2

2 a1, j =1.73205 , =

1 s ( a1,2 + s )

=0.21132 ,

a 2,1 + s 1 + 1.73205 1 u = a3,2 = , 1 a 4, 2 0.57735 0.57735 0.57735 ~ T H 1 = I 3 u u = 0.57735 0.78867 0.21132 , 0.57735 0.21132 0.78867 0 0 0 1 0 0.57735 0.57735 0.57735 , H1 = 0 0.57735 0.78867 0.21132 0 0.57735 0.21132 0.78867

Valori i vectori proprii

131

4 0.57735 0 0 T 0.57735 5.33333 2.13076 4.79743 ; A1 = H 1 A H 1 = 0 2.13076 5.95534 0.83333 0 4.79743 0.83333 5.37799

s=

j =3

2 a 2, j = 0.52493 , =

1 s ( a1,2 + s )

=0.02581 ,

a1 + s 2.13076 + 0.52493 = u = 3,2 , a1 4 . 79743 4, 2 0.40591 0.91391 ~ H 2 = I 2 u uT = 0.91391 0.40591 ,


1 0 H2 = 0 0 0 0 0 1 0 0 , 0 0.40591 0.91391 0 0.91391 0.40591

4 0 0 0.57735 0 T 0.57735 5.33333 5.24933 . A2 = H 2 A1 H 2 = 0 5.24933 6.09139 0.77290 0 0 0.77290 5.24193 1 5 1 1 7 1 A= 1 1 6 2 1 1 2 1 1 8

5.

R.

s=

j =2

2 a1, j =2.44948 , =

1 s ( a1,2 + s )

=0.11835 ,

132

Bazele Analizei Numerice

a 2,1 + s 1 + 1.73205 1 u = a3,2 = , 2 a 4, 2 0.40824 0.40824 0.81649 ~ T H 1 = I 3 u u = 0.40824 0.88164 0.23670 , 0.81649 0.23670 0.52659 0 0 0 1 0 0.57735 0.57735 0.57735 , H1 = 0 0.57735 0.78867 0.21132 0 0.57735 0.21132 0.78867
5 0.81649 0 0 5.83333 1.76598 4.63299 T 0.57735 ; A1 = H 1 A H 1 = 0 1.76598 6.77447 1.20585 0 4.63299 1.20585 5.72552

s=

j =3

2 a 2, j = 4.95815 , =

1 s ( a1,2 + s )

=0.02999 ,

a1 + s 1.76598 4.95815 = u = 3,2 , a1 4 . 63299 4,2 0.35617 0.93441 ~ H 2 = I 2 u uT = 0.93441 0.35617 ,


1 0 H2 = 0 0 0 0 0 1 0 0 , 0 0.35617 0.93441 0 0.93441 0.35617

0.81649 0 0 5 0 T 0.81649 5.83333 4.95815 . A2 = H 2 A1 H 2 = 0 4.95815 5.05593 0.55078 0 0 0.55078 7.44406

6. S se gseasc cea mai mare valoare proprie n valoare absolut, pentru matricea

Valori i vectori proprii

133

0 4 1 1 5 1 A= 0 1 6 0 0 1

0 0 1 7

folosind polinoamele Sturm. R. r1 = 2 , r2 = 2 , r3 = 2 , r4 = 1 , iar rdcinile polinomului caracteristic se afl n intervalul [a, b] , unde : a = min (aii ri ) = min{ 42, 52, 62, 71 } = 3 i
1i 4

b = max (aii + ri ) = max{ 4+2, 5+2, 6+2, 7+1 } = 8 .


1i 4

Polinoamele Sturm pentru aceast matrice sunt: f0() = 1 , f1() = a11 = 4 ,


2 f0() = ( 5) ( 4) 1 , f2() = ( a22) f1() a12

2 f1() = ( 6)f2() f1() , f3() = ( a33) f2() a 23


2 f2() = ( 7)f3() f2() . f4() = ( a44) f3() a34

Schimbrile de semn n irul Sturm de mai sus : f0(a) = 1 , f1(a) = 1 , f2(a) = 1 , f3(a) = 2 , f4(a) = 7 , arat c la dreapta lui a se afl 4 rdcini ale ecuaiei caracteristice, f0(b) = 1 , f1(b) = 4 , f2(b) = 11 , f3(b) = 18 , f4(b) = 7 , iar la dreapta lui b nu se afl nici o rdcin a ecuaiei caracteristice. Lund c =

a+b , f0(c) = 1, f1(c) = 1.5 , f2(c) = 0.25, f3(c) = 1.375, 2


f4(c) = 2.3125 ,

la dreapta lui c se afl 2 rdcini ale ecuaiei caracteristice i atunci a := c;

134

Bazele Analizei Numerice

c=

a+b , f0(c) = 1, f1(c) = 2.75 , f2(c) = 3.8125, f3(c) = 0.10938, 2


f4(c) = 3.83984 ,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , a := c ;

c=

a+b , f0(c) = 1, f1(c) = 3.375 , f2(c) = 7.01563, f3(c) = 6.27148, 2


f4(c) = 4.66382 ,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , a := c ;

c=

a+b , f0(c) = 1, f1(c) = 3.6875 , f2(c) = 8.91016, f3(c) = 11.3439, 2


f4(c) = 1.10814 ,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , a := c ;

c=

a+b , f0(c) = 1, f1(c) = 3.84375 , f2(c) = 9.93066, f3(c) = 14.46591, 2


f4(c) = 2.27495,

la dreapta lui c nu se afl nici o rdcin a ecuaiei caracteristice , b := c ;

c=

a+b , f0(c) = 1, f1(c) = 3.76563 , f2(c) = 9.41431, f3(c) = 12.85651, 2


f4(c) = 0.42896,

la dreapta lui c nu se afl nici o rdcin a ecuaiei caracteristice, . a. m. d. La iteraia a 16a se obine aproximaia c = 7.74529, iar P(c) = 0.00023 , P() fiind polinomul caracteristic. 7. S se gseasc cea dea doua valoare proprie pentru matricea ( |1|>|2|>|3|>|4| )

Valori i vectori proprii

135

5 2 A= 0 0

2 6 1 0

0 1 6 2

0 0 2 8

folosind polinoamele Sturm. R. r1 = 2 , r2 = 3 , r3 = 3 , r4 = 2 , iar rdcinile polinomului caracteristic se afl n intervalul [a, b] , unde : a = min (aii ri ) = min{ 52, 63, 63, 82 } = 3 i
1i 4

b = max (aii + ri ) = max{ 5+2, 6+3, 6+3, 8+2 } = 10 .


1i 4

Polinoamele Sturm pentru aceast matrice sunt: f0() = 1 , f1() = a11 = 5 ,


2 f0() = ( 6) ( 5) 4 , f2() = ( a22) f1() a12

2 f1() = ( 6)f2() f1() , f3() = ( a33) f2() a 23


2 f2() = ( 8)f3() 4f2() . f4() = ( a44) f3() a34

Schimbrile de semn n irul Sturm de mai sus : f0(a) = 1 , f1(a) = 2 , f2(a) = 2 , f3(a) = 4 , f4(a) = 12 , arat c la dreapta lui a se afl 4 rdcini ale ecuaiei caracteristice, f0(b) = 1 , f1(b) = 5 , f2(b) = 16 , f3(b) = 59 , f4(b) = 54 , iar la dreapta lui b nu se afl nici o rdcin a ecuaiei caracteristice. Lund

c=

a+b , f0(c) = 1, f1(c) = 1.5 , f2(c) = 3.25, f3(c) = 17.6875, 2


f4(c) = 2.3125 ,

136

Bazele Analizei Numerice

la dreapta lui c se afl 2 rdcini ale ecuaiei caracteristice i atunci a := c;

c=

a+b , f0(c) = 1, f1(c) = 3.25 , f2(c) = 3.3125, f3(c) = 4.20312, 2


f4(c) = 12.19921 ,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , b := c ;

c=

a+b , f0(c) = 1, f1(c) = 2.375 , f2(c) =0.73437, f3(c) = 3.38476, 2


f4(c) = 5.05297 ,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , a := c ;

c=

a+b , f0(c) = 1, f1(c) = 2.8125 , f2(c) = 1.09765, f3(c) = 0.82299, 2


f4(c) = 4.23631,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice , b := c ;

c=

a+b , f0(c) = 1, f1(c) = 2.59375 , f2(c) = 0.13378 , f3(c)= 2.38052, 2


f4(c) = 0.43193,

la dreapta lui c se afl dou rdcini ale ecuaiei caracteristice , a := c ;

c=

a+b , f0(c) = 1, f1(c) = 2.70312 , f2(c) = 0.60375 , f3(c) = 1.67484, 2


f4(c) = 1.91781,

la dreapta lui c se afl o rdcin a ecuaiei caracteristice, . a. m. d. La iteraia a 20a se obine aproximaia c = 7.61384 , iar P(c) = 0.00001 , P() fiind polinomul caracteristic.

Interpolarea funciilor

137

4. Interpolarea funciilor
Fie f : [a,b] R i fie x0, x1, ..., xn , (n+1) puncte distincte din intervalul [a,b] , numite noduri. Problema interpolrii funciei f n nodurile xi, i = 0, n , const n determinarea unei funcii g : [a,b] R, dintro clas de funcii cunoscut, cu proprietatea g(xi)=f(xi), i = 0, n . Pus sub aceast form general problema poate s nu aib soluie sau s aib o infinitate de soluii. Cea mai utilizat clas de funcii de interpolare este clasa polinoamelor, datorit uurinei cu care se integreaz i se deriveaz. Interpolarea funciilor prezint o importan deosebit pentru cazul cnd funcia nu este definit printro relaie analitic, ci printrun tablou de valori, ce reprezint, de exemplu, rezultatele unei experiene. Chiar i atunci cnd funcia este dat printro relaie analitic, dar aceast relaie este complicat se poate alege interpolarea n locul calculului direct.

4.1. Polinomul de interpolare al lui Lagrange


Teorema 1. Fie f : [a,b] R i x0, x1, ..., xn , (n+1) noduri din intervalul [a,b]. Atunci exist un polinom unic Pn, de gradul n, care interpoleaz funcia f n nodurile xi, i = 0, n ( f(xi)=Pn(xi) , i = 0, n ). Acest polinom se numete polinomul de interpolare al lui Lagrange. Demonstraie. Cutm un polinom Pn sub forma urmtoare: Pn(x)=L0(x) f(x0)+ L1(x) f(x1)+...+ Ln(x) f(xn), unde Li sunt polinoame de gradul n ce urmeaz s fie determinate. Deoarece dorim ca Pn(xi)=f(xi), vom pune condiiile:

138

Bazele Analizei Numerice

1 dac j=i . Li ( x j ) = ij = 0 dac j i Deoarece Li(xj)=0 pentru ij , rezult c Li admite rdcinile x0, x1, ..., xi1, xi+1,..., xn. Aadar, Li(x)=ai(xx0)...(xxi1)(xxi+1)...(xxn). Cum Li(xi)=1, rezult 1 ai = . (xi x0 )...(xi xi 1 )(xi xi +1 )...(xi xn ) n concluzie avem

Pn ( x) = Li ( x) f ( xi )
i =0 n

(1)

unde Li ( x) = (x x j ) xj)
j =0 ( xi j i

(2)

Evident polinomul (1) are gradul n i are proprietatea Pn(xi)=f(xi) , i = 0, n . Fie Qn un alt polinom de gradul n cu proprietatea Qn(xi)=f(xi), i = 0, n i fie R=PnQn. Deoarece gradR n i R(xi)=0, i = 0, n rezult c R este polinom identic nul, deci c Pn=Qn.
Exemplu. Fie nodurile x0=1, x1=1, i x2=2 i f(x0)=2, f(x1)=f(x2)=1. Atunci (x 1)(x 2) 2 + (x + 1)(x 2)1 + (x + 1)(x 1) 1 . P2 ( x) = ( 1 1)( 1 2) (1 + 1)(1 2) (2 + 1)( 2 1) 1 Efectund calculele obinem P2 ( x) = x 2 3x + 8 . 6 n continuare vom nota eroarea n fiecare punct cu E(f;x)=f(x)Pn(x) (3) Evident E(f;xi)=0, i = 0, n . Introducem de asemenea notaia:

U n+1 ( x) = (x xi )
i =0

(4)

Teorema 2. Dac fC(n+1)[a,b] , atunci pentru orice x[a,b], exist x(a,b) astfel nct f ( n +1) ( x ) (5) E ( f ; x) = U ( x) (n + 1)! n+1

Interpolarea funciilor

139

Demonstraie. Considerm funcia auxiliar

E ( f ; x) U n+1 (t ), t [a,b], x xi U n+1 ( x) Observm c g se anuleaz n (n+2) puncte distincte x0, x1,..., xn, x. Din teorema lui Rolle rezult c exist x(a,b) astfel nct g(n+1)(x)=0. Cum E( f ; x) (n +1)! g (n+1) (t ) = f (n+1) (t ) Un+1(x) rezult f (n+1) ( x ) E( f ; x) = U ( x) . (n + 1)! n+1 g (t ) = f (t ) Pn (t )
Corolar. Dac exist M>0 astfel nct f (n+1)(x) M pentru orice x[a,b], atunci: M E ( f ; x) U n+1 ( x) , x [a, b ] . (n + 1)! Exemplu. Fie funcia f(x)=ln x i nodurile 0.4; 0.5; 0.7; 0.8. Evalum eroarea n punctul x=0.6. U4(0.6)=(0.2)(0.1)(0.1)(0.2)=0.0004 . 6 6 f IV (x) = 234 .4 , x [0.4; 0.8] . 4 x (0,4)4 Rezult 1 E( f ; 0.6) 234.4 0.0004 0.0039 , 24 acest numr fiind doar un majorant al erorii. Dac folosim urmtoarele valori n noduri

X f(x)

0.4 0.916291

0.5 0.693147

0.7 0.356675

0.8 0.223144

i calculm polinomul lui Lagrange obinem: P3(0.6)=0.509975 . Pe de alt parte ln(0.6)=0.510826 . Rezult c E(f; 0.6)=0.000851 , ceea ce confirm afirmaia de mai sus.
Observaia 1. Dac f=Q este un polinom de grad cel mult n, atunci E(f;x)=0, oricare x[a,b]. Afirmaia rezult din Teorema 2 deoarece, n acest caz f (n+1)(x)=0 .

140

Bazele Analizei Numerice

Observaia 2. E(f+g;x)=E(f;x)+E(g;x) ntradevr, dac Pnf este polinomul de interpolare pentru f i Png este

polinomul de interpolare pentru g , atunci Pnf + Png este polinomul de interpolare pentru f+g i deci E ( f + g ; x ) = f ( x ) + g ( x ) Pnf ( x ) Png ( x ) = E ( f ; x ) + E ( g ; x ) . n continuare vom presupune c nodurile sunt echidistante, deci c xi=x0+ih, i = 0, n , unde x x h= n 0 . (6) n Considerm de asemenea schimbarea de variabil (7) x=x0+th nlocuind (6) i (7) n (2) obinem: n (t j ) ~ Li (t ) = Li ( x0 + th) = j =0 (i j )
j i

Folosind notaia:

n+1 (t ) = t (t 1)(t 2)...(t n) = (t j )


j =0

(8)

obinem:

(1) ni n+1 (t ) (1) ni i n+1 (t ) ~ Li (t ) = Cn = i!(n i )! t i n! t i Obinem astfel expresia polinomului lui Lagrange pentru noduri echidistante (t ) n ~ i f ( xi ) Pn (t ) = n +1 (1) n i Cn . (9) n! i =0 t i Eroarea devine: (t ) ~ E (t ) = n+1 h n+1 f ( n+1) ( t ) . (10) (n + 1)! n continuare considerm un ir de diviziuni {n} ale intervalului [a,b] cu
n

lim n = 0,

( n) ( n) n : a = x (n) 0 < x1 < ... < xn = b .

Notm cu xi( n) ,

Pn polinomul lui Lagrange care interpoleaz funcia f n nodurile

i = 0,n . Dac n este mare, Pn coincide cu f ntrun numr mare de noduri, deci ne ateptm ca eroarea En(f;x)=f(x)Pn(x) s fie mic, eventual ca lim En ( f ; x) = 0 .
n

Interpolarea funciilor

141

Ajungem astfel la urmtoarea ntrebare: n ce condiii irul de polinoame { Pn } converge punctual (eventual uniform) la funcia f pe intervalul [a,b] ? n anul 1912, S. N. Bernstein a artat c pentru funcia f(x)=x, 2i x[1,1], dac alegem nodurile echidistante xi( n) = 1 + , i = 0, n , atunci n lim Pn ( x) f ( x) dac x{1,0,1}.
n

Sar putea crede c acest lucru se datoreaz faptului c funcia modul nu este derivabil n origine. Urmtorul exemplu dat de C. Runge n 1901 arat c exist funcii indefinit derivabile pentru care {Pn} nu converge la f . 1 Fie f ( x) = , x [- 5,5] . 1 + x2 Evident fC[5,5]. Fie nodurile echidistante 10 xi = 5 + i , i=0 ,n . n lim Pn ( x) = f ( x) dac xc i lim Pn ( x) f ( x) dac Se poate arta c
n n

x>c, unde c 3.6334 este o rdcin a ecuaiei: (5+x)ln(5+x)+(5x)ln(5x)5ln262arctg5=0. n anul 1914, S. N. Bernstein a artat c pentru orice sistem de noduri {xi( n ) }, i=0,n din intervalul [a,b] , dat dinainte, exist o funcie continu f : [a,b] R astfel nct irul polinoamelor lui Lagrange {Pn} care interpoleaz funcia f n aceste noduri nu converge uniform la f pe [a,b]. Exist totui i situaii cnd convergena are loc. Se poate demonstra urmtoarea teorem:
Teorema 3. Dac fC( R) i se dezvolt n serie Taylor pe R, atunci pentru orice

sistem de noduri distincte i echidistante {xi( n ) } , i=0 ,n din [a,b] , irul polinoamelor { Pn } care interpoleaz funcia f n aceste noduri converge uniform la f pe [a,b]. Se pune ntrebarea dac interpolarea cu polinoame Lagrange este util n practic, din moment ce aa cum am vzut, n general irul polinoamelor de interpolare { Pn } nu converge la f. Rspunsul este c interpolarea Lagrange este util. Se constat n practic f ( ) Pn ( ) scade pn la un faptul c pentru un punct [a,b], eroarea punct, pe msur ce n crete, i deci, pentru n relativ mic, Pn() aproximeaz acceptabil valoarea f(). Pentru valori mari ale lui n, interpolarea Lagrange nu este recomandat. Din cele prezentate pn acum, rezult c irul polinoamelor de interpolare asociate unei funcii continue nu converge uniform, n mod necesar, la aceast

142

Bazele Analizei Numerice

funcie. Se pune ntrebarea dac o funcie continu poate fi aproximat uniform cu polinoame. Rspunsul a fost dat de K. Weierstrass n anul 1885.
Teorema 4. Fie f : [a,b] R continu. Atunci, pentru orice > 0, exist un polinom Q astfel nct f Q = sup{ f ( x) Q ( x) ; x [a, b] } < .

1 , rezult c exist un ir de polinoame {Qn} care n converge uniform pe [a,b] la funcia f. Din teorema lui Weierstrass rezult c polinoamele algebrice pe [a,b] sunt, n raport cu funciile continue pe [a,b] , n aceeai relaie ca numerele raionale Q fa de numerele reale R. Teorema lui Weierstrass este extrem de important n analiza matematic, n general, i n analiza numeric, n special. Dintre numeroasele demonstraii date acestei teoreme, cea mai cunoscut este demonstraia dat de S. N. Bernstein, n anul 1912. Bernstein a artat cum se poate construi irul de polinoame care aproximeaz funcia f i anume: n k k (1 x) n k x k f , x [0,1] . Bn ( x) = Cn n k =0 Acest ir de polinoame, care se numesc polinoame Bernstein, au
Evident, dac lum =

f pe [0,1]. Trecerea de la [0,1] la [a,b] se face cu proprietatea Bn uurin printro schimbare de variabil. Evident, polinoamele Bernstein nu sunt polinoame de interpolare. Din pcate, convergena irului { Bn } ctre f este destul de nceat, i din aceast cauz, n practic, polinoamele Bernstein nu se folosesc la aproximarea direct a funciilor. Teorema lui Weierstrass este important prin implicaiile sale teoretice, dar i practice, aa cum vom vedea, de exemplu, la integrarea numeric.

4.2. Interpolarea iterativ. Metoda Aitken


n acest paragraf vom nota polinomul lui Lagrange care interpoleaz funcia f n nodurile xi, i = 0, n cu Pn(x;x0,x1,...,xn). Evident, P0(x; x0) = f(x0).
Teorema 1. Are loc urmtoare relaie de recuren: Pn1 ( x; x0 , x1,..., xn2 , xn1 ) xn1 x 1 Pn ( x; x0 , x1 ,..., xn ) = . xn x xn xn1 Pn1 ( x; x0 , x1 ,..., xn2 , xn ) Demonstraie. Fie

Interpolarea funciilor

143

Q(x)=

Pn1 ( x; x0 , x1,..., xn2 , xn1 ) xn1 x 1 . xn x xn xn1 Pn1 ( x; x0 , x1,..., xn2 , xn )

Observm c pentru orice i = 0, n 2 avem f ( xi ) xn1 x 1 Q( xi ) = = f ( xi ) . xn xn1 f ( xi ) xn x n continuare, avem: f ( xn1 ) 0 1 = f ( xn1 ) , Q( xn1 ) = xn xn1 Pn1 ( xn1; x0 ,..., xn2 , xn ) xn xn1 Pn1 ( xn ; x0 ,..., xn2 , xn1 ) xn1 xn 1 Q ( xn ) = = f ( xn ) . f ( xn ) 0 xn xn1 Aadar, Q este un polinom de gradul n care interpoleaz funcia f n nodurile xi, i = 0, n . Din unicitatea polinomului de interpolare al lui Lagrange, rezult c Q=Pn. Metoda Aitken este bine ilustrat de urmtorul tabel: x0 x0 f(x0) x1 x1 f(x1) P1(;x0,x1) x2 x2 f(x2) P1(;x0,x2) P2(;x0,x1,x2) x3 x3 f(x3) P1(;x0,x3) P2(;x0,x1,x3) P3(;x0,x1,x2,x3) M M M M M M O xn xn f(xn) P1(;x0,xn) P2(;x0,x1,xn) P3(;x0,x1,x2,xn) K Pn(;x0,x1,...,xn) Algoritmul de interpolare iterativ ( metoda Aitken) Pentru i := 1 , n execut yi := f(xi) , di := xi ; sfrit pentru i ; Pentru i := 2 , n execut Pentru j := i , n execut yi 1d j y j d i 1 y j := x j xi 1 sfrit pentru i sfrit pentru j .

144

Bazele Analizei Numerice

4.3. Polinoame Cebev


Polinoamele Cebev sunt definite pe intervalul [1,1] prin relaia: (1) Tn(x) = cos(narccos(x)) . Deoarece Tn+1(x)+Tn1(x)=cos[(n+1)arccosx]+ cos[(n1)arccosx]=2xcos(narccosx), rezult urmtoarea relaie de recuren: (2) Tn+1(x)=2xTn(x)Tn1(x), n 1 Cum T0(x)=1 i T1(x)=x, din (2) rezult T2(x)=2x21, T3(x)=4x33x, T4(x)=8x48x2+1, T5(x)=16x520x3+5x etc. Observm c Tn(x)=2n1xn+... Dac Tn(x)=0, atunci narccos(x)=(2k+1) de unde rezult xk=cos(2k+1)

, k = 0, n-1 . (3) 2n Aadar, polinomul Tn are n rdcini reale distincte, date de formula (3). Pe de alt parte, avem sin(n arccos(x)) ( x) = n Tn . 1 x2 ( x) =0, atunci narccos(x)=k , i deci Dac Tn k yk = cos (4) , k = 1, n 1 n . Se observ c rdcinile derivatei Tn sunt zerourile derivatei Tn rdcinile polinomului Tn. ntradevr,

separ

(2k + 1)
de unde rezult xk=cos(2k+1)

< (k + 1) < (2k + 3) , 2n n 2n

2n n Constatm de asemenea c k Tn ( y k ) = cos n arccos cos n

> yk +1 = cos(k + 1)

> xk +1 = cos(2k + 3)

2n

k = cos (k ) = (1) .

Interpolarea funciilor

145

Cum Tn(x)1, x[1,1], rezult c yk, k = 1, n 1 , sunt puncte de extrem local pentru Tn. Pe de alt parte, avem Tn(1)=(1)n i Tn(1)=1. Aadar, Tn are (n+1) puncte de extrem local i i schimb semnul de n ori pe intervalul [1,1]. Prezentm n continuare tabelul de variaie pentru polinoamele T3 i T4 . 1 1 3 3 x 0 1 1 2 2 2 2 + 0 0 + T3 0 1 1 0 1 0 T3 1

x
T4 T4

1 1

1 2

0 + 0 1

1 2 0

1 +

0 1

Urmtorul rezultat datorat lui Cebev pune n eviden o proprietate remarcabil a zerourilor polinoamelor Cebev.
Teorema 1. Fie xk = (2k + 1)

, k = 0, n , zerourile polinomului Cebev Tn+1. 2n Atunci, oricare ar fi (n+1) puncte distincte, zi, i = 0, n din intervalul [1,1],
avem
x[1,1]

sup ( x x0 )( x x1 )...( x xn ) sup ( x z0 )( x z1 )...( x z n ) .


x[1,1]

Demonstraie. Deoarece

Tn+1(x)=2n(xx0)...(xxn) , rezult c trebuie sa artm c 1 sup T ( x) sup ( x z0 )( x z1 )...( x z n ) , () zi [ 1,1] . n n +1 x[1,1] 2 x[1,1] Presupunem prin absurd c exist z 0 , z1 ,..., z n [ 1,1] astfel nct 1 1 (5) sup qn +1 ( x) < sup T ( x) = n n +1 2n x[1,1] x[1,1] 2 unde qn +1 ( x ) = ( x z0 )( x z1 )...( x z n ) . (6) Fie 1 rn ( x) = Tn +1 ( x) qn +1 ( x), x [ 1,1] . 2n

146

Bazele Analizei Numerice

Evident, rn este un polinom de grad cel mult n. Observm ca rn are acelai semn cu Tn+1 n cele (n+2) puncte de extrem ale polinomului Tn+1. ntradevr, fie yk un asemenea punct. Presupunem c Tn+1(yk)=1. Dac rn(yk)0, atunci 1 1 , qn +1 ( y k ) = rn ( y k ) n 2 2n ceea ce contrazice relaia (5). Dac Tn+1(yk)=1 i presupunem c rn(yk)>0, atunci 1 1 , qn +1 ( yk ) = rn ( yk ) + > n 2 2n ceea ce contrazice relaia (5). Aadar, rn i schimb semnul de (n+2) ori, deci rn are (n+1) rdcini. Acest lucru nu este posibil dect dac rn(x)=0, ()x[1,1]. 1 Rezult atunci c Tn +1 = qn +1 , ceea ce contrazice relaia (5). 2n Revenim acum la evaluarea erorii n interpolarea Lagrange. Fie (n+1) noduri xi n [1,1] i fC(n+1)[1,1]. Dac Pn este polinomul lui Lagrange care interpoleaz funcia f n nodurile xi, i = 0, n , atunci f ( n+1) ( x ) f ( x) Pn ( x) = ( x x0 )...( x xn ) (7) (n + 1)! (vezi Capitolul 4, 1, Teorema 2). Din (7) rezult c
sup ( x x )...( x x ) . f Pn = sup f ( x) Pn ( x) 0 n ( n + 1 )! 1 x1 1 x1 Aadar, eroarea f Pn va fi minim dac

f ( n+1)

1 x1

sup ( x x0 )...( x xn )

va fi minim. Pe de alt parte, din Teorema 1 rezult c acest lucru se ntmpl dac alegem nodurile

, i = 0, n 2(n + 1) (adic xi sunt zerourile polinomului Cebev Tn+1 ). Din cele de mai sus rezult c are loc urmtoarea teorem:
* Teorema 2. Fie Pn polinomul lui Lagrange care interpoleaz funcia f n nodurile

xi = cos(2i + 1)

xi = cos(2i + 1)

2(n + 1)

i = 0, n .

Interpolarea funciilor

147

Atunci

. Pentru acele funcii care au 2 (n + 1)! 1 * u f . proprietatea c lim f (n+1) = 0 va rezulta c irul Pn n n 2 (n + 1)!
n

* f Pn

f ( n +1)

4.4. Funcii spline cubice


Fie

o diviziune oarecare a intervalului [a,b]. Se numete funcie spline cubic o funcie s : [a,b] R cu urmtoarele proprieti: (i) Restricia lui s la fiecare subinterval [xi1, xi] este un polinom de grad cel mult trei; (ii) s, s', s" sunt continue pe [a,b]. n continuare ne punem problema interpolrii unei funcii f : [a,b] R cu ajutorul unei funcii spline cubice. Cu alte cuvinte, ne punem problema s gsim o funcie spline cubic s, astfel nct s(xi) = f(xi) , i = 0, n . Deoarece restricia lui s la subintervalele [xi1,xi] este un polinom de grad cel mult trei, rezult c s(x)=ai+bix+cix2+dix3 pentru orice x[xi1, xi]. Determinarea funciei s presupune deci determinarea a 4n coeficieni (ai , bi , ci , di). S evalum acum de cte condiii dispunem. Faptul c s(xi) = f(xi), i = 0, n ne asigur (n+1) condiii. Pe de alt parte, din continuitatea lui s i a derivatelor s' i s", rezult: s(k)(xi0)= s(k)(xi+0) , i =1, n 1 , k = 0,2 , care ne asigur 3(n1) condiii. n total, dispunem deci de (4n2) condiii, cu dou mai puin dect numrul coeficienilor ce urmeaz a fi determinai. Dac se cunosc derivatele f'(a) i f'(b), atunci adugm condiiile s'(a) = f'(a) i s'(b) = f'(b). Dac nu se cunosc aceste derivate, atunci se aproximeaz i f'(b)= y 0 f'(a) y 0 i se pun condiiile s'(a) = y 0 i s'(b) = y n . Dac nu avem nici o informaie despre f'(a) i f'(b) se pot pune condiiile:

: a=x0<x1<...<xi1<xi<...<xn=b

148

Bazele Analizei Numerice

s"(a) = s"(b) = 0 . n acest caz se obine aa numita funcie spline cubic natural. nainte de a prezenta teorema fundamental privind existena funciilor spline cubice, reamintim urmtorul rezultat de algebr liniar.
Propoziia 1. Orice matrice ptratic strict diagonal dominant este nesingular. Demonstraie. Fie A M n(R) cu proprietatea:

aii > aij


j =1 j i

(1)

Dac vom arta c sistemul Ax=0 admite numai soluia banal, va rezulta c detA 0. Presupunem prin absurd c exist 0 astfel nct A = 0. Fie j = = max{ 1 , 2 , ..., n } . Cum este soluie pentru sistemul Ax = 0 rezult aj11+ ...+ ajjj+...+ ajnn = 0 sau

a jj +

k =1 k j

a jk k

= 0 . (2)

n continuare avem

a jj
ceea ce contrazice (1).

k =1 k j

a jk

k j

k =1 k j

a jk

, y0, y1, ..., y n ,y n , exist o Teorema 1. Pentru orice (n+3) numere date y 0 funcie spline cubic s, unic cu proprietile: , s(xn) = y n . s(xi)=yi , 0in , s(x0) = y 0 Demonstraie. Vom nota cu Mi = s"(xi), i = 0, n . Deoarece s" este liniar pe intervalul [xi , xi+1], rezult c s este de forma s"(x)=x+ . Din condiiile Mi=s"(xi) i Mi+1 = s"(xi+1) rezult M x M i +1xi M Mi a = i +1 , i = i i +1 hi hi unde hi = xi+1xi. Aadar pe intervalul [xi , xi+1] , avem: ( x x) M i + ( x xi ) M i +1 s" ( x) = i +1 , i=0,n-1 . (3) hi Integrnd de dou ori obinem

Interpolarea funciilor

149

s ( x) =

( xi +1 x) 3 M i + ( x xi )3 M i +1 + C ( xi +1 x) + . 6hi

(4)

+ D ( x xi ), i=0 ,n-1 unde C i D sunt constante arbitrare. Punnd condiiile de interpolare s(xi) = yi , 0in, rezult y hM y hM C = i i i i D = i +1 i i +1 . (5) hi hi 6 6 nlocuind (5) n (4) obinem pentru x [xi , xi+1] i i = 0, n 1 :

s ( x) = +

( xi +1 x) 3 M i + ( x xi )3 M i +1 + 6hi ( xi +1 x) yi + ( x xi ) yi +1 hi (6)

(x x)M i + (x xi )M i +1 i +1 hi , i=0 ,n-1 . 6 S observm c funcia s definit n (6) este continu pe [a,b]. ntradevr (x x)3 Mi1 + (x xi1)3 Mi (xi x) yi1 + (x xi1) yi lim s(x) = lim i + 6 h h xxi xxi i i 1 1 x<x x<x
i i

2 (x x)Mi1 + (x xi1)Mi hi3 -1Mi + y hi1Mi = y = hi1 i i i 6h 6 6 i1

i analog

x xi x > xi

lim s ( x) = yi .

n continuare vom pune condiia ca derivata s' s fie continu pe [a,b]. Din (6) rezult: ( xi +1 x) 2 M i + ( x xi ) 2 M i +1 yi +1 yi + s ' ( x) = hi 2hi (7) ( M i +1 M i )hi , 6 pentru x(xi , xi+1), i = 0, n 1 . Punem condiia ca lim s ' ( x) = lim s ' ( x) i obinem
x xi x < xi x xi x > xi

2 hi2 1M i + yi yi 1 ( M i M i 1 ) hi 1 = hi M i + yi +1 yi ( M i +1 M i ) hi hi 1 hi 2hi 1 6 2hi 6

150

Bazele Analizei Numerice

i mai departe hi 1 h + hi 1 h y y y yi 1 M i 1 + i M i + i M i +1 = i +1 i i (8) 6 3 6 hi hi 1 pentru orice i = 1, n 1 . La cele (n1) ecuaii date de (8) adugm dou ecuaii care corespund . i s'(xn)= y 0 condiiilor: s'(x0)= y 0 innd seama de (7) aceste ecuaii sunt: h0 h y y0 M 0 + 0 M1 = 1 y0 (9) 3 6 h0 hn 1 h y yn 1 n M n 1 + n 1 M n = yn . (10) 6 3 hn 1 Din (8), (9) i (10) rezult urmtorul sistem AM=b, unde
h0 3 h0 6 A= 0 M 0 0 h0 6 h0 + h1 3 h1 6 M. 0 h1 6 h1 + h2 3 M 0 0 h2 6 M L L L O 0 0 0 0 0 0 0 0 0 M hn1 6 hn1 3

M hn 2 + hn 1 0 0 0 3 hn1 0 0 0 L 0 6 y1 y0 y0 h0 y 2 y1 y1 y0 M0 h1 h0 M1 , iar b = M = M . M y y y y n 1 n -1 n2 n M hn 1 hn 2 n y n y n 1 y n hn 1 Observm c matricea A este simetric, tridiagonal i strict diagonal dominant. Un asemenea sistem are soluie unic, care se obine uor cu algoritmul Gauss. nlocuind n (6) aceast soluie, gsim funcia spline cubic pe care o cutam. Evident aceast funcie este unic, deoarece soluia (M0, M1,...,Mn) este unic.

M hn 2 L 6

Interpolarea funciilor

151

Exemplu: S se determine valorile funciei

n punctul

5 24

folosind

interpolarea spline cubic, tiind c:

xi y i = f ( xi )

0 0

6 0.5

4 0.70711

3 0.86603

2 1

i c valorile lui f ' n punctele x 0 i x 4 sunt: y ' 0 = 1 , y ' 4 = 0 . R. Aplicm teorema 1 i vom gsi funcia spline cubic s ce interpoleaz funcia

f , dac determinm coeficienii M i , i = 0, 3 . Coeficienii M i se determin prin rezolvarea sistemului liniar AM = b, unde
h0 3

h0 6

y1
0
h1

y0

h0

y'0

h0 h0 6
A

h1 6

y2
0
h2

y1

y1

y0

h1
b

h0

h1 6

h1

h2 6

0
h3 h3

y3

y2

y2

y1

h2

h1

h2 6

h2

y4

y3

y3

y2

h3

h2

h3 6

h3 3

M0 M1 , M = M2 M3 M4

y'4

y4

y3

h3

5.15454 10 3 0.50616 i hi = xi+1 xi , i = 0, 3 . Obinem c: M = 0.70767 . 0.88161 1.02524 Punctul

5 [x1 , x 2 ] . Scriem funcia de interpolare s pe acest interval: 24

152

Bazele Analizei Numerice

s ( x) =

( x 2 x) 3 M 1 + ( x x1 ) 3 M 2 ( x 2 x) y1 + ( x x1 ) y 2 + 6h1 h1 ( x 2 x) M 1 + ( x x1 ) M 2 h1 6

5 Calculm valoarea funciei s n punctul dat: s = 0.60875 . 4 5 Deci, valoarea aproximativ a lui f n punctul este 0.60875. 24
Funciile spline cubice au urmtoarea proprietate de optimizare.
Teorema 2. Fie G mulimea funciilor proprietile: 0in (i) g(xi)=yi , ' (ii) g'(x0)= y0 (iii) g'(xn)= y n

g : [a,b] R,

de clas C2 cu

Atunci :

[g"( x)] g G
inf
a b

dx = [s" ( x)] 2 dx .
a

Demonstraie. Dac notm cu k(x) = s(x) g(x), unde gG, atunci


2 2 2 [g"(x)] dx = [s"(x)] dx 2 s"(x)k"(x)dx + [k"(x)] dx . a a a b b b

Mai departe avem


b

s"( x)k"( x)dx =


n 1

n 1 xi +1 i =0 xi

s"( x)k"( x)dx =

xi +1 xi +1 = s" ( x)k ( x) x s ( x)k ( x)dx . i i =0 xi

Deoarece s'''(x)=i este o constant pe [xi,xi+1] i k(xi) = k(xi+1) = 0 , i = 0, n 1 , rezult


xi +1 xi

s(x)k (x)dx = 0

i mai departe

Interpolarea funciilor
b

153

s"( x)k"( x)dx = [s"( xi +1 )k ( xi +1 ) s"( xi )k ( xi )] =


i =0 b b b

n 1

= s" (b)k (b) s" (a) k (a) = 0 . deoarece k'(a) = k'(b) = 0. Aadar

a b

[g"( x)]
2

dx = [s" ( x)] dx + [k " ( x)] 2 dx .


2 a a b

Rezult

[s" (x)]
b a

dx [g" (x)] 2 dx pentru orice gG.


a 2

Egalitatea are loc dac

[k"(x)]

dx = 0 , deci dac k"(x)=0,

() x[a,b]. Aadar functia k este liniar pe [a,b]. Din condiiile de interpolare k(xi)=0 pentru i = 0, n , rezult k(x)=0, ()x[a,b] i deci c
b 2 2 [s"( x)] dx = ginf [g"( x)] dx . G a b

Se poate demonstra de asemenea urmtoarea teorem.


Teorema 3. Fie fC4[a,b] i M4=sup{f
IV

(x); x[a,b]} i fie xi( n) = a + ih,

i = 0,n , noduri echidistante, unde h =


cu proprietile:

ba . Dac sn este funcia spline cubic n

( a ) = f ' ( a ) i sn (b) = f ' (b) , sn(xi(n) ) = f (xi(n) ) , i = 0, n ; s n atunci pentru orice x[a,b] avem: 3 5 1 " (x) M4h3, f " ( x) sn ( x) M 4 h 2 . f(x) sn(x) M4h4 , f '(x) sn 24 8 384 Aadar, din Teorema 3 rezult c irul funciilor spline cubice {sn} care

interpoleaz funcia f n nodurile echidistante

{x }
( n) i u

converge uniform pe

u f i sn f " pe intervalul [a,b] ctre funcia f. Mai mult: sn intervalul [a,b]. n continuare vom defini funciile Bspline cubice i vom arta c orice funcie spline cubic care interpolez funcia f n nodurile x0, x1, ..., xn se reprezint ca o combinaie liniar unic de funcii Bspline cubice. Fie : a=x0<x1<...<xi1<xi<...<xn=b

154

Bazele Analizei Numerice

o diviziune a intervalului [a,b] cu noduri echidistante (xi = x0+ih, unde ba ~ h= ). Asociem acestei diviziuni, diviziunea care are n plus ase noduri n auxiliare, de asemenea echidistante. ~ : x 3 < x 2 < x 1 < x0 < x1 < ... < x n < x n +1 < x n + 2 < x n+3 . Definim pentru orice i = 1, n + 1 , funcia Bspline cubic Bi astfel:
( x xi 2 ) 3 3 2 2 3 h + 3h ( x xi 1 ) + 3h( x xi 1 ) 3( x xi 1 ) 1 3 Bi ( x ) = h + 3h 2 ( xi +1 x) + 3h( xi +1 x) 2 3( xi +1 x) 3 h3 3 ( xi + 2 x) 0 x ( xi 2 , xi 1 ] x ( xi 1 , xi ] x ( xi , xi +1 ] x ( xi +1 , xi + 2 ] x [ xi 2 , xi + 2 ]

Graficul funciei Bi arat astfel:

Din definiia funciilor Bi rezult c 4 dac j=i Bi ( y j ) = 1 dac j = i-1 sau j=i+1 0 dac j {i-1;i;i+1} Se verific uor c Bi ( xi 1 ) =

xi2

xi1

xi

xi+1

xi+2

j {xi1; xi+1} . cubic.

3 3 , Bi ( xi +1 ) = i Bi ( x j ) = 0 dac h h Se observ de asemenea c BiC2(R), deci este o funcie spline

Propoziia 2. Funciile B1, B0, ..., Bn+1 sunt liniar independente pe R. Demonstraie. Fie combinaia liniar 1B1(x)+ 0B0(x)+ 1B1(x)+...+ n+1Bn+1(x)=0, xR. Dac dm lui x succesiv valorile x1, x0, ..., xn+1 obinem sistemul:

Interpolarea funciilor

155

41 + 0 = 0 + 4 + = 0 1 0 1 L + 4n + n +1 = 0 n 1 n + 4n +1 = 0 Deoarece matricea sistemului este strict diagonal dominant, deci nesingular, rezult c sistemul admite numai soluia banal 1 = 2 = ... = n+1 = 0 . n continuare notm cu i = 1, n + 1 .
B3()

spaiul liniar generat de funciile Bi,

Teorema 4. Exist o funcie unic B B 3() care interpoleaz funcia f n nodurile xi , i = 0, n . Demonstraie. Fie (11) B(x)= a1B1(x)+ a0B0(x)+ a1B1(x)+...+ an+1Bn+1(x), xR. Punnd condiia ca B s interpoleze funcia f n nodurile x0, x1 ,..., xn rezult ( x0 ) + ... + a n +1Bn +1 ( x0 ) = f ( x0 ) 1 ( x0 ) + a0 B0 B ( x0 ) = a 1B
B ( xi ) = a 1B1 ( xi ) + a0 B0 ( xi ) + ... + an +1Bn +1 ( xi ) = f ( xi ) i=0 ,n 1 ( xn ) + a0 B0 ( xn ) + ... + a n +1Bn +1 ( xn ) = f ( xn ) B ( xn ) = a 1B Se obine sistemul: 3 3 h a1 + h a1 = f ( x0 ) a + 4a + a = f ( x ) 0 1 0 1 a0 + 4a1 + a 2 = f ( x1 ) (12) L a n 1 + 4a n + a n +1 = f ( xn ) 3 3 a n 1 + an +1 = f ( xn ) h h Sistemul (12) are (n+3) ecuaii liniare i (n+3) necunoscute a1, a0, ..., an+1. Eliminnd necunoscuta a1 din primele dou ecuaii i necunoscuta an+1 din ultimele dou ecuaii, obinem sistemul echivalent:

156

Bazele Analizei Numerice

h 4a0 + 2a1 = f ( x0 ) + 3 f ( x0 ) a + 4 a + a = f ( x ) 0 1 2 0 (13) L a + 4an 1 + a n = f ( xn 1 ) n2 h 2 a n 1 + 4a n = f ( xn ) + f ( xn ) 3 Matricea coeficienilor sistemului (13) este strict diagonal dominant, deci sistemul (13) are soluie unic. Aadar, sistemul (12) are soluie unic. nlocuind aceast soluie n (11) obinem funcia B cutat, care evident este unic.

Teorema 5. Fie s : [a,b] R o funcie spline cubic care interpoleaz funcia f n nodurile x0, x1,..., xn . Atunci exist a1, a0, a1,..., an+1R, unic determinate, astfel nct s(x) = a1B1(x)+ a0B0(x)+...+ an+1Bn+1(x), () x[a,b]. Demonstraie. Din Teorema 4 rezult c exist BB3() astfel nct B interpoleaz funcia f n nodurile x0, x1,..., xn. Funcia B este de clas C2 pe R i este polinomial de gradul trei pe poriuni. Rezult c restricia lui B la intervalul [a,b] este o funcie spline cubic, care interpoleaz f n nodurile x0, x1,..., xn . Cum asemenea funcie este unic (conform Teoremei 1 ) rezult s(x)=B(x)=a1B1(x)+ a0B0(x)+...+ an+1Bn+1(x), () x[a,b]. Unicitatea coeficienilor a1, a0, a1, ..., an+1 este asigurat de Teorema 4.

Pachetul de programe MATLAB conine funcia spline care permite interpolarea unei funcii f n punctele x1, x2, ..., xn , ()nN* , finit, printro funcie spline cubic, dac se cunosc valorile y1, y2, ..., yn ale funciei n nodurile x1<x2<...<xn . Secvena de apelare este: yi=spline(x,y,xi).
Exemplu. S se determine valorile funciei f n punctele

12

3 3 2


8 , 5

, folosind

interpolarea spline cubic, tiind c: xI 0 yi=f(xi) 0


6 1 2

4 1
2

utiliznd MATLAB. n mediul MATLAB se scriu comenzile:

Interpolarea funciilor

157

% Matlab

interpolarea cu functii spline cubice folosind pachetul de programe

function [x,y,xi,yi]=cub % Nodurile x=[0,pi/6,pi/4,pi/3,pi/2]; % Valorile functiei in noduri y=[0,1/2,1/2^(1/2),3^(1/2)/2,1]; % Valorile in care se interpoleaza functia xi=[pi/12,pi/8,pi/5]; % Apelarea functiei Matlab spline care face interpolarea yi=spline(x,y,xi); Funcia considerat este f(x)=sinx i putem compara valorile de interpolare cu cele "exacte": zi=sin(xi); Pentru reprezentarea grafic a funciei interpolate se poate folosi urmtoarea secvena MATLAB. % Reprezentarea grafica a functiei interpolate plot(x,y,xi,yi,'*',xi,zi,'o'); axis([0,pi/2,0,1.2]); % se stabilesc intervalele de reprezentare pe axe title('Interpolarea cu spline cubice'); xlabel('Unghiul'); ylabel('Valorile functiei'); grid

Exerciii
Folosind polinomul de interpolare a lui Lagrange s se determine valoarea aproximativ a funciilor date de tabelele urmtoare n punctele a menionate n fiecare caz. 1. x 0 1 3 3 2 y=f(x) 91 23 1 73 1 a=1.

158

Bazele Analizei Numerice

R.
P4 (a ) = yi
i =1 5 5

a xj xj

j =1 xi j i

= y1

a x2 a x3 a x4 a x5 + x1 x2 x1 x3 x1 x4 x1 x5

a x1 a x3 a x4 a x5 a x1 a x2 a x4 a x5 + y3 + x2 x1 x2 x3 x2 x4 x2 x5 x3 x1 x3 x2 x3 x4 x3 x5 a x1 a x2 a x3 a x5 a x1 a x2 a x3 a x4 + y4 + y5 = x4 x1 x4 x2 x4 x3 x4 x5 x5 x1 x5 x2 x5 x3 x5 x4 1+ 2 1 11 1 3 1+ 3 1 11 1 3 = 91 + 23 + 3 + 2 3 3 1 3 3 2 + 3 2 2 1 2 3 1+ 3 1+ 2 11 1 3 1+ 3 1+ 2 1 1 3 + + 1 3 3 2 1+ 3 1+ 2 1 1 3 1+ 3 1+ 2 1 11 + 73 =5 . 3 + 3 3 + 2 3 3 1 2. x 0 2 6 4 3 5 2 y=f(x) 0 0.5 1.70711 0.86603 0.95106 1 + y2

a= R.

3 . 8
3 P5 8 Folosind = 0.92388 . metoda Aitken s se gseasc valoarea aproximativ a funciilor

date de tabelele urmtoare n punctele menionate n fiecare caz n parte. 3. x y=f(x) 2 12 1 5 0 4 1 3 3 23

a=0.5 . R. Urmrind calculele ca n Teorema 1 4.2 obinem tabelul urmtor n care ultima celul d valoarea aproximativ a funciei n punctul dat. 2 1 0 1 3 2.5 1.5 0.5 0.5 2.5 12 5 4 3 23

5.5 2 4.5 5.5

5.75 2 5.5

3.875 3.875

3.875

Interpolarea funciilor

159

4. x y=f(x) a=36 . R. 0 36 30 6 45 9 60 24 90 54 0 0 30 0.5 45 0.70710 60 0.86602 90 1

0 0.5 0.70710 0.86602 1

0.6 0.56568 0.51961 0.4

0.58627 0.58392 0.58

0.58768 0.58752

0.58780

5. S se determine valorile funciei f n punctul 0.5 folosind interpolarea spline cubic, tiind c:
xi y i = f ( xi )

0 1

0.25 0.96923

0.75 0.75484

1 0.60653

i c valorile lui f ' n punctele x 0 i x3 sunt: y '0 = 0 , y '3 = 0.60653 . R. Vom gsi funcia spline cubic s ce interpoleaz funcia f , dac determinm coeficienii M i , i = 0, 2 . Coeficienii M i se determin prin rezolvarea sistemului de ecuaii liniare AM = b, unde
h0 3 h0 h0 A 6 0 3 h1 6 0 h1 3 h2 6 h0 6 h1 y1 0 h1 6 0 y2 b h1 y3 h2 y' 3 y3 h2 y2 y2 h1 y2 h0 y1 y0 y' 0 y1 h0 y1 y0

0 h2 h2 6 h2 3

iar hi = xi+1 xi

i = 0, 2

160

Bazele Analizei Numerice

M0 1.00712 M1 0.93936 iar M = . Obinem c: M = M2 0.347 0.01396 M 3


Punctul 0.5 [x1 , x 2 ] . Scriem funcia de interpolare s pe acest interval: s ( x) = ( x 2 x) 3 M 1 + ( x x1 ) 3 M 2 ( x 2 x) y1 + ( x x1 ) y 2 + h1 6h1

( x 2 x) M 1 + ( x x1 ) M 2 h1 6 Calculm valoarea funciei s n punctul dat: s (0.5) = 0.882 . Deci, valoarea aproximativ a lui f n punctul 0.5 este 0.882. 6. S se determine valorile funciei f n punctul 3 folosind interpolarea spline cubic, tiind c:
xi y i = f ( xi )

1 0.5403

2 0.70121

4 0.80805

5 0.83382

i c valorile lui f ' n punctele x 0 i x3 sunt: y ' 0 = 0.28049 , y '3 = 0.02152 .


0.33459 0.0483 R. Obinem c: M = . Valoarea funciei f n punctul 3 este 0.01028 7.60083 10 3 aproximat de s (3) = 0.76928 .

Integrarea i derivarea numeric

161

5. Integrarea i derivarea numeric

Fie f : [a,b] R o funcie integrabil. Dac putem gsi o primitiv F a funciei f, atunci conform formulei LeibnizNewton avem
b a b

f ( x )dx = F (b) F (a ) .

Dac nu putem gsi o primitiv F a funciei f, atunci pentru calculul integralei

f ( x )dx

vom folosi o metod numeric aproximativ.

O abordare fireasc este s aproximm funcia f printrun polinom, de exemplu prin polinomul de interpolare a lui Lagrange i s integrm acest polinom. Prin formul de integrare numeric (cuadratur numeric) se nelege o formul de urmtorul tip
b a

w( x ) f ( x )dx = A1 f ( x1 ) + ... + An f ( xn ) + R( f )

(1)

unde { xi } se numesc noduri, iar { Ai } se numesc coeficieni. Funcia w este o funcie fixat, integrabil, care se numete funcia pondere. n multe cazuri w(x)=1, () x [a,b]. Despre funcia f se presupune c este integrabil pe [a,b] i definit n nodurile { xi }. Cu R( f ) se noteaz eroarea de aproximare a integralei.
Definiia 1. Formula (1) se spune c este exact pentru funcia f dac R( f ) = 0, deci dac

w( x ) f ( x )dx = A1 f ( x1 ) + A2 f ( x2 ) + ... + An f ( xn ) .

Formula (1) se spune c este de gradul m dac: (i) este exact pentru orice polinom de grad cel mult m ; (ii) exist un polinom de gradul (m+1) pentru care formula (1) nu este exact.

162

Bazele Analizei Numerice

Teorema 1. Pentru orice n noduri distincte, x1, ..., xn , exist n constante A1, A2, ..., An (care nu depind de f ) astfel nct formula

w( x) f ( x )dx = A1 f ( x1 ) + A2 f ( x2 ) + ... + An f ( xn ) + R( f )
a

este exact pentru orice polinom de grad cel mult (n1). Demonstraie. Fie Pn 1 ( x) = Li ( x) f ( xi )
i =1 n

polinomul lui Lagrange, care interpoleaz funcia f n nodurile { xi }, i = 1, n . Reamintim c n x xj . Li ( x) = j =1 xi x j


j i

Dac notm cu atunci E(f ; x) = f(x)Pn1(x) , f ( x) = Li ( x) f ( xi ) + E ( f ; x)


i =1 n

i mai departe
b b w( x ) f ( x )dx = w( x ) Li ( x )dx f ( xi ) + w( x ) E ( f ; x )dx . i =1 a a a Notm cu

Ai = w( x ) Li ( x )dx , i = 1, n .
a

Evident Ai nu depind de f , ci de a, b, nodurile xi i de ponderea w. Dac notm cu

R( f ) = w( x ) E ( f ; x )dx ,
a

atunci

w( x) f ( x )dx = A1 f ( x1 ) + A2 f ( x2 ) + ... + An f ( xn ) + R( f ) .
a

Dac f este un polinom de grad cel mult (n1), atunci E(f;x)=0 i deci R( f )=0 (Capitolul IV, 1, Observaia 1). Exist trei tipuri de formule de integrare numeric:

Integrarea i derivarea numeric

163

1. Formule NewtonCtes, 2. Formule Gauss, 3. Formule Romberg. n cele ce urmeaz vom prezenta primele dou tipuri de formule.

5.1. Formule Newton-Ctes


Presupunem intervalul [a,b] finit, nodurile echidistante ba i w(x)=1, pentru orice x[a,b]. xi = a+ih, unde h = n n x xj i fie Pn polinomul Lagrange care Fie Li ( x) = i =0 xi x j
j i

interpoleaz funcia f n nodurile x0, x1, ..., xn . Avem Pn ( x) = Li ( x) f ( xi ) .


i =0 n

Dac facem schimbarea de variabil x=a+th, atunci , aa cum sa vzut n 4.1, avem
n ( 1) n i C i ~ n n +1 (t ) Pn (t ) = Pn (a + th) = f ( xi ) n! t i i =0 (t ) ~ E ( f ; t ) = n+1 h n+1 f ( n+1) ( t ) , (n + 1)!

unde

n +1 (t ) = t (t 1)(t 2)...(t n) . n continuare avem


b a

f ( x)dx = Pn ( x)dx + E ( f ; x)dx .


a a

Cu schimbarea de variabil x=a+th, obinem b n~ n~ f ( x)dx = Pn (t )hdt + E ( f ; t )hdt =


a 0 0 n ( 1)n i C i n = h ! n i =0

h n+2 n ( n +1) n +1 (t ) + ( ) ( t )dt . dt f x n +1 (t ) f i + ( n 1 )! t i 0 0


n

Introducem notaiile:

164

Bazele Analizei Numerice


i (1) n i C n n! n 0 n +1 (t )

di =

t i

dt , i=0 ,n

(2)

i R( f ) = h n+ 2 n ( n +1) ( t )dt . n+1 (t ) f (n + 1)! 0 (3)

Numerele { di }, i = 0, n , se numesc coeficienii NewtonCtes. Prin urmare avem


b a

f ( x)dx = Ai f ( xi ) + R( f )
i =0

(4)

unde Ai = hdi , i = 0, n . Primele trei formule NewtonCtes au nume speciale. Dac n=1 obinem formula trapezelor. n acest caz h = ba,
d0 =
0 1 1 11 1 (1)1 C1 (1) 0 C1 t (t 1) 1 t (t 1) 1 , ( 1 ) dt = t dt = d = dt = tdt = 1 1! t 2 1! 2 0 t 1 0 0 0

Rezult A1 = A2 =

h 2

Formula trapezelor este b ba [ f (a) + f (b)] + R( f ) f ( x)dx = 2 a R( f ) = h3 1 f " ( t ) t (t 1)dt . 2 0

(5)

Dac fC2[a,b] i notm cu


R( f )
3 1

M2=sup{ f"(x); x[a,b] } atunci (6)

(b a ) M 2 (b a ) 3 M2 t (t 1) dt = 2 12 0

Integrarea i derivarea numeric

165

Din punct de vedere geometric formula trapezelor (5) revine la a aproxima aria mulimii plane mrginit de graficul funciei f , axa Ox i dreptele x = a, x= b cu aria trapezului haurat n figur. ba , Dac n=2 obinem formula Simpson. n acest caz h = 2
0 2 (1) 2 C 2 t (t 1)(t 2) 12 1 dt = (t 2 3t + 2)dt = d0 = t 2! 20 3 0

d1 =

(1)1 C 1 2 2!

2 t (t

d2 =

(1) 2!

0 2 2 C 2 t (t

2 1)(t 2) 4 dt = (t 2 2t )dt = t 1 3 0

1)(t 2) 1 12 dt = (t 2 t )dt = . 3 20 t2

Formula Simpson este b ba a+b f (a) + 4 f ( ) + f (b) + R( f ) . f ( x)dx = 6 2 a Se poate arta c dac fC4[a,b] atunci M 4 (b a) 5 2880 unde M4=sup{ f IV (x) ; x[ a,b ] }. n sfrit, dac n=3, atunci ba 3 9 h= ; d 0 = d 3 = ; d1 = d 2 = . 3 8 8 Se obine formula 3/8 a lui Simpson b ba [ f (a) + 3 f (a + h) + 3 f (a + 2h) + f (b)] + R( f ) . f ( x)dx = 8 a R( f )

(7)

(8)

(9)

Pentru o mai bun aproximare a integralei se folosesc formulele NexwtonCtes repetate. Dac mprim intervalul [ a, b ] n n subintervale egale i aplicm formula (5) fiecrui interval [ xi1, xi ] , obinem: b n xi n x x i 1 [ f ( xi 1 ) + f ( xi )] + Ri ( f ) . f ( x ) dx = f ( x)dx = i 2 i =1 x i =1 a
i 1

ba Cum xi xi 1 = , x0 = a i xn = b avem n b n 1 ba f ( x ) dx f ( a ) f ( b ) 2 = + + f ( xi ) + R ( f ) 2n i =1 a unde

(10)

166

Bazele Analizei Numerice

M2 b a M2 (b a )3 . = 2 12 n 12n Formula (10) se numete formula trapezelor repetat. R( f ) n

(11)

Dac mprim intervalul [a,b] n 2n subintervale egale i aplicm formula Simpson (7) fiecrui interval [x2i2,x2i], obinem formula Simpson repetat b n n1 ba (12) f a f b f x ( ) ( ) 4 ( ) 2 + + + f ( x2i ) + R( f ) f ( x)dx = 2i 1 6n i =1 i =1 a unde

R( f )
Dac notm cu

M4 2880n 4

(b a )5

(13)

T n =

n1 ba f (a) + f (b) + 2 f ( xi ) 2n i =1

i cu
S n = n n 1 ba f (a ) + f (b) + 4 f ( x 2i 1 ) + 2 f ( x 2i ) , 6n i =1 i =1

T S atunci se poate arta c n i n sunt sume Riemann, sau combinaii liniare de sume Riemann ataate funciei f i c

T S lim n = f ( x)dx, lim n = f ( x)dx . a n a

Calculul aproximativ al integralelor definite folosind pachetul de programe MATLAB n MATLAB se afl programate metodele trapezelor, Simpson i 3/8 Simpson (funciile trapz, quad i quad8). Pentru calculul integralelor definite cu formula trapezelor trebuie s se cunoasc X, vectorul absciselor i Y, vectorul (matricea) valorilor funciei (funciilor) corespunztoare absciselor date de X. Secvena de apelare este: Z=trapz(X), cnd se calculeaz o singur integral i Z este un numr, valoarea integralei, sau Z =trapz(X,Y), cnd se calculeaz mai multe integrale deodat i Z este vectorul valorilor integralelor calculate. Aceast funcie consider h=1, iar atunci cnd h 1 , se nmulete cu h funcia trapz, aa cum se va vedea n exemplul urmtor.
Exemplul 1. S se calculeze valoarea aproximativ a integralei
2.5 0.5 2 sin( x )dx ,

folosind funcia MATLAB trapz , i lund pasul h=0.1 .

Integrarea i derivarea numeric

167

Fiierul de tip m cu care se realizeaz aceast cerin este: % Calculul integralelor cu metoda trapezelor function z=trapez x=.5:0.1:2.5; %limita inferioara: pasul: limita superioara y=sin(x.^2); % integrandul z=0.1*trapz(y); % se inmulteste cu pasul, implicit pasul fiind 1 disp('Valoarea aproximativa a integralei'); Apelarea se face scriind trapez, iar valoarea afiat este 0.3924 . Pentru calculul integralelor definite cu una din formulele Simpson trebuie s se cunoasc X, vectorul absciselor i s se creeze un fiier de tip m care conine secvena de definire a funciei de integrat. Funciile quad i quad8 se apeleaz cu una din formele: quad('f',a,b) quad8('f',a,b) quad('f',a,b,err) quad8('f',a,b,err) quad('f',a,b,err,urma) quad8('f',a,b,err,urma) unde: f - este numele unui fiier funcie (de tip m ) care conine descrierea funciei de integrat; a, b - sunt limitele de integrare; err - eroarea relativ admis ntre doi pai consecutivi (implicit este 103); urma - dac este diferit de zero, se afieaz pe ecran valorile intermediare. Dac nu se cunoate expresia analitic a funciei, ci doar X , vectorul absciselor, i Y, vectorul valorilor funciei n aceste puncte, atunci se interpoleaz funcia i se consider fiierul f, de tip m, care conine funcia de interpolare, dup care se calculeaz integrala din aceast funcie. Pentru exemplu de mai sus se creeaz fiierul f cu funcia de integrat: % Fisierul cu functia de integrat numit f de tip m function g=f(x) g=sin(x.^2); % integrandul dup care se apeleaz cu secvena: quad('f',0.5,2.5,0.00001) i se va afia valoarea 0.3890 . Am considerat eroarea relativ dintre doi pai consecutivi 105. unde: f - este numele unui fiier funcie (de tip m ) care conine descrierea funciei de integrat; a, b - sunt limitele de integrare; err - eroarea relativ admis ntre doi pai consecutivi (implicit este 103); urma - dac este diferit de zero, se afieaz pe ecran valorile intermediare. Dac nu se cunoate expresia analitic a funciei, ci doar X , vectorul absciselor, i Y, vectorul valorilor funciei n aceste puncte, atunci se interpoleaz funcia i se consider fiierul f, de tip m, care conine funcia de interpolare, dup care se calculeaz integrala din aceast funcie. Pentru exemplu de mai sus se creeaz fiierul f cu funcia de integrat: % Fisierul cu functia de integrat numit f de tip m

168

Bazele Analizei Numerice

function g=f(x) g=sin(x.^2); % integrandul dup care se apeleaz cu secvena: quad('f',0.5,2.5,0.00001) i se va afia valoarea 0.3890. Am considerat eroarea relativ dintre doi pai consecutivi 105.

5.2. Formule Gauss


Aa cum am vzut n Teorema 1, pentru orice n noduri distincte x1, ..., xn , exist n constante A1, ..., An , astfel nct formula
b a

w( x) f ( x)dx = A1 f ( x1 ) + A2 f ( x 2 ) + ... + An f ( x n ) + R( f )

(1)

este exact pentru orice polinom de grad cel mult (n1). n anumite cazuri, aceast formul este exact i pentru polinoame de grad mai mare. De exemplu, formula Simpson, care corespunde la 3 noduri echidistante, este exact pentru polinoame de grad cel mult 3. n cele ce urmeaz vom stabili care este gradul maxim de exactitate al formulei (1). Vom arta c pentru n noduri, gradul maxim de exactitate este (2n1) i aceast se ntmpl pentru formula Gauss, cnd nodurile sunt rdcinile unor polinoame ortogonale. De acum nainte vom presupune c 0 w, w este continu pe [a,b] i w(x) = 0 numai pentru un numr finit de puncte din [a,b].
Definiia 1. Dac
b a

w( x) f ( x) g ( x)dx = 0

atunci spunem c funciile f i g sunt ortogonale pe [a, b] n raport cu ponderea w.


* Teorema 1. Pentru orice n N , exist un polinom Pn , de gradul n, care este ortogonal pe [a, b] n raport cu ponderea w, pe orice polinom de grad cel mult (n1). Acest polinom este unic n afara unui factor constant de multiplicare nenul. Demonstraie. Demonstraia este constructiv. Vom arta c se pot determina a0, a1, ..., an astfel nct

w( x) (a0 + a1 x + ... + a n x

)Q( x) dx = 0

pentru orice polinom Q de grad cel mult (n1).

Integrarea i derivarea numeric

169

Observm c dac f este ortogonal pe g atunci f este ortogonal pe g. Rezult c putem presupune an = 1. Observm de asemenea c dac f este ortogonal pe g1 i g2 , atunci f este ortogonal pe 1g1+2g2 , oricare ar fi constantele 1 i 2. Rezult c este suficient s determinm a0, a1, ..., an1 astfel nct pentru orice m{0, 1, ..., n1} s avem:
b

w( x)(a0 + a1 x + ... + a n1 x

n 1

+ x n x m dx = 0

(2)

Dac introducem notaia


b a k w( x) x dx = c k

(3)

atunci, dndui lui m pe rnd valorile 0, 1, ..., (n1) n relaia (2) obinem: a 0 c0 + a1c1 + ... + a n1c n 1 = c n a c + a c + ... + a c = c 0 1 1 2 n 1 n n +1 (4) M a 0 c n 1 + a1c n + ... + a n 1c 2n 2 = c 2n 1 Problema ar fi rezolvat dac am arta c detC 0, unde c1 L c n 1 c0 cn c1 c 2 L C = . M M M M c n 1 c n L c 2n 2 Presupunem prin absurd c detC = 0. Atunci exist 0, 1, ..., n1 nu toi nuli, astfel nct + 1c1 + ... + n1c n 1 =0 0 c0 c + n 1c n =0 0 1 + 1c 2 + ... (5) M 0 c n 1 + 1c n + ... + n1c 2n 2 = 0 . nlocuind expresiile coeficienilor ck dai de relaiile (3) n (5) rezult: b n 1 dx = 0 w(x) 0 + 1 x + ... + n 1 x a . (6) M b n 1 + 1 x n + ... + n1 x 2n 2 dx = 0 w(x) 0 x a Amplificnd pe rnd, prima relaie cu 0, a doua cu 1 , i aa mai departe, i adunndule, rezult

170

Bazele Analizei Numerice


b n 1 2 dx = 0 w( x) 0 + 1 x + ... + n1 x

(7)

w(x) [0+1x+ ... +n1xn1]2 = 0 pentru orice x[a,b]. Cum w se anuleaz numai ntr un numr finit de puncte din [a,b], rezult 0+1x+ ...+n1xn1=0. Am ajuns astfel la o contradicie. Aadar, detC 0 deci sistemul (4) admite soluie unic. * * * Dac notm cu a 0 , a1 , ..., a n 1 soluia sistemului (4), atunci
* * * * n 1 Pn ( x) = a 0 + a1 x + ... + a n + xn 1 x

Din (7) rezult:

i cu aceasta teorema este demonstrat. Polinoamele ortogonale ponderea w i de intervalul [a,b]. Intervalul [1,1] [1,1] [1,1] Ponderea w(x)=1 1 w(x)= 1 x2 w(x)= 1 x 2 w(x)= e x w(x)=ex

{ Pn* }

au diferite denumiri n funcie de

* Numele polinomului Pn Polinomul Legendre Polinomul Cebev de spea I

Polinomul Cebev de spea II Polinomul Hermite Polinomul Laguerre

( , )

[0, )
[1,1]

w(x)=(1x) (1+x) , , >1

Polinomul Jacobi

{ }
* Pn

n continuare vom exemplifica cum se pot construi polinoamele ortogonale cu ajutorul Teoremei 1. Fie [a,b] = [1,1] i w(x)=1. 2 1 pentru k par k +1 1 x k + 1 k = c k = x dx = (8) k +1 1 1 pentru k impar 0 S construim de exemplu polinomul Legendre de gradul 3. Sistemul (4)

devine:

Integrarea i derivarea numeric

171

c 0 a 0 + c1a1 + c 2 a 2 = c3 c1a 0 + c 21a1 + c3 a 2 = c 4 c a + c a + c a = c 3 1 4 2 5 2 0 nlocuind (8) n (9) rezult 2 a 0 + 2 a1 3 2a 0 3 care admite soluia: a0 = a2 = 0 ; a1 =

(9)

2 a2 3 2 a2 5

=0 = 2 5

=0

3 3 * ( x) = x 3 x . . Aadar, P3 5 5 Primele ase polinoame Legendre sunt: 1 6 3 3 10 15 x 1 ; x ; x2 ; x3 x ; x4 x2 + ; x5 x3 + 3 7 35 5 9 63 1 . Fie [a,b] = [1,1] i w(x)= 2 1 x 1 1 1 x 1 c0 = dx = arcsin x 1 = ; c1 = dx = 0 . 1 1 x 2 1 1 x 2
Pentru calculul coeficienilor c k =
1

xk 1 x2

dx , facem schimbarea de

variabil x = sin t i obinem


c k = sin k xdx =

k 1 k 1 2 k 2 ck 2 . xdx = sin k k
2

Rezult ck = 0 pentru orice k impar i 5 3 3 c2 = ; c 4 = ; c 6 = etc. 6 4 2 4 2 2 * S determinm polinomul Cebev de spea I, T3 . Sistemul (4) devine a 0 + a1 2 a + 0 2

a2

=0 = 3 8

a2

=0

172

Bazele Analizei Numerice

3 3 * = x3 x . care admite soluia: a0 = a2 = 0, a1 = . Aadar T3 4 4 n Capitolul IV, 3 am artat c polinomul Cebev de gradul trei este: T3(x)=4x33x. Dup cum am precizat n Teorema 1, polinomul ortogonal se determin n afara unui factor constant de multiplicare. * * i n general Tn=2n1 Tn , nN. Observm c avem T3 = 4 T3
* Teorema 2. Fie Pn un polinom de gradul n care este ortogonal pe intervalul [a,b] n raport cu ponderea w, pe orice polinom de grad mai mic ca n. Atunci * zerourile polinomului Pn sunt reale, simple i aparin intervalului [a, b]. Demonstraie. * Fie xi , i = 1, k , zerourile polinomului Pn i fie mi ordinul de multiplicitate al zeroului xi. Rezult

* Pn ( x) = ( x x1 ) m1 ... ( x x k ) mk , unde m1+ m2+...+ mk = n. Presupunem c numerotarea zerourilor sa fcut astfel nct x1, ..., xl , l k sunt zerouri reale, aparin intervalului [a, b] i au ordinele de multiplicitate impare. Dac l = n , teorema este demonstrat. S presupunem c l < n . Considerm atunci polinomul Ql(x)=(xx1)(xx2)...(xxl). * (Dac l = 0, atunci alegem Q0 = 1). Rezult c polinomul produs Pn ( x )Ql ( x ) pstreaz semn constant pe [a,b], deci
b

w( x) Pn ( x)Ql ( x)dx 0 ,

* ceea ce contrazice faptul c Pn este ortogonal pe Q l.

Prin formul de cuadratur Gauss se nelege orice formul


b a

w( x) f ( x)dx = A1 f ( x1 ) + A2 f ( x 2 ) + ... + An f ( x n ) + R( f ) ,

(1)

* unde nodurile x1, x2, ..., xn sunt zerourile polinomului Pn care este ortogonal pe [a, b], n raport cu ponderea w , pe orice plinom de grad mai mic ca n. Vom avea astfel formule de cuadratur de tip GaussLegendre, GaussCebev, GaussHermite etc.

Teorema 3. Orice formul de cuadratur de tip Gauss are gradul de exactitate 2n1.

Integrarea i derivarea numeric

173

Demonstraie. Din Teorema 1 din introducerea n Capitolul V , tim c formula (1) este exact pentru polinoame de grad mai mic ca n. Fie Qm un polinom de gradul m, unde m{ n, n+1, ..., (2n1) }. Din teorema mpririi avem * Qm ( x ) = Qm n ( x ) Pn ( x) + Rn 1 ( x ) ,

unde Rn1 este un polinom de gradul n1. Fie xk, k = 1, n , zerourile polinomului
* . Evident, rezult Pn

Qm(xk) = Rn1(xk), k = 1, n . n continuare avem:


b b

(10)
*
b

w( x)Qm ( x)dx = w( x) Pn ( x)Qmn ( x)dx + w( x) Rn1 ( x)dx .


a a
* Pn

Deoarece

este ortogonal pe Qmn rezult:


b a

w( x)Qm ( x)dx = w( x) Rn1 ( x)dx .


a

innd seama c formula (1) este exact pentru Rn1 obinem


b a

w( x)Qm ( x)dx = A1 Rn1 ( x1 ) + ... + An Rn1 ( x n ) .


b

n sfrit, innd seama i de (10) rezult


a

w( x)Qm ( x)dx = A1Qm ( x1 ) + ... + An Qm ( x n ) ,

deci formula (1) este exact pentru orice polinom de grad mai mic ca 2n. * 2 ) , atunci g este un polinom de Pe de alt parte dac notm cu g = ( Pn grad 2n i restul

R( g ) = w( x) g ( x)dx Ai g ( xi ) = w( x) g ( x)dx > 0 .


a i =1 a

Aadar, formula (1) nu este exact pentru acestei formule este 2n1.

g, deci gradul de precizie al

Observaia 1. Orice formul de cuadratur care are gradul de precizie (2n1) este o formul Gauss. ntradevr, considerm formula
b a

w( x) f ( x)dx = A1 f ( z1 ) + A2 f ( z 2 ) + ... + An f ( z n ) + R( f )

(11)

cu gradul de exactitate (2n1). Notm cu Un(x)=(xz1)...(x zn).

174

Bazele Analizei Numerice

Dac Q este un polinom de grad mai mic ca n, atunci polinomul produs UnQ , are gradul cel mult 2n1 i formula (11) este exact pentru acest polinom. Rezult
b a

w( x)U n ( x)Q( x)dx = AiU n ( z i )Q( z i ) = 0 .


i =1

Rezult c Un este un polinom de gradul n, care este ortogonal, n raport cu ponderea w, pe orice polinom de grad cel mult (n1) . Din Teorema 1 * * rezult c Un = c Pn i deci c z1, ..., zn sunt zerourile polinomului Pn . Aadar, formula (11) este o formul Gauss.
Observaia 2. Coeficienii Ak din formula Gauss sunt pozitivi. * ntradevr, fie xk, k = 1, n , zerourile polinomului Pn , i fie

Qj(x) =

i =1 i j

(x x j ) 2 .

Evident, gradQj = 2n2 i Qj(xi) = 0 dac ij. Deoarece Qj 0 i formula (1) este exact pentru Qj rezult

0 < w( x)Q j ( x)dx = Ai Q j ( xi ) = A j Q j ( x j ) ,


a i =1

deci Aj > 0. n particular, obinem


b

Aj =

w( x)Q j ( x)dx
Q j (x j ) , j=1,n .
(12)

Formula (12) permite calculul coeficienilor din formula Gauss.


* i fie Ai( n ) , i = 1, n , Teorema 4. Fie xi( n ) , i=1,n , zerourile polinomului Pn coeficienii din formula Gauss corespunztoare.

Dac f : [a,b] R este continu i I n = Ai( n ) f ( xi( n) ) , atunci


i =1

lim I n = w( x) f ( x)dx .
a

Demonstraie. Din teorema Weierstrass (Capitolul IV, Teorema 4) rezult c pentru orice > 0 exist un polinom P astfel nct f ( x) P ( x) < pentru orice x[a, b] .

Fie n > grad P . Atunci formula Gauss este exact pentru P i avem:

Integrarea i derivarea numeric


b b n

175

( n) ( n) w( x) f ( x) dx I n = w( x) f ( x) dx Ai f ( xi )
a i =1 b

w( x) f ( x) P ( x) dx + Ai( n) P ( xi( n) ) f ( xi( n) ) <


a i =1 b n (n) < w( x) dx + Ai = 2 w( x)dx . i =1 a a

a b

( n) (n) ( n) w( x) [ f ( x) P ( x)] dx + Ai P ( xi ) f ( xi )
i =1 n

Am folosit faptul c Aadar,

w( x)dx = Ai
i =1

( n)

lim I n = w( x) f ( x)dx
a

i cu aceasta teorema este demonstrat.


Exemplu. Formula GaussLegendre cu trei noduri Polinomul Legendre de gradul trei este 3 * P3 ( x) = x 3 x 5 i are zerourile 3 3 x1 = ; x 2 = 0; x3 = . 5 5 Vom avea 1 3 3 f ( x)dx = A1 f ( ) + A2 f (0) + A3 f ( ) + R( f ) . 5 5 1

(13)

Punnd condiia ca formula (13) s fie exact pentru 1, x i x2 obinem sistemul: A1 + A2 + A3 = 2 3 3 A0 + A3 = 0 5 5 3A +3A =2 0 3 5 3 5 5 8 care admite soluia: A0 = A3 = i A1 = . 9 9

176

Bazele Analizei Numerice

Formula GaussLegendre de ordinul trei este 1 5 3 8 5 3 f ( x)dx = f ( ) + f (0) + f ( ) + R( f ) . 9 5 9 9 5 1

5.3. Integrarea numeric a integralelor duble

Fie f : D R2 R o funcie continu, unde D=[ a,b ] [c,d] este un dreptunghi. Atunci:
f ( x, y ) dy dx f ( x, y )dxdy =
D a c bd

(1)

Pentru fiecare integral simpl putem aplica o formul de integrare numeric. De exemplu, dac aplicm formula trapezelor obinem
bd

f ( x, y )dxdy
D

c [ f ( x, c) + f ( x, d )]dx = 2 a

ba d c [ f (a, c) + f (a, d ) + f (b, c) + f (b, d )] = 2 2 Aadar, formula trapezelor pentru integrala (1) este
f ( x, y)dxdy =
D

(b a)(d c) [ f (a, c) + f (a, d ) + f (b, c) + f (b, d )] + R( f ) . 4

(2)

n mod asemntor, formula Simpson va fi


(b a)(d c) [ f (a, c) + f (a, d ) + f (b, c) + f (b, d ) + 36 D ~ 4[ f (a, y1 ) + f (b, y1 ) + f ( x1 , c) + f ( x1 , d ) + 16 f ( x1 , y1 )] + R ( f )

f ( x, y )dxdy =

(3)

unde x1 =

c+d a+b , y1 = . 2 2

Pentru o mai bun aproximare a integralei se folosesc formulele repetate. Dac domeniul de integrare nu este un dreptunghi, atunci se construiete un dreptunghi D* , cu laturile paralele cu axele de coordonate i care include dreptunghiul D . Considerm funcia auxiliar

Integrarea i derivarea numeric

177

f ( x, y ) f * ( x, y ) = 0
Integrala pe D se va aproxima cu
y
*

dac ( x,y) D dac ( x,y) D*\D

f ( x, y )dxdy f ( x, y )dxdy ,
D D*

iar ultima integral se calculeaz cu una din formule (2) sau (3).
O

D D* x

5.4. Diferene divizate. Polinomul de interpolare al lui Newton

Fie

Pn ( x; x 0 ,..., x n )

polinomul Lagrange care interpoleaz funcia

f : [a , b] R n nodurile x 0 ,..., x n i fie Q (x ) = Pn ( x; x 0 ,..., x n 1 , x n ) Pn 1 (x; x 0 ,..., x n 1 )

(1)

Evident, Q este un polinom de gradul n, care se anuleaz n nodurle x 0 , x1 , ... ,


x n 1 , deoarece Q(xi) = f(xi) f(xi) = 0, pentru orice i = 0, n 1 . Rezult c

polinomul Q este de forma: Q(x) = a(xx0) ... (xxn) . Coeficientul Aadar, avem: Q(x) = (xx0) ... (xxn) f [ x0, x1, ..., xn] (3) Din (1) rezult, pe de o parte, c f[x0, x1, ..., xn] este coeficientul lui xn n polinomul lui Lagrange Pn(x; x0, x1, ... , xn), iar pe de alt parte c avem relaia: Pn(x; x0, x1, ..., xn) = Pn-1(x; x0, x1, ..., xn-1) + +(xx0)...(xxn1) f[ x0, ... , xn] (4) a se numete diferena divizat de ordinul nodurilor x0, x1, ... , xn i funciei f i se noteaz cu f[x0, x1, ..., xn] . (2) n corespunztoare

178

Bazele Analizei Numerice

Particularizndu-l pe n obinem:
P0(x;x0) = f(x0) P1(x;x0, x1) = f(x0) + (xx0) f[ x0, x1] P2(x;x0, x1, x2) = f(x0) + (xx0) f[ x0, x1]+ (xx0) (xx1) f[ x0, x1, x2]

......................
Pn(x) = f(x0) + (xx0) f[ x0, x1] +...+ (xx0)...(xxn1) f[ x0, x1, ..., xn] interpolare al lui Newton.

(5).

Forma (5) a polinomului de interpolare poart numele de polinomul de n continuare prezentm principalele proprieti ale diferenelor divizate. 1) Diferena divizat de ordinul n este invariant la permutarea nodurilor, adic:
f[ x0, x1, ..., xn]= f [ xi0 , xi1 , ..., xin ] .

ntr-adervr tim c polinomul de interpolare al lui Lagrange are forma:

Pn ( x; x0 ,..., x n ) =

(x x1 ) ... (x x n ) f (x ) + + (x0 x1 ) ... (x0 xn ) 0 (x x0 ) ... (x x n1 ) + f (x ) (x n x1 ) ... (x n xn1 ) n


f ( x0 ) f ( xn ) + ... + ( x0 x1 )...(x0 xn ) ( xn x0 )...(xn xn1 )

(6)

Egalnd coeficientul lui xn din (3) i (6) obinem:

f [x0 , x1 ,..., xn ] =

(7)

Cum expresia din membrul drept al relaiei (7) este simetric n raport cu cu nodurile x0, x1, ..., xn , rezult c diferena divizat dordinul n , f[ x0, x1, ..., xn] este invariant n raport cu permutarea nodurilor. f [x1 ,..., x n ] f [x0 ,..., x n1 ] 2) f [x0 ,..., x n ] = x n x0 Pentru a demonstra aceast proprietate observm pentru nceput c polinomul lui Lagrange verific urmtoarea relaie: ( x x0 ) Pn1 ( x; x1 ,...x n ) ( x x n ) Pn1 ( x; x 0 , x1 ,...x n1 ) Pn ( x; x0 ,..., x n ) = x n x0 (8) ntr-adevr, dac notm cu R( x) membrul drept al relaiei (6) obinem: (x x n ) R( x0 ) = 0 f ( x0 ) = f ( x0 ) x n x0

Integrarea i derivarea numeric

179

R( x n ) =

(x n x0 )
x n x0

f ( xn ) = f ( xn )

Aadar, R ( xi ) = f ( xi ), i = 0, n, deci R ( x) Pn (x; x 0 ,..., x n ) conform unicitii polinomului de interpolare Lagrange. Egalnd coeficientul lui xn din membrul stng al relaiei (8) cu coeficientul lui xn din membrul drept al acestei relaii f [x1 ,..., x n ] f [x0 ,..., x n1 ] obinem f [x0 ,..., x n ] = . x n x0 3) Dac f este de clas C n+1 , atunci pentru orice t [a, b] ,
t xi

Pentru nodurile xi , i = 1, n 1 avem ( x x 0 ) f ( xi ) ( xi x n ) f ( xi ) R ( xi ) = i = f ( xi ) x n x0

, i = 0, n

f ( n+1) ( t ) , unde t [a, b ] . (n + 1)! ntr-adevr, fie Pn +1 ( x ) = Pn +1 ( x; x 0 ,..., x n , t ) polinomul Lagrange interpoleaz funcia f n nodurile x 0 ,..., x n , t . Atunci avem Pn+1(x) = Pn(x) + (xx0) ... (xxn) f[ x0, x1, ..., xn, t]. Deoarece Pn +1 (t ) = f (t ) rezult c eroarea n punctul t este E(f;t) = f(t) Pn(t) = (tx0) ... (txn) f[ x0, x1, ..., xn, t]. (9)

avem f [x0 , x1 ,..., x n , t ] =

care

Pe de alt parte din Teorema 2, 4.1 tiim c dac f este de clas C n+1 , atunci exist t [a, b ] astfel nct
f ( n+1) ( t ) E( f ; t) = (t x0 )...(t x n ) (n + 1)!

(10)

Din (9) i (10) rezult


f [x0 , x1 ,..., x n , t ] = f ( n+1) ( t ) , unde t [a, b]. (n + 1)!

(11)

4) Teorema 1 (HermiteGennochi). Fie x0, x1,..., xn , (n+1) puncte distincte din


intervalul ( a, b) i fie fC(n)(a,b). Atunci:
f [x 0 , x1 ,..., x n ] = ... f ( n ) (t 0 x 0 + t1 x1 + ... + t n x n )dt1 ...dt n
Tn

180

Bazele Analizei Numerice


n Tn = (t1 ,..., t n ) R n t i 0, i=1,n, t i 1 , iar i=1

unde

t0 = 1 ti .
i =1

Demonstraie. Fie T1 = [0, 1] iar t0 = 1t1.


1

f (t 0 x0 + t1 x1 )dt1 = f [x0 + t1 ( x1 x0 )]dt1 =


0

1 1 f [x0 + t1 ( x1 x0 )] 0 = x1 x0

f ( x1 ) f ( x0 ) = f [x0 , x1 ] x1 x0

T2 ={ (t1,t2)t1+t21, t10, t20 }, iar t0 = 1t1t2.


f " ( x + t ( x x ) + t ( x x ) )dt dt = " ( ) f x t x t x t dt dt + + = 0 0 1 1 2 2 1 2 0 1 1 0 2 2 0 2 1 0 0 T2
1 1 1 t1 = dt1 = x x f (x0 + t1 ( x1 x0 ) + t 2 ( x 2 x0 ) ) 0 2 0 0 1 1 1 f (x 2 + t1 ( x1 x 2 )dt1 f ( x0 + t1 ( x1 x0 )dt1 = = x 2 x0 0 0 1 ( f [x1 , x2 ] f [x0 , x1 ] ) = f [x0 , x1 , x2 ] = x2 x0 1 1 t1

t2 (0,1) T2 O

n continuare demonstraia se face prin inducie matematic. Trecerea de la Tn la Tn+1 este asemntoare cu

(1,0)

t1 trecerea de la T1 la T2 .

Corolarul 1. Dac f Cn+2(a,b) . Atunci exist

d f [x0 ,..., x n , x ] = f [x0 ,..., x n , x, x ] . dx


Demonstraie. Din Teorema 1 rezult
f [x 0 , x1 ,..., x n , x ] = ... f ( n +1) (t 0 x 0 + t1 x1 + ... + +t n +1 x)dt1 ...dt n dt n +1 (12)
Tn +1

Integrarea i derivarea numeric

181

Membrul drept este o integral cu parametru i anume cu parametrul Deoarece f exist


(n+1) 1

x.

este de clas C rezult c aceast integral este derivabil, deci c

d f [x0 ,..., x n , x ] . Mai departe, innd seama de (7) i (9) rezult: dx


f [x 0 ,..., x n , x + h ] f [x 0 ,..., x n , x ] d f [x 0 ,..., x n , x ] = lim = dx h h 0 f [x 0 ,..., x n , x + h ] f [x, x 0 ,..., x n ] = lim = h h 0 = lim f [x, x 0 ,..., x n , x + h ] = f [x, x 0 ,..., x n , x ] =
h 0

= f [x 0 ,..., x n , x, x ]

5.5. Derivarea numeric

Aproximarea numeric a derivatelor se folosete de regul n dou situaii. Prima situaie se refer la calculul derivatelor unei funcii dat printrun tabel de valori. A doua situaie se refer la aproximarea derivatelor n cadrul metodelor numerice de rezolvare a ecuaiilor difereniale sau cu derivate pariale. O cale fireasc de abordare a derivrii numerice, este aceea de a aproxima derivata funciei f prin derivata polinomului Lagrange Pn ( x; x 0 ,..., x n ) care f n nodurile x0, x1, ..., xn. n continuare notm derivata

interpoleaz funcia

numeric a funciei f cu Dh f i o definim prin: ( x; x 0 ,..., x n ) . Dh f ( x) def Pn Aadar folosim aproximarea f ( x ) Dh f ( x ) . Pentru n = 1 avem P1 (x; x 0 , x1 ) = f ( x 0 ) + (x x 0 ) f [x 0 , x1 ] deci (1)

f ( x) P1(x; x0 , x1 ) = f [x0 , x1 ] =

f ( x1 ) f (x0 ) f ( x1 ) f ( x0 ) = , x x1 x0 h

Aadar, pentru dou noduri avem aproximarea:

182

Bazele Analizei Numerice

f ( x0 )

f ( x1 ) f (x0 ) h

(2)

Pentru n = 2 avem
P2 (x; x 0 , x1 , x 2 ) = f ( x 0 ) + (x x 0 ) f [x 0 , x1 ] + (x x 0 )(x x1 ) f [x 0 , x1 , x 2 ] deci (x; x0 , x1 , x2 ) = f [x0 , x1 ] + [2 x (x0 + x1 )] f [x0 , x1 , x2 ] , x P2

Dac presupunem n plus c nodurile sunt echidistante rezult: (x 0 ; x 0 , x1 , x 2 ) = f (x 0 , x1 ) + (x 0 x1 ) f [x 0 , x1 , x 2 ] = P2 f (x1 ) f (x 0 ) f [x1 , x 2 ] f [x 0 , x1 ] = (x1 x 0 ) = x1 x 0 x 2 x0 f (x 2 ) f (x1 ) f (x1 ) f (x 0 ) f (x1 ) f (x 0 ) h h = = h h 2h 3 f (x 0 ) + 4 f (x1 ) f (x 2 ) = 2h Aadar, pentru trei noduri echidistante avem aproximarea:

f ( x0 )

3 f (x0 ) + 4 f (x1 ) f (x 2 ) 2h

(3)

n continuare ne propunem s evalum eroarea la derivarea numeric. Dac notm cu Un(x) = (xx0) ... (xxn) , atunci din relaiile (10) i (11) de la 5.4 rezult E(f;x)=f(x)Pn(x; x0 , ..., xn) = Un(x)f [x0 , ..., xn, x]. innd seama acum i de Corolarul 1 obinem:
f (x)Dhf(x) = Un'(x) f[x0, ..., xn, x] + Un(x) f[x0, ..., xn, x, x].

Aplicnd din nou relaia (10) din 5.4 rezult ( x) f ( x) Dh f ( x) = U n

~ f ( n +1) ( x ) f ( n + 2) ( x ) + U n ( x) (n + 2)! (n + 1)!

(4)

( x ) = 2 x (x 0 + x1 ) . Aadar n acest Pentru n = 1 , U 1 ( x ) = (x x 0 )(x x1 ) i U 1

caz
(x0 ) f ( x 0 ) D h f ( x 0 ) = U 1 f " ( x0 ) 2! +0 ~ f ( x0 ) 3! = h f " ( x0 ) 2

(5)

Integrarea i derivarea numeric

183

n concluzie, n cazul a dou noduri avem f ( x0 ) dat de relaia

f ( x1 ) f (x0 ) i eroarea este h

f ( x0 )

f ( x1 ) f (x0 ) h = f " ( x0 ) 2 h

(6)

unde x0 ( x0 , x1 ) . n cazul a 3 noduri echidistante n = 2 avem:

f ( x0 ; x0 , x1 , x 2 ) = f ( x0 ) P2

f ( x0 ) 3!

( x0 ) + U2

~ f iv ( x0 ) 4!

U 2 ( x0 )

cum U 2 ( x ) = (x x 0 )(x x1 )(x x 2 ) rezult pe de o parte c U 2 (x 0 ) = 0 iar pe


( x) = (x 0 x1 )(x 0 x 2 ) = 2h 2 . de alt parte c U 2

Aadar eroarea de aproximare a derivatei va fi:

f ( x0 ; x 0 , x1 , x 2 ) = f ( x0 ) P2

h2 f ( x0 ), unde x 0 ( x 0 , x 2 ) . 3

n concluzie, n cazul a 3 noduri echidistante derivata se aproximeaz cu expresia:

f ( x0 )

3 f (x0 ) + 4 f (x1 ) f (x 2 ) = Dh f ( x 0 ) 2h
h2 f ( x0 ) 3
(7)

iar eroarea care se face este f ( x0 ) Dh f (x0 ) =

n sfrit s vedem cum se poate aproxima derivata de ordinul 2. n cazul a 3 noduri echidistante avem
( x0 ; x0 , x1 , x 2 ) = 2 f [x 0 , x1 , x 2 ] = f ( x 0 ) = P2 = f ( x 2 ) 2 f ( x1 ) + f ( x 0 ) h
2

(8)

Se poate arta c eroarea n acest caz este

( x0 ) = f " ( x0 ) P2

h 2 IV f ( x0 ) , unde x0 ( x0 , x2 ) 12

(9)

Derivarea numeric n MATLAB.

184

Bazele Analizei Numerice

MATLAB permite aproximarea derivatei numerice a unei funcii folosind diferenele divizate, prin intermediul funciei diff.
Exemplu 1.

S se aproximeze derivata funciei f(x) = ln(x4+x2+1) pe intervalul [0.5, 2.5] n puncte echidistante (h = 0.1) folosind MATLAB. Secvena care realizez aceast aproximare este: % Calculul derivatei numerice x = 0.5:0.1:2.5; % punctele in care se face aproximarea f(x) = log(x.^4+x.^2+1); % functia a carei derivata se doreste disp('Valorile derivatei'); df = diff(log(x.^4+x.^2+1))./diff(x) Se va afisa: Valorile derivatei 1.2657 2.0060 1.5293 1.4967 1.9612 1.4809 1.6947 1.9100 1.8499 1.8552 1.9597 1.7989 2.0270 1.7423 2.0579 1.6866 2.0600 1.6323 2.0406 1.5798

Pentru calculul derivatei folosind diferenele centrate se poate scrie secvena MATLAB: % Calculul derivatei numerice folosind diferentele divizate x=0.55:0.1:2.5; % punctele in care se face aproximare g=log(x. ^4+x. ^2+1; % functia a carei derivata se doreste dg=g(3:length(g))g(1:length(g)2); dx=x(3:length(x))x(1:length(x)2); disp(Valorile derivatei); dy=dg./dx % derivata in punctele x=0.6 , 0.7 pana la 2.4 Se afieaz rezultatele: Valorile derivatei

Integrarea i derivarea numeric

185

1.3812 1.9836 1.5051

1.5957 1.99356

1.7723 1.8826

1.9048 1.8270

1.9934 1.7706

2.0424 1.7145

2.0589 1.6595

2.0503 1.6060

2.0233 1.5545

Pentru a folosi polinomul de interpolare Newton pentru calculul derivatelor de ordinul nti i doi pentru funcia de mai sus, se poate scrie secvena MATLAB: % Calculul derivatelor de ordinul intai si doi % folosind polinomul de interpolare Newton in x(1) x=0.5.0.1:1.3; h=x(2)x(1); y=log(x.^4+x.^2+1); % functia ale carei derivate se aproximative se calculeaza d1y=diff(y); d2(y)=diff(d2y); d3y=diff(d2y); d4(y)=diff(d3y); d1f=(1/h)*(d1y(1)d2y(1)/2+d3y(1)/3d4y(1)/4), d2f=(1/h^2)*(d2y(1)d3y(1)+(11/12)*d4y(1)); disp(Derivata de ordinul intai in x(1)); disp(d1f); disp(Derivata de ordinul doi in x(1)); disp(d2f); Se afieaz rezultatele: Derivata de ordinul intai in x(1) 1.1416 Derivata de ordinul doi in x(1) 2.5519
Exemplul 2. Fie funcia dat prin tabelul de valori:

xi 0 2 f(xi) 1 5 S se calculeze f (0) folosind derivata polinomului de interpolare al lui Lagrange. Aproximnd funcia cu polinomul de interpolare al lui Lagrange, conform (2) rezult f ( x1 ) f ( x0 ) 5 1 f ( x0 ) , f ( x0 ) =2 . h 2

186

Bazele Analizei Numerice

Exemplul 3. Fie funcia dat prin tabelul de valori: xi 2 4 6 f(xi) 3 11 27

S se calculeze f ( 2) i f ( 2) . Aproximnd funcia cu polinomul de interpolare al lui Lagrange, conform (3) rezult 3 f (x0 ) + 4 f (x1 ) f (x2 ) 3 3 + 4 11 27 f ( x0 ) , f (2) = =2 . 2h 22 De asemenea conform (8)
f ( x0 ) = f ( x2 ) 2 f ( x1 ) + f ( x0 ) h
2

f (2) =

27 2 11 + 3 =2. 4

Integrarea i derivarea numeric

187

Exerciii
Folosind metoda trapezelor s se calculeze valoarea aproximativ a urmtoarelor integrale:

1.

sin x x

dx , considernd n = 5 subintervale egale.

12

R.

h=

12

, xi =

12

+i

12

, i = 1,4 , a =

12

, b=

, I=1.003 .

2.

cos x x

dx , considernd n = 4 subintervale egale.

10

R. 3. R.

h=
3 0

10

, xi =

10

+i

10

, i = 1,3 , a =

10

, b=

, I=0.86398 .

x2 2 dx

, considernd n = 4 subintervale egale.

3 = 0.75 , xi = 3 i , i = 1,3 , a = 0 , b = 3 , I = 2.24845 . 4 Pentru fiecare din cele trei exerciii de mai sus s se calculeze valoarea aproximativ a integralei dublnd valoarea lui n . h=

S se calculeze valoarea aproximativ a urmtoarelor integrale folosind metoda lui Simpson, considernd m , numrul de subintervale egale, specificat n fiecare caz n parte:

5.

cos x x

dx

(m = 8 )

10

R.

n=4, h=

20 I = 0.8452 .

, xi =

10

+i

20

, i = 1,7 , a =

10

, b=

188

Bazele Analizei Numerice

6.

sin x x

dx

(m = 8 )

12

R.

n=4, h=
x2 2 dx

5 +i , i = 1,7 , a = , xi = , b= , 12 96 96 12 2 I = 1.00966 .
, (m = 8 )

7. R. 8.

3 0

3 3 = 0.375 , xi = i , i = 1,7 , a = 0 , b = 3 , I = 2.24991 . 8 8 Fie funcia dat prin tabelul de valori: xi 0 2 h=


f(xi) -1 3

S se calculeze f (0) folosind derivata polinomului de interpolare al lui Lagrange. R. 9.


f (0) = 2

Fie funcia dat prin tabelul de valori: xi 0 1 f(xi) S se calculeze


f (0)

2 15 folosind derivata polinomului de

1 i

4
f (0)

interpolare al lui Lagrange. R. 10.


f (0) = 1 , f (0) = 8

Fie funcia dat prin tabelul de valori: xi 0 2 f(xi) S se calculeze


f (0)

4 65 folosind derivata polinomului de

1 i

9
f (0)

interpolare al lui . R.
f (0) = 8 , f (0) = 12

Integrarea i derivarea numeric

189

11.

Folosind formula GaussLegendre de ordinul 4, s se calculeze valoarea


3 0

aproximativ a integralei R.

x2 2 dx

.
b

n general pentru calculul aproximativ al integralelor f ( x)dx se face


a

schimbarea de variabil

ba b+a t+ , pentru a avea limitele de integrare 2 2 1 i 1 i astfel se obine formula b ba n (2) Ai f ( xi ) . f ( x)dx = 2 i =1 a x=
Se ajunge la integrala
3 2 1
1 3t +3 1 e 2 2
2

dt

creia i se poate aplica formula

4. Polinomul Legendre de gradul 4 este GaussLegendre de ordinul 6 3 P4 ( x) = x 4 x 2 + , are rdcinile x1 =0.8611 , x2 = 0.34 , x3 = 0.34 , 7 35 x4 = 0.8611 . Coeficienii Ai formula GaussLegendre de ordinul 4 sunt: A1 = 0.34785 = A4 , A2 = 0.65215 = A3 . I = 1.25018 . 12. Folosind formula GaussLegendre de ordinul 5, s se calculeze valoarea aproximativ a integralei R.
2 0 2 cos x dx .

Se face schimbarea de variabil

x = t+1 , pentru a avea limitele de


1 1 2 cos(t + 1) dt

integrare 1 i 1 i astfel se ajunge la integrala

creia i se

poate aplica formula GaussLegendre de ordinul 5. Polinomul Legendre de gradul 10 15 x , are rdcinile 5 este P5 ( x) = x 5 x 3 + 9 63 x1 =0.90618 , x2 = 0.53847 , x3 = 0 , x4 = 0. 53847, x5 = 0.90618 . Coeficienii Ai formula GaussLegendre de ordinul 5 sunt: A1 = 0.23693 = A5 , A2 = 0.47863 = A4 , A3 = 0.56889 . I = 0.46123 . 13. S se determine valoarea aproximativ a integralei sin x 2 dx folosind
0 1

formula GaussLegendre de ordinul 3.

190

Bazele Analizei Numerice


1 2 sin(t + 1) dx i acesteia i se

R.

nlocuind x cu t+1 integrala devine

poate aplica formula GaussLegendre de ordinul 3. innd seama de Exemplul din Capitolul 5 2 se obine I=0.31028 . S se calculeze valoarea aproximativ a urmtoarelor integrale duble: 14.
D x2 + y2

)dxdy

, mulimea de integrare fiind precizat de

a) D = { (x,y)R2 | |x|0.5 , |y|1 } , b) D = { (x,y)R2 | x2+y24 , x0 , y0 } folosind formula trapezelor cu n = 4 subintervale egale pe axa Ox i m = 4 subintervale egale pe axa Oy. bd R. Pentru calculul integralei I = f ( x, y )dxdy = f ( x, y )dy dx unde D D a c = [a, b][c, d] se folosete formula trapezelor repetat hk { f (a, c) + f (a, d ) + f (b, c) + f (b, d ) + I= 4 m 1 n 1 n 1 m1 + 2 f ( a, y j ) + f (b, y j ) + f ( xi , c) + f ( xi , d ) + + j =1 i =1 i =1 j =1

+ 4 f ( xi , y j )
i =1 j =1

n 1m1

}
(1)

unde ba d c h= , k= , xi = a + ih , i = 1,n-1 , y j = c + jk , j = 1,m-1 n m a = 0.5 , b = 0.5 , c = 1 , d = 1 , h = 0.25 , k = 0.5 , I = 1.33754 a) Se trece la coordonate polare pentru a transforma sfertul de disc de raz b) 2 din cadranul nti ntrun dreptunghi x = cos 0, 2 , iar iacobianul este J = y = sin s [0, 2] i se aplic formula de mai sus integralei

Integrarea i derivarea numeric

191

2 2 2 2 2 I = e x + y dxdy = e d d D 00 i rezult I = 0.73332 . ln x 2 + y 2 15. dxdy , mulimea de integrare fiind precizat de 2 2 D x + y a) D = { (x,y)R2 | 1x2 , 0y2 } , b) D = { (x,y)R2 | 1x2+y24 , 0x , 0y } folosind formula trapezelor cu n = 2 subintervale egale pe axa Ox i m = 4 subintervale egale pe axa Oy. R. a) nlocuind n formula (1) ln x 2 + y 2 a = 1 , b = 2 , c = 0 , d = 2 , h = 0.5 = k i f ( x, y ) = x2 + y2 se obine I = 0.636 . b) Trecnd la coordonate polare se aplic formula (1) pentru 2 ln , f ( , ) = a=1, b=2, c=0, d= 2 i se obine I = 0.73976 .

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

191

6. Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale


6.1. Generaliti
Ecuaiile difereniale reprezint unul dintre cele mai importante instrumente matematice, necesar pentru nelegerea unor rezultate din mecanic, fizic, etc. n acest capitol prezentm metode numerice pentru rezolvarea problemei Cauchy pentru ecuaii difereniale. Fie D = [a, b] x J R2, f : D R i (x0, y0)D. Problema Cauchy pentru ecuaia diferenial y = f ( x, y ) , (1) const n determinarea unei soluii a ecuaiei (1) , adic a unei funcii derivabile y : I [a, b] R astfel ca pentru orice xI, (x, y(x))D i y = f ( x, y ( x)) , () x I care satisface condiia iniial (2) y(x0) = y0 . Dup cum este cunoscut, gsirea soluiei exacte a problemei (1)-(2) nu este posibil dect n anumite cazuri. De exemplu, determinarea soluiei exacte, prin tehnici clasice, a ecuaiei aparent simple y = x 2 + y 2 , y (0) = 1 , nu este posibil. Se justific astfel necesitatea recurgerii la metode aproximative pentru rezolvarea problemei Cauchy. Reamintim, pentru nceput, cteva rezultate privind existena, unicitatea i stabilitatea soluiei acestei probleme. Definiie. Funcia f : D R se numete lipschitzian n raport cu yJ, dac exist o constant L > 0 astfel ca pentru orice (x, y)D i (x, z)D are loc inegalitatea f ( x, y ) f ( x , z ) L y z . (3)

192

Bazele Analizei Numerice

Observaie. Dac

f exist i este mrginit pe D, atunci f este lipschitzian y

pe D. ntr-adevr, din Teorema lui Lagrange rezult f f ( x, y ) f ( x , z ) = ( x, c)( y z ), y pentru un anumit c ntre y i z, deci putem alege f ( x, y ) . L = max ( x, y )D y

(4)

n ce privete existena i unicitatea soluiei problemei (1)-(2), are loc urmtoarea teorem.
Teorema 1. Presupunem c sunt ndeplinite condiiile: (i) f este continu pe [a, b] n raport cu x ; (ii) f este lipschitzian pe D n raport cu y ; (iii) (x0, y0) este punct interior lui D. Atunci pentru un > 0 convenabil, exist o soluie unic pe I=[x0, x0+] problemei (1) - (2). Exemplul 1. Fie ecuaia y = 1 + sin( xy ) , D = [0,1] R . Deoarece

f = xcos xy , y

conform observaiei de mai sus, putem lua L = 1. Atunci pentru orice (x0, y0) cu 0 < x0 < 1 exist o soluie a problemei Cauchy pentru ecuaia dat pe un anumit interval [x0, x0+] [0, 1]. Dup cum se tie, soluia problemei (1)(2) se afl cu metoda aproximaiilor succesive. Fie y0(x) = y0,

y n ( x) = y 0 + f (t , y n1 (t ))dt , x I , n = 1, 2, ... .
x0

Atunci irul de funcii (yn)n este uniform convergent pe intervalul I i limita sa y = lim y n este soluie unic a problemei (1)-(2). Mai mult, are loc
n

y ( x) y n ( x) unde

MLn C n +1 LC e , (n + 1)!

(5)

M = sup f ( x, y 0 ) , C = max( a x 0 , b x 0 ) .
xI

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

193

Metoda aproximaiilor succesive (Picard) este o metod aproximativ de rezolvare a problemei Cauchy. Se aproximeaz soluia y(x) cu y n ( x) i se cunoate o evaluare a erorii.
Exemplul 2. Fie ecuaia y = y , y (0) = 1 , D = [ 1, 1] R . Atunci = 1. irul aproximaiilor succesive este:

M=1, L

y1 ( x) = 1 + 1 dt = 1 + x , y 2 ( x) = 1 + (1 + t )dt = 1 + x +
0 x

y 3 ( x) = 1 + (1 + t +
0

0 x

x2 , 2

t2 x x2 x3 )dt = 1 + + + 2 1! 2! 3! ,

Este clar c

............................................................ x x 2 x3 xn + + ... + . y n ( x) = 1 + + 1! 2! 3! n! y n y = ex, care este soluia exact a problemei.

Metoda aproximaiilor succesive are dezavantajul c presupune calculul unor integrale, lucru dificil de realizat. Din aceast cauz, aceast metod este mai puin folosit n practic, metoda avnd o importan deosebit, mai ales din punct de vedere teoretic. n ceea ce privete stabilitatea soluiei problemei (1)-(2), ne intereseaz comportamentul soluiei la modificri mici ale funciei f(x,y) i ale datei iniiale y0. Considerm, deci, problema perturbat y = f ( x, y ) + ( x ) , (6) y ( x0 ) = y 0 + , (7) cu aceleai ipoteze asupra funciei f ca n Teorema 1. Presupunem, n plus, c ( x) este continu pe [a, b]. Atunci problema (6)-(7) are soluie unic, notat y ( x; , ) .
Teorema 2. Presupunem satisfcute ipotezele Teoremei 1 i c funcia ( x) este continu pe [a, b]. Atunci problema (6)-(7) va avea soluie unic y ( x; , ) pe un interval [x0-, x0+] , > 0, uniform pentru toate perturbrile i ( x) ce satisfac: 0 , 0 ,

cu 0 suficient de mic. n plus, dac y(x) este soluia problemei neperturbate, atunci

194

Bazele Analizei Numerice

x x0

max y ( x) y ( x; , ) k ( + ) ,

(8)

cu k = 1 /(1 L) . Utiliznd acest rezultat, se poate afirma c problema (1)-(2) este corect pus sau stabil. Deci dac se fac mici modificri n ecuaia diferenial sau n data iniial, atunci soluia nu se modific semnificativ. Soluia y depinde continuu de datele problemei, anume funcia f i data iniial y0. Din punct de vedere fizic, semnificaia Teoremei 2 const n faptul c pentru fenomene fizice descrise de ecuaii difereniale, mici abateri sau erori n condiiile iniiale sau n nsi legea de evoluie, nu deformeaz prea puternic procesul. Rezultatul este important cu att mai mult cu ct asemenea perturbaii sau erori sunt ntotdeauna inevitabile. Se poate ntmpla ca o problem s fie stabil, dar prost condiionat n raport cu calculul numeric, dei asemenea situaii nu apar prea des n practic. Pentru a nelege mai bine cnd aceasta se poate produce, vom estima perturbrile soluiei y(x), datorate perturbrilor n problem. Vom simplifica discuia considernd numai perturbrile n data iniial y0 ; perturbrile ( x) intervin n rspunsul final conform (8). Perturbm deci, valoarea iniial y0 ca n (7). Fie y(x;) soluia perturbat. Atunci y ( x; ) = f ( x, y ( x; )), x 0 x x 0 + , y ( x0 ; ) = y 0 + Dac y(x) este soluia problemei neperturbate (1)-(2) i z(x) = y(x;) y(x) este eroarea, atunci f ( x, y ( x)) z ( x; ) = f ( x, y ( x; )) f ( x, y ( x)) z ( x; ) , (9) y z ( x0 ; ) = . Aproximarea (9) este valabil cnd y(x; ) este suficient de aproape de y(x) , ceea ce se ntmpl pentru valori mici ale lui i intervale mici [x0-, x0+]. Ecuaia diferenial aproximativ (9) se poate integra uor. Se obine x f (t , y (t )) z ( x; ) exp dt . t x 0 Dac derivata parial satisface f (t , y (t )) 0, x 0 t , y

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

195

atunci z ( x; ) rmne mrginit de cnd x crete. n acest caz, se spune c problema Cauchy este bine condiionat. Ca exemplu de comportare opus, considerm problema y = y + g ( x) , y (0) = y 0 , (10) f = , putem calcula exact z ( x; ) = e x . cu > 0 . Cum y Atunci perturbarea lui y(x) se mrete cnd x crete.
Exemplul 3. Ecuaia diferenial y = 100 y 101e x , y (0) = 1,

(11)

are soluia y ( x; ) = e x + e100 x , care se deprteaz rapid de soluia exact. Spunem c problema (11) este prost condiionat. Revenim acum la problema (1)-(2). Din considerente practice, se presupune c x0 = a , adic se nlocuiete condiia (2) cu y(a) = y0 . (12) Aceast presupunere nu este restrictiv, pentru c dac am gsit un algoritm care rezolv problema (1)-(12), atunci cu acest algoritm putem rezolva i problema (1)-(2). ntr-adevr, fie I1 = [a, x 0 ] i I 2 = [x 0 , b] . Pe intervalul I1 facem schimbarea de variabil X = x 0 x . Atunci y ( x) = y ( x 0 X ) = Y ( X ) i ecuaia (1) devine (13) Y ( X ) = f ( X , Y ) , X [0, x 0 a ] , iar condiia iniial (12) devine Y(0) = y0 . (14) Metodele numerice pentru rezolvarea problemei (1)-(12) constau n alegerea unor noduri (de obicei, echidistante) x k = a + kh, kN i determinarea unor valori aproximative ale soluiei exacte y(x) n aceste noduri, valori pe care le notm cu yk. Aadar yk y(xk) . Se cunosc dou clase importante de metode numerice pentru rezolvarea problemei Cauchy. 1. Metode directe (uni-pas) n care y k este calculat, printr-o relaie de recuren, n funcie numai de valoarea y k 1 calculat anterior. n aceast categorie intr metoda Taylor i metodele Runge-Kutta. 2. Metode indirecte (cu mai muli pai) n care y k se calculeaz printr-o relaie de recuren n funcie de valorile precedente y k m ,..., y k 2 , y k 1 . n aceast categorie intr metodele Adams-Bashforth, Adams-Moulton i metoda predictor-corector.

196

Bazele Analizei Numerice

6.2. Metode directe


Metoda lui Taylor (1685-1731). Fie nodurile echidistante xn = x0+nh , i y=y(x) soluia exact a problemei (1)-(2). Aadar y ( x) = f ( x, y ( x)) , y ( x 0 ) = y 0 . Presupunem c f este difereniabil de un numr suficient de ori. Cum x1 = x0+h , din formula lui Taylor rezult h h2 h p ( p) y ( x1 ) = y ( x 0 + h) = y ( x 0 ) + y ( x 0 ) + y ( x 0 ) +....+ y ( x 0 ) + R p +1 , 1! 2! p! unde y ( p +1) ( ) p +1 R p +1 = h , ( x 0 , x1 ) . ( p + 1)! Din y ( x) = f ( x, y ( x)) rezult succesiv f f y ( x) = ( x, y ( x)) + ( x, y ( x)) y ( x) = x y f f = ( x, y ( x)) + ( x, y ( x)) f ( x, y ( x)) , x y

x0 = a

y ( x) =
= Atunci: 2 f x 2

2f x 2

2 f 2 f 2f f f f y f + + y y + + = 2 x y y x y xy y
2

+2

2 f 2 f 2 f f f f + f + + f xy y x y 2 y

etc.

y ( x 0 ) = f ( x 0 , y ( x 0 )) = f ( x 0 , y 0 ) , f f ( x0 , y 0 ) f ( x0 , y 0 ) , y ( x 0 ) = ( x 0 , y 0 ) + x y

y ( x 0 ) =

2f x 2
+

( x0 , y 0 ) + 2

2f 2f ( x0 , y 0 ) f ( x0 , y 0 ) + ( x0 , y 0 ) f 2 ( x0 , y 0 ) + 2 xy y
2

f f f ( x0 , y 0 ) ( x0 , y 0 ) + y ( x0 , y 0 ) f ( x0 , y 0 ) y x Pentru p = 3 obinem y ( x1 ) = y 0 +

etc.

h h2 h3 y ( x 0 ) + y ( x 0 ) + y ( x 0 ) + R4 . 1! 2! 3!

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

197

Aproximm soluia exact n x1 , deci y(x1) , cu y1 = y 0 + eroarea fiind dat de h h2 h3 y ( x0 ) + y ( x 0 ) + y ( x 0 ), 1! 2! 3!

y ( x1 ) y1 = R4 unde y
IV

1 M 4 h4 , 4!

unde M 4 = sup y IV ( x) ,
x[a , x1 ]

( x) se calculeaz ca mai sus. n continuare, considernd soluia problemei (1) ce satisface y(x1) = y1, deci pornind cu punctul (x1, y1) , se determin y2 care aproximeaz pe y(x2) , .a.m.d. n general, y(xn) se aproximeaz cu yn , dat de h h2 h3 y n = y n 1 + y ( x n1 ) + y ( x n 1 ) + y ( x n 1 ) . 1! 2! 3! Evident, erorile se acumuleaz.
Exemplul 4. Fie ecuaia y = 1

y 3 , y (1) = . Alegem h = 0.1 . n acest caz 2 x 2 1 2f f f y y 2y 2 f 1 f = f ( x, y ) = 1 , = , = , , = , =0 . x x x 2 y x x 2 y 2 x 3 xy x 2

1 3 Atunci y (1) = f 1, = , y (1) = 2 , y (1) = 6 . 2 2 Deci x0 = 1 , x1 = 1.1 . Aproximm y(1.1) cu y1 dat de (0.1) 3 3 0.1 1 (0.1) 2 2 + + ( 6) . y1 = + 2 1! 2 2! 3! Obinem y1 = 1.459 . Pe de alt parte, soluia exact a problemei este y = deci y(1.1) = 1.459090 . Dezavantajul metodei Taylor const n faptul c presupune calculul derivatelor y(2), y(3), ... , y(k), ... , la fiecare pas, ceea ce este dificil de realizat. Aceast deficien este nlturat de metodele care urmeaz. Dac p = 1 se obine metoda lui Euler (1707-1783). n acest caz valorile aproximative yn ale lui y(xn) sunt date de y n = y n 1 + h f ( x n 1 , y n1 ) , n 1 , (15) unde, evident, y0 = y(x0) . x 1 + , 2 x

198

Bazele Analizei Numerice

Metoda lui Euler are o interpretare geometric foarte simpl: dac s-a determinat valoarea yn-1, pentru a determina yn , se consider soluia ecuaiei (1) care trece prin (xn-1, yn-1) (deci care satisface y(xn-1)=yn-1 ) ; se duce apoi tangenta la graficul acestei soluii, n punctul (xn-1, yn-1) ; se intersecteaz aceast tangent cu dreapta x=xn , obinndu-se yn. Din acest motiv, metoda lui Euler se mai numete i metoda liniilor poligonale. Dup cum se observ din figura de mai jos, erorile se acumuleaz.

y y2 y (x 2) y1 y (x 1 ) y0

x0

x1 x 0

x2

Exemplul 5. Folosind metoda Euler s se determine soluia aproximativ a urmtoarei probleme Cauchy y 1 = y2 y x 4x 2 y (1) = 0.5 n punctul x=2 n doi pai. n acest caz x0=1 , y0=0.5 , n=2 , h = 0.5 , x1=1+0.5=1.5 , x2=2. Atunci: 2 0.5 1 y1 = y 0 + h f ( x0 , y 0 ) = 0.5 + 0.5 = 0.25 , 0.5 1 4 12 y 2 = y1 + h f ( x1 , y1 ) = 0.14236 . Metodele Runge-Kutta se deosebesc de metoda lui Taylor prin faptul c nlocuiesc calculul derivatelor funciei f, prin evaluri ale lui f n diverse puncte. Metoda a fost introdus de matematicianul german Carl David Runge n 1895 i dezvoltat de un alt matematician german, Wilhelm Kutta, n 1901. Vom analiza n detaliu

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

199

metoda Runge-Kutta de ordinul doi. Valorile aproximative yn ale lui y(xn) sunt date de y n = y n 1 + a1h f ( x n1 , y n 1 ) + a 2 h f ( x n1 + b1h, y n 1 + (16) + b2 h f ( x n1 , y n 1 )) , n 1 , iar y0 = y(x0) . Constantele a1, a2, b1, b2 urmeaz a fi determinate. Dac notm f f ( x n 1 , y n 1 ) , atunci, din f = f ( x n 1 , y n1 ) , f x = ( x n 1 , y n1 ) , f y = x y formula lui Taylor pentru funcii de dou variabile, obinem

y n = y n 1 + a1 h f + a 2 h f + b1 h f x + b2 h f y f + O(h 2 ) =
= y n 1 + (a1 + a 2 ) f h + a 2 b1 f x + a 2 b2 f f y h 2 + O(h 3 ) . Pe de alt parte, din metoda lui Taylor, avem h h2 y n = y n 1 + f + f x + f y f + O(h 3 ) . (18) 1! 2! Identificnd coeficienii lui h i h2 din (17) i (18), rezult a1 + a 2 = 1 1 (19) a 2 b1 = 2 1 a 2 b2 = . 2 Deoarece sistemul (19) are 3 ecuaii i 4 necunoscute, una din necunoscute poate fi aleas arbitrar. De exemplu, dac alegem b2 = , atunci b1 = , deci a1 + a 2 = 1 1 a 2 = 2 , b2 = astfel c formulele (16) se mai scriu

(17)

200

Bazele Analizei Numerice

y n = y n 1 + h(a1 g1 + a 2 g 2 ) , n 1 g = f ( x , y ) n 1 n 1 1 (20) g 2 = f ( x n1 + h , y n 1 + h g1 ) a1 + a 2 = 1 1 a 2 = . 2 1 Pentru a1 = a 2 = , = 1 , se obine metoda Euler mbuntit 2 h y n = y n 1 + [ f (x n1 , y n 1 ) + f (x n1 + h, y n 1 + h f (x n1 , y n 1 ))] , n 1 . 2 (21) 1 Pentru a1 = 0, a2 = 1 , = , se obine metoda Euler modificat 2 h h (22) y n = y n 1 + h f x n 1 + , y n 1 + f ( x n 1 , y n 1 ) , n 1 . 2 2
Exemplul 6. Folosind metoda Euler mbuntit s se determine soluia aproximativ a urmtoarei probleme Cauchy y 1 = y2 y x 4x 2 y (1) = 0.5 n punctul x=2 n doi pai. n acest caz x0=1 , y0=0.5 , h = 0.5 , x1=1.5 , x2=2. h Cum y1 = y 0 + [ f (x 0 , y 0 ) + f (x 0 + h, y 0 + h f ( x 0 , y 0 ) )] , prin calcul 2 se obine y1 = 0.32118 . Similar h y 2 = y1 + [ f ( x1 , y1 ) + f (x1 + h, y1 + h f ( x1 , y1 ) )] = 2 = 0.32118 + 0.25 ( 0.22207 0.12341) = 0.23481. Exemplul 7. Folosind metoda Euler modificat s se determine soluia aproximativ a problemei Cauchy din Exemplul 6, n punctul x=2 n doi pai.

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

201

h h n acest caz y1 = y 0 + h f x 0 + , y 0 + f ( x 0 , y 0 ) , deci y1 = 0.34031 , iar 2 2 h h y 2 = y1 + h f ( x1 + , y1 + f ( x1 , y1 )) = 0.25868 . 2 2 n continuare prezentm metoda Runge-Kutta de ordinul patru n forma particular sub care este cel mai des utilizat ( W.Kutta - 1901). h y n = y n 1 + (g1 + 2 g 2 + 2 g 3 + g 4 ) , n 1 , (23) 6 unde g1 = f ( x n 1 , y n1 ), h h g 2 = f ( x n 1 + , y n 1 + g1 ), 2 2 h h g 3 = f ( x n 1 + , y n 1 + g 2 ), 2 2 g 4 = f (x n1 + h, y n 1 + hg 3 ), i y0 = y(x0).
Exemplul 8. Folosind metoda Runge-Kutta de ordinul 4 s se determine soluia aproximativ a problemei Cauchy din Exemplul 6, n punctul x=2 n doi pai. Folosind notaiile din Exemplul 6 se obine: g1 = f ( x 0 , y 0 ) = 0.5 , h h g 2 = f ( x 0 + , y 0 + g1 ) = f (1.25, 0.5 0.25 0.5) = 0.31937 , 2 2 h h g 3 = f ( x 0 + , y 0 + g 2 ) = f (1.25, 0.5 0.25 0.31937) = 0.31959 , 2 2 g 4 = f ( x 0 + h, y 0 + h g 3 ) = f (1.5, 0.5 0.5 0.31959) = 0.22218 , deci h y1 = y 0 + [g1 + 2 (g 2 + g 3 ) + g 4 ] = 0.33332 . 6 Pentru y 2 calculm mai nti g1 = f ( x1 , y1 ) = 0.22222 , h h g 2 = f ( x1 + , y1 + g1 ) = 0.1632 , 2 2 h h g 3 = f ( x1 + , y1 + g 2 ) = 0.16322 , 2 2 g 4 = f ( x1 + h, y1 + h g 3 ) = 0.125 . n consecin

202

Bazele Analizei Numerice

y 2 = y1 +

h [g1 + 2 (g 2 + g 3 ) + g 4 ] = 0.24999 . 6

Aceast metod se poate aplica i pentru sisteme de ecuaii difereniale. Fie sistemul de ecuaii difereniale dy1 = f1 ( x, y1 , y 2 ) dx (24) dy 2 = f ( x, y , y ), 2 1 2 dx cu condiia iniial y1 ( x 0 ) = y10 . (25) y 2 ( x 0 ) = y 20 Formulele (23) se scriu n acest caz astfel y1n y1,n 1 h g11 h g 21 h g 31 h g 41 + , n 1, + + y = + 2n y 2,n 1 6 g12 3 g 22 3 g 32 6 g 42
unde: g11 = f1 ( x n1 , y1,n 1 , y 2,n 1 ) g12 = f 2 ( x n 1 , y1,n 1 , y 2,n 1 ) h h h g 21 = f1 x n 1 + , y1,n1 + g11 , y 2,n 1 + g12 2 2 2 h h h g 22 = f 2 x n 1 + , y1,n 1 + g11 , y 2,n 1 + g12 2 2 2 h h h g 31 = f1 x n 1 + , y1,n1 + g 21 , y 2,n 1 + g 22 2 2 2 h h h g 32 = f 2 x n1 + , y1,n 1 + g 21 , y 2,n1 + g 22 2 2 2 g 41 = f1 x n 1 + h, y1,n 1 + hg 31 , y 2,n 1 + hg 32 (27)

g 42 = f 2 x n 1 + h, y1,n 1 + hg 31 , y 2,n1 + hg 32 i y1,0 = y1 ( x 0 ) . y 2, 0 = y 2 ( x 0 )

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

203

Asupra consistenei, stabilitii i convergenei metodelor directe

Orice metod direct pentru rezolvarea probelemei Cauchy poate fi scris sub forma general y n = y n 1 + h ( x n 1 , y n 1 , h) , n 1, (28) y0 = y(x0) , unde funcia ( x, y, h) se numete funcie de cretere. Pentru h 0, relaia (28) se scrie sub forma y n y n 1 = ( x n 1 , y n 1 , h) . (29) h
Definiie. Dac y(x) este soluia exact a problemei Cauchy (1)-(2), se numete eroare de trunchiere a metodei, funcia y ( x + h) y ( x ) t ( x, h ) = ( x, y ( x), h), (30) h unde x [x 0 , b ) i h > 0 astfel ca x+h b . Definiie. Se spune c formula (28) d o aproximare consistent a problemei (1), (2), dac t(x,h) 0 cnd h 0 , uniform n raport cu x [x 0 , b ) .

Din (30) se vede c, pentru o metod consistent, avem y ( x) = ( x, y ( x),0) = f ( x, y ( x)) .


Definiie. Se spune c formula (28) d o aproximare consistent de ordin p , dac exist N 0 , h0 > 0 i un ntreg pozitiv p astfel ca sup t ( x, h) N h p ,

pentru orice h(0, h0].

x0 xb

Propoziia 1. Metoda lui Taylor de ordin p este consistent de ordin p. Metodele Runge-Kutta de ordinul p dat sunt metode consistente de ordinul p. Demonstraie. Pentru metoda dat de formula lui Taylor de ordinul p, avem hp t ( x, h ) = y ( p +1) ( ) , unde x < < x + h . ( p + 1)! 1 y ( p +1) ( x) , rezult consistena de ordinul p. Alegnd N = sup + ( p 1 )! x0 xb

Spre exemplu, metoda lui Euler este consistent de ordinul 1. Pentru metodele Runge-Kutta este dificil s obinem o form explicit a lui N. Pn acum am considerat erorile de trunchiere, adic erorile ce apar prin discretizarea ecuaiei difereniale. Ne intereseaz ns, n ce msur soluia ecuaiei

204

Bazele Analizei Numerice

cu diferene, adic a ecuaiei obinut prin discretizare (deci irul (yn)n), aproximeaz soluia y(x) a ecuaiei difereniale. Aadar, vom aborda problema convergenei soluiei ecuaiei cu diferene la soluia ecuaiei difereniale. Aceast convergen trebuie definit cu atenie. De exemplu, dac analizm comportarea irului (yn)n, cnd h 0 , pentru n fixat, nu vom obine un concept util, deoarece, n acest caz x n = x 0 + nh x 0 , iar pe noi ne intereseaz ce se ntmpl pentru x x 0 . Deci trebuie s considerm comportarea irului (yn)n cnd h 0, cu x = xn = x0+nh fixat. Pentru a obine o soluie pentru valoarea x x 0 fixat, trebuie s mrim numrul de pai cerui pentru a ajunge la x din x0, dac pasul h descrete.
Definiie. Metoda numeric direct se numete convergent dac pentru orice x[x0, b] , avem lim y n = y ( x) (31)
h 0

x=xn=x0+nh . Aceast definiie se datoreaz lui G. Dahlquist. n studiul convergenei metodelor directe, este util urmtoarea lem.
Lema 1. Au loc inegalitile: 1 + x e x , () x R ,
m mx

(32)

0 (1 + x ) e , () x 1 , m N . (33) Demonstraie. Cum (33) este consecin imediat a lui (32), este suficient s justificm (32). Dar (32) este consecin imediat a formulei lui Taylor, deoarece x2 ex =1+ x + e , 2 unde este ntre 0 i x. n continuare, vom analiza convergena metodelor directe. Fie e n = y ( x n ) y n , n 0 . Deci en reprezint eroarea global dintre soluia exact i soluia aproximativ n nodurile xn . Din (30), obinem y ( x n ) = y ( x n 1 ) + h ( x n 1 , y ( x n 1 ), h) + ht ( x n 1 , h) . Scznd (28) din aceast egalitate, avem e n = e n 1 + h[ ( x n1 , y ( x n 1 ), h) ( x n 1 , y n 1 , h] + ht ( x n 1 , h) (33) Evident e0 = 0 . Din nefericire, faptul c t(xn-1,h) este mic, nu este suficient pentru a asigura c en este mic. Ar trebui s artm c max e n C max t ( x n , h) ,
n n

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

205

unde constanta C este independent de h ; este ceea ce numim stabilitatea metodei de aproximare. n cele ce urmeaz, presupunem c funcia de cretere satisface condiia lui Lipschitz ( x, y , h ) ( x, z, h ) K y z , x [x0 , b] , y , z R , h > 0 . (34) i c metoda este consistent de ordin p cu constanta N. Considerm mai nti cazul K > 0. Atunci din (33) rezult c exist h0 > 0 astfel ca pentru h(0,h0] s avem e n e n 1 (1 + hK ) + Nh p +1 .

Aplicnd aceast inegalitate recursiv rezult e n (1 + hK )n e0 + Nh p +1[1 + (1 + hK ) + ... + (1 + hK ) n 1 ] Deoarece e0 = 0, din Lema 1, rezult c
e n Nh p

(1 + hK ) n 1 e ( xn x0 ) K 1 e nhK 1 . Nh p = Nh p K K K Pentru K = 0, se obine imediat e n ( x n x 0 )Nh p . Am demonstrat deci urmtoarea teorem.


Teorema 3. Dac metoda (28) este consistent de ordin p, cu constanta N, iar funcia satisface condiia lui Lipschitz (34), atunci exist h0>0, astfel ca pentru h(0, h0] avem e ( xn x0 ) K 1 Nh p , dac K 0 y( xn ) y n (35) K p dac K = 0 , ( x n x 0 ) Nh , unde y(x) este soluia exact a problemei Cauchy. Deci metoda este convergent.

Aceast teorem s-a obinut pornind de la principiu important al analizei numerice, care se poate enuna astfel: CONSISTEN + STABILITATE CONVERGEN
Definiie. O metod numeric direct se numete convergent de ordinul p N

dac exist C > 0 astfel nct y ( x n ) y n Ch p , oricare ar fi xn = x[x0, b]. Teorema 3 spune c o metod numeric consistent de ordinul p N i pentru care funcia de cretere satisface condiia Lipschitz (34) este convergent de ordinul p . Numrul p introdus de Teorema 3 nu este unic determinat (dac

206

Bazele Analizei Numerice

exist): dac h < 1 i p este ordin de convergen, atunci i p cu 0< p < p este un ordin de convergen pentru aceast metod. Se poate pune problema determinrii unui ordin de convergen maximal pentru o metod dat. n practic este suficient s se determine un ordin de convergen convenabil. Metodele prezentate mai sus au ordine de convergen diferite. Spre exemplu se poate arta c metoda lui Euler mbuntit are ordin de convergen 2, dac exist L > 0 astfel nct f ( x, y ) L , ( )( x, y ) [a, b] J . y n funcie de L, se poate determina K din (34). innd seama de (21) pentru aceast metod avem 1 ( x, y , h) = [ f ( x, y ) + f ( x + h, y + h f ( x, y ))] . 2 Atunci 1 ( x , y , h ) ( x , z , h ) f ( x, y ) f ( x, z ) + 2 1 + f ( x + h, y + h f ( x, y )) f ( x + h, z + h f ( x, z )) 2
L2 h0 1 1 L y z + L[ y z + h f ( x , y ) f ( x , z ) ] ( L + ) y z , h h0 , 2 2 2 L2 h0 . 2 n acest caz, din formula Taylor rezult

deci K = L +

t ( x, h) = h 2 ( R3 ( x) + Q3 ( x, h)), unde R3(x) este eroarea de la formula Taylor, iar Q3(x,h) eroarea care se face oprind termenii de ordinul doi din formula Runge-Kutta. Dac derivatele lui y i ale lui f sunt mrginite, atunci metoda Euler mbuntit are ordinul de consisten 2. n ncheiere, menionm c metoda folosit n studiul stabilitii soluiei problemei Cauchy se poate aplica i n cazul metodei Euler. Considerm metoda numeric (analoag problemei Cauchy): z n = z n1 + h[ f ( x n 1 , z n 1 ) + ( x n 1 )] , n 1 (36) z0 = y0 + . Comparm cele dou soluii numerice ( z n ) n , ( y n ) n , cnd h 0. Fie en = zn-yn , n 0. Atunci z0 = . Scznd (15) din (36), obinem e n = e n 1 + h[ f ( x n 1 , z n1 ) f ( x n 1 , y n1 )] + h ( x n 1 ), care are aceeai form ca (23). Utiliznd acelai procedeu ca ndemonstraia Teoremei 3, rezult

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

207

e (b x0 ) L 1 . L n n consecin, exist constantele k1, k2 , independente de h, astfel ca max z n y n k1 + k 2 . (37) max z n y n e (b x0 ) +


n

Aceast inegalitate este analoag inegalitii (8) din cazul problemei Cauchy iniiale. Aadar metoda Euler este stabil numeric. De altfel, toate metodele numerice pentru problema Cauchy au aceast form de stabilitate, imitnd stabilitatea problemei iniiale. Analiza se poate simplifica, lund (x) = 0 i considernd numai efectul perturbrii iniiale y0 . Nu vom analiza aici problema erorilor de rotunjire.

6.3. Metode indirecte (cu mai muli pai)


Metoda Adams-Bashforth. S presupunem c printr-o metod direct (de exemplu, de tip Runge-Kutta) s-au determinat valorile y1, ..., yn n nodurile x1, ..., xn, unde yk y(xk). Se pune problema determinrii unei valori aproximative yn+1 pentru y(xn+1) (y(x) este soluia exact a problemei Cauchy). Integrnd (1) pe intervalul [xn, xn+1], obinem:

y ( x n+1 ) y ( x n ) = f ( x, y ( x))dx.
xn

xn +1

(38)

Pentru a calcula integrala, folosim o metod numeric, de exemplu o metod Newton-Ctes pentru nodurile echidistante xn-m, ..., xi, ..., xn, m n, xi = xn+(i-n)h, i = n m, n . Dac x[xn, xn+1], atunci exist t[0,1] astfel nct x = xn + th. (39) Fie Pm polinomul de interpolare Lagrange corespunztor tabelului x xn-m ... xi ... xn y fn-m ... fi ... fn
unde fi = f(xi,yi), i = n m, n . Vom aproxima valoarea exact y(xn+1) prin y n +1 = y n + Pm ( x)dx.
xn n x n+1

(40)

Dup cum se tie Pm ( x) =

i=nm

Li ( x) f ( xi , yi ), unde

208

Bazele Analizei Numerice


n

Li ( x) =

j = n m xi j i

x xj xj

=
j i

(t j + n)h = j = n m (i j ) h (1) n i (t + k )
m

(t + m)...(t + n i + 1)(t + n i 1)...t k =0 . = (i n + m)...1(1)...[ (n i )] (i n + m)!(n i )!(t + n i ) Fcnd schimbarea de variabil (39) n (40), obinem: y n +1 = y n + (
1

(1) n i (t + k )
k =0

0 i = n m (i n + m)!( n i )!(t + n i )

h f i )dt

Dac notm cu Ai = obinem y n +1 = y n +


i=nm
1 ( 1) n i h dt , k =0 (i n + m)!(n i )! 0 t + n i

(t + k )

(41)

Ai f i ,

(42)

cunoscut sub numele de formula Adams-Bashforth. n continuare vom explicita formula (42) pentru valori particulare ale lui m. Astfel pentru m = 1, deci cnd se folosesc nodurile xn i xn-1, formula (42) devine y n +1 = y n + An 1 f n 1 + An f n , unde conform (41) (1) 1 h 1 t (t + 1) t2 An 1 = dt = h 0!1! 0 t + 1 2
1

=
0 1

h , 2

t2 (1) 0 h 1 t (t + 1) 3 An = dt = h + t = h . 2 t 1! 0! 0 0 2 n consecin pentru m = 1, formula lui Adams-Bashforth se scrie h y n +1 = y n + (3 f n f n 1 ) . (43) 2 Similar, pentru m = 2 se obine h y n +1 = y n + (23 f n 16 f n 1 + 5 f n 2 ) , (44) 12 iar pentru m = 3 h (55 f n 59 f n 1 + 37 f n 2 9 f n 3 ) . y n +1 = y n + (45) 24

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

209

n ceea ce privete evaluarea erorii, scznd (40) din (38) obinem y ( x n+1 ) y n +1 = y ( x n ) y n + [ f ( x, y ( x)) Pm ( x)]dx ,
xn xn +1

deci y ( x n +1 ) y n +1 y ( x n ) y n + f ( x, y ( x)) Pm ( x) dx.


xn x n+1

Deci eroarea din metoda lui Adams-Bashforth este mai mic dect suma dintre eroarea din metoda Runge-Kutta folosit n calculul lui yn i eroarea de la integrarea numeric. n cazul m = 1, se obine folosind schimbarea de variabil (39) :
x n+1 xn

f ( x, y ( x)) Pm ( x) dx

M 2 x n+1 M2 1 3 ( x xn )( x xn 1 )dx = h t (t + 1)dt = 2 x 2 0


n

= unde

5 3 h M2, 12

M 2 = sup f ( x, y ( x)) .
x[a , b ]

Deci eroarea de integrare n acest caz este de ordinul h3. S menionm acum c integrnd (1) pe [xn-1, xn+1], n locul lui (38) se poate considera y ( xn +1 ) = y ( x n 1 ) + f (x, y ( x) )dx .
x n1 x n+1

(46)

Se poate proceda apoi ca mai sus. Aceast metod este atribuit lui E. J. Nystrm (1925). Pentru m = 1, de exemplu, se obine (47) yn+1 = yn-1 + 2hf(xn, yn). Metodele Adams-Bashforth i Nystrm sunt cunoscute ca metode explicite, deoarece relaia de recuren (42) sau cea corespunztoare pentru metoda Nystrm nu conin f(xn+1, yn+1); ele exprim explicit yn+1 n funcie de yn, yn-1, ... , yn-m.
Exemplul 1. Folosind metoda Adams-Bashforth de ordin trei s se determine soluia aproximativ a urmtoarei probleme Cauchy 1 y = y2 y x 4x2 y (1) = 0.5 n punctul x=2.25, determinnd soluia n x=2 cu metoda Runge-Kutta de ordinul patru n patru pai.

210

Bazele Analizei Numerice

Pentru a aplica metoda Runge-Kutta de ordin patru lum: x0=1 , y0=0.5, x x0 = 0.25 , x1=x0+h=1+0.25=1.25, x2=1.5 , x3=1.75 , x4=2 x=2 , n=4 , h = n i obinem y1=0.4 , y2=0.33333 , y3=0.28571 , y4=0.25 . Pentru a determina valoarea aproximativ a soluiei n x=2.25 folosim metoda Adams-Bashforth de ordin trei

y5 = y 4 +

h (55 f 4 59 f 3 + 37 f 2 9 f1 ) , 12

unde f 2 = f ( x2 , y 2 ) = 0.22222, f 3 = f ( x3 , y3 ) = 0.16327 , f 4 = f ( x 4 , y 4 ) = 0.125, obinndu-se y(2.25)y5=0.22307 ( soluia exact fiind y(2.25)=0.22222).
Metoda Adams-Moulton. Presupunem c printr-o metod direct am determinat valorile aproximative y1, ..., yn n nodurile xk = x0+kh, k = 1, n i c xn+1 < b. Fie Pm+1 polinomul de interpolare Lagrange corespunztor tabelului xn+1 x xn-m ... xn f fn-m ... fn fn+1

Formula corespunztoare lui (40) este: y n +1 = y n + Pm +1 ( x)dx .


xn xn+1

(48)

Procednd ca mai sus, obinem y n +1 = y n + unde


(t + k ) 1 (1) n +1i h k = 1 dt , i = n m, n + 1 , (50) Bi = (i n + m)! (n + 1 i )! t + n i
0 m

Bi f i , i=nm

n +1

(49)

cunoscut sub numele de formula Adams-Moulton. Vom particulariza acum aceast formul. Pentru m = 0 se obine h y n +1 = y n + ( f n +1 + f n ), (51) 2 pentru m = 1 h y n +1 = y n + (5 f n +1 + 8 f n f n 1 ), (52) 12 pentru m = 2 h y n +1 = y n + (9 f n +1 + 19 f n 5 f n 1 + f n 2 ) . (53) 24

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

211

Deoarece fn+1 = f(xn+1, yn+1), necunoscuta yn+1 apare i n membrul drept, deci, n general nu se poate explicita.De aceea metoda Adams-Moulton este o metod implicit. De obicei (49) trebuie rezolvat ca o ecuaie algebric printr-o metod iterativ. Se alege
( 0) yn +1 ,

apoi se calculeaz

(1) ( 0) ( 2) (1) yn +1 = F ( y n +1 ) , y n +1 = F ( y n +1 ) etc., unde F apare din scrierea convenabil a lui (49) sub forma yn+1 = F(yn+1).

Pentru a calcula o aproximaie bun y n +1 , explicit, de exemplu, Adams-Bashforth. Se poate demonstra urmtoarea teorem.
Teorema 4. Fie irul recurent
( k +1) yn +1 = y n + i =nm (k ) Bi f i + Bn +1 f ( xn +1, yn +1 ) , n

( 0)

se poate utiliza o formul

k N .

(54)

Dac funcia f satisface condiiile Teoremei 1 i h este ales astfel nct


(k ) Bn +1 L < 1, L fiind constanta lui Lipschitz, atunci irul y n +1 este convergent i (k ) limita sa y n +1 = lim y n +1 satisface ecuaia k n +1

y n +1 = y n +

Bi f i i=nm

Eroarea din metoda Adams-Moulton se poate estima ca i n cazul metodei Adams-Bashforth.


Exemplul 2. Folosind metoda Adams-Moulton de ordin unu s se determine soluia aproximativ a urmtoarei probleme Cauchy 1 y = y2 y x 4x2 y (1) = 0.5 n punctul x=1.5, considernd soluia y(0)(1.5) obinut cu metoda Euler modificat, cu h = 0.05. Atunci y(0)(1.5) = 0.333406 i cum h ( k +1) yn +1 = y n + 12 (5 f n +1 + 8 f n f n 1 ) , k=0,1,2... obinem
(1) ( 2) y5 = 0.333403 , y 5 = 0.333331

212

Bazele Analizei Numerice

Metoda predictor-corector ( Adams-Bashforth-Moulton )

Presupunem c printr-o metod direct am determinat valorile aproximative y1, ..., yn n nodurile x1, ..., xn. Fie m1, m2 n i xn+1 = xn+h b. n prima etap (etapa predictor) se determin valoarea aproximativ yn+1 cu metoda Adams-Bashforth, pentru m = m1. Valoarea astfel determinat se noteaz cu
( 0) yn +1 ,

i este folosit n

continuare n etapa a doua (etapa corector) pentru determinarea valorii yn+1 cu metoda Adams-Moulton cu m = m2. Cele mai utilizate metode predictor-corector sunt: h ( 0) (m1 = 1) y n +1 = y n + (3 f n f n 1 ) 2 1) y ( k +1) = y + h f x , y ( k ) + f (m2 = 0) n n +1 n +1 n 2 n +1 h ( 0) (m1 = 2) y n +1 = y n + (23 f n 16 f n 1 + 5 f n 2 ) 12 2) y ( k +1) = y + h 5 f x , y ( k ) + 8 f f (m2 = 1) n n +1 n +1 n n 1 12 n +1 h ( 0) (55 f n 59 f n1 + 37 f n2 9 f n3 ) (m1 = 3) y = yn + n +1 24 3) y ( k +1) = y + h 9 f x , y ( k ) + 19 f 5 f (m2 = 2) . n n +1 n +1 n n 1 + f n 2 24 n +1

[(

) ]

( (

( (

Exemplul 3. Folosind metoda Adams-Bashforth-Moulton de ordin (3,2) s se determine soluia aproximativ a urmtoarei probleme Cauchy y 1 = y2 y x 4x2 , y (1) = 0.5 n punctul x=2.25, considernd soluia y(0)(2.25) obinut n exemplul 1. Ca i n exemplul 1 avem: x0=1 , y0=0.5 , x=2 , n=4, h = 0.25 , x1=x0+h=1+0.25=1.25, x2=1.5 , x3=1.75 , x4=2 i obinem y1=0.4 , y2=0.33333 , y3=0.28571 , y4=0.25 . Pentru a determina valoarea aproximativ a soluiei n x=2.25 folosim metoda Adams-Bashforth de ordin trei

y5 = y 4 +

h (55 f 4 59 f 3 + 37 f 2 9 f1 ) , 12

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

213

si obinem

( 0) y(2.25)y5=0.22307 . Notm y 5 = 0.22307 i aplicm n continuare

(1) ( 2) = 0.22219 ; y 5 = 0.22219 . metoda Adams-Moulton de ordin 2. Obtinem: y 5

n continuare vom aborda un anumit tip de stabilitate pentru a ilustra anumite idei, care nu pot fi prezentate n cazul metodei Euler. Am artat la metoda Euler, c metodele numerice pentru problema Cauchy au o anumit form de stabilitate, imitnd stabilitatea problemei Cauchy. n particular acest tip de stabilitate caracterizeaz i metoda (47) dat de y n +1 = y n 1 + 2h f ( x n , y n ) , n 1 . Din pcate, aceast stabilitate nu este satisfctoare pentru scopuri practice. Vom arta aceast metod nu este convenabil n raport cu un anumit sens de stabilitate pe care o vom defini. Deoarece relaia de recuren depinde de f(x,y) este greu s dm rezultate generale privind stabilitatea numeric a unei astfel de metode. Este instructiv s cutm, cu metoda de mai sus, soluia numeric a problemei y = y , y (0) = 1 , R , (55) a crei soluie este y ( x) = e x . Aceast problem o vom utiliza ca problem model. Dac o metod numeric se comport ru cu o problem att de simpl ca (55), este puin probabil ca aceasta s fie bun pentru ecuaii difereniale mai complicate. n acest caz (47) devine y n +1 = y n 1 + 2hy n , n 1 . (56) Vom calcula soluia exact a acestei ecuaii i o vom compara cu soluia

exact a ecuaiei (55), y ( x) = e x . Ecuaia (56) este un exemplu de ecuaie liniar cu diferene de ordin 2. Exist o teorie general pentru ecuaii liniare cu diferene de ordin p. Multe metode pentru rezolvarea ecuaiilor difereniale au un analog n rezolvarea ecuaiilor cu diferene, fiind un ghid n a rezolva (56). Vom ncepe cutnd soluii liniar independente pentru ecuaii cu diferene. Acestea sunt combinate sub forma soluiei generale. Similar cu soluiile exponeniale ale ecuaiilor difereniale liniare, cutm soluii pentru (56) de forma

yn = r n , n 0 , (57) pentru un anumit r necunoscut. nlocuind n (56), pentru a gsi condiii necesare pentru r , obinem r n +1 = r n 1 + 2hr n . mprind cu r , rezult r 2 = 1 + 2hr . (58) Este valabil i reciproca. Dac r satisface (58), atunci yn dat de (57) satisface (56). Ecuaia (58) se numete ecuaie caracteristic pentru metoda (47). Rdcinile sale sunt
n 1

214

Bazele Analizei Numerice

r0 = h + 1 + h 2 2 , r1 = h 1 + h 2 2 . Soluia general a lui (56) este

(59)

n y n = 0 r0 + 1r1n , n 0 . (60) Coeficienii 0 i 1 din (60) se determin din condiiile ca y0 i y1 s coincid cu ce se obine din (60) pentru n = 0 i n = 1. 0 + 1 = y 0 0 r0 + 1r1 = y1 . Soluia acestui sistem este y ry y r y 0 = 1 1 0 , 1 = 0 0 1 . r0 r1 r0 r1 h Dar y0 = 1, y1 = e (acestea sunt valorile soluiei exacte). Atunci, folosind formula lui Taylor, obinem e h r1 0 = = 1 + O ( h 2 2 ) 2 2 2 1+ h

2 1+ h Pentru aceste valori, 0 1 i consecin


n r0

1 =

r0 e h
2 2

= O(h 33 ) .

1 0 ,

cnd

h 0 . n

1r1n

n 0 cnd h0, deci din (60) rezult c termenul 0 r0 ar


2

trebui s corespund soluiei exacte =e


x n

1 + O(h ) . ntr-adevr
1 2 2 h + O(h 4 ), 2 1 e h = 1 + h + 2 h 2 + O (h 3 ) . 2 r0 = h + 1 + Atunci r0 = e h + O( h 3 ) = e h 1 + O (h 3 ) ,

e xn .

De fapt

deoarece e h = 1 + O (h) . n consecin

n r0 = e xn [1 + nO (h 3 )] = e xn (1 + O (h 2 )) .

Pentru a vedea dificultatea utilizrii formulei (60) n rezolvarea numeric a ecuaiei (55), s examinm cu atenie, valorile relative ale lui r0 i r1. Pentru 0 < < are loc r0 > r1 > 0, ()h .

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

215

n i termenul corect Atunci termenul r1n va crete mai puin rapid dect r0 n va domina. Totui pentru < 0 , vom avea 0 < r0 < 1 , r1 < -1 , n (60), 0 r0 n cnd n crete pentru h fixat, h > 0. n consecin, 1r1n va domina 0 r0 n 0 cnd n , pe necontnd ct de mic este h ales iniial. Termenul 0 r0

cnd termenul 1r1n crete n magnitudine, alternnd ca semn cnd n crete. Termenul 1r1n se numete soluie parazit a metodei numerice (56), deoarece nu corespunde unei soluii a ecuaiei difereniale originale y = y . Ecuaia original are o familie de soluii cu un parametru, depinznd de valoarea iniial y0, dar aproximaia (56) are familia de soluii (60), cu doi parametri, care depinde de y0 i y1. Noua soluie 1r1n este o creaie a metodei numerice; pentru problema (55) cu < 0 ea face ca soluia numeric s se deprteze de soluia corect cnd xn +. Din cauza acestei comportri, spunem c metoda (47) este slab stabil.
Exemplul 4. Fie problema model y = y cu y(0) = 1 i h = 0.25 . Se aplic metoda (47) cu y0 = 1 i y1 determinat cu metoda Euler. Pentru xn = 2.25 soluia yn devine negativ i alterneaz ca semn la fiecare pas. f Se constat c dac are semn negativ, atunci instabilitatea slab apare y uzual n rezolvarea problemei Cauchy prin metoda (47). xk yk y(xk) xk yk y(xk) 0 1 1 1.75 0.89844 0.173774 0.25 0.75 0.77880 2 0.244141 0.135353 0.5 0.625 0.606531 2.25 -0.32227 0.105399 0.75 0.4375 0.472367 2.5 0.260254 0.082085 1 0.40625 0.367879 2.75 -0.162354 0.063928 1.25 0.234375 0.286505 3 0.341431 0.049787 1.5 0.289063 0.223130 Exemplul 5. Fie problema

y = x y 2 ,

y(0) = 0.

Soluia acestei ecuaii

difereniale este strict cresctoare pentru x 0. Dar f ( x, y ) = x y 2 , deci f = 2 y < 0 pentru y > 0. Ne ateptm la o anumit instabilitate. Lund h = y 0.25 se constat c de la xn=2.25 soluia numeric ncepe s descreasc, ajungnd n xn = 3.25 s fie negativ.

xk

yk

xk

yk

216

Bazele Analizei Numerice

0 0.25 0.5 0.75 1 1.25 1.5 1.75

0 0 0.125 0.242188 0.470673 0.631421 0.896326 0.979721

2 2.25 2.5 2.75 3 3.25 3.5 3.75

1.2914 1.145864 1.759889 0.847244 2.775987 -1.505808 3.267258 -5.093296

Integrarea numeric a ecuaiilor difereniale de ordinul nti n MATLAB n MATLAB funciile ode23(fxy,x0,x,y0) i ode45(fxy,x0,x,y0) sau ode23(fxy,x0,x,y0,err,urma) i ode45(fxy,x0,x,y0,err,urma) rezolv ecuaii difereniale de ordinul nti y = f(x,y), y(x0) = y0, prin metoda Runge-Kutta de ordinul doi, respectiv patru, parametrii avnd

urmtoarele semnificaii: fxy este numele fiierului de tip m care conine funcia f(x,y) , (x0,y0) sunt coordonatele punctului iniial, iar x este punctul n care se cere valoarea aproximativ a soluiei y , err este precizia soluiei, implicit 10-3, respectiv 10-6 , urma atunci cnd are valoare diferit de zero se tipresc rezultatele intermediare.
Exemplu. S se determine valoarea aproximativ a soluiei urmtoarei probleme Cauchy y = xy2+x3+1, y(0) = 1 , n punctul x = 2 , pasul fiind stabilit n mod automat de funcia ode23 (ode45) . Se creeaz fiierul de tip m numit fxy care conine f(x,y) cu secvena % Fisierul cu functia f(x,y) este de tip m function f=fxy(x,y) f=x*y^2+x^3+1; dup care se apeleaz funcia ode45 astfel [x,y]=ode45(fxy,0,2,1,0.0001,1) ; disp(Solutia aproximativa intre x0 si x); disp(x); disp(y);

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

217

Exerciii
Folosind metoda Taylor de ordinul 3 s se gseasc soluia aproximativ a urmtoarelor probleme Cauchy n punctele menionate. y = xy n 4 pai. 1. y (0) = 1 n x = 1 R. h = 0.25 x x0=1 x1=1.25 x2=1.5 x3=1.75 x4=2 y' 0 0.25781 0.56772 1.00432 y' ' 1 1.16106 1.70316 2.84558 y' ' ' 0 1.3374 3.26439 6.7164 y 1 1.03125 1.13544 1.3391 1.69659 4x y = n 4 pai. 2. y y (1) = 2 n x = 2 R. h = 0.25 x x0=1 x1=1.25 x2=1.5 x3=1.75 x4=2 y' 2 2.05128 2.07279 1.00432 y' ' -2 -1.81149 -1.5867 2.84558 y' ' ' 0 0.335864 0.3667 6.7164 y 2 2.4375 2.89465 3.36421 3.84191 S se determine soluia aproximativ a ecuaiilor difereniale urmtoare folosind metoda Euler i Euler mbuntit. 2x y = y 3. y = y ( 0 ) 1 n x = 1 cu pasul h = 0.2 . R. Cu metoda Euler pentru xi = x0+ih , yi+1 = yi+hf(xi,yi) , i=0, 1, ... n , n=5 , obinem: i xi yi f(xi,yi) 0 0 1 1 1 0.2 1.2 0.8667 2 0.4 1.3733 0.7805 3 0.6 1.5294 0.7458 4 0.8 1.6786 0.7254 5 1 1.8237 Cu metoda Euler mbuntit h y i +1 = y i + [ f ( xi 1 , y i 1 ) + f ( xi 1 + h , y i 1 h f ( xi 1 , y i 1 ))] 2

218

Bazele Analizei Numerice

obinem: xi 0 yi 1

0.2 1.1867

0.4 1.3484

0.6 1.4938

0.8 1.6272

1 1.7542

2 y = y 2 x 4. 2 y (1.5) = n x = 2.5 cu pasul h = 0.2 . 3 R. Cu metoda Euler pentru xi = x0+ih , yi+1 = yi+hf(xi,y) , i=0, 1, ... n , n=5 , obinem: xi 1.5 1.7 1.9 2.1 2.3 yi 0.66667 0.75556 0.77979 0.76898 0.74142 Cu metoda Euler mbuntit h y i = y i 1 + [ f ( xi 1 , y i 1 ) + f ( xi 1 + h, y i 1hf ( xi 1 , y i 1 ))] 2 obinem: xi 1.5 1.7 1.9 2.1 2.3 yi 0.66667 0.72323 0.73822 0.72971 0.70865

2.5 0.70709

2.5 0.68148

Folosind metoda Runge-Kutta de ordinul patru s se determine soluia aproximativ a urmtoarelor ecuaii difereniale de ordinul nti n condiiile precizate n fiecare caz n parte. y 8 2 y = + y 2 5. n 5 pai. x x y (1) = 2 n x = 2 R. x g1 g2 g3 g4 y 6. R. h = 0.2 x1=1.2 x0=1 -2 -1.39534 -1.73521 -1.23279 -1.61511 -1.17043 -1.34582 -1.01161 2 1.66512 2 y = 0.25 y + x 2 y (0) = 1 n x = 1 h = 0.25 x2=1.4 -1.03432 -0.92905 -0.89411 -0.7942 1.42467 n 4 pai. x3=1.6 -0.80563 -0.73552 -0.71505 -0.65032 1.24218 x4=1.8 -0.65645 -0.60971 -0.59759 -0.55593 1.09694 x5=2

0.97604

Rezolvarea numeric a problemei Cauchy pentru ecuaii difereniale

219

x g1 g2 g3 g4 y

x0=0 0.25 0.25024 0.25023 0.2822 -1

x1=0.25 0.28158 0.34354 0.34007 0.43109 -0.93612

x2=0.5 0.43039 0.54889 0.54305 0.68984 -0.84946

x3=0.75 0.68916 0.86348 0.85678 1.0619 -0.71178

x4=1

-0.49547

7. Folosind metoda Adams-Bashforth de ordin 3 s se determine soluia aproximativ a urmtoarei probleme Cauchy : y2 y 3 y' = x x2 3 y (3) = 1 n punctul x=3.5, lund h=0.1 i determinnd cu metoda Runge-Kutta de ordin 4 valaorea lui y(3.4). R. Folosind metoda Runge-Kutta de ordin 4 se determin y(3.4)=0.88235, i aplicnd formula Adams Bashforth pentru m=3 gsim y(3.5)=0.85714 8. Folosind metoda Adams-Bashforth de ordin 3 s se determine soluia aproximativ a urmtoarei probleme Cauchy : y y' = x y (2) = 0.5 n punctul x=2.5, lund h=0.1 i determinnd cu metoda Runge-Kutta de ordin 4 valoarea lui y(2.4). R. Folosind metoda Runge-Kutta de ordin 4 se determin y(2.4)=0.41666, i aplicnd formula Adams Bashforth pentru m=3 gsim y(2.5)=0.40000 . 9. Folosind metoda Adams-Moulton de ordin 2 s se determine soluia problemei 2y 2 2 y' = y Cauchy x x2 y (1) = 2 n punctul x=2.25, lund h=0.25 i determinnd cu metoda Runge-Kutta de ordin 4 valoarea lui y(2.25). R. Cu metoda Runge-Kutta de ordin 4 se determin valoarea aproximativ y(2.25)=0.88717, iar dup 3 iteraii cu metoda Adams-Moulton se obine rezultatul y(2.25)=0.88704.

220

Bazele Analizei Numerice

10. Folosind metoda Adams-Moulton de ordin 2 s se determine soluia problemei Cauchy y2 y 3 y' = 3 x x2 y (3) = 1 n punctul x=3.5, lund h=0.1 i determinnd cu metoda Euler mbuntit valoarea lui y(3.4). 11. Folosind metoda Adams-Bashforth-Moulton pentru m1=3 i m2=2 s se determine soluia aproximativ dup 3 iteraii a problemei Cauchy de la exerciiul 9.

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

221

7. Rezolvarea numeric a problemelor la limit pentru ecuaii cu derivate pariale de tip eliptic
Fie G R2 o mulime deschis, conex i mrginit, a crei frontier C este neted pe poriuni. Aadar C poate fi o juxtapunere de mai multe curbe. n continuare vom presupune c C este juxtapunerea a dou curbe C1 i C2 i este orientat n sens trigonometric.

y C1 C2

O
Considerm ecuaia cu derivate pariale de ordinul al doilea u + p( x, y ) u = f ( x, y ) , ( x, y ) G ,

(1)

unde

u=

2u x
2

2u y
2

p C ( 2) (G ) ,

i f este continu pe poriuni pe G. Considerm de asemenea urmtoarele condiii la limit: u C1 = , unde C (0) (C1 ) este cunoscut, (2)

u + u C2 = , n

(3)

222

Bazele Analizei Numerice

unde , C(0)(C2) sunt cunoscute , iar

u este derivata dup normala n

exterioar la C2 . Problema la limit pentru ecuaia (1) const n determinarea unei funcii u C(2)(G) C(1)( G ), care verific ecuaia (1) i condiiile la limit (2) i (3) . Dac p = f = 0 i C = C1, obinem problema Dirichlet pentru ecuaia Laplace u = 0, (4) u C = . Dac p = f = 0 , C = C2 i = 0, obinem problema Neumann pentru ecuaia Laplace u = 0, (5) u C = . n Dac p = 0 i f 0 obinem ecuaia Poisson u = f . (6) Evident i pentru ecuaia Poisson putem considera problema Dirichlet sau problema Neumann u = f u = f . , respectiv u C = u C = n Dac f=0 i p0 se obine ecuaia vibraiilor u + p(x,y) u=0 . Aadar, problema la limit (1)+(2)+(3), dei nu reprezint cazul cel mai general, este suficient de general pentru a acoperi cazurile uzuale de probleme la limit pentru ecuaii cu derivate pariale de tip eliptic n plan. n continuare, notm cu D = u C 2 (G ) C 1 (G ) ; u C = (7) 1 i cu 1 1 J (u) = (grad u)2 p(x, y) u 2 + f (x, y) u dxdy + 2 G 2 (8) 1 + (s) u 2 (s)u ds C2 2

i ne punem urmtoarea problem variaional: s se minimizeze funcionala J pe mulimea D . Pentru ca aceast problem s aib soluie trebuie mai nti ca mulimea D s fie nevid. Vom presupune aadar, c exist cel puin o funcie u D . Atunci D = u + D0 , unde

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

223

D0 = h C 2 (G ) C 1 (G ) ; h C = 0 1

Se observ c D nu depinde de funcia u , n sensul c oricare ar fi u 0 D avem D = u0 + D0 .


Teorema 1. Dac exist u 0 D astfel nct J (u 0 ) = min{J (u ) ; u D} , atunci u0 este soluie pentru problema la limit (1)+(2)+(3). Dac p ( x, y ) 0 pentru orice (x,y)G i (s) 0 pentru orice sC2 , atunci are loc i afirmaia reciproc i anume: dac u0 este soluie a problemei la limit (1)+(2)+(3), atunci J (u 0 ) = min{ J (u ) ; u D } i u0 este singurul punct de minim al funciei J pe D. Demonstraie. Fie u0 D astfel nct J (u 0 ) = min J (u ) ; u D ,

h C (1) (G ) cu proprietatea h C = 0 i : [ a, a ] R , a > 0 , definit astfel 1

(t ) = J (u 0 + t h) J (u 0 ) = (0) , rezult c t = 0 este un punct de minim pentru i deci (0) = 0. Pe de alt


parte, innd seama de (8) avem 2 2 u u 0 h h 1 0 (t ) = +t +t + dxdy + x y y 2 x G

(t ) = J (u 0 + t h) . Cum

1 + p ( x, y )(u 0 + t h )2 + f ( x, y )(u 0 + t h ) dx dy + G 2
S 1 + ( s )(u 0 + t h )2 ( s )(u 0 + t h ) ds , 02 unde S este lungimea curbei C2 , iar x = x( s ) , s [0, S ] y = y(s) este reprezentarea sa normal. Un calcul direct ne conduce la u 0 h u 0 h (0) = p ( x, y )u 0 h + f ( x, y ) h dx dy + x x + y y G

+ [ ( s )u 0 ( s )]h ds .
0

(9)

Din formula Green rezult

224

Bazele Analizei Numerice

u u 0 u 0 h u 0 h + dxdy = h 0 + h dxdy y y G x x G x x y y

2u0 2u0 h + 2 y 2 G x Deoarece h C = 0 ,


1

dxdy = h u 0 dx + h u 0 dy hu dxdy . 0 y x C G rezult c avem

u u 0 h u 0 h u + dxdy = h 0 dx + 0 dy y y x G x x C2 y

(10)

hu 0 dxdy .
G

r Dac notm cu versorul tangentei la curba C2, atunci r r r dx r dy r = i+ j = cos i + cos j . ds ds Pe de alt parte, versorul normalei exterioare la curba C2 este r r r n = cos i + cos( + ) j . innd seama de aceste observaii, mai departe avem

C2

r n

C2 S

S u 0 u u 0 dx u 0 dy dx + h 0 dy = h ds = y ds + x ds y x 0 S

u 0 u 0 u 0 u 0 = h x cos + y cos( + ) ds = h n ds = h n ds. 0 0 C2 Cum (0) = 0, din (9), (10) i (11) rezult
0 = (0) = [ u 0 p( x, y )u 0 + f ( x, y )] hdxdy +
G

(11)

u + 0 + ( s )u 0 ( s ) hds. n C2

(12)

Egalitatea (12) are loc pentru orice h C (1) (G ) cu proprietatea h C = 0 ; 1 n particular i pentru o funcie h C (1) (G ) , nul pe C. Atunci obinem (13) [ u 0 p( x, y )u 0 + f ( x, y )] hdxdy = 0 ,
G

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

225

pentru orice h C (1) (G ) , h C = 0 . Dintr-o cunoscut lem de calcul variaional 1 rezult u 0 p ( x, y )u 0 + f ( x, y ) = 0 , adic ecuaia (1). nlocuind acum n (12), rezult u0 + u 0 hds = 0 , C n
2

pentru orice h C

(G ) , h C = 0 . 1 Printr-un raionament asemntor cu cel precedent deducem u0 + u0 = , C2 n adic (3) . n continuare demonstrm afirmaia reciproc. Fie u0 o soluie a problemei la limit (1)+(2)+(3), v D i h = v-u0. Evident h D0. innd seama de definiia funcionalei J dat de (8) rezult J (v) J (u 0 ) = J (u 0 + h) J (u 0 ) =

(1)

1 1 = grad u 0 grad h + (grad h) 2 pu 0 h 2 ph 2 + f h dx dy + 2 2 G +


C2

u0 h + h 2

h ds.

Cum f = u0 + pu0 (deoarece u0 satisface (1)), mai departe avem 1 1 J (v) J (u 0 ) == grad u 0 grad h + (grad h) 2 ph 2 + hu 0 dx dy + 2 2 G
+
C2

u0 h + h 2

h ds.

innd seama de (10) i (11) rezult 1 1 J (v) J (u 0 ) = ( grad h) 2 p h 2 dxdy + 2 2


G

u 1 + 0 + u 0 h + h 2 ds . n 2 C2 Deoarece u0 satisface (3), egalitatea (14) devine 1 1 1 J (v) J (u 0 ) = (grad h) 2 p h 2 dx dy + h 2 ds . 2 G 2 C2 2

(14)

(15)

Cum p(x,y) 0 pe G i (s) 0 pe C2, din (15) rezult

226

Bazele Analizei Numerice

J (v) J (u 0 )

1 2 (grad h) dx dy 0 . 2G
G

Observm c dac h = v u0 0 atunci (grad h) 2 dx dy > 0 . ntr-adevr, n caz contrar, ar rezulta grad h = 0 i deci c h este constant pe G . Cum h C = 0 , rezult h = 0, ceea ce contrazice ipoteza fcut. Aadar J(v) > J(u0)
1

dac v u0. Rmne s demonstrm unicitatea elementului u0. Fie u1D, u1u0, astfel nct J (u1 ) = min{ J (u ) ; u D } . Conform celor demonstrate mai nainte rezult J(u1) > J(u0) . Analog avem J(u0) > J(u1). Rezult astfel o contradicie i cu aceasta teorema este demonstrat.
Observaia 1. Funcionala (8) are sens i pentru funcii u dintr-o clas mai larg i anume funcii de clas C1.

Analiznd demonstraia Teoremei 1 constatm c dac funcia u0 minimizeaz funcionala J pe mulimea ~ D = { u C 1 (G ) C 0 (G ) ; u C = },


1

atunci u0 satisface ecuaia ce deriv din (0) = 0 i anume [grad u 0 grad h pu 0 h + fh]dxdy + (u 0 h h )ds = 0 ,
G C2

(16)

pentru orice h C (1) (G ) C (0) (G ) cu proprietatea h C = 0 . 1 Evident u0 nu mai este soluie (clasic) a problemei la limit (1)+(2)+(3). ~ O funcie din D care verific (16) poart numele de soluie slab a problemei la limit (1) + (2) + (3). Pentru rezolvarea numeric a problemei la limit (1)+(2)+(3), se consider o reea ptratic de drepte paralele cu axele de coordonate: x = xi = a + ih , i = 1, m , y = y j = b + jh , j = 1, n , care acoper ntreg domeniul G . Punctele Mij(xi , yj) se numesc nodurile reelei, iar h, pasul reelei. O prim metod de rezolvare numeric a problemei la limit (1)+(2)+(3) const n discretizarea ecuaiei (1) i a condiiilor la limit (2)+(3) n nodurile reelei, obinndu-se un sistem de ecuaii liniare. Soluia acestui sistem aproximeaz, n nodurile reelei, soluia problemei la limit (1)+(2)+(3). n continuare vom numi aceast metod, metoda reelelor. O a doua metod const n discretizarea integralei (8) din problema variaional, rezultnd o

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

227

funcie ptratic, care apoi se minimizeaz. Vom numi aceast metod, metoda energiei. Prezentm cele dou metode pe urmtorul exemplu.
Exemplul 1. Fie G dreptunghiul ABCD de laturi AB = 5 i AD = 4.

Se cere s se determine o funcie u C ( 2) (G ) C (1) (G ) care este soluie pentru ecuaia Poisson u = f(x,y), (x,y)G , (17) unde 4 dac ( x, y ) G1 f ( x, y ) = y 0 dac ( x, y ) G1 C D 4 7 10 13 16 1 5 8 11 14 17 2 6 G1 9 12 G2 15 18 3
A i care verific condiiile la limit u AB = u DC = 0 ,
Figura 1

B (18) (19) (20)

u AD = 0 , x u + u BC = 0 . x

Interpretarea fizic este urmtoarea: o membran elastic are marginile AB i CD fixe, marginea AD liber, iar marginea BC este rezemat elastic. Funcia cutat u = u(x,y) reprezint deplasarea membranei sub aciunea unei ncrcri continue f = f(x,y), care este aplicat perpendicular pe membran.

7.1. Metoda reelelor (a diferenelor finite)


Pentru discretizarea problemei (17)+(18)+(19)+(20) considerm o reea ptratic de pas h = 1. Deoarece u = 0 pe AB i CD, nodurile de pe aceste laturi nu prezint interes. Cele 18 noduri n care urmeaz s determinm funcia u

228

Bazele Analizei Numerice

sunt notate n figur. Valorile funciei u = u(x,y) i ale funciei f n aceste noduri le vom nota cu u1, u2, ..., u18, respectiv f1, f2, ..., f18. Pentru discretizarea ecuaiei (17) va trebui s aproximm derivatele i

2u x2

2u y2

n nodurile reelei. Ne propunem s facem aceast aproximare n nodul

11. Aadar, aproximm derivatele

2u x2

2u y2

n nodul 11 cu derivatele lor

numerice n acest nod. Conform (19), 5.4 , rezult 2u 2u = u8 2u11 + u14 = u10 2u11 + u12 . i 2 2 x2 h h2 11 y 11 nlocuind n ecuaia Poisson (17), obinem u8 2u11 + u14 u10 2u11 + u12 = f11 + h2 h2 i mai departe

4u11 u8 u14 u10 u12 + h 2 f11 = 0 . n fiecare din cele 12 noduri interioare vom obine cte o ecuaie liniar de tipul (21). Modul de alctuire al ecuaiei de tip (21) este pus simbolic n eviden de figura 2. Dac nodul este interior, dar este de tipul 4, atunci va trebui s inem seama c u CD = 0 . Ecuaia corespunztoare nodului 4 va fi

(21) 1

4u+h f

1 Figura 2 (21) 4u 4 u 5 u 7 u1 + h 2 f 4 = 0 . Aadar, celor 12 noduri interioare le corespund 12 ecuaii liniare cu 18 necunoscute u1, u2, ..., u18. Cele 6 ecuaii liniare care lipsesc se obin din condiiile la limit (19) i (20). u n nodurile de pe laturile AD i BC aproximm derivata cu derivata x numeric dat de (17), 5.4 . 3u1 + 4u 4 u 7 u . De exemplu n nodul 1 avem = 2h x 1

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

229

Cum

u x

AC

= 0, rezult ecuaia liniar

3u1 + 4u 4 u 7 = 0 . (22) Ecuaii asemntoare se obin datorit nodurilor 2 i 3. u +u = 0 , n nodul 16 Deoarece pe latura BC avem condiia la limit BC x obinem 3u16 + 4u13 u10 + u16 = 0 2h i mai departe 3u16 + 4u13 u10 + 2hu16 = 0 . (23) Ecuaii asemntoare se obin datorit nodurilor 17 i 18. n final se obine un sistem de 18 ecuaii liniare cu 18 necunoscute u1, u2, ..., u18. Rezolvnd acest sistem se obin valorile aproximative ale funciei u n nodurile reelei.

7.2. Metoda energiei


Problema la limit din Exemplul 1 este un caz particular al problemei la limit (1)+(2)+(3) i anume: G este dreptunghiul ABCD, C1 = AB CD , C 2 = AD BC , p(x,y)=0, (x,y)G, C = 0 , AD = 0 , BC = 1 , C = 0 .
1 2

Funcionala J asociat acestei probleme la limit, va fi un caz particular al funcionalei (8) i anume 1 1 (24) J (u ) = ( grad u ) 2 + f ( x, y )u dx dy + u 2 dy . 2 BC G 2 Conform Teoremei 1, problema la limit (17)+(18)+(19)+(20) este echivalent cu urmtoarea problem variaional: s se gseasc o funcie u C 2 (G ) C 1 (G ) care satisface condiia u AB = u DC = 0 (25) i care minimizeaz funcionala (24) . Introducem notaiile: 2 2 u 1 u 1 J 1 (u ) = ( grad u ) 2 dx dy = + y dx dy , (26) 2 x 2 G G J 2 (u ) = f ( x, y )u ( x, y ) dx dy , (27)
G

230

Bazele Analizei Numerice

J 3 (u ) =

1 2 u dy 2 BC

(28)

i considerm reeaua ptratic de pas h = 1 din figura 1. Metoda energiei const n aproximarea integralei J = J1 + J2 + J3 n nodurile reelei, aproximare n urma creia se obine o funcie ptratic F = F(u1, u2, ..., u18) . Problema minimizrii funcionalei J cu condiia la limit (25), se va nlocui cu problema minimizrii funciei ptratice F cu aceeai condiie la limit. Condiia necesar de minim pentru F i anume, gradF = 0, ne conduce la un sistem de 18 ecuaii liniare n necunoscutele u1, u2, ..., u18.
Observaia 1. Exist dou avantaje majore ale metodei energiei n raport cu metoda reelelor. Primul const n faptul c n metoda energiei nu este necesar discretizarea condiiilor la limit (19) i (20) i nici a derivatelor pariale de ordinul doi. Al doilea const n aceea c, termenii ptratici din expresia lui F, constituie o form ptratic pozitiv definit. Drept urmare, sistemul de ecuaii liniare, care rezult din minimizarea funciei ptratice F, este simetric i pozitiv definit i astfel avem acces la metodele de relaxare pentru rezolvarea sa.

Pentru discretizarea integralei J1 va trebui s aproximm derivatele i

u . Ne propunem s facem aceast aproximare n ptratul haurat, G2. Pe y

u x

segmentul orizontal determinat de nodurile 11 i 14 avem u u14 u11 , x h iar pe segmentul orizontal determinat de nodurile 12 i 15 avem u u15 u12 . x h Media aritmetic a ptratelor acestor expresii constituie o aproximare bun u pentru derivata x
2
2

n centrul ptratului G2. Aadar, avem:

1 u 2 2 2 (u14 u11 ) + (u15 u12 ) . x 2h u Un rezultat asemntor obinem pentru y u 1 2 2 y 2 (u14 u15 ) + (u11 u12 ) . h 2
2 2

[ [

] ]

(29) i anume: (30)

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

231

innd seama c aria ptratului G2 este h2, din teorema de medie pentru integrala dubl rezult 1 J 1 (u14 u11 )2 + (u15 u12 )2 + (u14 u15 )2 + (u11 u12 )2 . (31) 4 Pentru aproximarea integralei J2 folosim metoda trapezelor pentru integrala dubl (5.3 , (1) ). Avem

h2 [ f11u11 + f14 u14 + f15 u15 + f12 u12 ] . (32) 4 Pentru aproximarea integralei J3 se folosete metoda dreptunghiurilor i se obine h 2 2 2 J 3 u16 + u17 + u18 . (33) 2 Aadar, integrala J = J1 + J2 + J3 se va aproxima cu o funcie ptratic F = F(u1, u2, ..., u18) , care provine din adunarea expresiilor (31)+(32)+(33). Funcia ptratic F se compune dintr-o form ptratic pozitiv definit provenind din discretizarea integralelor J1 i J3 i o form liniar provenind din discretizarea integralei J2. Pentru ca F s fie minim trebuie ca gradF = 0. F Contribuia celulei G2 n va fi u11 J2

2 2 1 [(u11 u12 ) (u14 u11 )] + h f11 = 1 ( u14 + 2u11 u12 ) + h f11 .(34) 2 4 2 4 Datorit celorlalte trei celule vecine, care au n comun cu G2 , nodul 11, F n vor apare i expresiile u11

2 2 1 ( u8 + 2u11 u12 ) + h f11 , 1 ( u10 + 2u11 u14 ) + h f11 , 2 4 2 4 2 1 ( u8 + 2u11 u10 ) + h f11 . 2 4 Deoarece variabila u11 intervine n expresia lui F, numai datorit F celulelor care au comun nodul 11, rezult c se compune din suma celor u11 patru expresii de mai sus. Rezult c F = 4u11 u14 u10 u8 u12 + h 2 f11 = 0 . (35) 1 u11

Contribuia nodului 11 n gradF = 0 este pus n eviden de schema (n cruce) 1 din Figura 3. Deoarece u CD = 0 , un nod interior de tipul nodului 4 ne conduce la ecuaia 1

4u+h2f
Figura 3

232

Bazele Analizei Numerice

F = 4u 4 u 5 u 7 u1 + h 2 f 4 = 0 . u 4

(35)

S analizm acum contribuia n gradF = 0 a unui nod de pe AD, de exemplu a nodului 2. n acest caz sunt numai dou celule vecine care au n comun nodul 2. Expresia cu care intervine u2 n F va fi
2 2 1 1 2 2 h (u 5 u 2 )2 + (u1 u 2 )2 + h f 2 u 2 + ( ) ( ) u u u u + f 2u 2 . + 2 2 3 4 5 4 4 4 Contribuia nodului 2 n gradF = 0 revine la
2 1 [ (u5 u 2 ) (u1 u 2 ) (u5 u 2 ) + (u 2 u3 )] + h f 2 = 0 . 2 2 Se obine astfel ecuaia

h2 1 1 u1 u 3 + f2 = 0 . 2 2 2 Modul de alctuire a ecuaiei (36) este pus n eviden de schema din Figura 4. n cazul nodului 1 vom avea 2u 2 u 5 h2 1 u2 + f1 = 0 , 2 2 deoarece u CD = 0 . n mod analog, nodului 3 i 2u1 u 4 corespunde ecuaia 2u 3 u 6
2

(36) 1 2

h 1 f 2u + u2 + f3 = 0 . 2 2 2 1 n sfrit, rmne s analizm nodurile de Figura 4 2 pe latura BC, de exemplu nodul 17. i n acest caz avem numai dou celule vecine. Contribuia nodului 17 n gradF datorit discretizrii integralelor J1 i J2 va fi 1 1 h2 2u17 u14 u16 u18 + f17 = 0. 2 2 2 h 2u17 = hu17 care 2 provine din discretizarea integralei J3. Aadar, nodului 17 i corespunde ecuaia La aceast expresie trebuie s adugm i termenul 2 2 Modul de alctuire al ecuaiei (37) este pus n eviden de schema din Figura 5.

(2 + h )u17 u14 1 u16 1 u18 + h

f17 = 0 .

(37) 1 2

1
( 2 + h)u +

h2 f 2

Figura 5

1 2

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

233

Deoarece u CD = 0 , nodului 16 i corespunde ecuaia f16 = 0 . 2 2 O ecuaie analoag obinem pentru nodul 18. n cazul concret considerat, cnd funcia f este dat de 4 dac ( x, y ) G1 f ( x, y ) = , 0 dac ( x, y ) G1 rezult f5 =f6 =f8 =f9 = 4 i fi = 0 n rest. Precizm de asemenea c h=1. n final se obine urmtorul sistem de ecuaii liniare AU+b = 0, n care A este matricea coeficienilor necunoscutelor u1, u2, ..., u18, U = ( u1, u2, ..., u18)T , iar b = ( b1, b2, ..., b18)T. Componentele vectorului b sunt toate nule cu excepia componentelor b5, b6, b8 i b9 care sunt egale cu 4. Matricea A arat astfel 1 0 1 0 0 2 2 1 2 1 0 1 0 2 2 1 2 0 0 1 0 2 0 4 1 0 1 0 0 1 0 0 1 0 1 4 1 0 1 0 0 0 1 0 1 4 0 0 1 1 0 0 4 1 0 1 0 0 0 1 0 1 4 1 0 1 0 0 0 1 0 1 4 0 0 1 1 0 0 4 1 0 1 0 0 0 1 0 1 4 0 0 1 0 0 0 1 0 1 4 0 0 1 0 1 0 0 4 1 0 1 0 0 1 0 1 4 1 0 1 0 0 0 1 0 1 4 0 0 1 1 0 1 0 0 3 2 1 1 0 1 0 3 2 2 1 0 0 1 0 3 2 (38)

(2 + h )u16 u13 1 u17 + h

234

Bazele Analizei Numerice

Observm c matricea sistemului este simetric, ireductibil i slab diagonal dominant. Conform Teoremei 2 din 1.2 , rezult c aceast matrice este pozitiv definit. Numrul ecuaiilor sistemului liniar, este egal cu numrul nodurilor. Pentru o reea cu un numr mic de noduri, sistemul se poate rezolva cu metoda Cholesky. De asemenea se poate folosi metode relaxrii simple sau metoda Gauss - Seidel. Dac reeaua se alege mai fin, numrul ecuaiilor crete rapid. Cea mai indicat metod de rezolvare n acest caz este metoda suprarelaxrii. Noi tim s determinm parametrul optim de relaxare pentru o matrice simetric, pozitiv definit, diagonal bloc tridiagonal (1.11 , Teorema 2). n cazul de fa, matricea sistemului este simetric, pozitiv definit i bloc tridiagonal, dar nu este diagonal bloc tridiagonal. S observm ns c structura matricei coeficienilor este legat de numerotarea nodurilor. Pentru acelai numr de noduri, dac se schimb numerotarea, se schimb i matricea sistemului. S considerm din nou o reea format din 18 noduri pe care le mprim n dou pri. O jumtate din noduri au culoarea neagr, iar cealalt jumtate au culoarea alb. Numerotarea o facem astfel nct orice segment paralel cu axele unete 1 11 4 14 7 17 noduri de culori diferite (vezi Figura 6). Pentru nodul 6, schema n cruce din Figura 10 3 13 6 16 9 3 ne conduce la ecuaia 2 12 5 15 8 18 4u 6 u13 u14 u15 u16 + h 2 f 6 = 0 . Pentru nodul 10, schema din Figura 4 ne conduce la ecuaia h2 1 1 f10 = 0 etc. 2u10 u1 u 2 u 3 + 2 2 2 Se obine urmtorul sistem u1 2 2 4 4 4 4 4 4 3 u2 u3 u4 u5 u6 u7 u8 u9 u10
1 2 1 2

Figura 6

u11 u12 u13 u14 u15 u16 u17 -1 0 -1

u18

b 0 0 1 0 1 0 0 0

-1

-1 -1 -1 -1 0 -1 -1 -1 0 -1 -1 -1 0 -1 -1 -1 0 -1 -1 -1 -1 0 -1
1 2

-1
1 2

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic


1 2 1 2

235

-1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 0
1 2 1 2

2 4 4 4 4 4 4 3 3

0 0 1 1 0 0 0 0 0

-1

0 -1

-1

(39) Matricea acestui sistem este simetric, pozitiv definit i diagonal bloc tridiagonal. Definiie. Fie M={1,2,3, ... ,n}. O matrice ptratic AMn(R) se numete de tip (A) , dac exist dou submulimi S i T ale lui M, nevide, cu proprietile: (i) ST=M (ii) ST= (iii) Dac aij0, atunci sau i=j sau iS i jT. S observm c matricea (38) de tipul (A). ntr-adevr, submulimile S = {1,3,5,7,9,11,13,15,17} i T = {2,4,6,8,10,12,14,16,18} satisfac proprietile (i)-(iii). Se poate arta c o matrice este de tipul (A), dac prin permutri simultane de linii i coloane, poate fi adus la forma diagonal bloc tridiagonal. O matrice de tipul (A) poate avea mai multe reprezentri diagonal bloc tridiagonale. Matricea (39) este una dintre aceste reprezentri ale matricei (38).
1 3 6 2 5 9 4 7 8 11 12 15 Figura 7 10 14 17 13 16 18

Numerotarea din Figura 6 este tipic pentru aducerea unei matrice de tip (A) la forma diagonal bloc tridiagonal. O numerotare a nodurilor pe diagonal, ca n Figura 7, conduce de asemenea la o matrice diagonal bloc tridiagonal. Lsm n seama cititorului deducerea matricei sistemului de ecuaii liniare ce corespunde acestei numerotri.
Definiie. Pentru o matrice de tip (A), un sistem de numerotare a nodurilor, cruia i corespunde o matrice diagonal bloc tridiagonal, se numete consistent.

Reamintim c pentru o matrice simetric, pozitiv definit, diagonal bloc tridiagonal, parametrul optim de relaxare este

236

Bazele Analizei Numerice

opt =

2 1+
2 1 1

unde 1 este cea mai mare valoare proprie a matricei -D-1(E+F) (Teorema 2, 1.11). Se poate demonstra c, pentru o matrice de tipul (A), parametrul optim de relaxare este independent de sistemul particular consistent de numerotare a nodurilor. n cazul exemplului nostru, pentru reeaua cu 18 noduri avem: 1 = 0.837319 i opt = 1.29306 . Pentru a obine o soluie cu 6 zecimale exacte, sunt necesare 50 de iteraii cu metoda Gauss-Seidel i numai 16 cu metoda suprarelaxrii. Pentru o reea cu 77 de noduri, 1 = 0.957686 i opt = 1.5530 . Pentru a obine o soluie cu 6 zecimale exacte sunt necesare 200 de iteraii cu metoda Gauss-Seidel i numai 35 cu metoda suprarelaxrii. n ncheierea acestui capitol vom analiza pe scurt cazul cnd frontiera domeniului G este o curb C (Figura 8). R2 h R1 Considerm o reea ptratic, de pas h, R3 care acoper domeniul G i notm cu G C 1 2 3 domeniul haurat (format din celulele coninute n interiorul domeniului G). 4 5 6 7 S presupunem c se cunosc valorile 8 9 10 11 funciei u pe curba C. Notm cu a distana de la nodul 1 la punctul R1. Dreapta determinat de punctele Figura 8 (0,u5) i (a+h,u(R1)) are ecuaia u ( R1 ) u 5 x. y u5 = a+h Punnd condiia ca pentru x = h , s rezulte y = u1, obinem au + hu ( R1 ) u1 = 5 . (40) a+h Pe parcursul discretizrii, variabila u1 se va nlocui cu expresia din membrul drept al relaiei (40), astfel nct variabila u1 va dispare din sistemul final. Nodul 1 se numete nod eliminat, iar nodul 5 se numete nod auxiliar. Nu acelai lucru se ntmpl cu nodul u2. Acesta este nod eliminat din punct de vedere al punctului R2 de pe frontier, dar, n acelai timp este nod auxiliar pentru punctul R3. Rezult c variabila u2 nu va dispare din sistemul final.

Exerciii

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

237

1. Aplicnd metoda reelei pentru h = k = Laplace, 2u x 2 + 2u y 2

1 s se determine soluia ecuaiei lui 4

= 0 , ntr-un ptrat cu vrfurile A(0,0), B(0,1), C(1,1), D(1,0)

i cu condiiile la limit urmtoare: u AB = y , u BC = 30(1 x 2 ) , u CD = 0 , u AD = 0 . R. Facem urmtoarele notaii: x 0 = 0 , y 0 = 0 , xi = x 0 + ih, i = 0, 4 , y j = y 0 + jk , j = 0, 4 ; u ij = u xi , y j

Determinm valorile la limit ale funciei u i obinem: 1 1 3 u (0, ) = 7.5 , u (0, ) = 15 (1), u (0, ) = 22.5 , u (0,1) = 30 4 2 4 1 1 3 u ( ,1) = 28.125 , u ( ,1) = 22.5 , u ( ,1) = 13.125 . 4 2 4 Vom numerota nodurile reelei ca in figura de mai jos: 30 28.125 22.5 13.125 0 0 0 0 0

22.5 15 7.5 0

u13 u23 u33 u12 u22 u32 u11 u21 u31


0 0 0

Vom nlocui derivatele pariale de ordin 2 n ecuaia lui Laplace, pentru nodurile interioare reelei. Obinem astfel ecuaiile:

u 21 + u 01 + u12 + u10 4u11 = 0 u 22 + u 02 + u13 + u11 4u12 = 0 u 23 + u 03 + u14 + u12 4u13 = 0 u 31 + u11 + u 22 + u 20 4u 21 = 0 u 32 + u12 + u 23 + u 21 4u 22 = 0 u 33 + u13 + u 24 + u 22 4u 23 = 0 u 41 + u 21 + u 32 + u 30 4u 31 = 0

238

Bazele Analizei Numerice

u 42 + u 22 + u 33 + u 31 4u 32 = 0 u 43 + u 23 + u 34 + u 32 4u 33 = 0
nlocuind n ecuaiile de mai sus valorile la limita specificate, obinem sistemul de ecuaii: u 21 + u12 4u11 = 7.5 u + u + u 4u = 15 13 11 12 22 u 23 + u12 4u13 = 22.5 28.125 u 31 + u11 + u 22 4u 21 = 0 u 32 + u12 + u 23 + u 21 4u 22 = 0 u + u + u 4u = 22.5 13 22 23 33 u 21 + u 32 4u 31 = 0 u 22 + u 33 + u 31 4u 32 = 0 u 23 + u 32 4u 33 = 13.125 Rezolvnd acest sistem se obin valorile: u11 = 6.077 , u12 = 12.422 , u13 = 19.47 , u 21 = 4.386 , u 22 = 9.141 , u 23 = 14.833 , u 31 = 2.327 , u 32 = 4.922 , u 33 = 8.22 . 1 s se determine soluia ecuaiei lui 4 Laplace cu condiiile la limit specificate n figura de mai jos, daca vrful din stnga jos al plcii are coordonatele (0,0). 2. Aplicnd metoda reelei pentru h = k = 5000 10000 10000 0 0 0 10000 5000 0 0 0

u13 u23 u33 u12 u22 u32 u11 u21 u31

0 0 1 R. Din cauza simetriei condi0 iilor la0 limit 0 fa de axa x = , vom avea: 2 u11 = u 31 , u12 = u 32 , u13 = u 33 (1)

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

239

Aceste relaii reduc numrul valorilor necunoscute ale funciei u, n punctele interioare reelei, la 6. Vom nlocui derivatele pariale de ordin 2 n ecuaia lui Laplace, pentru nodurile (1,1), (1,2), (1,3), (2,1), (2,2), (2,3). Obinem astfel ecuaiile:

u 21 + u 01 + u12 + u10 4u11 = 0 u 22 + u 02 + u13 + u11 4u12 = 0 u 23 + u 03 + u14 + u12 4u13 = 0 u 31 + u11 + u 22 + u 20 4u 21 = 0 u 32 + u12 + u 23 + u 21 4u 22 = 0 u 33 + u13 + u 24 + u 22 4u 23 = 0
innd cont c u i 0 = 0, i = 1, 3 , u 0 j = 0, j = 1, 3 , u14 = u 24 = u 34 = 10000 , i nlocuind n ecuaiile de mai sus valorile la limita specificate, obinem sistemul de ecuaii: u 21 + u12 4u11 = 0 u + u + u 4u = 0 13 11 12 22 u 23 + u12 4u13 = 10000 2u11 + u 22 4u 21 = 0 2u12 + u 23 + u 21 4u 22 = 0 2u13 + u 22 4u 23 = 10000

Rezolvnd acest sistem se obin valorile: u11 = 714 , u12 = 1875 , u13 = 4286 , u 21 = 982 , u 22 = 2500 , u 23 = 5268 , dup cum se observ i in figura de mai jos. 5000 10000 10000 10000 5000 0 0 0 0

4286 5268 4286 1875 2500 1875 714

0 0 0 0

982

714

240

Bazele Analizei Numerice

3. Problema deformrii elastice a unei plci ptrate sub aciunea unei fore = 1 , cu valori la limit egale x 2 y 2 cu 0. S se determine soluia ecuaiei, folosind metoda reelelor, dac latura plcii 1 ptrate se ia egal cu 1, iar distana h = . 4 constante se reduce la rezolvarea ecuaiei + R. u11 = u13 = u 33 = u 31 = 0.0429 , u12 = u 32 = u 21 = u 23 = 0.0547 , u 22 = 0.0703 . 4. Fie G domeniul plan ABCDE din fig.1, AB = 1.5, BC = 0.5, DE = 1, AE = 1. Formulai problema la limit corespunztoare problemei de minim pentru funcionala 1 J (u ) = (grad u )2 dxdy u ds , 2G CD definit pe mulimea funciilor u C ( 2) (G ) C (1) (G ) , care satisfac: u = 0 pe BC, u = 1 pe DE i EA. R. Procednd ca n demonstraia teoremei 1, se obine problema la limit u = 0 n G E D u 0 pe = AB 20 19 18 17 16 (1) n u 11 12 13 14 15 = 1 pe CD n 10 9 8 7 6 u = 0 pe BC , u = 1 pe DE i EA.
A 1 2 3 4 5

2u

2u

Fig. 1. 5. Fie G trapezul ABCD, AB = 1.5, DA = 1, DC = 0.5 (fig.2). S se determine funcionala asociat problemei la limit: D C u + 2 = 0 n G (2) u = 0 pe AB, CD i DA u = 0 pe BC n R. J (u ) = 1 (grad u )2 dxdy 2 u dxdy. 2
G G
A B

Fig. 2.

6. Fie G trapezul ABCD, AB = 1.5, DA = 1, DC = 0.5 (fig.2). S se determine funcionala asociat problemei la limit:

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic

241

u = 1 n G u = 1 pe AB u (3) n = 0 pe BC . u = 0 pe CD u 2u + = 1 pe DA n 1 R. J (u ) = (grad u )2 dxdy + u dxdy + (u 2 u ) ds . 2G G DA 7. S se discretizeze problema la limit (1), folosind metoda energiei pentru funcionala asociat acestei probleme, alegnd reeaua i numerotarea nodurilor ca n fig.1. R. Folosim notaiile i tehnica prezentat la metoda energiei. Fie 1 J 1 (u ) = ( grad u )2 dxdy , J 2 (u ) = u ds . 2G CD

Integrala J 1 + J 2 se va aproxima cu o funcie ptratic F = F (u1 , u 2 , ... , u19 , u 20 ) . Condiia gradF = 0 , conduce n cazul unui nod interior, de exemplu nodul 7, la ecuaia (vezi (35)): F = 4u 7 u 4 u 6 u8 u14 = 0 . u 7 n cazul nodurilor de pe AB, cum este cazul nodului 2, innd seama c nodul 2 este comun la 2 celule, rezult: F 1 1 = 2u 2 u 9 u1 u 3 = 0 . u 2 2 2 innd seama c u = 1 pe AE i u = 0 pe BC, obinem: F 1 1 = 2u1 u10 u 2 = 0 , u1 2 2

F 1 = 2u5 u6 u4 = 0. u5 2
n cazul nodului 17, se procedeaz ca n cazul nodului 7, innd seama c u = 1 pe DE. n consecin: F = 4u17 u18 u16 u14 1 = 0 . u17 S analizm acum cazul nodului 16. Pentru a aproxima J 1 pe celula D, 16, 17, inem seama c:

242

Bazele Analizei Numerice

u16 u17 u 1 u17 u , . h x y h Deci, pe aceast celul, 1 J 1 (u ) (u16 u17 )2 + (1 u17 )2 . 2 Similar, pe celula C,15,16 1 2 J 1 (u ) u15 + (u16 u15 )2 . 2 Pentru a aproxima J 2 , cum ecuaia dreptei CD este y = x + 8h ,

ds = 2dx , deci J 2 (u ) = u ( x, x + 8h) 2 dx h 2 (1 + 0 + 2u16 ) ,


4h 6h

conform formulei trapezelor. innd seama i de aceasta i aportul celulelor vecine, rezult: F 3 3 = 3u16 u15 u17 + 2 2hu16 = 0 , u16 2 2 F 3 = 5u15 u16 u14 u 6 = 0 . u15 2 Similar obinem: 3 5u17 u16 u14 u18 1 = 0 , 2 4u18 u17 u13 u19 1 = 0 4u 20 u11 u19 2 = 0 . n final se obine urmtorul sistem de ecuaii liniare: AU + b = 0, unde A este matricea coeficienilor necunoscutelor u1 , u 2 , ..., u18 , U = (u1 , u 2 , ..., u18 )T , iar b = (b1 , b2 , ..., b18 )T , Matricea A arat astfel:

Rezolvarea numeric a problemelor la limit pentru e.d.p. de tip eliptic


2 1 2 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 2 0 1 2 1 2 0 0 1 2 2 1 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 5 3 2 0 0 0 0

243
0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 4 1 0 1 4 1 0 1 4

2 1 2 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0

2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

4 1 0 0 0 0 0 0 0 1 4 1 0 0 0 0 0 1 0 1 4 1 0 0 0 1 0 0 0 1 4 1 0 1 0 0 0 0 0 1 4 1 0 0 0 0 0 0 0 1 4 1 0 0 0 0 0 1 0 1 4 1 0 0 0 1 0 0 0 1 4 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 4 1 0 1 0 0 0

0 0 0 0 3 2

0 0 0 1 0 3 2

(3 + 2 2 )h
3 2 0 0 0

5 1 0 0

0 0 1 0 1 0 1 0 0

1 b = ,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,1,2 . 2 8. S se discretizeze problema la limit (2), folosind metoda energiei pentru funcionala asociat acestei probleme, alegnd reeaua i numerotarea nodurilor ca n fig.2. 9. S se discretizeze problema la limit (3), folosind metoda energiei pentru funcionala asociat acestei probleme, alegnd reeaua i numerotarea nodurilor ca n fig.2.

Introducere n metoda elementului finit

245

8. Introducere n metoda elementului finit


Formularea variaional a diferitelor probleme la limit mpreun cu cerinele mai slabe de regularitate conduc n mod natural la metode aproximative de rezolvare numite, de obicei, metode directe. Aplicarea acestor metode transform problema n gsirea punctelor staionare ale unei funcii de un numr finit de variabile reale. Rezolvarea aproximativ a problemelor la limit pentru ecuaii difereniale i cu derivate pariale s-a dezvoltat pe trei direcii principale: a) metoda diferenelor finite, b) metoda elementului finit, c) metoda elementului de frontier. n metoda diferenelor finite, sistemul de ecuaii difereniale sau cu derivate pariale valabil pentru orice punct al domeniului de analiz se transform ntr-un sistem de ecuaii valabile numai pentru anumite puncte ale domeniului, puncte ce definesc reeaua de discretizare a domeniului. Dezavantajul principal al acestei metode l constituie utilizarea unei reele rectangulare de discretizare a domeniului de analiz. Deci folosirea ei pe domenii cu contururi sau suprafee curbe introduce o serie de dificulti i de artificii de calcul. Totodat apar numeroase probleme de stabilitate i de convergen a soluiilor, fapt ce impune determinarea condiiilor specifice de apariie i respectiv, de evitare a lor, pentru fiecare clas de probleme. n metoda elementului finit, se utilizeaz, ca punct de plecare un model integral al fenomenului studiat. Acest model poate fi obinut, de exemplu, cu ajutorul calculului variaional. Aceast metod se bazeaz pe aproximarea local pe poriuni sau subdomenii. Datorit folosirii unui model integral ca baz de plecare i a unor seturi de funcii continue pe poriuni, metoda elementului finit nu mai este condiionat de existena unei reele rectangulare. Cu ajutorul ei se pot discretiza practic corpuri geometrice oarecare. Datorit performanelor sale ridicate, metoda elementului finit a devenit aproape o metod standard de analiz i proiectare n ingineria construciilor i alte domenii. n acest capitol vom studia metoda elementului finit.

246

Bazele Analizei Numerice

8.1. Spaii Hilbert


Spaiul euclidian Rn se distinge printre toate spaiile de dimensiune finit n, prin faptul c n el este definit un produs scalar legat de norm printr-o relaie simpl: ptratul normei unui element este produsul scalar al acestui element cu el nsui. De aceea este natural s se considere spaii n care este definit un produs scalar i norma s fie definit de produsul scalar ca mai sus. Definiia 1. Spaiul vectorial real H se numete spaiu prehilbertian dac pentru fiecare pereche de elemente x, y din H este definit un numr real x, y , numit produs scalar al elementului x cu elementul y, astfel nct sunt ndeplinite urmtoarele condiii: (i) x, y = y , x , () x, y H

(ii) (iii)

x + y, z = x, z + y, z , ( ) x, y, z H, , R.
x, x 0, x, x = 0 x = H

Din definiia produsului scalar rezult imediat: x, y + z = x, y + x, z , () x, y, z H, , R. a) x, H = H , x = 0 . b) Ca i n cazul spaiilor euclidiene se poate demonstra c) x, y x, x y, y , () x, y H (inegalitatea CauchyBuniakowski-Schwarz) ntr-un spaiu prehilbertian H se definete x = x, x , x H . Din (iii) i (1) se obine: x 0, () x H ; d) x = 0 x =H

(1)

x = x , () x H , R . e) Totodat din c) rezult x + y x + y , () x, y H (inegalitatea triunghiului). f) n concluzie, (1) definete o norm pe H, deci (H, ) este un spaiu normat.
Definiia 2. Un ir (xn)n din H converge la elementul x din H i vom nota xn x, dac irul numeric ( x n x )n converge la 0, deci dac pentru orice >0, exist nN* astfel nct x n x < , () n n . Un ir (xn)n din H

Introducere n metoda elementului finit

247

se numete ir fundamental (Cauchy) dac pentru orice astfel ca x n x m < , () n, m n .

>0

exist

nN*

Evident, orice ir convergent este ir Cauchy, afirmaia reciproc nefiind, n general, adevrat. Un spaiu normat n care orice ir Cauchy este convergent se Definiia 3. numete complet (Banach). Un spaiu prehilbertian complet se numete spaiu Hilbert (de la numele matematicianului german D. Hilbert). Se poate arta uor c orice ir convergent este mrginit. Propoziia urmtoare semnaleaz proprieti simple specifice spaiilor prehilbertiene.
Propoziia 1. Fie H un spaiu prehilbertian
2 2 2 2

(i)

x+ y

+ x y

= 2( x + y ) (identitatea paralelogramului)
xn, ynx,y
(continuitatea

(ii) Dac xnx i yny, atunci produsului scalar) Demonstraie. (i) Din definiia normei se obine x+ y
2

= x + y, x + y = x

+ 2 x, y + y

x y = x y , x y = x 2 x, y + y . Aducnd cele dou egaliti obinem (i). De remarcat c aceast identitate este generalizarea urmtoarei proprieti din geometria elementar: suma ptratelor diagonalelor unui paralelogram este egal cu suma ptratelor laturilor sale. (ii) Folosind inegalitatea lui Cauchy-Buniakowski-Schwarz obinem x, y x n , y n x, y y n + x x n , y n x y y n + x x n y n . Cum irul (yn)n este mrginit, rezult c membrul drept al inegalitii converge la 0, deci x n , y n x, y . Un interes fundamental l reprezint spaiile Hilbert. Acestea reprezint generalizarea imediat a spaiilor euclidiene deoarece geometria lor este mai apropiat de geometria euclidian dect geometria oricror alte spaii Banach. Spaiile Hilbert au numeroase proprieti specifice spaiilor euclidiene care nu sunt generice spaiilor Banach (de exemplu, identitatea paralelogramului). n continuare, vom da un exemplu de spaiu Hilbert, important n teoria ecuaiilor difereniale i cu derivate pariale.

248

Bazele Analizei Numerice

Exemplul 1. Fie G o submulime deschis, conex i mrginit a lui Rn. Notm

cu L2 (G ) = { u : G R ; u

msurabil i

Vom identifica n L2(G), orice dou funcii care coincid aproape peste tot (a.p.t) pe G. Este clar c dac R i u L2(G), atunci u L2(G). Fie acum u,v L2(G). Din inegalitatea [u ( x) + v( x)]2 2 u 2 ( x) + v 2 ( x) , () x G , obinem c 2 2 2 [u ( x) + v( x)] dx 2 u ( x)dx + v ( x)dx < . G G G 2 2 n consecin, u+v L (G), deci L (G) este un spaiu vectorial real. Totodat pentru orice u,vL2(G), avem

2 u ( x)dx < } .

( u( x) v( x) )2 0 , () x G,
2

de unde

[u ( x)v( x)]2 1 [u 2 ( x) + v 2 ( x)]


deci are sens numrul real

, () x G ,

u , v = u ( x)v( x)dx .
G

def

(2)

Se verific uor c L2(G) este un spaiu prehilbertian. Conform (1), pentru orice uL2(G) se poate defini norma

2 u 2 = u ( x ) dx G Se poate demonstra

1/ 2

(3)

Teorema 1. L2(G) este un spaiu Hilbert. Definiia 4. Fie H un spaiu Hilbert. O mulime D H se numete dens n H, dac pentru orice xH exist un ir (xn)n n D astfel ca xn x.

De remarcat c dac D D H este dens n H.

i D este dens n H, atunci i D

Exemplul 2. Dac G Rn i u : G R, definim suportul lui u ca suppu = {x G; u ( x) 0 } . Considerm mulimea C 0 (G ) , a funciilor reale

, cu suport compact n G (adic anulndu-se n afara unei mulimi compacte din G, ce depinde de funcia considerat), indefinit derivabile. Aceste funcii vor fi numite funcii test. Evident c n raport cu adunarea funciilor test i nmulirea

Introducere n metoda elementului finit

249

cu numere reale a funciilor test, C 0 (G ) este un spaiu vectorial. Exist foarte multe funcii test. De exemplu, se poate arta c, pentru orice funcie continu f, cu suport compact, exist totdeauna o funcie test ce o aproximeaz orict de bine, adic pentru orice > 0 exist astfel ca, pentru orice x, f ( x) ( x) < .

Vom admite fr demonstraie c mulimea C 0 (G ) este dens n L2(G).

Observaia 1. Dac D este dens n H i x, y = 0, pentru orice y din D, atunci x = H. ntr-adevr, dac zH, atunci exist (yn)n din D astfel ca yn z. innd seama de continuitatea produsului scalar, rezult x, z = 0 . Alegnd z=x,

se obine c x = H.
Definiia 5. Fie H un spaiu Hilbert. Elementele x, y, H se numesc ortogonale i se noteaz x y, dac x, y = 0 . Elementul x H este

ortogonal pe mulimea E H i se noteaz x E, dac x este ortogonal pe fiecare element din E. Mulimea tuturor elementelor ortogonale pe o mulime dat E formeaz un subspaiu vectorial nchis al lui H, numit complementul ortogonal al mulimii E i se noteaz E. Teorema urmtoare este fundamental n teoria spaiilor Hilbert i n rezolvarea aproximativ a unor probleme la limit pentru ecuaii difereniale i cu derivate pariale.
Teorema 2. Fie H0 un subspaiu nchis al spaiului Hilbert H i H0 complementul ortogonal al lui H0. Orice element x H se poate reprezenta n mod unic sub forma (4) x = x + x , x H 0 , x H 0 Mai mult, n x se atinge distana dintre x i H0, adic x x = min x y . (5)

yH 0

Demonstraie. Notm cu d = inf x y


yH 0

i alegem elementele xn H0 astfel

ca

, n = 1,2,... n2 Din identitatea paralelogramului se obine 2 2 2 2 x n x m + ( x x m ) + ( x x n ) = 2 x xm + x xn

x xn

<d2 +

(6)

(7)

250

Bazele Analizei Numerice

Dar ( x xm ) + ( x xn ) Deoarece
2

= 4 x ( xm + xn ) / 2

xm + xn H 0 , rezult 2
2

( x x m ) + ( x x n ) 4d 2 . (8) innd seama de (6) i (8), din (7) obinem 2 1 1 2 2 2 2 2 x n x m 2 d + 2 + d + 2 4d = 2 + 2 . n m n m este ir Cauchy i cum H este complet, exist Deci irul (xn)n x = lim x n . Deoarece H0 este nchis, rezult x H 0 . Trecnd la limit n
n

(6), gsim

x x d , iar din x H 0 , avem x x d , deci . (9)

x x = d
x H 0 .

Vom arta acum c Fie y x + y H 0 , deci

x = x x

este ortogonal pe

H0

i deci

un element nenul din x y


2

H0. Pentru orice R, avem


2

= x ( x + y )

d2,
2

adic x x 2 x , y + 2 y Avnd n vedere (9), obinem


2 x , y + 2 y
2 2

d2.

0 .

n particular, pentru

x , y y
2

se deduce

x , y

0,

deci

x , y = 0 , adic x y. Astfel reprezentarea (4) i relaia (5) sunt stabilite. Rmne s artm unicitatea reprezentrii (4). Fie = x1 x . + x1 , x1 H 0 , x1 H 0 . Din (4) se obine x x1 x = x1 Cum
H 0 , iar x1 x H 0 , rezult x x1

x ), ) (x1 (x x1

deci

, x1 = x . Teorema este demonstrat. , x x1 = 0. n consecin x = x1 x x1 Definiia 6. Elementele x i x unic definite de elementul x se numesc
. proieciile elementului x pe subspaiul H0, respectiv H 0 Dup cum este cunoscut nu orice ir Cauchy de numere raionale are limit n Q , ci n R. De fapt n R noiunile de ir convergent i ir Cauchy sunt echivalente (altfel spus, R este complet). n mod similar orice spaiu prehilbertian

Introducere n metoda elementului finit

251

poate fi inclus ntr-un spaiu Hilbert (deci complet). Se numete completatul unui spaiu prehilbertian H, cel mai mic spaiu Hilbert care l conine pe H ca subspaiu. Un rezultat cunoscut de analiz funcional precizeaz c orice spaiu prehilbertian admite un completat. n spaiul completat, vom face distincie ntre elementele vechi din H i elementele noi sau ideale obinute prin completare. Din teoreme cunoscute ale analizei funcionale rezult c dac u este un element ideal din completat, atunci exist un ir de elemente (un)n H, ce converge la u, deci H este dens n completat.

8.2. Teorema variaional fundamental


Fie H un spaiu Hilbert real, D H un subspaiu dens i A : D H un operator liniar.
Definiia 7. Operatorul A se numete strict pozitiv dac

Au, u > 0 , oricare ar

fi u H. Operatorul A se numete simetric dac orice u, v D.

Au, v = u , Av , pentru

n cele ce urmeaz vom presupune c operatorul A este simetric i strict pozitiv. Fie f H. Funcionala ptratic F (u ) = Au , u 2 f , u , u D , (10) se numete funcionala energetic a operatorului A. Are loc
Teorema 3. Pentru ca u0 D s realizeze minimul funcionalei energetice este necesar i suficient ca acesta s satisfac Au0 = f . (11) Dac un astfel de element exist, el este unic. Demonstraie. Necesitatea. Presupunem c u0 D realizeaz minimul funcionalei (10). Fie h un element arbitrar din D i t un numr real arbitrar. Atunci . (12) F (u0 + th) F (u0) Rezult c funcia real (t ) = F (u 0 + th ) i atinge minimul pentru t=0, deci dac este derivabil n 0, atunci (0) = 0 . Cum A este simetric, un calcul direct conduce la

t 1 [ (t ) (0)] = 2 Au 0 f , h + t Ah, h , () h D .

Trecnd la limit cu t 0, obinem Au 0 f , h = 0 , () h D i cum D este dens n H, rezult Au0 = f (Observaia 1).

252

Bazele Analizei Numerice

Suficiena . S presupunem acum c u0 satisface ecuaia (11). Dac uD, uu0, atunci u = u0 + v, v H . Atunci, cum A este simetric, prin calcul obinem F(u) = F(u0) + 2 Au 0 f , v + Av, v . Dar u0 satisface ecuaia (11), deci F(u) = F(u0) + Av, v . Av, v > 0 i n Operatorul A fiind strict pozitiv i v H , rezult c consecin F(u) > F(u0). Aceasta nseamn c n punctul u0 funcionala (10) i atinge minimul. Pentru unicitate, s presupunem c exist nc un element u1 n care F i atinge minimul. Conform celor de mai sus F(u1) > F(u0). n acelai mod ca mai sus, se poate arta c F(u0) > F(u1). Din contradicia obinut rezult c funcionala (10) i poate atinge minimul ntr-un singur punct i teorema este demonstrat.
Observaia 2. Teorema stabilete echivalena ntre problema rezolvrii ecuaiei Au = f i aceea a aflrii minimului funcionalei energetice (10); dac una din aceste probleme este rezolvabil, atunci i cealalt este rezolvabil i soluia uneia dintre ele este i soluia celeilalte. Teorema nu stabilete dac aceste probleme au soluie. Mai mult, este posibil s nu avem soluie pentru problema formulat. Exemplul 3. S considerm urmtoarea ecuaie diferenial foarte simpl

= f ( x) , x (0,1) , u (0) = u (1) = 0 . (13) dx 2 Fie 2 H = L ((0, 1)), Au = u , D = { u C 2 ((0,1)) C1 ([ 0, 1 ]) ; u (0) = u (1) = 0 } .
((0,1) ) D , rezult c D este subspaiu dens n H. S Cum C 0 artm c operatorul A este simetric. Fie u, vD. Atunci, integrnd prin pri, obinem

d 2u

Au, v = u ( x)v( x)dx = u ( x)v( x) 0 + u ( x)v ( x)dx = u ( x)v ( x)dx = u , Av .


0 0 0

Totodat

Au, u = u 2 ( x) dx > 0 ,
0

deoarece n caz contrar u

este

constant i din condiiile la limit, rezult c u = 0. Conform Teoremei 3, pentru ca u0D s fie o soluie a problemei (13), este necesar i suficient ca u0 s realizeze pe D minimul urmtoarei funcionale

F (u ) = u 2 ( x) 2 f ( x)u ( x) dx .
0

(14)

Introducere n metoda elementului finit

253

n plus, dac un astfel de element exist, el este unic.


Exemplul 4. Fie ecuaia diferenial (15) x (t ) + (t ) x (t ) = f (t ) , t (0,1) , cu condiiile la limit x(0) = x(1) = 0 , (16) iar (t) este o funcie pozitiv neidentic nul i continu pe [0, 1] . Fie 2 H = L (0, 1), D = { u C 2 ((0,1)) C1 ([ 0, 1 ]) ; u (0) = u (1) = 0 } i A : D H , Ax (t ) = x (t ) + (t ) x (t ) . Pentru x,yD, integrnd prin pri avem

Ax, y = ( x (t ) + (t ) x(t ) ) y (t )dt = x (t ) y (t )dt + (t ) x(t ) y (t )dt = x, Ay ,


0 0 0

deci A este simetric. Totodat

Ax, x = x 2 (t )dt + (t ) x 2 (t )dt x 2 (t )dt > 0


0 0 0

pentru x(t) 0 (vezi Exemplul 3). Aadar A este strict pozitiv. Aplicnd Teorema 3, rezult c, pentru ca x0D s fie o soluie a problemei (15), (16), este necesar i suficient ca x0 s realizeze pe D minimul funcionalei

F (u ) = x 2 (t )dt + (t ) x 2 (t )dt 2 f (t ) x(t )dt .


0 0 0

(17)

De asemenea, dac exist un astfel de element, el este unic.


Exemplul 5. Fie G R2, o mulime deschis, conex i mrginit i C frontiera

sa. Se caut u C 2 (G ) C1 (G ) , care satisface n G x y i condiia la limit u C =0 . n acest caz, H = L2 (G ) , A = , D = { u C 2 (G ) C1 (G ) ; u


2 2

u =

2u

2u

= f L2 (G )

(18)

(19)
C

= 0}

Cum D conine C 0 (G ) , rezult c D este dens n H. De asemenea, pentru u, vD, conform formulei Green-Riemann, rezult 2u 2u u v u v v dx dy = u vds + u , v = + + dx dy , 2 n x x y y y2 G x C G

254

Bazele Analizei Numerice

n fiind versorul normalei exterioare la C. Cum vD, v C = 0 , deci

u v u v u , v = + dx dy = u,v , G x x y y adic operatorul A este simetric. n plus u u u , u = [( ) 2 + ( ) 2 ] dx dy > 0 , () u 0 , y G x deci A este strict pozitiv. Conform Teoremei 3, u0D este o soluie a problemei (18), (19) dac i numai dac u0 realizeaz pe D minimul funcionalei u u (20) F (u ) = [( ) 2 + ( ) 2 ] dxdy 2 f ( x, y )u ( x, y )dxdy . y G x G
Observaia 3. Problema clasic nu are sens dect pentru funcii u care sunt de clas C 2 (G ) C1 (G ) . Funcionala corespunztoare are sens pentru funcii de

clas C1 (G ) C 0 (G ) . Deci prin trecerea de la problema clasic la funcionala energetic, condiiile de regularitate pot fi slbite. Altfel spus, problema de minim pentru funcionala energetic se poate pune pe o clas mai larg de funcii. Spre u u , , f L2 (G ) , deci nu mai este exemplu, funcionala (20) are sens dac x y necesar ca u s admit derivate pariale de ordinul al doilea, iar derivatele pariale de ordinul nti nu trebuie s fie neaprat continue. Totodat, existena i unicitatea soluiei clasice, (adic a problemei (18), (19)) nu se poate garanta dac funcia f nu este regulat. Se poate arta c orice soluie a problemei de minim care este de clas C2(G), este soluie clasic a problemei considerate. Altfel spus, problema de minim pentru funcionala energetic se poate pune pe o clas mai larg de funcii.

8.3. Metoda Ritz


Creatorul metodei directe clasice este considerat matematicianul elveian W. Ritz (1878-1909). Vom considera o funcional F, definit pe un spaiu corespunztor H, de funcii admisibile. Se caut o funcie u0 astfel ca F (u 0 ) = min F (u ) = d . (21)
uH

Funcia u0 care minimizeaz funcionala se aproximeaz cu o funcie u dintr-un subspaiu n-dimensional oarecare Kn H. Evident F(u) d, pentru orice uKn. Aadar, dac funciile i ( x ) , i = 1, n , formeaz o baz a subspaiului Kn, atunci vom cuta soluia aproximativ sub forma

Introducere n metoda elementului finit

255

u ( x) = ci i ( x) ,
i =1

(22)

numerele reale c1, c2, ... ,cn , urmnd a fi determinate. nlocuind u dat de (22) n funcionala F, rezult F(u) = (c1, c2, ..., cn) i deci problema minimizrii funcionalei F este nlocuit cu problema determinrii extremelor funciei : Rn R. De remarcat c cele dou probleme nu sunt echivalente, deoarece s-a trecut de la funcionala F la funcia , prin intermediul funciilor 1, 2, ..., n , iar alegerea acestora este la dispoziia noastr; eficiena acestei metode, care se mai numete i metoda Rayleigh-Ritz, depinde n mare msur de alegerea funciilor 1, 2, ... , n. Valorile parametrilor c1, c2, ... ,cn se determin, dup cum se cunoate, din sistemul de ecuaii = 0 , i = 1, n , (23) ci adic n F c j j = 0 , i = 1, n . ci j =1 n seciunile urmtoare, vom arta pe exemple concrete, cum se aleg funciile 1, ... , n. n continuare, vom prezenta metoda Rayleigh-Ritz ca metod de cea mai bun aproximare n energie. Fie D un subspaiu dens al unui spaiu Hilbert H, iar A : D H un operator liniar, simetric i pozitiv definit. Presupunem c pentru un fH dat, ecuaia Au = f admite o soluie unic u0D. Fiind dat un subspaiu n-dimensional KnD, vrem s aproximm soluia prin unKn, K n = Sp ( {1 ,..., n }) . Deci cutm un = c11 + ... + cnn astfel ca u 0 u n s fie mic. n ipotezele formulate asupra operatorului A , vom defini un produs scalar, numit produs energie n D, astfel u, v A = Au, v , iar u A = Au , u .

A . Spaiul HA se numete spaiul energetic al operatorului A. Conform Teoremei 2, exist i este unic un element unKn , element de cea mai bun aproximaie, adic u 0 u n A = min u 0 v A . (24)
Vom nota cu HA completatul lui D n raport cu norma
vK n

Definiia 8. Vectorul unic un cu proprietatea (24) se numete aproximanta Rayleigh-Ritz a soluiei u0 dup subspaiul finit dimensional Kn. Dac K n = Sp ( { 1 ,..., n }) , atunci aproximanta Rayleigh-Ritz a soluiei u0 a ecuaiei Au = f este dat de un = c11 + ... + cnn . Fie funcia

256

Bazele Analizei Numerice

g(c1, c2 , ... ,cn )= u n u 0 A . Determinm (c1, ..., cn) punctul de minim al funciei g. Deoarece
g (c1 ,..., c n ) = A(u n u 0 ), u n u 0 = [ ci c j A i , j 2ci f , i ] +
i =1 j =1 n n

+ Au 0 , u 0 ,

din condiiile

g = 0 , i = 1, n , ci
c A j = f , i , i = 1, n ,
(25)

rezult c c1, ... ,cn sunt soluii ale sistemului liniar


j =1

i , j

sistem care s-ar putea obine direct din (23), innd seama de formula (10), care d funcionala energetic a operatorului A.

8.4. Metoda lui Kantorovici (metoda semidiscret)


Metoda const n cutarea soluiei aproximative sub forma u = i i ,
i =1 n

unde coeficienii i , i = 1, n , nu mai sunt scalari, ci funcii de una din variabilele independente, de exemplu x1, iar funciile i sunt funcii de variabilele rmase, x2, ... ,xm , adic u ( x1 ,..., x m ) = i ( x1 ) i ( x 2 ,..., x m ) .
i =1 n

Aceast metod se leag de numele matematicianului rus L. V. Kantorovici i st la baza metodei elementului finit de rezolvare a problemelor nestaionare (dependente de timp).
Exemplul 6. Fie G = {(x, y ) ;

2 2 Kantorovici la rezolvarea aproximativ a ecuaiei 2u 2u + =2, x2 y2 care satisface condiiile la limit

< x, y <

} . S aplicm metoda lui

(26)

Introducere n metoda elementului finit

257

(27) u , y = 0 , y . 2 2 Se alege ca subspaiu aproximant Kn , subspaiul funciilor de un singur argument y, care conform (27) satisfac i = i = 0 , i = 1, n . 2 2 Soluia aproximativ se caut de forma u ( x, y ) = i ( x) i ( y ),
i =1 n

u x, = 0 , x , 2 2

(28)

unde funciile i , i = 1, n , se determin astfel ca u s minimizeze funcionala F corespunztoare problemei date. n acest caz u 2 u 2 dx dy . + F (u ) = + 4 y x G innd seama de (28), avem

F (u ) = ( 1 , 2 ,..., n )dx =J ( 1 , 2 ,..., n ) ,

unde
d i d j d i d j 2 ( 1 , 2 ,..., n ) = { i j dy + i j dy } + dx dx d y d y i =1 j =1
n n 2 2 2

+ i 4 i dy .
i =1

(29)

Deoarece funciile i , i = 1, n , sunt cunoscute, integralele n (29) se pot calcula exact. Se pune deci problema determinrii extremalelor funcionalei J ( 1 , 2 ,..., n ) . Conform unui rezultat clasic de calcul variaional, coeficienii

i , i = 1, n sunt dai de sistemul Euler-Lagrange

d = 0 , i = 1, n . i dx i

258

Bazele Analizei Numerice

n consecin funciile necunoscute i , i = 1, n , care apar n soluia aproximativ (28), se obin din sistemul de ecuaii difereniale
j =1

( j cij j d ij ) = bi ,
n

i = 1, n ,

(30)

unde
d i d j cij = dy , dy dy
2 2

d ij = i j dy , bi = 2 i dy

cu condiiile

2 2 n general, metoda semidiscret se poate aplica cu condiia ca problema unidimensional s poat fi rezolvat nemijlocit i exact.

i = i = 0 , i = 1, n .

8.5. Metoda lui Galerkin


Am prezentat n 8.3 metoda Ritz pentru determinarea soluiei aproximative a ecuaiei Au = f . (31) n ipotezele formulate acolo, soluia ecuaiei Au = f minimizeaz funcionala energetic (32) F(u) = Au, u 2 f , u . Astfel (vezi Exemplul 3), dac A = , funcionala energetic este u u F (u ) = [( ) 2 + ( ) 2 ] dx dy 2 f u dx dy . (33) y G x G Utilizarea integrrii prin pri, adic a formulei Green, pentru transformarea funcionalei (32) ntr-o form care cere o regularitate mai slab a funciilor admisibile (cum se ntmpl de exemplu n (33)), este unul din succesele de baz ale metodei elementului finit. Aproximanta Ritz u = ci i
i =1 n

a soluiei

problemei variaionale satisface

ci
adic

F (u ) = 0 , i = 1, n ,
i = 1, n ,

Au , i f , i = 0 ,

(34)

Introducere n metoda elementului finit

259

numai cnd avem un operator A de forma cerut (de remarcat, c, sistemul (34) nu este altceva dect o rescriere a sistemului (25) ). Ideea metodei lui Galerkin este de a considera soluii aproximative pentru ecuaia (31), de forma de mai sus, unde coeficienii ei se determin din sistemul (35) Au f , i = 0 , i = 1, n , chiar dac A nu satisface condiiile din 8.3. Astfel de soluii aproximative au fost considerate de matematicianul rus B. G. Galerkin (1878-1945). Aadar sistemul (35) se poate utiliza chiar dac operatorul A este neliniar. n consecin, metoda elementului finit se poate utiliza pentru rezolvarea unei clase largi de probleme, mult mai interesante dect clasa problemelor care provin din probleme variaionale. Totui, este de dorit ca (35) s poat fi integrat prin pri, pentru a slbi regularitatea cerut funciilor i. Deci metoda lui Galerkin este absolut general. Ea se poate aplica cu succes la ecuaii de tipuri diferite: eliptice, hiperbolice, parabolice, chiar dac ele nu sunt legate de probleme variaionale, ceea ce reprezint un avantaj fa de metoda lui Ritz. Totui, pentru probleme legate de probleme variaionale, ea se gsete ntr-o interdependen strns cu metoda lui Ritz, iar n multe cazuri este echivalent cu aceasta din urm, n sensul c ambele conduc la aceeai soluie aproximativ.
Exemplul 7. Vom prezenta acum o problem de tip Neumann-Dirichlet pentru operatorul lui Laplace n dimensiune 2. Fie G o mulime deschis i conex din R2, cu frontiera C neted pe poriuni. De asemenea, fie C1, C2 o partiie a lui C, lungimea lui C1 fiind strict r pozitiv i n versorul normalei exterioare la C. S considerm acum problema clasic urmtoare: s se gseasc funcia u C 2 (G ) C 1 (G ) astfel ca u = f n G, (36) (37) u = 0 pe C1, u = g pe C2, (38) n f fiind o funcie real definit i continu pe G, iar g o funcie real definit i continu pe C2. De remarcat c este vorba de ecuaia lui Poisson, cu membrul secund f (semnul se introduce din motive tehnice). Condiia Dirichlet pe C1 este omogen, ceea ce nu este restrictiv. ntr-adevr, dac u satisface u=f n u = g pe C2 i dac tim s gsim o funcie u0 suficient G, u = h pe C1 i n ~ = u u verific (36), de regulat, care ia valorile h pe C1, atunci funcia u 0

260

Bazele Analizei Numerice

(37), (38) cu f nlocuit cu f+u0 i g nlocuit cu g

u 0 . A trece de la h pe n

C1 la u0 pe G nseamn c se face o prelungire, u0 fiind o prelungire a lui h (exist o infinitate). ~=u u , Datorit prelungirii h u 0 i apoi a translaiei u u 0 rezult c ipoteza condiiei Dirichlet omogene pe C1 nu este o restricie. n continuare, vom multiplica ecuaia cu derivate pariale cu o funcie test, apoi vom integra pe G, utiliznd formula lui Green i innd seama de condiiile la limit (37), (38). Fie acum spaiile vectoriale reale W i V, definite astfel: W = v : G R ; v C 2 (G ) C1 (G ) , v = 0 pe C1 ,

V = v : G R ; v C (G ) C (G ) , v = 0 pe C 1 , grad v marginit pe G } . Problema clasic (36)-(38) se poate formula astfel: gsii uW care verific (36) i (38). De remarcat c integrnd prin pri, dac uW i vV, are loc prima formul Green: u u vdxdy = grad(u ) grad(v)dxdy vds . (39) n G G C
1 0
2

Din aceast identitate, innd seama de (36) i (38), rezult c (40) a (u , v) = f v dxdy + g v ds , () v V ,
G C2

unde

a(u , v) = grad u grad v dxdy .


G

Aadar, a(,) este o form biliniar i simetric. Muli autori prezint ca problem variaional asociat problemei (36)-(38) urmtoarea problem: gsii uV astfel nct s aib loc (40). Problema clasic nu are sens dect pentru funcii avnd regularitatea lui W. Pentru problema variaional, este suficient regularitatea lui V. Aadar trecnd de la problema clasic la problema variaional, condiiile de regularitate au fost slbite. Se poate arta c orice soluie u a problemei variaionale care este n W, este soluie a problemei clasice. Totodat uV este soluie a problemei variaionale dac i numai dac minimizeaz pe V funcionala 1 F (v) = a (v, v) fv dxdy + gvds 2 C2 G (comparai cu (33) ). Formularea variaional permite introducerea, explicarea i justificarea metodelor numerice. Pentru a discretiza problema clasic n elemente finite, este nevoie s punem n prealabil problema sub forma variaional. Nu este

Introducere n metoda elementului finit

261

deloc necesar funcionala F. Ea este introdus din simplul motiv c n numeroase probleme similare, dar de interes fizic sau mecanic, funcionala F(v) are o interpretare mecanic interesant, legea fizic corespunztoare scriindu-se adesea sub forma unei probleme de minim. n concluzie sistemul (35) se scrie, dup integrarea prin pri, astfel: a(u , i ) = f i dxdy + g i ds , i = 1, n . (41)
G C2

8.6. Aproximarea funciilor


n mod obinuit, elementele finite se definesc n cadrul procesului de discretizare ca rezultat al descompunerii unui domeniu de studiu n mai multe subdomenii cu interior disjunct. Conexiunea acestor domenii se face prin intermediul nodurilor , care nu sunt altceva dect puncte selectate n domeniul considerat n care se specific valorile funciei studiate sau ale funciei i ale derivatelor sale pn la un anumit ordin. ntr-un sens mai larg, elementul finit apare ca un model de aproximare cu proprieti fizice, geometrice i funcionale. Geometric, elementul finit reproduce ntr-o form idealizat pri dintr-un corp supus analizei. n problemele n care funcia este dat implicit de o ecuaie (diferenial, integral, etc.) valorile funciei sunt parametrii necunoscui ai problemei. n problemele de interpolare, valorile funciei sunt cunoscute de la nceput. Aadar, funciile de interpolare permit aproximarea funciilor avnd ca puncte de reper valorile nodale ale funciei sau valorile nodale ale funciei i ale derivatelor sale pn la un anumit ordin. Deoarece structura acestor funcii de interpolare depinde de structura nodal a elementului, respectiv de forma lui, ele se mai numesc i funcii de form. Aceste funcii de form vor juca rolul funciilor coordonate i , i = 1, n , din metodele prezentate n seciunile anterioare. Dei se pot concepe multe tipuri de funcii de interpolare, se folosesc aproape n exclusivitate funciile polinomiale, datorit uurinei relative cu care acestea pot fi derivate, respectiv integrate.

8.6.1. Aproximarea prin polinoame pe poriuni. Cazul unidimensional


Aadar, ne propunem s aproximm o funcie de o variabil real f, pe un interval finit [a, b]. Vom considera o diviziune a acestui interval : a = x0 < x1 <...< xn = b.

262

Bazele Analizei Numerice

Se obin astfel n subintervale [ xi , xi +1 ] , i = 0, n 1 . Mai nti vom aborda problema aproximrii prin polinoame liniare pe poriuni. Funcia de interpolare liniar pe poriuni depinde de valorile funciei f n nodurile xi . Aceste valori le notm cu fi = f(xi ) , i = 0, n . Pe fiecare subinterval [xi, xi+1], funcia de interpolare este un polinom de forma i ( x ) = a i x + bi , unde ai i bi se determin n mod unic din condiiile i ( x j ) = ij , 0 i, j n (ij simbolul lui Kronecker). Astfel din 0(x0) = 1, 0(xi) = 0, i = 1, n , obinem x1 x , x [ x0 , x1 ] (42) 0 ( x ) = x1 x0 0 , x [ x1 , x n ]. Totodat, pentru i fixat, 1 i n 1, din i ( xi ) = 1 , i ( x j ) = 0 , j i, rezult x xi 1 x x i 1 i xi +1 x i ( x ) = xi +1 x i 0 , x [ xi 1 , xi ] , x [ xi , xi +1 ] , n rest. (43)

n sfrit din n(xn) = 1, n(xi) = 0, i = 1, n 1 , avem 0 , x [ x0 , x n 1 ] xx n ( x) = . (44) n 1 , x [ x n1 , x n ] x x n 1 n Funciile i , i = 0, n , reprezint cel mai simplu tip de funcii de form i se reprezint astfel y 1

x0

x1

xi-1

xi

xn-1

xn

Cu ajutorul acestor funcii acoperi, funcia de interpolare este dat de formula p1 ( x) = f i i ( x) .


i =0 n

(45)

Introducere n metoda elementului finit

263

Se arat uor c funciile i , i = 0, n sunt liniar independente, adic din 0 0 + 11 + ... + n n = 0 , rezult 0 = 1 = ... = n = 0 (este suficient s scriem relaia dat n nodurile xi , i = 0, n ). Vom nota cu L(), spaiul vectorial real de dimensiune n+1, generat de funciile i , i = 0, n , deci al funciilor continue de forma g ( x) = ci i ( x) , ci R , i = 0, n .
i =0 n

(46)

S remarcm, n particular c funciile de form i ( x) , i = 1, n 1, sunt nule n afara intervalului [xi-1, xi+1], deci au suport compact. Funcia p1 este local n sensul c dac x[xi, xi+1] , i = 0, n 1 , depinde numai de fi i fi+1 . Se poate arta c dac funcia f pe care vrem s-o aproximm este suficient de neted (de exemplu, admite derivat de ordinul al doilea), atunci interpolarea prin polinoame liniare pe poriuni, ne d o aproximaie de ordinul al doilea att n norma spaiului L2[a, b], dat de (3), ct i n norma Cebev. Aadar avem (47) f p1 2 k h 2 f 2 , (k > 0), respectiv f p1 = sup f ( x) p1 ( x) k1h 2 f , (k1 > 0) .
x[a ,b ]

(48)

n continuare menionm c pentru aproximarea soluiilor problemelor bilocale pentru ecuaii difereniale se pot folosi funciile B-spline (4.4). Vom avea ns nevoie ca funciile generatoare s se anuleze n extremitile intervalului pe care cutm soluia ecuaiei difereniale considerate. De remarcat c funciile B2, ... , Bn-2 se anuleaz n x0, ..., xn , iar funciile B-1, B0, B1, Bn-1, Bn, Bn+1 nu se anuleaz. De aceea vom proceda dup cum urmeaz. Vom determina constantele a, b, c, d i , , , astfel ca funciile: ~ ~ B0 ( x) = aB1 ( x) + bB0 ( x) , B1 ( x) = cB0 ( x) + dB1 ( x) , ~ ~ Bn 1 ( x) = Bn1 ( x) + Bn ( x) , Bn ( x) = Bn ( x) + Bn +1 ( x), s satisfac condiiile: ~ ~ ~ ~ B0 ( x 0 ) = 0 ; B0 ( x1 ) = 1 ; B1 ( x 0 ) = 0 ; B1 ( x 1 ) = 1 ; ~ ~ ~ ~ Bn 1 ( x n +1 ) = 1 ; Bn1 ( x n ) = 0 ; Bn ( x n 1 ) = 1 ; Bn ( x n ) = 0 . De aici rezult ~ ~ B0 ( x) = B0 ( x) 4 B1 ( x) ; B1 ( x) = B0 ( x) 4 B1 ( x) ; ~ ~ Bn 1 ( x) = Bn ( x) 4 Bn 1 ( x) ; Bn ( x) = Bn ( x) 4 Bn+1 ( x) . ~ Deci funciile generatoare B - spline le vom considera ~ ~ ~ ~ ~ ~ B0 , B1 , B2 , ..., Bn 1 , Bn , unde Bi ( x) = Bi ( x) , i = 2, n 2 .

264

Bazele Analizei Numerice

8.6.2. Aproximarea prin polinoame pe poriuni. Cazul bidimensional


Vom aborda problema aproximrii unei funcii reale definit pe un domeniu mrginit G R2, de frontier C. Ne vom ocupa nti de interpolarea prin elemente finite triunghiulare. S presupunem, pentru simplitate, c frontiera C a domeniului G este o linie frnt. Atunci, este totdeauna posibil s acoperim foarte exact G cu o mulime de triunghiuri Tk , k = 1, p , numite elemente finite i care constituie (abstracie fcnd de frontiera lor) o partiie a lui G. Se realizeaz astfel o triangularizare a domeniului. S notm cu Ai , i = 1, s , vrfurile triunghiurilor. Unele vor fi n interiorul lui G, altele pe C. Aceste vrfuri se mai numesc noduri de discretizare. Triunghiurile se aleg astfel ca: - un vrf al unui triunghi Tk nu trebuie s fie niciodat interior unei laturi a altui triunghi, dar poate fi comun mai multor triunghiuri; - nici un triunghi s nu fie plat; este de dorit s se evite unghiurile foarte apropiate de 00 sau 1800 (vom vedea de ce). De remarcat c, o triangularizare de tip elemente finite este mult mai supl dect o reea de tip diferene finite i permite urmrirea mai fin a frontierei domeniului. Totodat, contrar diferenelor finite, cutm o aproximare a soluiei u, nu numai n nodurile Ai, ci peste tot n G. Vom cuta soluia problemei de interpolare ca o funcie polinomial pe poriuni, nelegnd prin poriuni triunghiurile. Mai precis, n fiecare triunghi Tk = A p Aq Ar , vom cuta o aproximaie de primul grad n x i y, deci o funcie u(x, y) = Ax + By + C. Constantele A, B, C se pot determina n funcie de valorile lui u n cele trei vrfuri A p ( x p , y p ) , Aq ( x q , y q ) , Ar ( x r , y r ) , notate u p , u q , u r , respectiv. Aadar A, B, C reprezint soluia sistemului liniar Ax p + By p + C = u p Ax q + By q + C = u q Ax r + By r + C = u r , de determinant xp yp 1 xq x p y q y p = xq yq 1 = = 2S , xr x p y r y p xr y r 1

(49)

(50)

Introducere n metoda elementului finit

265

S fiind aria triunghiului A p Aq Ar . Deci, dac nici un triunghi nu este aplatizat, determinantul este nenul. Aadar o funcie u ca mai sus, este definit n mod unic, pe fiecare triunghi, prin valorile sale n cele trei vrfuri. S considerm acum urma funciei u(x,y) pe una din laturile triunghiului A p Aq Ar , s zicem ApAq. Este o funcie de gradul nti de abscis (oblic) de-a lungul lui ApAq (se scrie sub forma D + E ); aceast funcie este deci unic determinat de valorile sale n cele dou vrfuri. Presupunnd c funcia de interpolare, definit pe ntreg G, ia aceeai valoare n fiecare nod, comun mai multor triunghiuri, rezult c este continu de la un triunghi la triunghiul vecin, de-a lungul laturii comune. Deci, n condiiile impuse, funcia de interpolare este continu (aceasta justific cerina ca un vrf al unui triunghi s nu fie interior unei laturi a altui triunghi). Aadar fiind dat o funcie u continu pe G, vom numi funcie de interpolare pe poriuni a lui u, funcia continu pe G , lund aceleai valori ca i u n toate nodurile (vrfurile) de triangularizare i polinomial de gradul unu n fiecare triunghi. Vom ncepe cu construirea unei baze canonice ntr-un triunghi. Pentru comoditate, s notm triunghiul A p Aq Ar cu A1A2A3 i s-l studiem deocamdat independent de alte triunghiuri. Considerm funciile 1 ( x, y ) , 2 ( x, y ) , 3 ( x, y ) afine, care satisfac i ( A j ) = ij (simbolul lui Kronecker), i, j = 1, 2, 3 . Conform celor de mai sus fiecare funcie exist i este unic i 1 1 ( x, y ) = [( y 2 y 3 )x + (x3 x 2 ) y + x 2 y 3 x3 y 2 ] , 1 2 ( x, y ) = [( y 3 y1 )x + ( x1 x3 ) y x1 y 3 + x3 y1 ] , (51) 1 3 ( x, y ) = [( y1 y 2 )x + ( x 2 x1 ) y + x1 y 2 x 2 y1 ] , = (x 2 x1 )( y 3 y1 ) ( x3 x1 )( y 2 y1 ) . Aceste funcii sunt liniar independente, deoarece 11 ( x, y ) + 2 2 ( x, y ) + 3 3 ( x, y ) = 0 1 = 2 = 3 = 0, dup cum se vede uor, scriind relaia n punctele A1, A2, A3 . n consecin funciile 1 ( x, y ) , 2 ( x, y ) , 3 ( x, y ) formeaz o baz, numit baza canonic, n spaiul vectorial al polinoamelor de gradul nti, relativ la triunghiul A1A2A3. n plus, dac se caut funcia polinomial de gradul nti, care ia n A1 , A2 , A3 valorile impuse u1, u2, u3, rspunsul este simplu (52) u ( x, y ) = u11 ( x, y ) + u 2 2 ( x, y ) + u 3 3 ( x, y ), ceea ce justific adjectivul canonic.

266

Bazele Analizei Numerice

Fie acum P spaiul vectorial real al funciilor continue i afine pe poriuni, pe G . Este clar c dimensiunea lui P coincide cu numrul vrfurilor, dim P = s ( P depinde evident de triangularizarea domeniului aleas). Baza canonic a lui P este dat de funciile i ( x, y ) , i = 1, s, unde

i ( A j ) = ij , i, j = 1, s .
Atunci pentru orice uP are loc u ( x, y ) = u i i ( x, y ) , u i = u ( Ai ) , i = 1, s .
i =1 s

Pentru aceasta este necesar definirea unei corespondene biunivoce ntre numrul global al nodului i numrul triunghiului din care acesta face parte i numrul local al nodului n triunghi. Ce putem spune despre o funcie i ( x, y ) ? Suportul lui i este format numai din triunghiurile care l au pe Ai ca vrf ; el este deci mic, cu att mai mic cu ct triangularizarea este mai fin, aceasta fiind una dintre caracteristicile metodei elementului finit. Dac punctul Ai este interior lui G, este nul pe C, dar dac AiC, i este nenul n i segmentele de frontier care ajung n Ai. Dac se reprezint pe axa Oz valorile lui i se obine graficul lui i . Este o suprafa poliedral (adic format din fee plane). Aceast suprafa este o piramid a crei nlime este verticala din Ai, adic 1 i a crei baz se ntinde pn la punctele imediat vecine A j , Ak ,..., piramid prelungit de planul orizontal. Ai interior lui G Ai pe frontiera lui C a lui G

Ap Ap Ai Aj Ak
Graficul lui i

1 Ai Ak

Al

n continuare, ne vom ocupa de interpolarea prin elemente finite dreptunghiulare. Domeniile de tip dreptunghiular, adic domeniile cu laturile paralele cu axele de coordonate apar n multe probleme ale fizicii i tehnicii. Prin urmare elementul dreptunghiular are mare importan. Ne propunem s aproximm o funcie u definit pe domeniul dreptunghiular G = [a,b] [c, d]. Fie x : a = x0<x1< ... <xn = b o diviziune a

Introducere n metoda elementului finit

267

lui [a, b] cu n+1 puncte,

y : c=y0< y1< ... < ym o diviziune a lui [c, d] cu

m+1 puncte i = x y diviziunea lui G.


Elementul finit dreptunghiular tipic este [xi, xi+1][yj, yj+1]. Putem considera polinoamele liniare pe poriuni din cazul unidimensional, i , date de (42)-(44). Atunci funcia de interpolare este dat de

p( x, y ) = u i , j i ( x) j ( y ) ,
i =0 j =0

n m

(53)

unde

u i, j = u ( xi , y j ) , i = 0, n , j = 0, m .
Pe elementul dreptunghiular [xi, xi+1][yj, yj+1] , funcia de interpolare are forma p i , j ( x, y ) = u i , j i ( x) j ( y ) + u i +1, j i +1 ( x) j ( y ) + (54) + u i , j +1 i ( x) j +1 ( y ) + u i +1, j +1 i +1 ( x) j +1 ( y ) . Baza canonic n spaiul funciilor de forma

p( x, y ) = ci, j i ( x) j ( y ) , ci, j R , i = 0, n , j = 0, m ,
i =0 j =0

n m

este dat de funciile ij ( x, y ) = i ( x) j ( y ) , i = 0, n , j = 0, m .

(55)

8.7. Metoda elementului finit pentru probleme bilocale


Se consider urmtoarea ecuaie diferenial foarte simpl (56) u ( x) = f ( x) , 0 < x < 1 , u (0) = u (1) = 0 , f L2 (0,1) (Exemplul 3). Problema rezolvrii acestei ecuaii este echivalent cu cea a minimizrii funcionalei

F (u ) = u 2 ( x) dx 2 f ( x) u ( x) dx
0 0

pe mulimea W = { u C 2 ([ 0 , 1 ]) C 1 ([ 0 , 1 ]) ; u ( 0 ) = u (1) = 0} Pentru orice u, vW, are loc

u , v A = u (x ) v ( x) dx .
0

268

Bazele Analizei Numerice

Vrem s aproximm soluia problemei bilocale (56) folosind polinoamele liniare pe poriuni (8.6.1). Aceste funcii sunt continue, dar nu sunt derivabile, deci nu aparin lui W . n consecin, W nu este spaiul bun pentru rezolvarea aproximativ a acestei probleme, folosind polinoamele liniare pe poriuni. Pentru a stabili spaiul convenabil vom proceda dup cum urmeaz. Introducem o noiune nou. Funcia g se numete derivata n sensul distribuiilor a funciei w i se noteaz g = w dac i numai dac satisface
1 0 1 w dx = g dx , () C , (0) = (1) = 0 . 0 1

(57)

Dac funcia w are derivat continu w , atunci aceasta coincide cu derivata n sensul distribuiilor a lui w. Bineneles c, derivata n sensul distribuiilor poate exista fr ca derivata n sens clasic s existe. De exemplu, o funcie w continu, care are derivat mrginit cu excepia unui numr finit de puncte, are derivat n sensul distribuiilor. n punctele n care derivata n sens clasic exist, cele dou derivate coincid. Astfel pe intervalul [-1, 1] , funcia w(x) = x nu este derivabil n x = 0 , dar admite derivat n sensul distribuiilor funcia g(x) = sign(x) . Fie 1 ( (0, 1) ) = { u L2 (( 0,1 )) ; u ( x) L2 (( 0,1 )) ; u (0) = u (1) = 0 } H0 (este vorba de derivata n sensul distribuiilor). 1 1 Spaiul W este dens n H 0 (( 0, 1 )) . De fapt, H 0 (( 0, 1 )) este chiar spaiul energetic al operatorului Ax (t ) = x (t ) . Aadar, pentru construirea aproximantelor Ritz, vom folosi polinoamele liniare pe poriuni, construite n 8.6.1 . Fie : 0 = x 0 < x1 < x 2 <...< x n < x n +1 = 1, o diviziune cu noduri 1 i i , i = 1, n , funciile echidistante a intervalului [0, 1], xi = ih, h = n +1 x xi 1 , xi 1 x xi h x x i ( x) = i +1 , xi x xi +1 , i = 1, n. (58) h , n rest 0
1 ((0,1)) , i = 1, n . Cutm soluia sub forma Funciile i H 0

~ = c , constantele c determinndu-se din sistemul (25), unde u j j j


j =1

i , j

= i ( x) j ( x)dx, iar
0

f , i A = f ( x) i ( x)dx
0

Introducere n metoda elementului finit

269

(derivatele sunt n sensul distribuiilor). Este un sistem de n ecuaii, numite nodale, de forma Bx = d, unde elementele matricei B sunt

bij = i ( x) j ( x)dx , i, j = 1, n, x = (c1 , c 2 ,..., c n ) T , d = ( d1 , d 2 ,..., d n ) T ,


0

d i = f ( x) i ( x)dx , i = 1, n .
0

Matricea B se numete matrice de rigiditate i este simetric i pozitiv definit. n consecin, sistemul Bx = d admite soluie unic. Prin calcul obinem 2 daca i = j h , 1 bij = , daca i-j = 1 h n rest . 0 , De asemenea

di =

~ Aproximnd aceste integrale cu formula trapezului, obinem d i = h f ( xi ) , ~ deci n locul sistemului Bx = d, avem de rezolvat sistemul Bx = d , cu membrul drept obinut prin aplicarea unei formule de integrare numeric. Matricea de rigiditate B s-a calculat exact, avnd polinoame pe poriuni i integrarea fcndu-se uor. n alte cazuri matricea B se obine tot prin calculul aproximativ al unor integrale. Se pune problema alegerii acestor formule, n sensul c trebuie artat c formulele de cuadratur aplicate ne dau o convergen bun , deci o compatibilitate n rezolvarea problemelor puse de metodele variaionale. Practic, n cele mai multe cazuri, alegnd ca funcii de baz polinoamele pe poriuni, matricea B se calculeaz exact, integrarea fcndu-se exact. Cum ns funcia f nu este, de obicei, un polinom, problema este de a calcula aproximativ di. n cazul de mai sus, avem

1 xi 1 xi +1 f ( x )( x x ) dx + f ( x)( xi +1 x)dx . i 1 hx h x
i 1 i

270

Bazele Analizei Numerice

0 2 1 0 ... 0 f ( x1 ) f ( x2 ) 1 2 1 ... 0 0 1 B= ... ... ... ... ... , d = ... 2 ... h f ( x n 1 ) 0 0 0 ... 2 1 f ( xn ) 0 0 ... 1 2 0 Aplicnd ecuaiei u ( x ) = f ( x ) , metoda standard cu diferene finite, se obine exact acelai sistem de ecuaii. n cazul metodei elementului finit, soluia aproximativ gsit, aproximeaz soluia exact n orice punct al intervalului [0, 1]. S considerm acum problema mai general x (t ) + (t ) x(t ) = f (t ) , 0 t 1 , (59) x(0) = x(1) = 0 , (t ) > 0 i continu pe [0,1] . Problema este abordat variaional n Exemplul 4. Considerm deci operatorul Ax (t ) = x (t ) + (t ) x (t ) . Dac funcia f este continu pe [0,1] , atunci exist soluie unic a problemei (59) i x C 2 ( [0,1] ) . Pentru determinarea aproximaiei element finit ~ x (t ) a soluiei x(t) vom folosi, pentru nceput, polinoamele spline cubice. Fie : 0 = t 0 < t1 <...< t n = 1 , o diviziune cu noduri echidistante i ~ ~ ~ ~ funciile B0 , B1 , ..., Bn , din 8.6.2. n acest caz i (t ) = Bi (t ) , i = 0, n . Aceste funcii aparin domeniului de definiie al operatorului A. ~ x (t ) a soluiei exacte x(t), va fi Aproximaia element finit ~ ~ x (t ) = ci Bi (t ), unde c = (c 0 , c1 , ..., c n ) T este soluia sistemului algebric liniar
i =0 n

j =0

ABi , B j c j = f , Bi , i = 0, n .

~ ~

n acest caz, elementele matricei de rigiditate sunt 1 ~ ~ ~ ~ ~ ~ bi, j = ABi , B j = Bi (t ) B j (t ) + (t ) Bi (t ) B j (t ) dt , i, j = 0, n ,

iar
1 ~ d i = f (t ) Bi (t )dt , i = 0, n . 0

Introducere n metoda elementului finit

271

Matricea de rigiditate sau matricea energie va fi o matrice band de tip 7. Matricea energie i termenul liber se pot calcula folosind, de exemplu, metoda lui Gauss cu dou noduri. n ceea ce privete eroarea, se poate demonstra
Teorema 4. n ipotezele de mai sus i dac f C 2 [0,1] , atunci exist o constant K, independent de n, astfel nct x~ x = sup x(t ) ~ x (t ) Kh 3
x[0,1]

(unde h este pasul reelei) . S analizm acum situaia n care funciile de form nu aparin domeniului operatorului A, cum este cazul cnd acestea sunt polinoamele liniare pe poriuni date de (58). Vom proceda ca n exemplul de la nceputul seciunii. Deci ~ x (t ) = ci i (t ), cu i date de (58). Acum
i =1 n

b ij = i j + i j dt , i, j = 1, n
0

(derivatele sunt luate n sensul distribuiilor). Matricea de rigiditate va fi o matrice band de tip 3. Se poate demonstra
Teorema 5. n ipotezele de mai sus i dac f C[0, 1] , exist o constant K independent de n, astfel ca x~ x Kh . Se observ c dac n aproximare folosim funcii de baz mai netede, obinem o aproximare mai bun. Se ajunge ns la un sistem liniar algebric cu mai multe elemente nenule. n cazul polinoamelor cubice spline se obine o matrice band de tip 7, n timp ce n cazul polinoamelor pe poriuni de grad nti, se obine o matrice band de tip 3.

8.8. Metoda elementului finit pentru probleme la limit pentru ecuaia lui Laplace n plan
G = , , R 2 2 2 2 2 gseasc soluia ecuaiei
Fie i C frontiera sa. Se cere s se

272

Bazele Analizei Numerice

(60) = 2, x2 y2 cu condiiile la limit u x , = 0 , x 2 2 (61) u , y = 0 , y . 2 2 Problema este abordat variaional n Exemplul 5, rezolvarea sa fiind echivalent cu cea a minimizrii funcionalei u u F (u ) = [( ) 2 + ( ) 2 ] dx dy + 2 u ( x, y ) dx dy y G x G pe mulimea W = { u C 2 (G ) C1 (G ) ; u = 0 pe C} . Pentru orice u,vW, are loc (u, v ) = ( u v + u v ) dx dy . G x x y y Pentru gsirea soluiei aproximative a problemei (60)-(61), vom folosi elementele finite dreptunghiulare construite n seciunea 6.2, care nu aparin lui W. n consecin W nu este spaiul bun pentru rezolvarea acestei probleme cu elemente finite dreptunghiulare. Pentru a depi aceast dificultate, s constatm, mai nti, c noiunea de derivat n sensul distribuiilor, introdus n seciunea anterioar pentru funcii de o variabil, se extinde, n mod corespunztor la funcii de mai multe variabile. u De exemplu, funcia g(x,y) este , n sensul distribuiilor, dac x satisface dx dy , ( ) C 1 , = 0 pe C . g dx dy = u x G G Fie u u 1 H0 L2 (G ) , u = 0 pe C} , (G ) = {u L2 (G ) ; u , x y (derivatele pariale sunt luate n sensul distribuiilor) . 1 (G ) , H 1 Spaiul W este dens n H 0 0 (G ) fiind spaiul energetic al
1 operatorului -. Spaiul H 0 (G ) este spaiu Hilbert n raport cu produsul scalar u v u v u , v = (uv + + ) dx dy . x x y y G

2u

2u

Introducere n metoda elementului finit

273

Pentru gsirea soluiei aproximative, partiionm domeniul G n (n+1)2 ptrate, folosind 2n paralele (echidistante) cu axele de coordonate. Funciile de baz utilizate sunt ij , i, j = 1, n , date de (55) i satisfac condiiile la limit (61). Cutm soluia aproximativ de forma

~ ( x, y ) = u cij ij ( x, y ),
i =1 j =1

n n

(62)

constantele cij , i, j = 1, n , urmnd a fi determinate din urmtorul sistem obinut din (25)
k =1l =1

c kl [
G

n n

kl ij kl ij + ] dx dy + 2 ij dx dy = 0 , x x y y G
i, j = 1, n

(63)

sau nc
k =1 l =1

a ij kl c kl + 2 ij dxdy = 0 , i, j = 1, n
G

unde

aij kl = [
G

j k ( x) i ( x) l ( y ) j ( y ) + l ( y ) ( x) k ( y ) i ( y )] dx dy, y x x y

funciile i , i = 1, n , fiind date de (43). Mai nti s calculm


G 2 ij dxdy = i ( x) j ( y )dxdy = i ( x)dx j ( x)dx = h . G xi 1 y i 1 xi +1 y i +1

innd seama de suportul funciilor scrie sub forma


i +1 k =11 l = j 1

ij ( x, y ) , sistemul (63) se mai

j +1

2 aij kl c kl + 2h = 0 , i, j = 1, n .

Calcule elementare arat c:

i 1 (t ) i (t )dt =

h , 6

2 i (t )dt =

2h 1 , i1 (t ) i (t )dt = , 3 h

2 i (t )dt =

2 . h

n consecin

1 aij kl = , k = i 1, i + 1 , l = j - 1, j + 1 , 3

cu excepia

8 elementului aij ij = , deci sistemul (64) devine 3

274

Bazele Analizei Numerice

3cij

1 i +1 j +1 2 c kl + 2h = 0 , i, j = 1, n . 3 k =i 1 l = j 1
2

(65)

Soluia exact a problemei considerate este

8 ( 1)k +1 ch(2k 1) y u ( x, y ) = + x 2 + cos(2k 1)x . k =1(2k 1)3 ch((2k 1) / 2) 2 Valorile soluiei aproximative n nodurile din figura :

0, 2

10 8 5

9 6

7 4 3 2

, 2 2

(0,0)
sunt date n urmtorul tabel : n=3 n=7 Nodul 1 - 1,534 - 1,473 2 - 1,321 3 - 0,950 - 0,907 4 - 0,370 5 - 1,394 6 -1,089 7 - 0,566 8 - 1,278 - 1,146 9 - 0,666 10 - 0,698

1 N = 15 - 1,459 - 1,308 - 0,897 - 0,362 - 1,381 - 1,078 - 0,559 - 1,135 - 0,660 - 0,692
Soluia exact - 1,454 - 1,304 - 0,894 - 0,359 - 1,376 - 1,075 - 0,556 - 1,132 - 0,658 - 0,690

n continuare, relum problema Dirichlet-Neumann din Exemplul 7, pe care o vom concretiza. Considerm ptratul G = (0,1) (0,1) R 2 , din figur, cu frontiera C1 C 2 , unde C1 = OC CB BA i C2=OA. Problema (36)-(38) se scrie - u=f n G, u = 0 pe OC, CB i BA, (66) (67)

Introducere n metoda elementului finit

275

u u = = g pe OA x y
Vom considera o reea de tip 1 diferene finite, cu pasul h = k = pe n OC , respectiv OA. Decupm apoi fiecare ptrat astfel obinut n dou triunghiuri i obinem o triangularizare de ~ ( x, y ) soluia tip elemente finite. Fie u

(68)

y
C

C1

C1

C1

aproximativ definit pe G i nu numai n puncte izolate, cum se ntmpl n x cazul diferenelor finite. Vom utiliza pentru triangularizarea de mai sus, spaiul C2 O A P al funciilor continue pe G i afine pe poriuni construite n seciunea 6.2. Aceste funcii nu aparin ns spaiului V = C1 (G ) C 0 (G ) din exemplul 7. n consecin, V nu este spaiul bun, alegerea bun fiind spaiul u u H 1 (G ) = {u L2 (G ) ; u , L2 (G )} , x y (derivatele sunt considerate n sensul distribuiilor), pentru care P este subspaiu. ~ de forma Cutm soluia u ~ ( x, y ) = c ( x, y ), u i i
i =1 s

(69)

fiind numrul vrfurilor, funciile

i , i = 1, s

sunt funciile de baz

corespunztoare triangularizrii, iar coeficienii ci , i = 1, s , urmeaz a fi determinai. Pentru simplitatea expunerii, vom presupune c vrfurile de pe C1 ocup ultimele poziii, n+1, n+2, ..., s. Aadar vom avea ci = 0 , i = n + 1, s , necunoscutele propriu-zise fiind ci , i = 1, n . n definitiv ~ ( x, y ) = c ( x, y ), u i i
i =1 n

(70)

necunoscutele ci (41), adic


n j =1

~ s satisfac sistemul trebuind determinate din condiia ca u

a( j , i )c j = f i dxdy + g i dx , i = 1, n ,
G C2

(71)

unde

a j , i = grad i grad j dxdy .


G

276

Bazele Analizei Numerice

Notnd aij = a( i , j ) , i, j = 1, n , bi = f i dxdy + g i dx , i = 1, n ,


G C2

(72)

sistemul (71) se scrie


j =1

aij c j = bi , i = 1, n .

(73)

Aadar se pune problema rezolvrii unui sistem de n ecuaii liniare, numite nodale. Dac x este vectorul coloan al necunoscutelor cj i b vectorul coloan termen liber din (73), atunci sistemul (73) se scrie sub forma Ax = b, (74) unde matricea A = (aij ) , i, j=1,n , se numete matrice de rigiditate i este
B B

evident simetric. Mai mult, matricea A este i pozitiv definit. ntr-adevr n n n n ~ )2 dx dy 0 . x T Ax = a( j , i )ci c j = a c j j , ci i = (grad u i =1 j =1 i =1 G j =1 T ~ ~ Totodat x Ax=0, implic grad u = 0 n mulimea conex G, deci u ~ ~ este constant pe G. Dar u se anuleaz pe C1, deci u =0 n G i n consecin x=0, adic A este pozitiv definit. Prin urmare matricea A este nesingular, deci sistemul (73) admite soluie unic. Matricea A nu este numai simetric ci i rar (are multe zerouri). ntradevr supp i este constituit din mulimea triunghiurilor care l au pe Ai ca vrf. Deci elementul aij are anse s fie nenul, dac i numai dac Ai i Aj sunt vrfuri ale cel puin unui acelai triunghi. Elementul aij este integrala pe supp i supp j , adic pe o reuniune
P P B B B B B B B B B B

de triunghiuri. Integrala fiind funcie aditiv de mulime, se va calcula pe fiecare triunghi i adunnd rezultatele obinute. Spre exemplu, n figura alturat aij este integrala din grad i grad j pe cele dou triunghiuri marcate, integrandul (constant) avnd o expresie diferit pe fiecare din cele dou triunghiuri n chestiune. n practic se procedeaz astfel: se iniializeaz coeficienii aij cu zero. Se trece n revist fiecare triunghi, adunnd valorile care reprezint contribuia acestui triunghi la coeficienii aij corespunztori (pn n acest moment acetia reprezint contribuiile aduse de triunghiurile precedente). Vectorul coloan b se poate calcula n acelai timp cu matricea A.

Aj
B

Ai
B

Introducere n metoda elementului finit

277

De remarcat c aii > 0 , ( ) i = 1, n . Matricea A nu este totdeauna diagonal dominant. A fiind simetric i pozitiv definit pentru rezolvarea sistemului (74) se poate aplica o factorizare de tip Cholesky. Bineneles c se pot aplica i metode iterative. Pentru calculul termenului liber n (73), vom utiliza o formul de cuadratur numeric i anume: h( A p ) + h( Aq ) + h( Ar ) , (75) h( x, y ) dx dy S (T ) 3 T dac T este triunghiul Ap, Aq, Ar, respectiv b v(a) + v(b) . v( x) dx (b a) 2 a
B B B B B B P P

(76)

Formula (76) nu este altceva dect formula trapezului; are o precizie de ordinul 2: dac f este regulat (local de clas C2 ) i b-a = h 0 , atunci integrala pe (a,b), care este de ordin h, este aproximat de ordinul O(h3). n ceea ce privete (75), este formula echivalent formulei (76) n dimensiune 2; are o precizie de ordinul 2. Avnd n vedere simplitatea 3 i repetitivitatea reelei, este 2 suficient s scriem (71) ntr-un nod interior lui G i ntr-un nod pe OA 4 ~=0 (extremitile se exclud dac u n O i A). S analizm mai nti 1 0 cazul unui nod interior lui G , ca n figura alturat. Vom utiliza o numerotare local, nodul fiind notat 5 6 cu indicele 0, iar celelalte cu 1, 2, 3, 4, 5, 6. Funcia 0, reprezentat pe axa Oz este o piramid de nlime 1 pe verticala din nodul 0 i a crei baz se ntinde pn la nodurile imediat vecine, 1, 2, 3, 4, 5, 6 , prelungit n planul orizontal. Aadar supp 0 este hexagonul 123456. Din (73) se obine
P P B B

i =0
B B

a 0i ci = b0 ,
B B

(77)
B B B B

cu a0i i b0 date de (72). Prin translaie i simetrie se constat c a01 = a04 , a02 = a05 , a03 = a06 . Pe fiecare triunghi din supp0, grad0 este un vector constant, deoarece n fiecare triunghi 0 are forma r r 0(x,y) = Ax + By + C, deci grad 0 = Ai + Bj . De exemplu, dac nodul 0 are coordonatele (ih, jh), h fiind pasul reelei, atunci pe triunghiul 012, impunnd condiiile 0(ih, jh) = 1 , 0((i+1)h, jh) = 0 , 0(ih, (j+1)h) = 0 ,
B B B B B B B B B B B B B B B B B B B B B B

278

Bazele Analizei Numerice

se obine

1 1 1 1 , B = , deci grad 0 = , . h h h h De remarcat c grad0 nu depinde de i i j. n mod asemntor se poate calcula grad0 i pe celelalte triunghiuri care compun supp0 i de asemenea grad0 , i = 1,6 . n consecin, integrala pe fiecare triunghi este egal cu produsul dintre h2 aria triunghiului cu un produs scalar obinuit. 2 S calculm acum a 0i , i = 1,6 . Supp0 este hexagonul 123456. Avem: 1 1 1 1 pe 012 , grad 0 = , ; pe 045 , grad 0 = , ; h h h h 1 1 pe 023 , grad 0 = 0, ; pe 056 , grad 0 = 0, ; h h 1 1 pe 034 , grad 0 = , 0 ; pe 061 , grad 0 = , 0 ; h h supp 0 supp 1 = 012 061 : A=
B B B B B B B B B B

1 1 1 pe 012 , grad 1 = , 0 ; pe 061 , grad 1 = , . h h h supp 0 supp 2 = 012 023; 1 1 1 pe 012 , grad 2 = 0, ; pe 023 , grad 2 = , . h h h supp 0 supp 3 = 023 034 : 1 1 pe 023 , grad 3 = , 0 ; pe 034 , grad 3 = 0, ; h h n consecin: a00 = (grad 0 )2 dxdy , S = 012 023 034 045 056 061,
S

deci

a 00 =

2 1 1 2 1 1 2 + 2 + 2 + 2 + 2 + 2 =4 h h h h h h a 01 = a 04 = grad 0 grad 1 dxdy , S = 012 061 , deci


S

h2 2

a 01 = a 04 = 1

Introducere n metoda elementului finit

279

a 02 = a 05 = grad 0 grad 2 dxdy , S = 012 023 , deci


S

. a 03 = a 06 = 0 Deoarece 0=0 pe C2, conform (72), b0 = f 0 dxdy,


S
B B B B

a 02 = a 05 = 1 a 03 = a 06 = grad 0 grad 3 dxdy , S = 023 034 , deci

S = 012 023 034 045 056 061 , deci

h2 1 1 1 1 1 1 2 f 0 1 + f 0 1 + f 0 1 + f 0 1 + f 0 1 + f 0 1 = h f 0 , 3 3 3 3 3 2 3 conform formulei (75) i innd seama c 0 se anuleaz n nodurile 1, 2, 3, 4, 5, 6 i ia valoarea 1 n nodul 0. S-a notat cu f0 valoarea funciei f n nodul 0. Aadar ecuaia nodal (77) se scrie 4c0 c1 c4 c2 c5 = h2f0, sau c 2c0 + c 4 c 2 2c0 + c5 = f0 . 1 (78) h2 h2 Se regsete discretizarea ecuaiei u = f, cu diferene finite, dup binecunoscuta schem n cruce. S analizm acum cazul unui 2 nod pe OA, numerotarea local fiind 3 cea din figur. Aceste noduri sunt similare cazului nodului interior fiind evident de dou ori mai puine. n consecin a00 = 2 , a02 = 1, 4 0 1 a03 = 0 (ultimele dou valori fiind ca 1 (deoarece se acolo), iar a01 = a04 = 2 b0
B B B B B B B B B B B B B B P P B B B B B B B B B B B B

ia n calcul un singur triunghi). Din aceleai motive f 0 dxdy


G
0 1

h2 f0 2
B

1 1 (3 triunghiuri n loc de 6) i g 0 dx = + h g 0 1 + g 0 1 , unde g0 2 2 C2 4 0

, f0 sunt valorile lui g respectiv f n nodul 0. S-au utilizat iari (75) i (76) i faptul c 0 este 1 n nodul 0 i se anuleaz n celelalte.
B B B B B

Aadar, n acest caz este

b0 =

h2 f 0 + hg 0 . Ecuaia nodal corespunztoare 2

280

Bazele Analizei Numerice

2 1 (c4 + c1 ) = hg 0 h f 0 . (79) 2 2 n ceea ce privete convergena metodei, dac h este mrimea elementelor finite (de exemplu diametrul), atunci lema lui Bramble i Hilbert precizeaz c ~ = O(h), u u unde

c 2 2c0 +

2 2 u u 2 , + + u = u 2 L (G ) x 2 y L (G ) L2 (G ) deci aproximarea este de ordinul 1. Pentru obinerea unei aproximri de ordin mai mare, se impune utilizarea unor polinoame de grad mai mare (nu de gradul unu), deci introducerea unor elemente finite noi care comport mai multe noduri.

1/ 2

Exerciii
S se determine funcionalele asociate problemelor la limit: d du p ( x) + q( x)u ( x) = f ( x) , 1. Se caut u C 2 [ a , b] care satisface: dx dx

u(a)=u(b)=0, q( x) 0 .
b

unde p C 1 ([a, b]), q C ([a, b]),

f L2 (a, b),

p ( x ) p 0 > 0,

R. F (u ) = [ p( x)u ' 2 ( x) + q ( x)u 2 ( x) 2 f ( x)u ( x)] dx .


a

2. Fie G R 2 un domeniu mrginit de curba C. Se caut u C 2 (G ) care satisface: 2u 2u u = = f , f L2 (G ) , n G, 2 2 x y u + ( P)u |C = 0, C 0 (C ), unde ( P) 0 > 0 . n R. F (u ) = ( grad u ) 2 dxdy + ( P)u 2 ds f ( x)u ( x)dxdy .
G C G

3. Fie G R 2 un domeniu mrginit de curba C. Se caut satisface:

u C 4 (G ) care

Introducere n metoda elementului finit

281

(u ) = f , f L2 (G ) n G . u | = | = 0 u C C n
R. F (u ) = [(
2u 2 2u 2 2u 2u ) +( ) +2 ] 2 f ( x)u ( x)dxdy . 2 y 2 x 2 y 2 G x G
B B B B B B B B B B B B B B B B B B

4. Fie triunghiul A1A2A3 , unde Ai(xi, yi) , i=1, 2, 3. Dac Pj = Aj, j=1, 2, 3, iar P4, P5, P6 sunt mijloacele laturilor A1A2, A2A3, A3A1 respectiv, s se arate c funcia polinomial de gradul al doilea care ia n punctele Pj valorile uj, j = 1, 6 este
B B B B B B B B B B B B B B B B B B B B

u ( x, y ) = u j j ( x, y ) , unde
j =1

j = j (2 j 1) , j = 1, 2, 3 , 4 = 41 2 ,

5 = 4 2 3 , 6 = 43 1 , funciile i fiind date de (51).


5. Folosind elemente finite 2u problemei la limit: + x 2 triunghiulare, s se gseasc soluia aproximativ a 2u = 4 , ( x, y ) G , u ( x, y ) = x 2 + y 2 pe frontiera 2 y

lui G, G = {( x, y ) R 2 x 1, y 1} .

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