Sunteți pe pagina 1din 74

MARILENA POPA

ROMULUS MILITARU

METODE NUMERICE
APLICAII

1. Metoda Gauss, cu pivotare parial la fiecare etap, pentru rezolvarea sistemelor de ecuaii liniare Prezentarea problemei Se consider sistemul liniar: (1) Ax = t, unde: A Rnxn matricea sistemului (1), t Rn termenul liber al sistemului (1). Ne propunem s determinm, dac este posibil, x Rn, x soluia unic a sistemului (1). Prezentarea metodei Matricea extins, care caracterizeaz sistemul (1), o notm (A t) i elementele ei le notm aij, 1 i n, 1 j n+1, unde ai,n+1 = ti, 1 i n. Metoda Gauss const n prelucrarea matricei (A t) astfel nct, ntr-un numr finit de etape (i anume n-1), matricea A s fie triangularizat superior, adic s obinem matricea:
( n ) (n ) a 11 a12 (n ) 0 a 22 (2) M M 0 0 0 0 L a1,n 1
(n ) (n )

a1,n a 2,n
(n ) (n )

(n )

L a 2,n 1 M
(n )

L a n 1,n 1 a n 1,n L 0 a n,n


(1)
(n )

(n ) a 1,n +1 (n ) a 2,n +1 not (n ) ( n ) t , M = A (n ) a n 1,n +1 (n ) a n,n +1

unde am notat (A| t) cu (A (1) t (1) ) = a ij , 1 i n, 1 j n+1. Observaie. Matricea (2) caracterizeaz un sistem echivalent cu sistemul (1) (deci cu aceeai soluie). k Astfel, presupunnd a (kk) 0 , 1 k n-1, unde k elementul a (kk) se numete pivot, pentru a obine, n final, matricea (2), se aplic formulele:
8

(k ) , 1 i k, i j n + 1, a ij (k +1) , 1 j k, j +1 i n , (3) a ij = 0 (k ) a (k ) a ik a (k ) , k + 1 i n , k + 1 j n + 1. kj k ij a (kk)

Componentele soluiei sistemului (1) se obin direct, prin substituie invers, pe baza formulelor:
) n n x n = a (nn,n +1 / a (nn) , dac a (nn) 0 , (4) pentru i = n - 1, n - 2, ..., 1, n ( x = a (n ) ( a ijn ) x j / a iin ) . i i , n +1 j= i +1

k Dac ( )1 k n-1 astfel nct a (kk) = 0, atunci pentru a putea aplica formulele (3) se recomand o procedur de pivotare, de exemplu pivotarea parial, care const n: - se caut n coloana k a pivotului, acel element a i(kk,)k ,

k ik n, care are proprietatea: (5) a i(kk,)k = max a i(,kk) .


k i n

n legtur cu procedura de pivotare parial se mai impun urmtoarele observaii: 1) dac a i(kk,)k = 0, atunci sistemul (1) nu are soluie unic; 2) dac a i(kk,)k 0, i ik k, atunci se permut

(interschimb) liniile k i ik n matricea (A (k ) t (k ) ) dup care se continu cu aplicarea formulelor (3) i, n final, (4). Aplicaii 1) Matricea extins asociat sistemului (1) este:
9

2 2 3 1 6 2 3 3 2 1 1 0 0 1 0 1 1 1 0 2 Procedura de pivotare parial conduce la urmtoarele permutri de linii: - la etapa 1: linia 1 linia 2; - la etapa 2: linia 2 linia 3; - la etapa 3: nu se efectueaz permutri.
1 2 Se obine soluia: . 3 1

10

2. Metoda Gauss, cu pivotare total la fiecare etap, pentru rezolvarea sistemelor de ecuaii liniare (cu evaluarea determinantului matricei date iniial) Prezentarea problemei Se consider sistemul liniar: (1) Ax = t, unde: A Rnxn matricea sistemului (1), t Rn termenul liber al sistemului (1). Ne propunem s determinm, dac este posibil, xRn, x soluia unic a sistemului (1). Prezentarea metodei Matricea extins, care caracterizeaz sistemul (1) o notm (A t) i elementele ei le notm aij, 1 i n, 1 j n+1, unde ai,n+1 = ti, 1 i n. Metoda Gauss const n prelucrarea matricei (A t) astfel nct, nt-un numr finit de etape (i anume n-1), matricea A s fie triangularizat superior, adic s obinem matricea:
( n ) (n ) a 11 a 12 (n ) 0 a 22 (2) M M 0 0 0 0
L

a 1,n 1
(n )

(n )

a 1,n a 2,n M
(n ) (n )

(n )

L a 2,n 1 M
(n )

L a n 1,n 1 a n 1,n L

a n,n (1)

(n )

(n ) a 1,n +1 (n ) a 2,n +1 not (n ) ( n ) t , M = A (n ) a n 1,n +1 (n ) a n,n +1

unde am notat (At) cu (A (1) t (1) ) = a ij , 1 i n, 1 j n+1. Observaie. Matricea (2) caracterizeaz un sistem echivalent cu sistemul (1) (deci cu aceeai soluie). k Astfel, presupunnd a (kk) 0 , 1 k n-1, unde elementul k a (kk) se numete pivot, pentru a obine, n final, matricea (2), se aplic formulele:
11

(k ) , 1 i k, i j n + 1, a ij (k +1) , 1 j k, j + 1 i n, (3) a ij = 0 (k ) a (k ) a ik a (k ) , k + 1 i n , k + 1 j n + 1. kj k ij a (kk)

Componentele soluiei sistemului (1) se obin direct, prin substituie invers, pe baza formulelor:
) n n x n = a (nn,n +1 / a (nn) , dac a (nn) 0 , (4) pentru i = n - 1, n - 2, ..., 1, n ( x = a (n ) ( a ijn ) x j / a iin ) . i i , n +1 j= i +1

Observaie. Valoarea determinantului matricei sistemului (1) este:


k (5) det (A ) = a (kk) . k Dac ( )1 k n-1 astfel nct a (kk) = 0, atunci pentru a putea aplica formulele (3) se recomand o procedur de pivotare, de exemplu pivotarea total, care const n: - se caut acel element a i(kk,)jk , k ik n, k jk n care are k =1 n

proprietatea: ( 6) a i(kk,)jk = max a ijk ) .


k i n k j n

Aplicaii 1. Matricea extins asociat sistemului (1) este:


1 0 1 0 1 3 2 1 0 0 1 1 2
12

0 1 2

9 2 6 2

Procedura de pivotare total, la fiecare etap, conduce la urmtoarele permutri de linii i / sau coloane: - la etapa 1: coloana 1 coloana 3; - la etapa 2: linia 2 linia 4, coloana 2 coloana 4; - la etapa 3: linia 3 linia 4, coloana 3 coloana 4.
3 1 Se obine soluia intermediar: i apoi 2 1

(permutnd n ordine: componenta 3 componenta 4, componenta 2 componenta 4, componenta 1 componenta 3),


1 2 se obine soluia: . Valoarea determinantului matricei 3 1

sistemului dat iniial este: -6.

13

3. Metoda Gauss, cu pivotare parial la fiecare etap, pentru inversarea matricelor Prezentarea problemei Se consider matricea A Rnxn, adic:
a 11 a A = 21 M a n1 a 12 L a 1n a 22 L a 2 n , aij R. M M M a n 2 L a nn

Ne propunem s determinm, dac este posibil, A-1 (inversa matricei A). Prezentarea metodei

1 dac i = j , I - matricea Fie I = ( ij ) , 1 i, j n, ij = 0 dac i j unitate de ordin n; de asemenea considerm x(k), (k), 1 k n, - coloanele matricei A-1, respectiv ale lui I. Atunci, egalitatea AA-1 = I este echivalent cu: (1) Ax(k) = (k), 1 k n. Observaie. (1) reprezint n sisteme de ecuaii liniare, cu aceeai matrice a coeficienilor, A. Sistemele (1) pot fi rezolvate simultan, fiecare avnd soluia, o coloan a matricei A-1 i termenul liber, coloana corespunztoare a matricei I. Matricea extins asociat formulelor (1) este (A | I) i elementele ei le notm aij, 1 i n, 1 j 2n, unde 1 dac j = n + i (2) a ij = , 1 i n, n + 1 j 2n. 0 dac j n + i Metoda Gauss const n prelucrarea matricei (A | I) astfel nct, n n etape, s se obin matricea extins (I | A-1), adic:

14

( notat cu a ij1) , 1 i n, 1 j 2n, elementele matricei (A | I).

1 0 L 0 0 1 L 0 (3) M M M 0 0 L 1

+1) a (2n,n +1

( 1 a 1nn++1) ,

+1 a (2n,n +)2

( 1) a 1,nn++ 2

a n ,n +1

(n +1)

a n ,n + 2

(n +1)

( L a 1n2+n1) , +1 L a (2n, 2 n) unde am M +1 L a (2n, 2 n)

( k a ijk ) / a (kk) , i = k , k j 2n , ( k (4) a ijk +1) = (k ) (k ) a (kj ) a ij a ik (k ) , 1 i n , i k , k j 2n. a kk k Dac ( )1 k n pentru care a (kk) = 0, atunci pentru a

k Astfel, presupunnd a (kk) 0, 1 k n, unde elementul k a (kk) se numete pivot, pentru a obine matricea (3), se aplic formulele:

putea aplica formulele (4) se recomand o procedur de pivotare, de exemplu pivotarea parial, care const n: - se caut n coloana k a pivotului, acel element a i(kk,)k , k ik n, care are proprietatea: (5) a i(kk,)k = max a i(,kk)
k i n

Aplicaie
0 0 Se d matricea A = 1 1 1,1(6 ) 0,1(6 ) -1 A = 0,1(6) 0,5 2 1 0 1 2 1 3 1 0 0 2 1 0, (3) 1, (6 ) 0, (6 ) 0, (6 ) 0, (3) 0, (3) . 0, (3) 0, (6) 0, (6 ) 0 0 0
15

Aplicnd formulele (2) matricea invers este:

4. Condensarea pivotal pentru calculul determinanilor Prezentarea problemei Se consider matricea A Rnxn i ne propunem s calculm det(A). Prezentarea metodei Iniial, se aplic formula: a11 a12 a 21 a 22 a11 a12 1 (1) det (A) = n 2 a 31 a 32 a11 M a11 a12 a n1 a n 2

a11

a13

a 21 a 23 a11 a13 a 31 a 33 M a11 a13 a n1 a n 3

L L

a11 a1n a 21 a 2 n a11 a1n a 31 a 3n , M a11 a1n a n1 a nn

unde a11 0 i n continuare se reia formula (1) pentru n 1, n 2, ... pn cnd se calculeaz un determinant de ordinul 2. Observaii 3) dac a11 = 0 i () 2 i n pentru care ai1 0, atunci se permut n A liniile 1 i i, iar det (A) i schimb semnul; 4) dac a11 = 0 i () 2 i n avem ai1 = 0, atunci det (A) = 0.
Aplicaii

4 1 3 1 1 5 4 1 1) Se d matricea A = 1 1 10 6 0 1 1 10 - pentru n = 4 (la prima parcurgere a ciclului repetitiv) avem: det = 16 i


16

4 1 3 1 19 13 3 1 1 19 13 3 3 37 23 3 A= , n = 3, A = ; 1 3 37 23 4 4 40 23 0 4 4 40 0 4 4 40 - pentru n = 3 avem: det = 1619 = 304 i 3 1 19 13 664 428 3 1 3 664 428 3 24 748 428 3 A= , n = 2, A = ; 4 24 748 23 4 24 748 23 0 0 4 4 40 4 4 40 - pentru n = 2 avem: 428 3 1 664 24 486400 428 3 A= , n = 1 i respectiv 4 24 748 23 0 4 4 40 428 3 1 486400 486400 428 3 24 A= . 4 24 748 23 0 4 4 40 Urmeaz det = 486400 / 304 = 1600, deci det (A) = 1600.

17

5. Factorizarea LR a matricelor aplicat la rezolvarea sistemelor de ecuaii liniare Prezentarea problemei Se consider sistemul liniar: (1) Ax= t, unde A Rnxn, t Rn, reprezint matricea, respectiv termenul liber pentru sistemul (1). Ne propunem s determinm, dac este posibil, soluia unic a sistemului (1), x Rn. Prezentarea metodei Definiie. O descompunere de forma: A = LR, unde

(2)

L este o matrice inferior triunghiular, adic lij = 0, 2 j n, 1 i j 1 i R este o matrice superior triunghiular, adic rij = 0, 2 i n, 1 j i 1, se numete factorizare LR a matricei A. Elementele matricelor L i R, care realizeaz factorizarea LR a matricei A, se pot calcula direct din egalitatea (2).
Pentru a asigura unicitatea factorizrii LR trebuie precizate elementele diagonale n matricea L (sau n matricea R). Astfel, dac presupunem:

(3) lkk = 1, 1 k n, atunci procedura de factorizare LR este cunoscut sub numele de metoda Doolittle. Din (2) se obin n2 egaliti: (4)
a ij =
min (i , j )

l
k =1

ik

rkj , 1 i,j n,

rezolvate succesiv n raport cu elementele rkj, k j i lik, i > k. Astfel, innd cont de (3), avem:
18

1 j n, r1 j = a 1 j , l i1 = a i1 / r11 , 2 i n, k 1 (5) rkj = a kj l kh rhj , 2 k n, k j n h =1 k 1 l ik = a ik l ih rhk / rkk , 2 k n, k + 1 i n . h =1


Aplicnd metoda Doolittle (formulele (5)) matricei sistemului (1), atunci:

Ax = t LRx = t Pentru determinarea soluiei x se rezolv succesiv sistemele: L y = t (6) R x = y Sistemul inferior triunghiular Ly = t se rezolv direct (prin substituie direct), obinnd: y = t , 1 1 (7) 2 i n , i 1 y i = t i l ik y k k =1
Sistemul superior triunghiular Rx = y se rezolv direct (prin substituie invers), obinnd:

(8)

x n = y n / rnn , i = n 1, n 2,...,1, n x i = y i rik x k / rii k =i +1

19

Aplicaii 1) Matricea extins (A | t) asociat sistemului (1) este: 0 2 1 1 2 1 1 3 -1 9 1 0 1 - 2 6 0 0 - 5 - 7 8 Permutarea liniilor 1 i 2 n matricea de mai sus, deoarece a11 = 0 i a21 0 conduce la: 1 1 3 1 9 0 2 1 1 2 1 0 1 - 2 6 0 0 - 5 - 7 8 Apoi: 1 1 3 1 9 2 1 1 2 0 , pentru k = 2, 1 - 1/2 1 -2 6 0 0 -5 -7 8
1 1 2 0 1 - 1/2 0 0 1 1 2 0 1 - 1/2 0 0 3 1 - 3/2 10/3 1 9 1 2 , pentru k = 3, - 1/2 6 -7 8

3 1 9 1 1 2 , pentru k = 4. - 3/2 - 1/2 6 10/3 - 16/3 8

In final obinem, succesiv, n ultima coloan a matricei:

20

9 2 , respectiv 4 16/ 3

1 2 3 care este soluia sistemului. 1

21

6. Factorizarea LR pentru matrice tridiagonale cu aplicare la rezolvarea sistemelor de ecuaii liniare

Prezentarea problemei Se consider sistemul Ax = t, A Rnxn tridiagonal (adic pe diagonala principal are elementele ai, 1 i n, deasupra diagonalei principale are elementele bi, 1 i n-1 i sub diagonala principal are alementele ci, 1 i n-1, restul fiind nule) i t Rn. Ne propunem s determinm x Rn soluia unic a sistemului liniar dat. Prezentarea metodei Factorizarea LR pentru rezolvarea sistemului dat presupune dou etape: I. Descompunerea matricei A n produs de dou matrice: A = LR, unde L este inferior triunghiular i R este superior tringhiular avnd urmtoarele elemente: n L - pe diagonala principal toate cele n elemente sunt egale cu 1; - sub diagonala principal se afl elementele li, 1 i n-1, ce trebuie determinate; - restul elementelor sunt nule; n R - pe diagonala principal se afl elementele ri, 1 i n, ce trebuie determinate; - deasupra diagonalei principale se afl elementele si, 1 i n-1, ce trebuie determinate; - restul elementelor sunt nule.
II. Rezolvarea succesiv a sistemelor liniare:

(1) Ly = t (2) Rx = y
22

cu formule directe de calcul. Astfel, parcurgerea etapei I, nseamn formulele: r = a , 1 1 1 i n 1, (3) s i = b i , c li = i , ri r = a l s , i +1 i +1 i i iar parcurgerea etapei a II-a nseamn: y = t 1 , (4) 1 y i = t i l i 1 y i 1 , 2 i n, respectiv yn x n = r , n (5) x = (y i s i x i +1 ) , i = n 1, n 2,...,1. i ri
Aplicaie Se d sistemul liniar tridiagonal:
11 1 = 2 x 1 + 10 x 2 16 13 1 11 x 1 2 x 2 + x 3 = . Se obine soluia: 12 16 12 13 1 x 2 2x 3 = 14 16
23

447 / 4448 35 / 278 399 / 4448

1 / 16 = 0,0625 11 / 10 = 1,1 0,10049460432 0,12589928058 , unde 11 / 12 = 0.91(6 ) 0,08970323741 13 / 12 = 1.08(3) 13 / 14 = 0.9(285714)

24

7. Factorizarea LR pentru matrice pentadiagonale cu aplicare la rezolvarea sistemelor de ecuaii liniare

Prezentarea problemei
Se consider sistemul Ax = t, A Rnxn pentadiagonal (adic ai ,1 i n diagonala principal bi ,1 i n-1 prima supradiagonal ci ,1 i n-1 prima subdiagonal di, 1 i n-2 a doua supradiagonal ei ,1 i n-2 a doua subdiagonal n rest elementele nule) i t Rn. Ne propunem s determinm x Rn soluia unic a sistemului liniar dat. Prezentarea metodei
Factorizarea LR pentru rezolvarea sistemului dat presupune dou etape:

I. Descompunerea A = LR, unde L inferior triunghiular i R superior triunghiular cu urmtoarea configuraie: n L n elemente egale cu 1 pe diagonala principal; li, 1 i n-1 prima subdiagonal; mi, 1 i n-2 a doua subdiagonal; (elemente ce trebuie determinate) restul elementelor nule; n R ri, 1 i n diagonala principal; si, 1 i n-1 prima supradiagonal; vi, 1 i n-2 a doua supradiagonal; (elemente ce trebuie determinate) restul elementelor nule; II. Rezolvarea succesiv a sistemelor liniare: (1) Ly = t (2) Rx = y
25

cu formule directe de calcul. Astfel, parcurgerea etapei I, nseamn formulele: r1 = a 1 , s1 = b1 , l 1 = c1 / r1 , r2 = a 2 l 1s1 , 1 i n 2 v i = d i , m i = e i / ri , (3) s i +1 = b i +1 l i v i , l i +1 = (c i +1 m i s i ) / ri +1 , ri + 2 = a i + 2 l i +1s i +1 m i v i . iar, parcurgerea etapei a II-a, nseamn: y1 = t 1 , (4) y 2 = t 2 l 1 y1 , y = t l y m y , 3 i n i i 1 i 1 i2 i2 i respectiv x n = y n / rn , (5) x n 1 = (y n 1 s n 1 x n ) / rn 1 , x = (y s x v x ) / r , i = n 2, n 3,...,1. i i i +1 i i+2 i i

Aplicaie Se d sistemul liniar pentadiagonal:

1)

=9 16 x 1 + 8x 2 2 x 3 2 x 1 8x 2 + 2 x 3 + 2 x 4 = 12 . Se obine: x 1 + 8x 2 + x 3 8x 4 = 7 8x 2 16 x 3 + x 4 = 54

0,5 1,5 2,5 . 2

26

8. Metoda Jacobi pentru rezolvarea iterativ a sistemelor de ecuaii liniare Prezentarea problemei Fie sistemul liniar (cu soluie unic): (1) Ax = t, A Rnxn matricea sistemului; t Rn termenul liber al sistemului. Ne propunem s determinm soluia unic x Rn. Prezentarea metodei Pentru x(0) Rn aproximaia iniial a soluiei sistemului (1), ales arbitrar (de exemplu vectorul nul), calculm: n ( k +1) (k ) (2) x i = t i a ij x j / a ii , 1 i n, k 0 j=1 j i pn cnd este ndeplinit condiia: (3) max x i(k +1) x i(k ) , unde
1i n

- precizia cu care dorim s obinem soluia ( = 10-p, p 4). Atunci x x(k+1). O condiie suficient pentru obinerea soluiei sistemului (1), cu precizia , este:
(4)

a ii > a ij , 1 i n (matricea A este dominant


j=1 j i

diagonal pe linii ) sau (4)

a jj > a ij , 1 j n (matricea A este dominant


i =1 i j

diagonal pe coloane ).

27

Aplicaii

2 1 1) Se dau: A = 0 0 Pentru:

1 4 1 0

0 1 4 1

0 30 0 132 i t = . 1 132 30 2

1,9999828339 25,999982834 -4 ; = 10 it = 20 i x = 25,999982834 1,9999828339 1,9999999832 25,999999983 -7 ; = 10 it = 30 i x = 25,999999983 1,9999999832 = 10-10


2,0000000000 26,000000000 it = 40 i x = , 26,000000000 2,0000000000

care este soluia exact a sistemului liniar Ax = t.

28

9. Metoda Seidel Gauss pentru rezolvarea iterativ a sistemelor de ecuaii liniare Prezentarea problemei Fie sistemul liniar (cu soluie unic): (1) Ax = t, A Rnxn matricea sistemului; t Rn termenul liber al sistemului. Ne propunem s determinm soluia unic x Rn. Prezentarea metodei Pentru x(0) Rn aproximaia iniial a soluiei sistemului (1), ales arbitrar (practic, vectorul nul), calculm: i 1 n (2) x i(k +1) = t i a ij x (jk +1) a ij x (jk ) / a ii , 1 i n, k 0, j=1 j=i +1 pn cnd este ndeplinit condiia: (3) max x i(k +1) x i(k ) , unde
1i n

precizia cu care dorim s obinem soluia ( = 10-p, p 4). Atunci x x(k+1). O condiie suficient pentru obinerea soluiei sistemului (1), cu precizia , este: (4) a ii > a ij , 1 i n
j=1 j i n

(matricea A este dominant

diagonal pe linii) sau (4) a jj > a ij , 1 j n


i =1 i j n

(matricea A este dominant

diagonal pe coloane).

29

Aplicaii

2 1 1) Se dau: A = 0 0 Pentru:

1 4 1 0

0 1 4 1

0 0 i t = 1 2

30 132 132 . 30

1,9999885557 26,000005722 -4 ; = 10 it = 10 i x = 25,999997139 2,0000014305 1,9999999888 26,000000006 -7 ; = 10 it = 15 i x = 25,999999997 2,0000000014 2,0000000000 26,000000000 -10 , = 10 it = 20 i x = 26,000000000 2,0000000000 care este soluia exact a sistemului A x = t.

30

10. Metoda Seidel Gauss pentru rezolvarea iterativ a sistemelor liniare cu matrice slab populate Prezentarea problemei n rezolvarea unor astfel de sisteme se folosesc metode iterative, n principiu aceleai ca i pentru sisteme liniare cu matrice pline, diferenele aprnd n modul n care relaiile generale de iteraie se transform ntr-un algoritm de calcul care utilizeaz la maxim memoria calculatorului, evitnd n acelai timp operaiile de nmulire i adunare cu zero.

Prezentarea metodei
Metoda Seidel Gauss pentru rezolvarea sistemului: Ax = t, A Rnxn este matrice slab populat, se bazeaz pe relaiile : x(0) = 0 Rn, (1)
x i(k +1) = t i

j=1

i 1

a ij x (jk +1)

j=i +1

(k ) ij x j

/ a ii , 1 i n, k0,

pn cnd: (2) max x i(k +1) x i(k ) , precizia impus.


1i n

Precizare. n algoritmul de calcul, pentru matricea sistemului se prevede un numr de locaii de memorie egal cu numrul elementelor nenule din matrice. Aceste elemente nenule trebuie identificate i de aceea vom lucra cu urmtorii vectori (preciznd c n reprezint numrul de ecuaii i necunoscute, iar nn numrul de elemente nenule din matrice): 1) A = (ai), 1 i nn - conine elementele nenule din matricea sistemului. 2) L = (li), 1 i n conine numrul elementelor nenule din fiecare linie.
31

3) C = (ci), 1 i nn conine indicii coloanelor n care sunt elementele nenule din fiecare linie, parcurgnd liniile n ordinea lor cresctoare. Observaei. Cum 1 ci n ci Z.
Precizare. Cu ajutorul vectorilor L i C se stabilesc, far

testri, termenii care intr n formulele (1). 4) T = (ti), 1 i n conine termenul liber 5) X = (xi) 1 i n conine, iniial x(0) din (1). 6) R, reprezint precizia. 7) itmax Z, reprezint numrul maxim de iteraii pentru a obine soluia sistemului cu precizia dorit.
Aplicaie
+ x4 4x1 + x2 x 4x + x 2 3 1 x2 4x3 4x4 x1 x2 + x4 x3 x4 = 875 , + x5 + x6 + x5 + x7 4x5 + x6 + x5 4x6 x5 x6 + x8 + x9 = 25 = 125 , = 50 =0 =0 = 50 =0 + x12 =0 = 50 + x12 =0 4x12 =0

4x7 + x8 + x10 + x7 4x8 + x9 + x11 + x8 4x9 2x7 4x10 + x11 2x8 2x9 + x10 4x11 + x11

Avem: n = 12 i nn = 46. Apoi: a1 = -4; a2 = 1; a3 = 1; (n linia 1) a4 = 1; a5 = -4; a6 = 1; a7 = 1; (n linia 2)


32

a8 = 1; a9 = -4; a10 = 1; (n linia 3) a11 = 1; a12 = -4; a13 = 1; a14 = 1; ( n linia 4) a15 = 1; a16 = 1; a17 = -4; a18 = 1; a19 = 1; (n linia 5) a20 = 1; a21 = 1; a22 = -4; a23 = 1; (n linia 6) a24 = 1; a25 = -4; a26 = 1; a27 = 1; (n linia 7) a28 = 1; a29 = 1; a30 = -4; a31 = 1; a32 = 1 (n linia 8) a33 = 1; a34 = 1; a35 = -4; a36 = 1 (n linia 9) a37 = 2; a38 = -4; a39 = 1; (n linia 10) a40 = 2; a41 = 1; a42 = -4; a43 = 1; (n linia 11) a44 = 2; a45 = 1; a46 = -4; (n linia 12) l1 = 3; l2 = 4; l3 = 3; l4 = 4, l5 = 5; l6 = 4; l7 = 4; l8 = 5; l 9 = 4; l 10 = 3; l 11 = 4; l 12 = 3; c1 = 1; c2 = 2; c3 = 4; (n prima linie) c4 = 1; c5 = 2; c6 = 3; c7 = 5; (n a doua linie) c8 = 2; c9 = 3; c10 = 6; (n a treia linie) c11 = 1; c12 = 4; c13 = 5; c14 = 7 (n a patra linie) c15 = 2; c16 = 4; c17 = 5; c18 = 6; c19 = 8; (n a cincea linie) c20 = 3; c21 = 5; c22 = 6; c23 = 9 (n a asea linie) c24 = 4; c25 = 7; c26 = 8; c27 = 10; (n a aptea linie) c28 = 5; c29 = 7; c30 = 8; c31 = 9; c32 = 11; (n a opta linie) c33 = 6; c34 = 8; c35 = 9; c36 = 12; (n a noua linie) c37 = 7; c38 = 10; c39 = 11; (n a zecea linie) c40 = 8; c41 = 10; c42 = 11; c43 = 12; (n a unsprezecea linie) c44 = 9; c45 = 11; c46 = 12; (n a dousprezecea linie) t1 = -87,5; t2 = -25; t3 = -12,5; t4 = -50; t5 = 0; t6 = 0; t7 = -50; t8 = 0; t9 = 0; t10 = -50; t11 = 0; t12 = 0; xi = 0; 1 i 12.

33

Pentru: 37,499925226 24,999913764 12,499950273 37,499887327 24,999870057 12,499925069 -4 = 10 it = 30 i x = ; 37,499879948 24,999861546 12,499920162 37,499894032 24,999877789 12,499929528

34

11. Metoda Leverrier pentru determinarea coeficienilor polinomului caracteristic Prezentarea problemei Fie A Rnxn . Ne propunem s determinm coeficienii polinomului caracteristic. + (-1)nn (1) pA() = n 1n-1 + 2n-2 + ... + Prezentarea metodei Coeficienii care apar n (1) se obin din relaiile: 1 = s1 , (2) 2 k n, 1 k = (s1 k 1 s 2 k 2 + ... + (1) k s k 11 + (1) k +1 s k ), unde k (3) sk = Tr(Ak), 1 k n.

Aplicaie
0 1 4 Se d A = 1 4 11 . 2 0 4 Se obin: s1 = 0 1 = s1 = 0; s2 = 14 2 = = (s11 s2)/2 = -7; s3 = 18 3 = (s12 s21 + s3)/3 = 6. pA() = 3 12 + 2 3 = 3 7 6.

35

12. Metoda Krylov pentru determinarea coeficienilor polinomului caracteristic Prezentarea problemei Fie matricea ARnxn. Ne propunem s determinm coeficienii polinomului caracteristic. (1) pA() = n + c1n-1 + ... + cn-1 + cn Prezentarea metodei 1) Se alege arbitrar, y(0) Rn, nenul 2) Se obin: (2) y(k) = Ay(k-1), 1 k n. 3) Se rezolv sistemul liniar: c1 (n-1) (n-2) (1) (0) c 2 ... y y ) = y(n) (3) (y y M c n Dac nu are soluie unic, se alege alt y(0) i se reia de la 2). Dac are soluie unic, aceasta reprezint coeficienii polinomului caracteristic pentru matricea dat, deci (1). Observaii: 1. Notm cu B matricea sistemului (3). Ultima coloan a lui B se introduce i calculm apoi fiecare coloan din B, n funcie de succesoarea ei, folosind (2). 2. Dac mai atam o coloan n plus la matricea B, pentru termenul liber al sistemului (3), aceasta se va calcula, folosind (2), cu elementele din prima coloan a matricei. 3. Pentru rezolvarea sistemului (3), apelm o procedur (de exemplu Gauss).

36

Aplicaie
1 Se d: A = 0 1 0
1 2 0 0 3 1 1 0

Obinem: coeficienii polinomului caracteristic al matricei date, sunt: 6 10 1 6. Precizri: 1) Se obine pA() = 463+1026, pentru 1 0 0 (0) (0) 1 alegerea y = . 2) Dac alegem y = , atunci sistemul liniar 1 0 1 1 de forma (3), care se obine (nainte de pasul 5. al algoritmului):
12 6 4 1 24 10 4 1 2 0 0 1 8 4 2 1 22 54 6 16

1 1 2 2

nu are soluie unic (este compatibil nedeterminat).

37

13. Metoda Fadeev pentru determinarea coeficienilor polinomului caracteristic Prezentarea problemei Fie A Rnxn. Ne propunem s determinm coeficienii polinomului caracteristic. (1) pA() = n + c1n-1 + ... + cn-1 + cn Prezentarea metodei 1) A1 = A; c1 = -Tr(A1); B1 = c1I + A1; 2) A2 = A B1; c2 = -Tr(A2)/2; B2 = c2I + A2; .................................................................. n) An = A Bn-1; cn = -Tr(An)/n; Bn = cnI + An. Observaii: 1. Bn = On (matrice nul) deci nu se va calcula. 1 2. Dac cn 0 A-1 = Bn-1. cn

Aplicaie
1) Se d: A = 0
1 0 4 1 0 2 2. 3

2 4 2 Se obine: A1 = A; c1 = 2; B1 = 0 3 2 ; 1 0 1 2 12 6 3 12 6 A2 = AB1= 2 3 0 ; c2=5; B2 = 2 2 0 ; 1 4 5 1 4 0

38

0 6 0 A3 = AB2 = 0 6 0 ; c3 = 6; B3 = 0 0 6 3 2 pA() = 2 5 + 6.
-1

0 0 0 0 0 0 . 0 0 0
1

1 Cum c3 0 A = B 2 = 1 / 3 1 / 3 0 . 6 1/ 6 2 / 3 0

1/ 2

39

14. Metoda Danilevski pentru aducerea unei matrice la forma normal Frobenius

Prezentarea problemei
Fie matricea: A Rnxn i ne propunem s transformm, prin procedee de asemnare, aceast matrice n forma normal Frobenius: f 1 f 2 L f n 1 f n 0 1 0 L 0 0 1 L 0 (1) 0 L L L L L 0 0 L 1 0 Obinem: (2) pA() = n f1n-1 f2n-2 fn-1 fn.

Prezentarea metodei
Se transform matricea A n forma (1) dup n1 etape, la fiecare etap obinnd cte o linie din (1), de la ultima linie pn la prima linie. Astfel, la etapa 1, presupunem an,n-1 0 pentru a obine ultima linie din (1). Cu aceast presupunere, vom prelucra matricea A pe baza relaiilor: a i/,n 1 = a i ,n 1 / a n ,n 1 ,1 i n , (3) / / a ij = a ij a i ,n 1 a nj ,1 i n,1 j n , j n 1, urmate de relaiile: (4)
/ / a n 1, j = a ni a ij ,1 j n. i =1 / Apoi, la etapa 2, presupunem a n 1,n 2 0 pentru a n

obine penultima linie din (1) (ultima linie s-a obinut deja la
40

etapa 1). Cu aceast presupunere, vom prelucra matricea A obinut dup parcurgerea etapei 1, adic dup aplicarea relaiilor (3) i (4), pe baza unor relaii asemntoare, adic: / a i//,n 2 = a i/,n 2 / a n 1,n 2 ,1 i n 1, (3) // / // / a ij = a ij a i ,n 2 a n 1, j ,1 i n 1,1 j n , j n 2, urmate de relaiile: (4)
// / // a n 2, j = a n 1,i a ij ,1 j n. i =1 n

n concluzie, notnd cu k variabila ce numr etapele n metoda Danilevski, avem: k = n, n1, , 2 i ak,k-1 0. Observaie. Dac exist k = n, n1, ..., 2, astfel nct ak,k-1 = 0, atunci suntem ntr-un caz particular.
Aplicaie 0 0 0 2 0 6 7 6 1 0 1 2 1 0 0 0 A= A= 0 1 0 0 0 2 1 1 1 1 3 1 0 0 1 0 coeficienii polinomului caracteristic sunt: 0, -6, 7, -6. Detalii calcule: 0 0 0 2 1 0 1 2 A= ; aux = (1 1 3 -1) 0 2 1 1 1 1 3 1

41

0 0 2 0 0 0 2 / 3 1/ 3 1/ 3 5 / 3 2 / 3 1/ 3 A 1/ 3 5/ 3 1/ 3 4 / 3 1/ 3 14/ 3 0 0 1 0 0 0 aux = (-1/3 14/3 1/3 13/3) 0 0 0 2 0 3 9 / 14 1 / 14 5 / 14 19 / 14 A 0 0 1 0 0 0 0 0 1 0 aux = (3 0 6 -7) 0 6 7 6 0 0 0 2 1 0 0 0 1 0 0 0 A 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 4 2 pA() = 6 + 7 6.

0 2 1/ 3 5 / 3 ; 1/ 3 13/ 3 1 0 0 0 1 0 0 2 6 7 ; 0 0 1 0

42

15. Metoda Danilevski pentru determinarea unui vector propriu corespunztor unei valori proprii

Prezentarea problemei
Fie matricea: A Rnxn i ne propunem determinarea unui vector propriu al matricei pentru o valoare proprie specificat.

Prezentarea metodei
Se transform matricea A n forma normal Frobenius: f 1 f 2 L f n 1 f n 0 1 0 L 0 (1) 0 1 L 0 0 , L L L L L 0 0 L 1 0 folosind relaiile (3), (4), (3), (4) din lucrarea precedent. Notnd cu k, variabila ce numr etapele de transformare a lui A n (1), avem: k = n, n-1, ..., 2 i ak,k-1 0. Observaie. Dac exist k = n, n-1, ..., 2 astfel nct ak,k-1 = 0, atunci suntem ntr-un caz particular (care nu se trateaz n algoritmul care urmeaz). Cum matricea A i forma sa normal Frobenius sunt matrice asemenea, teoretic, la fiecare etap k, obinem o matrice Mk-1 care difer de matricea unitate doar n linia k-1, linie care are urmtoarea componen: a a a a a 1 kk ... kn (2) k1 k 2 ... k ,k 2 a k ,k 1 a k ,k 1 a k ,k 1 a k ,k 1 a k ,k 1 a k ,k 1 Practic, la fiecare etap k, obinem linia k-1 dintr-o matrice M Rn-1 x n, folosind (2). n acest mod, dup parcurgerea celor n-1 etape matricea (1) se poate scrie, teoretic
43

M 1 1 M 1 ...M 1 2 M 11 AM n 1 M n 2 ...M 2 M 1 2 n n

tiind c y Rn este un vector propriu corespunztor unei valori proprii , pentru matricea (1), avem x Rn este un vector propriu corespunztor aceleeai valori proprii , pentru matricea iniial A, calculat teoretic astfel: (3) x = Mn-1 Mn-2 ... M2 M1 y Observaie. Produsele din (3) se fac de la dreapta la stnga, adic: x = Mn-1(Mn-2(...(M2(M1y))...)) Aceasta deoarece, produsul Mi y, modific componenta i din vectorul y.
Aplicaie 0 6 0 0 0 2 1 0 1 0 1 2 Fie A = A = 0 1 0 2 1 1 0 0 1 1 3 1 4 2 pA() = 6 + 7 6. Din pA() = 0 (+3)(2)(2+1) = 1 3 . 2 = 2, 3,4 C i 2 2 3 27 1 2 1 9 (1) ; Pentru 1 = -3 y = = 3 1 1 1

7 0 0 1

6 0 0 0

0, deci 1 = -3,

44

32 8 2 4 (2) pentru 2 = 2 y = 2 = . 2 2 1 1 2 0 7/3 1/ 3 De asemenea: M = 1 / 14 3 / 14 1 / 14 13 / 14 , 1/ 3 1/ 3 1/ 3 1/ 3

Obtinem: 2/3 2 / 3 2 / 3 0.(6) 9 7/6 7 / 6 1.1(6) (1) y = , 3 3 5/6 0.8(3) 1 1 1 1 respectiv 1 1 1 1 4 1/7 1 / 7 0.(142857) (2) = y 5/7 0.(714285) 2 2 1 1 1 1

45

16. Metoda Bairstow pentru rezolvarea ecuaiilor algebrice Prezentarea problemei Se consider polinomul cu coeficieni reali: Pn(x) = a0xn + a1xn-1 + ... + an-1x + an, i ne propunem determinarea rdcinilor acestui polinom. Prezentarea metodei Metoda Bairstow const n descompunerea lui Pn n factori ptratici (dac n = par) sau n factori ptratici i un factor liniar (dac n = impar). Notm primul factor ptratic cu x2 + px + q (*) Pn(x) = (x2 + px + q)(b0xn-2 + b1xn-3 +... + bn-2) + rx + s . 13 2
restul

, deoarece fcnd produsele n dreapta i s = b n + pb n 1 egalnd cu membrul stng, avem: b 0 = a 0 (1) b1 = a 1 pb 0 b k = a k pb k 1 qb k 2 , 2 k n r = f 1 ( p, q ) Evident , (din (1)) s = f 2 ( p, q ) Vom determina p i q astfel nct, restul mpririi (*) s fie aproximativ nul, adic: f (p, q ) = 0 (2) 1 sistem neliniar f 2 (p, q ) = 0 Rezolvm sistemul (2) cu metoda Newton. Dac p0, q0 R sunt aproximaiile iniiale ale lui p i q atunci:

Notm

r = b n 1

46

f1 (p , q ) pk+1 pk p k k (3) = q q f 2 k+1 k p (pk , qk )

f1 (pk , q k ) q f 2 (pk , qk ) q

f 1 (p k , q k ) f (p , q ) , k 0 2 k k

f 1 f 2 f 1 f 2 = p q q p f f . Atunci, din (3) avem: Notm: (4) R = f 1 2 f 2 1 q q f 2 f + f2 1 S = f 1 p p


p = p k R k / k (3) k +1 , k0 q k +1 = q k S k / k unde prin k, Rk, Sk am notat valorile funciilor , R i respectiv S n (pk, qk). innd cont de (1) i calculnd derivatele pariale care apar n (4), obinem: f 1 b n 1 p = p f 1 b n 1 q = q (5) f 2 b n b n 1 p = p + b n 1 + p p f 2 b n b = + p n 1 q q q

b b b k +1 b k +1 ; (1) = bk p k q k 1 . p p p p Deci ck = bk pck-1 qck-2, 0 k n 1, unde c-1 = c-2 = 0.


Notm (6) ck =
47

Analog, notm (7) dk=

b k+2 ; q b k +1 b k b k+2 bk q (1) = p . q q q Deci dk = bk pdk-1 qdk-2, 0 k n 2, unde d-1 = d-2 = 0. n concluzie, obinem ck = dk, 0 k n 2 sau
c 0 = b 0 (8) c1 = b1 pb 0 c k = b k pc k 1 qc k 2 , 2 k n - 1

nlocuind (6), respectiv (7) n (5) avem: f 1 f 1 = c n 2 ; = c n 3 ; p q f 2 = cn-1 + bn-1 pcn-2 p f 2 = c n 2 pc n 3 q de unde, nlocuind n (4), avem: = c 2 2 c n 1c n 3 + b n 1c n 3 n (4) R = b n c n 3 b n 1c n 2 S = b c b 2 b c n 1 n 1 n 1 n n 2 Astfel, pentru a determina un factor ptratic procedm astfel: alegem aproximrile iniiale p0, q0 determinm b0, b1, ..., bn cu formulele (1) determinm c0, c1, ..., cn-1 cu formulele (8) determinm , R, S cu formulele (4) determinm pk+1, qk+1 cu formulele (3) Ne oprim atunci cnd pk+1, qk+1 verific suficient de bine ecuaiile sistemului (2), adic max { r , s } , unde r = bn-1 i
s = bn + pk+1bn-1.
48

Un alt test de oprire, din (3), max { p k +1 p k , q k +1 q k } adic R +S . Cnd testul de oprire este ndeplinit, ultimele valori calculate pk+1, qk+1 reprezint aproximaii suficient de bune (n funcie de ) pentru coeficienii trinomului x2 + px + q, iar soluiile acestui trinom sunt 2 rdcini reale sau complexe ale ecuaiei (*). Continum aceeai tactic cu polinomul de grad n-2 care apare n dreapta relaiei (*).
Aplicaii 1) P(x) = x4 3x3 + x 3; n = 4, a0 = 1; a1 = -3; a2 = 0; a3 = 1; a4 = -3; p = 2 p0 = 0 x = 1 alegnd , = 10-5 , n 10 iteraii 1 ; q = 3 q 0 = 0,1 x2 = 3 p = 1 p0 = 0 apoi (repet) , = 10-5 , n 2 iteraii q =1 q 0 = 0,1

x 1 = (1 i 3 ) / 2 x 2 = (1 + i 3 ) / 2

49

17. Factorizarea LR pentru obinerea valorilor proprii ale unei matrice Prezentarea problemei Fie A R nn . Ne propunem s determinm valorile proprii ale matricei date: 1, 2,,n. Prezentarea metodei Notm A1 = A; A1 = L1 R1; A2 = R1 L1; A2 = L2 R2; A3 = R2 L2; .a.m.d. n general Ak = Lk Rk; Ak+1 = Rk Lk, k 1. Observaii: 1) Matricele Lk i Rk se obin folosind formulele corespunztoare factorizrii LR Doolittle (vezi lucrarea de laborator nr. 5 formulele (5). 2) Matricele A i Ak+1 sunt asemenea (Ak+1 ~ A); Ak+1 = L-1 A L, unde L = L1 L2 Lk. 3) Ak+1 = R matrice superior triunghiular i i = rii, 1 in. 4) Dac y Rn este un vector propriu corespunztor unei valori proprii , pentru matricea R, atunci x = L y este un vector propriu corespunztor aceleiai valori proprii , pentru matricea A. Aplicaii

1 1 3 1 1 5 0 2 1 1 1) A = are valorile proprii 2 , 2, 3. 1 0 1 2 0 0 0 2 La prima etapa se obtine:

50

0 0 0 3 1 1 1 1 1 0 0 1 1 0 0 2 L= ; R= 1 1/ 2 1 0 0 0 3 / 2 1/ 2 0 0 0 0 0 1 0 2 i respectiv 3 1/ 2 1 4 3/ 2 1 1 1 A= 3 / 2 3 / 4 3 / 2 1/ 2 0 0 0 2 La a doua etapa se obine: 0 0 0 3 1 1 4 1/ 2 1 0 0 1/ 4 5/ 4 1/ 4 0 13 / 8 L= ;R= 3 / 8 9 / 26 1 0 0 0 6 / 13 17 / 13 0 0 0 0 1 0 0 2 i respectiv 7 / 13 3 1 11 / 4 89 / 52 1/ 4 5/ 4 5 / 16 A= .a.m.d. 9 / 52 27 / 169 6 / 13 17 / 13 0 0 0 2 -4 pentru = 10 , dup 17 iteraii avem: 2.9999864683 1.6180474534 -6.1803392174E-01 2.0000000000 pentru = 10-6, dup 24 iteraii: 2.9999998204 1.6180341685 -6.1803398883E-01 2.0000000000
51

18. Metod iterativ de tip Newton pentru estimarea numeric a valorilor proprii extreme ale unei matrice reale simetrice

Considernd o problem de forma: dat o funcie f : [a; b] R, continu, derivabil, se cere s se determine x* astfel nct: f(x*) = 0 (1) metoda Newton pentru calculul numeric al soluiei exacte x* se poate caracteriza astfel: alegnd x(0) aproximaie iniial pentru x*, se genereaz irul de aproximaii succesive x(k), k = 1, 2, , cu ajutorul formulei: x(k+1) = (x(k)), k = 0, 1, , (2) unde funcia de iteraie (x) este dat prin: f (x) ( x ) = x f ( x ) (3) Fie A Rnxn, matrice simetric. Notm cu PA() polinomul caracteristic al lui A, avnd expresia analitic: (4) PA () = n + 1n 1 + 2 n 2 + ... + n unde j R, j = 0, n ; 0 = 1

Funcia de iteraie = (x), n cazul polinomului caracteristic PA(), pentru = (k), unde (k) nu este una din valorile proprii ale lui A este dat de: det (( k ) I n A ) (k) (k) (5) ( ) = n (k) det ( I n A )jj

j=1

unde In reprezint matricea identitate de ord. n, iar Ajj reprezint matricea obinut din A prin eliminarea liniei j i coloanei j.
52

Aplicaii 1) Se consider A R3x3


1 0 1 A= 0 2 1 1 1 0 Se cere aproximarea valorilor proprii extreme, cu precizia = 110-9. Folosind algoritmul prezentat obinem: min = - 0,8793852415 numr de iteraii efectuate: 7. max = 2,5320888862 numr de iteraii efectuate: 6.

53

19. Aproximarea funciilor prin interpolare Lagrange Prezentarea problemei Se dau: x1, x2, , xn R, cu xi xj, i j (numite noduri de interpolare); yi = f(xi), 1 i n (valorile cunoscute ale unei funcii n nodurile de interpolare); z R, cu z [x1, xn]. Se cere s se aproximeze f(z), folosind polinomul Lagrange de interpolare pe nodurile date. Prezentarea metodei n n z xi f (z) y k k =1 i =1 x k x i
ik

unde L( x )def y k
k =1 i =1 ik n n

x xi xk xi

este polinomul Lagrange de interpolare pe nodurile x1, x2, , xn.


Aplicaie

Fie

xi yi

-1 -0,3

0 0,2

2 0

3 1,1

4 1,8

S se evalueze f(-2) i f(1), folosind polinomul Lagrange de interpolare pe nodurile date. Se obine: f(-2) nu se poate evalua, deoarece -2 [-1, 4] f(1) - 0,24
54

20. Diferene divizate pe noduri simple Prezentarea problemei Se dau x1, x2, ..., xn R, xi xj, i j; y1, y2, ..., yn valorile cunoscute ale unei funcii f n x1, x2, ..., xn. Diferenele divizate de ordinul zero, ale funciei f sunt:

(1) f x i = y i , 1 i n Diferene divizate de ordin nti, ale funciei f sunt: (2) f x i , x i +1 =


def

def

f x i f x i +1 x i x i +1
def

,1in-1

Diferene divizate de ordinul al doilea, ale funciei f sunt: (3) f x i , x i +1 , x i + 2 =


f x i , x i +1 f x i +1 , x i + 2 x i x i+2

,1in2

. a. m. d. Diferena divizat de ordinul n - 1, a funciei f este: (4) f x 1 , x 2 ,..., x n =


def

f x 1 , x 2 ,..., x n -1 f x 2 , x 3 ,..., x n x1 x n

Prezentarea metodei Se cere tabloul D al diferenelor divizate care n fiecare

coloan j, 0 j n-1 s conin diferenele divizate de ordin j caracterizate prin formulele (1) (4). Din (1) di0 = yi, 1 i n Din (2) (4) d ij =
d i, j 1 d i + 1, j 1 xi xi+ j
55

, 1 j n1, 1 i nj.

Aplicaie

Se dau: xi -1 0 2 3 4 yi -0,3 0,2 0 1,1 1,8 Se obin: - diferenele divizate de ordinul 0 sunt 0,3; 0,2; 0; 1,1; 1,8. - diferenele divizate de ordinul 1 sunt: 0,5; -0,1; 1,1; 0,7; - diferenele divizate de ordinul 2 sunt: 0,2; 0,4; -0,2; - diferenele divizate de ordinul 3 sunt: 0,15; - 0,15 i - diferena divizat de ordinul 4 este 0,06.

56

21. Aproximarea funciilor prin interpolare Newton Prezentarea problemei Se dau: x1, x2, , xn R, cu xi xj, i j (numite noduri de interpolare); yi = f(xi), 1 i n (valorile cunoscute ale unei funcii n nodurile de interpolare); z R, cu z [x1, xn]. Se cere s se aproximeze f(z), folosind polinomul Newton de interpolare pe nodurile date. Prezentarea metodei
n k 1 i =1

f (z) f x 1 + f x 1 , x 2 ,..., x k (z x i )
k =2

unde N( x )def f x 1 + f x 1 , x 2 ,..., x k (x x i )


k =2 i =1 n k 1

este polinomul Newton de interpolare pe nodurile x1, x2, , xn. i f x 1 = y1 f x 1 , x 1 ,..., x k =


j=1 k

yj

(x
k i =1 i j

xi )

, 2kn

Aplicaie

xi -1 0 2 3 4 yi -0,3 0,2 0 1,1 1,8 S se evalueze f(-2) i f(1), folosind polinomul Newton de interpolare pe nodurile date. Se obine: f(-2) nu se poate evalua, deoarece -2 [-1, 4]; f(1) - 0,24
57

Fie

22. Diferene divizate pe noduri multiple

Prezentarea problemei
Se dau x1, x2, ..., xn R, xi xj, i j, noduri multiple, cu multiplicitile mi N*, 1 i n i valorile: (*) fi(j), 1 i n, 0 j mi 1 cunoscute n noduri pentru o funcie f i o parte din derivatele sale.

Prezentarea metodei
Considerm s = m k
k =1 n

sau

Diferenele divizate de ordinul zero, ale funciei f sunt: (1) f x i = f i (0 ) , 1 i n Diferene divizate de ordin nti, ale funciei f sunt: (2) f x i , x i = f i (1) /1! , 1 i n (2)f x i , x i +1 =
def def

f x i f x i +1 x i x i +1

,1in-1

sau

Diferene divizate de ordinul al doilea, ale funciei f sunt: (1) (3) f x i , x i = f i / 1! , 1 i n


def f x , x f x , x i i i i+1 f x i , x i , x i+1 = x i x i+1 , 1 i n -1 (3) respectiv, def f x , x i i +1 f x i +1 , x i +1 f x , x , x = i i +1 i +1 x i x i+1

58

sau (3) f x i , x i +1 , x i + 2 =
def

f x i , x i +1 f x i +1 , x i + 2 x i x i+2

1 i n 2 . a. m. d. Diferena divizat de ordinul s - 1, a funciei f este: (4) f < x 1 , x 1 ,..., x 1 , x 2 , x 2 ,..., x 2 ,..., x n , x n ,..., x n > = 14243 14243 14243 4 4 4 4
m1 ori m 2 ori m n ori def def

f < x1, x1,...,x1,...,xn , xn ,...,xn , > f < x1, x1,...,x1,...,xn , xn ,...,xn , > 1 2 3 14 43 4 4 42 4 1 2 3 14 43 4 4 42 4
m1ori (mn 1)ori (m11)ori mn ori

x1 xn n general, diferenele divizate care apar sunt de tipul:


i , 1 i n, 1 p mi (5) f < x i , x i ,...x i > = 1 24 4 3 (p 1)! p ori

f ( p 1) ( x )

sau (6) f < x i , x i ,..., x i ,..., x j , x j ,..., x j >= 14 4 2 3 14243


p ori q ori

f < x i , x i ,..., x i ,..., x j , x j ,..., x j >) / (x i x j ) , 1 i n, 1 p 14 4 2 3 14243


( p -1) ori
q ori

= (f < x i , x i ,..., x i ,..., x j , x j ,..., x j > 14 4 2 3 14243


p ori

(q -1) ori

mi, 1 j n, 1 q mj, i j. Se cere tabloul D al diferenelor divizate care n fiecare coloan j, 0 j s -1 s conin diferenele divizate de ordinul j caracterizate prin formulele (1) (6). Notm elementele tabloului cu dij , 0 j s-1, 1 i s-j.

59

Aplicaie
Se dau: xi fi fi fi -2 1 -4 0 0 -2 2 2 -1 3 0

Deci, m1 = 3; m2 = 2; m3 = 3 s = 8. Se obine tabloul: - diferenele divizate de ordinul 0 sunt: 1; 1; 1; -2; -2; -1; -1; -1; - diferenele divizate de ordinul 1 sunt: -4; -4; -1,5; 2; 0,5; 3; 3; - diferenele divizate de ordinul 2 sunt: 0; 1,25; 1,75; -0,75; 1,25; 0; - diferenele divizate de ordinul 3 sunt: 0,625; 0,25; -0,625; 1; -0,625; - diferenele divizate de ordinul 4 sunt: -0,1875; -0,21875; 0,40625; -0,8125; - diferenele divizate de ordinul 5 sunt: -0,0078125; 0,15625; -0,3046875; - diferenele divizate de ordinul 6 sunt: 0,041015625; 0,115234375; - diferena divizat de ordinul 7 este: -0,0390625.

60

23. Polinom de interpolare Hermite Prezentarea problemei Se dau x1, x2, ..., xn R, xi xj, i j, noduri multiple, cu multiplicitile mi N*, 1 i n i valorile fi(j), 1 i n, 0 j mi-1 cunoscute n noduri pentru o funcie f i o parte din derivatele sale. Se cere determinarea unui polinom H a crui valori n punctele xi s coincid cu valorile funciei f, adic: H(xi) = f(xi), pentru 1 i n i n plus valorile derivatei polinomului H s coincid cu valorile derivatei funciei pn la ordinul mi-1 pentru fiecare valoare xi. Pentru valori z xi, valoarea polinomului H(z) aproximeaz valoarea funciei f(z). Prezentarea metodei Pentru construcia polinomului H propunem formula Hermite. Pentru z [x1, zn], se cere:
H (z ) = f x 1 + f x 1 x 1 (z x 1 ) + ... + f < x 1 , x 1 ,..., x 1 > 14243
m1 ori

(z x 1 ) m1 1 + f < x 1 , x 1 ,..., x 1 , x 2 > (z x 1 ) m1 + ... + 14 4 2 3


m1 ori

+ f < x 1 , x 1 ,..., x 1 , x 21 , x 2 ,..., x 2 ,..., x n , x n ,..., x n > 14243 14 244 4 3 14 24 3 4 4


m1 ori m 2 ori m n ori

(z x 1 )

m1

(z x 2 )m ...(z x n )m 1 ,
2 n

unde diferenele divizate pe noduri multiple sunt elementele tabloului D din algoritmul precedent.

61

24. Aproximarea funciilor prin spline cubic cu derivata a doua nul la extremitile intervalului de aproximare

Prezentarea problemei
Se dau x0, x1, ..., xn R, xi xj, i j, noduri de interpolare; f0, f1, ..., fn R valorile cunoscute n xi, 0 1 n, ale unei funcii f i trebuie s obinem funcia S cu proprietile
S [x
not
i 1 , x i ]

= Si , 1 i n este polinom de gradul 3; S(xi) = fi,

0 i n; S, S, S continue pe [x0,xn].

Prezentarea metodei
Notm hi = xi xi-1, 1 i n i avem: (1) S i (x ) = + f i 1

3 3 2 u i (x x i 1 ) + u i 1 (x i x ) h + fi ui i 6h i 6 2 h x x , 1 i n, x [xi-1, xi] u i 1 i i 6 hi

x x i 1 + hi

unde, am notat S(xi) = ui, 0 i n Avem S(x0) = S(xn) = 0 u0 = un = 0. Pentru a obine spline-ul cubic S, avem nevoie de restriciile sale, Si pe fiecare interval unde: u1, u2, ..., un-1 sunt necunoscute, determinate ca soluie a sistemului: (2)
hi h + h i +1 h f f f f i 1 u i 1 + i u i + i +1 u i +1 = i +1 i i , 6 3 6 h i +1 hi

1 i n-1, cu u0 = un = 0.

62

Matricea sistemului (2) este tridiagonal simetric i are urmtoarele elemente: (3)
a i = (h i + h i +1 )/3, 1 i n 1 - pe diagonala principal b i = h i +1 /6, 1 i n 2 - deasupra diagonalei principale c = h /6, 1 i n 2 - sub diagonala principal i +1 i

iar termenul liber al sistemului (2) are componentele: (4) ti = (fi+1 - fi)/hi+1 (fi fi-1)/hi, 1 i n-1. Pentru rezolvarea sistemului (2), folosim factorizarea LR pentru matrice tridiagonale i nlocuind u1, u2, ..., un-1, astfel obinute, n (1), gsim S. Aplicaie Se d tabelul: xi -1 0 fi 5 1 1 1 2 11

Avem: h1 = h2 = h3 = 1; u0 = u3 = 0. Se obine sistemul: 4 1 u 1 24 1 4 u = 60 2 cu soluia: u1 = 2,4 i u2 = 14,4.

63

25. Aproximarea funciilor prin spline cubic cu prima derivat egal cu prima derivat a funciei la extremitile intervalului de aproximare

Prezentarea problemei
Se dau x0, x1, ..., xn R, xi xj, i j, noduri de interpolare; f0, f1, ..., fn R valorile cunoscute n xi, 0 1 n, ale unei funcii f; f0, fn, valorile f(x0) i f(xn). Trebuie s obinem funcia S cu proprietile S [x ,x ] = Si , i1 i 1 i n este polinom de gradul 3; S(xi) = fi, 0 i n; S(xi) = fi, i = 0, i = n; S, S, S continue pe [x0,xn].
not

Prezentarea metodei
Notm hi = xi xi-1, 1 i n i avem: 3 3 2 u (x x i 1 ) + u i 1 (x i x ) h x x i 1 + fi ui i + (1) Si (x ) = i 6h i 6 hi
2 h x x , 1 i n, x [xi-1, xi], + f i 1 u i 1 i i 6 hi unde, am notat S(xi) = ui, 0 i n. Pentru a obine spline-ul cubic S, avem nevoie de obinerea restriciei sale Si pe fiecare interval unde: u0, u1, ..., un sunt necunoscute, determinate ca soluie a sistemului:

64

(2)
h1 f1 f 0 h1 f0 u 0 + u1 = 3 6 h1 h i + h i+1 h f f f f h i u i + i+1 u i+1 = i+1 i i i1 , 1 i n u i1 + 3 6 h i+1 hi 6 h n hn f n f n1 u n1 + u n = f n 6 3 hn

1. Matricea sistemului (2) este tridiagonal, simetric i are elementele pe diagonala principal, deasupra diagonalei principale i respectiv sub diagonala principal, date de relaiile:
a0 = h1/3,ai = (hi + hi+1)/3,1 i n 1;an = hn/3, (3) bi = hi+1/6, 0 i n 1, c = h /6, 0 i n 1, i i+1 iar termenul liber are componentele:

t = (f f )/h f 1 0 1 0 0 (4) t i = (f i+1 f i )/hi+1 (f i f i1 )/hi , 1 i n 1 t n = f n - (f n f n1 )/h n


65

Aplicaie
Se d tabelul: -1 0 1 2 xi fi -12 2 -6 -36 fi 19 -35 Avem: h1 = h2 = h3 = 1. Se obine sistemul: 2 1 0 0 u 0 30 1 4 1 0 u 1 132 0 1 4 1 u = 132 2 0 0 1 2 u 30 3 cu soluia: u0 = 2, u1 = 26, u2 = 26, u3 = 2.

66

26. Metoda celor mai mici ptrate pentru aproximarea funciilor cazul discret

Prezentarea problemei
Se dau x1, x2, ..., xm R; f1, f2, ..., fm R (reprezint valori cunoscute n xi, 1 i m, pentru o funcie f); w1, w2, ..., wm R+ (reprezint ponderi) i se cere: (1) p 0 (x ) = a k k (x )
k =0 n

elementul de cea mai bun aproximare pentru f, n sensul celor mai mici ptrate, unde: n este dat, iar:

(2)

0 (x ) = 1, () x R k k (x ) = x , () x R, 1 k n

Prezentarea metodei
Notm: 0 (x 1 ) f1 k (x 1 ) ~ f2 ~ 0 (x 2 ) ~ k (x 2 ) (3) f = ; 0 = ; k = , 1 k n. L L L f (x ) (x ) m k m 0 m Pentru u, v Rm, definim produsul scalar: (4) u, v = w k u k v k
k =1 m

Pentru a obine coeficienii a0, a1, ..., an ai lui p0 din (1), se rezolv sistemul:

67

(5)
~ ~ 0 , 0 ~ ~ ,
0 1

~ ~ 1 , 0 ~ ~ ,
1 1

L L L L

L ~ , 0 ~ n

L ~ , 1 ~ n

~ ~ n , 0 a 0 ~ ~ n , 1 a 1 = L L ~ ~ n , n a n

~ f , 0 ~ f , 1 . L ~ f , n

De asemenea, considerm o coloan n plus n matricea B, coloana n+1 care conine termenii liberi ai sistemului (5). Folosind (2), (3), (4), calculm elementele matricei B cu formulele:
m m j b00 = w k ; b0j = b j0 = w k x k , 1 j n k =1 k =1 m i+ j bij = b ji = w k x k , 1 i n, i j n k =1 m m i b0,n+1 = w k f k ; bi,n+1 = w k f k x k , 1 i n k =1 k =1

(6)

Aplicaie
Se d tabelul: xi 1 2 fi 10 5 wi 1 1 4 2 1
68

6 1 1

S se aproximeze parabolic funcia de mai sus. Avem: m = 4, n = 2, p0(x) = a0 + a1x + a2x2.


Se obine sistemul:

57 a 0 4 13 13 57 289 a 1 57 289 1569 a 2

18 = 34 98

cu soluia: a0 14.311557789, a1 5.2663316585, a2 0.5125628141.

69

27. Metoda trapezului pentru evaluarea integralelor

Prezentarea problemei
Fiind dat integrala definit:

f (x )dx
a

ne propunem

stabilirea unei formule care s aproximeze valoarea integralei.

Prezentarea metodei
Fie [a, b] R i a = x0 < x1 < ... < xn = b, o diviziune a lui [a,b] ba . cu xi = x0 + ih, 0 i n, h = n Metoda trapezului, propune urmtoarea aproximare pentru integrala definit: b n 1 f (x )dx f (a ) + 2 f (x i ) + f (b ) . i =1 a

Aplicaie
I=
0 1

dx x +1

pentru = 10-5 I 0,69314813423, n 9 pai pentru = 10-8 I 0,69314718146, n 14 pai pentru = 10-9 I 0,69314718083, n 15 pai Valoarea exact I = ln2 0,69314718056

70

28. Metoda Simpson pentru evaluarea integralelor

Prezentarea problemei
Fiind dat integrala definit:

f (x )dx
a

ne propunem

stabilirea unei formule care s aproximeze valoarea integralei.

Prezentarea metodei
Fie [a, b] R i a = x0 < x1 < ... < xn = b, o diviziune a lui [a,b] ba . cu xi = x0 + ih, 0 i n, h = n Metoda Simpson, propune urmtoarea aproximare pentru evaluarea integralei: b n 1 n 1 h x + x i +1 f (x )dx f (a ) + 2 f (x i ) + 4 f i + f (b ) . 6 2 i =1 i =0 a

Aplicaie
I=
0 1

dx x +1

pentru = 10-5 I 0,69314765282, n 4 pai pentru = 10-8 I 0,69314718067, n 7 pai pentru = 10-10 I 0,69314718056, n 9 pai

71

29. Metoda Newton pentru evaluarea integralelor

Prezentarea problemei
Fiind dat integrala definit:

f (x )dx
a

ne propunem

stabilirea unei formule care s aproximeze valoarea integralei.

Prezentarea metodei
Fie [a, b] R i a = x0 < x1 < ... < xn = b, o diviziune a lui [a,b] ba . cu xi = x0 + ih, 0 i n, h = n
Metoda Newton, propune urmtoarea aproximare pentru evaluarea integralei:
n1 n1 2x + x x + 2xi+1 f (x)dx f (a) + 2f (xi ) + 3f i i+1 + f i + f (b) 3 3 i=1 i=0 a b

Aplicaie
I=
0 1

dx x +1

pentru = 10-5 I 0,69314739068, n 4 pai pentru = 10-8 I 0,69314718061, n 7 pai pentru = 10-10 I 0,69314718056, n 8 pai

72

30. Evaluarea numeric a integralelor duble pe domenii convexe de frontier poligonal

Considerm integrala dubl

f (x, y)dxdy , unde D R


D

este un domeniu conex de frontier poligonal. I. Presupunem c D este un domeniu triunghiular de vrfuri V1(x1,y1), V2(x2,y2), V3(x3,y3). f ( x , y)dxdy poate fi
D

aproximat numeric folosind una din urmtoarele formule: S (f(x1,y1) + f(x2,y2) + f(x3,y3)), unde 3 D S reprezint aria domeniului D (formul avnd ordinul de exactitate unu). S (2) f (x, y)dxdy = 12 (f(x1,y1) + f(x2,y2) + f(x3,y3) + D 9f(xG,yG)), unde S reprezint aria domeniului D iar G(xG,yG) centrul de greutate al lui D (formul avnd ordinul de exactitate doi). S / / / / / / (3) f (x, y)dxdy = 60 8 f x 1 , y1 + f x 2 , y 2 + f x 3 , y 3 + D + 3(f (x 1 , y 1 ) + f (x 2 , y 2 ) + f (x 3 , y 3 ) + 27 f (x G , y G )] , unde S reprezint aria domeniului D, G(xG,yG) centrul de greutate / / / / / / al lui D, iar V1/ ( x 1 , y1 ) , V2/ ( x 2 , y 2 ) , V3/ ( x 3 , y 3 ) mijloacele laturilor opuse vrfurilor V1, V2, V3 respectiv (formul avnd ordinul de exactitate trei). II. Presupunem c D este un domeniu convex de frontier poligonal. Introducem pe domeniul D o triangularizare T, dat (1)

f (x, y)dxdy

[((

) (

) (

))

i i de T = U K i , unde Ki triunghi de vrfuri V1i ( x 1 , y1 ) ; i =1

NE

73

V2i ( x i2 , y i2 ) ; V3i ( x i3 , y i3 ) , i = 1, NE , iar NE numrul total de elemente triunghiulare ale lui T. Astfel, obinem:

f (x, y)dxdy =
D

f (x, y)dxdy
i =1 K i

NE

Evalund numeric fiecare integral dubl definit pe cte un domeniu triunghiular Ki, i = 1, NE , conform formulelor de la cazul I, obinem prin sumarea rezultatelor valoarea aproximativ a integralei duble f ( x , y)dxdy iniial dat.
D

Aplicaie. Caz I

xy y 2 dxdy , unde D triunghiul de vrfuri V1(0,0);

V2(10,1); V3(1,1). Aplicnd formula (1) obinem:

xy y 2 dxdy = 4,495

Aplicaie. Caz II y x (1 + xy)dxdy , unde D = {(x, y ) x [1;3]; y [0;1]}. D Observaie: Valoarea exact este: 0,496233.

74

31. Metoda Euler pentru rezolvarea unei probleme Cauchy asociat unei ecuaii difereniale ordinare

Prezentarea problemei
Fie problema Cauchy: y ' = f (x , y ) (1) y (x 0 ) = y 0

Prezentarea metodei
Se consider [x0, xn] R, unde: xi+1 = xi + h, 0 i n-1 i se cer valorile aproximative ale soluiei problemei (1), notate yi, unde yi y(xi), 1 i n. Formulele folosite sunt: x i +1 = x i + h (2) y i +1 = y i + hf (x i , y i ) cu 0 i n 1

Aplicaie
2y y' = Fie problema (1) x y(1) = 1 Se consider [1; 1,5] cu xi = 1 + 0, 1i, 0 i 5. Se cer valorile y1, y2, y3, y4, y5 care aproximeaz y(1,1); y(1,2); y(1,3); y(1,4); y(1,5). Astfel, pentru aceste valori, obinem aproximrile: 1,2099570480 1,4399062866 1,6898477157, n 8 mbuntiri pentru = 10-4 1,9597813354
75

2,2497071456 1,2099973144 1,4399941404 1,6899904782, n 13 mbuntiri pentru = 10-9 1,9599863276 2,2499816888 Valorile exacte ale soluiei y = x2 sunt: 1,21; 1,44; 1,69; 1,96; 2,25.

76

32. Metoda Runge-Kutta de ordinul doi pentru rezolvarea unei probleme Cauchy asociat unei ecuaii difereniale ordinare

Prezentarea problemei
(1) Fie problema Cauchy: y' = f (x , y ) y (x 0 ) = y 0

Prezentarea metodei
Se consider [x0, xn] R, unde: xi+1 = xi + h, 0 i n-1 i se cer valorile aproximative ale soluiei problemei (1), notate yi, unde yi y(xi), 1 i n. Formulele folosite sunt: x i +1 = x i + h y = y + (k + 3k )/4, unde i 1 2 i +1 (2) k1 = hf (x i , y i ) k 2 = hf (x i + 2h/3, y i + 2k1/3) cu 0 i n 1

Aplicaie
2y y' = Fie problema (1) x y(1) = 1 Se consider [1; 1,5] cu xi = 1 + 0, 1i, 0 i 5.
77

Se cer valorile y1, y2, y3, y4, y5 care aproximeaz y(1,1); y(1,2); y(1,3); y(1,4); y(1,5). Astfel, pentru aceste valori, obinem aproximrile: 1,2099972846 1,4399943092 1,6899910738, n 5 mbuntiri pentru = 10-5 1,9599875787 2,2499838240
sau:

1,2099999998 1,4399999996 1,6899999993, n 13 mbuntiri pentru = 10-8 1,9599999991 2,2499999987 Valorile exacte ale soluiei y = x2 sunt: 1,21; 1,44; 1,69; 1,96; 2,25.

78

33. Metoda Euler pentru rezolvarea unei probleme Cauchy asociat unui sistem de dou ecuaii difereniale ordinare

Prezentarea problemei
Fie problema Cauchy: y' = f ( x, y, z) z' = g ( x, y, z) y( x 0 ) = y 0 z ( x 0 ) = z 0

(1)

Se cere s se aproximeze soluia problemei date pe [x0, xn].

Prezentarea metodei
Se consider [x0, xn] R, cu diviziunea de pas h: xi+1 = xi + h, 0 i n1 i se cer valorile aproximative ale soluiei problemei (1), notate yi, respectiv zi, unde yi y(xi), zi z(xi), 1 i n. Formulele folosite sunt: x i+1 = x i + h y = y + hf ( x , y , z ) i+1 i i i i (2) z i+1 = z i + hg ( x i , y i , z i ) cu 0 i n 1

79

Aplicaie
y' = x / y 2 2 2 z' = z( x + y ) /( xy ) Fie problema (1) y(1) = 1 z(1) = 1 Se consider intervalul [1; 1,5] cu diviziunea xi = 1+0,1i, 0 i 5. Se cer valorile y1, y2, y3, y4, y5, respectiv z1, z2, z3, z4, z5, care aproximeaz y(1,1); y(1,2); y(1,3); y(1,4); y(1,5) zespectiv z(1,1); z(1,2); z(1,3); z(1,4); z(1,5).

Astfel, pentru aceste valori obinem aproximrile: 1,1000000015 i 1,2099919436 1,2000000030 i 1,4399824221 1,3000000045 i 1,6899714354, n 12 mbuntiri, 1,4000000060 i 1,9599589836 pentru = 104 1,5000000075 i 2,2499450664
y( x ) = x Soluia exacta este 2 z ( x ) = x

80

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