Documente Academic
Documente Profesional
Documente Cultură
0. Erori
rd ( x ) − x 5 ⋅ 10 −(t +1)
~
≤ ≤ 5 ⋅ 10 − t .
x a
~
Notăm eps = 5 ⋅10 −t . Dacă rd ( x ) = x(1 + ε ) , atunci, din inegalitatea de mai sus
rezultă ε ≤ eps . Numărul real eps se numeşte 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 .
⎧0.α1α 2 ...α t , dacă α t +1 = 0 ~
Se determină a' = ⎨ −t , iar rd (x ) = sgn ( x ) ⋅ a '⋅2 b . În
⎩0.α1α 2 ...α t + 2 , dacă α t +1 = 1
acest caz eps = 2 −t .
~ ~
În cazul în care rd (x ) ∈ F , atunci rd (x ) este chiar rd (x ) . Deoarece
numărul poziţiilor pentru exponentul e este finit, există , din păcate, numere
~
x ∉ F pentru care rd (x ) ∉ F .
Exemplul 3.
Fie a = 0.2337125810 − 4 , b = 0.33678429 10 2 , c = −0.3367781110 2 .
Într-un calculator cu t = 8 şi e = ∞ , operaţia + ∗ conduce la:
( )
a + ∗ b + ∗ c = 0.2337125810 − 4 + ∗ 0.61800000 10 − 3 =
= 0.0233712610 − 3 + ∗ 0.6180000010 − 3 = 0.6413712610 − 3
(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 adunării este:
6 Bazele Analizei Numerice
( )
def
fl ( x + ( y + z )) = x + ∗ y + ∗ z
( )
def
fl ((x + y ) + z ) = x + ∗ y + ∗ z
pentru restul calculelor. Mulţimea operand finală va consta din rezultatele dorite
y1 , y 2 ,..., y m . În concluzie, o operaţie corespunde unei transformări a mulţimii
operand. Scriind mulţimile operand consecutive ca vectori coloană
⎛ x (i ) ⎞
⎜ 1 ⎟
⎜ (i ) ⎟
(i ) ⎜ x 2 ⎟
x = ∈ R ni , putem asocia fiecărei operaţii elementare o funcţie vectorială
⎜ M ⎟
⎜ (i ) ⎟
⎜ xn ⎟
⎝ i ⎠
( )
elementară astfel: ϕ (i ) : Di → R ni +1 , Di ⊂ R ni astfel încât ϕ (i ) x (i ) = x (i +1) cu
x (0 ) = x , unde x (i +1) este o reprezentare vectorială a mulţimii operand
transformate.
Fiind dat un algoritm, şirul său de operaţii elementare dă naştere unei
descompuneri a lui ϕ într-un şir de funcţii elementare ϕ (i ) : Di → Di +1 , i = 0, r ,
, ϕ = ϕ (r ) o ϕ (r −1) o ... o ϕ (0 ) , D0 = D , Dr +1 ⊆ R nr +1 = R m .
nj
Dj ⊆R
ϕ εϕ
x y
εx + ε y , dacă x + y ≠ 0
x+y x+ y x+ y
x y
x–y εx − ε y , dacă x − y ≠ 0
x− y x− y
x⋅ y εx +εy
x/ y εx −εy
1
x εx
2
Dacă operanzii care se adună au semne diferite, atunci cel puţin unul dintre
x y
numerele de condiţionare , este mai mare ca 1 şi erorile relative
x+ y x+ y
ε x , ε y sunt amplificate. Dacă x ≈ − y atunci se abandonează calculele (apare
cancelarea rezultatului).
Pentru descrierea propagării 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
relaţiile:
x = x (0) , x (1) = ϕ (0) ( x (0) ) ,…, y = x ( r +1) = ϕ ( r ) ( x ( r ) ) , ϕ (i ) ∈ C 1 ( Di ) , i = 0, r .
Notăm ψ (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), obţinându-se în aritmetica virgulei mobile aproximările
~
x (i ) date de relaţiile : ~
x (i +1) = fl (ϕ (i ) ( ~
x (i ) )) . Atunci erorile absolute se pot evalua
astfel:
∆x (i +1) = [ fl (ϕ ( i ) ( ~
x ( i ) )) − ϕ ( i ) ( ~
x ( i ) )] + [ϕ ( i ) ( ~
x ( i ) ) − ϕ ( i ) ( x ( i ) )] . (2)
Dar
ϕ (i ) ( ~x (i ) ) − ϕ (i ) ( x (i ) ) ≈ Dϕ (i ) ( x (i ) )∆x (i ) (3).
Cum ϕ (i ) este o funcţie elementară, evaluarea sa în virgulă mobilă va fi
fl (ϕ (i ) (u )) = rd (ϕ (i ) (u )) ,
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 ) .
Relaţiile 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:
⎛ ε 1 0 ... ... 0 ⎞
⎜ ⎟
⎜ 0 ε 2 0 ... 0 ⎟
E i +1 = ⎜ cu ε j ≤ eps .
... ... ... ... ... ⎟
⎜ ⎟
⎜ 0 0 ... ... ε n ⎟
⎝ i +1 ⎠
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 apărută
atunci când se evaluează în aritmetica virgulei mobile ϕ (i ) , iar elementele
diagonale ale matricei Ei+1 pot fi interpretate ca erori relative de rotunjire
corespunzătoare. Ţinând 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.
ψ (1) (u , v) = u − v 2 ,ψ ( 2) (u , v ) = u − v , Dϕ ( x) = ( 2a,−2b) ,
⎛ ε 1a 2 ⎞ ε 0⎞
Dψ (1) ( x (1) ) = (1, − 2b) , Dψ ( 2) ( x ( 2) ) = (1, − 1) , α1 = ⎜ ⎟, E1 = ⎛⎜ 1 ⎟⎟ ,
⎜ 0 ⎟ ⎜
⎝ ⎠ ⎝ 0 0⎠
⎛ a ⋅∗ a ⎞ ⎛ a 2 ⎞
deoarece fl (ϕ (0) ( x (0) )) − ϕ (0) ( x (0) ) = ⎜ ⎟ − ⎜ ⎟ (eroarea de rotunjire în
⎜ b ⎟ ⎜ b ⎟
⎝ ⎠ ⎝ ⎠
virgulă mobilă apare doar pe prima poziţie). Similar
⎛ 0 ⎞ ⎛0 0 ⎞
α 2 = ⎜⎜ 2 ⎟⎟, E 2 = ⎜⎜ ⎟⎟ , α 3 = ε 3 (a 2 − b 2 ) , ε i ≤ eps, i = 1,3.
ε b
⎝ 2 ⎠ ⎝ 0 ε 2⎠
⎛ ∆a ⎞
Dacă ∆x = ⎜⎜ ⎟⎟, ∆y = 2a∆a − 2b∆b + a 2 ε 1 − b 2 ε 2 + ( a 2 − b 2 )ε 3 .
⎝ ∆b ⎠
În cazul algoritmului 2, avem:
⎛a⎞ ⎛ a + b ⎞ ( 2)
x = x ( 0) = ⎜⎜ ⎟⎟ , x (1) = ⎜⎜ ⎟⎟ , x = y = a 2 − b 2 ; ψ (1) (u , v) = u ⋅ v ,
b
⎝ ⎠ ⎝ a − b ⎠
⎛ ε 1 ( a + b) ⎞
Dϕ ( x) = (2a,−2b) , Dψ (1) ( x (1) ) = ( a − b, a + b) ; α 1 = ⎜⎜ ⎟⎟ ,
⎝ ε 2 ( a − b) ⎠
⎛ε 0⎞
α 2 = ε 3 (a 2 − b 2 ) şi E1 = ⎜⎜ 1 ⎟⎟ ; ε i ≤ eps .
⎝ 0 ε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 2ε1 − 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.
Când selectăm un anumit algoritm de calcul pentru un ϕ (x ) (cu alte
cuvinte, o anumită descompunere a lui ϕ în funcţii elementare), Dϕ rămâne
neschimbat; matricele jacobiene Dψ (i ) care măsoară propagarea rotunjirilor vor fi
totuşi diferite, efectul total al erorilor de rotunjire va fi:
Dψ (1)α 1 + ... + Dψ ( 2)α 2 + α r +1 .
Un algoritm este numeric mai bun decât alt algoritm pentru calculul lui
ϕ (x ) , dacă pentru o mulţime de date x, efectul total al erorilor de rotunjire este
mai mic în cazul primului algoritm.
Sisteme de ecuaţii liniare 13
Fie
⎛ 0 ⎞ ⎛0⎞
⎜ ⎟ ⎜ ⎟
⎜ M ⎟ ⎜ M ⎟
⎜ 0 ⎟ ⎜ ⎟
mr = ⎜ ⎟ şi e = ⎜ 1 ⎟
r
⎜ mr +1,r ⎟ ⎜0⎟
⎜ ⎟ ⎜ ⎟
⎜ M ⎟ ⎜ M ⎟
⎜ mn , r ⎟ ⎜0⎟
⎝ ⎠ ⎝ ⎠
(elementul 1 din er se află pe linia r).
O matrice de forma Mr = In – mr⋅er T, unde erT= (0, ... , 1, ... ,0) , se numeşte
matrice Frobenius. O astfel de matrice are următoarea structură:
⎛1 0 0 L 0⎞
⎜ ⎟
⎜ 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 ⎞ ⎛ 1 0 0 0⎞ ⎛ 0 0 0 0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 0 1 0 0⎟ ⎜ 0 ⎟ ⎜ 0 1 0 0⎟ ⎜ 0 0 0 0⎟
M2 = ⎜ − (0 1 0 0) = ⎜ − =
0 0 1 0 ⎟ ⎜ m32 ⎟ 0 0 1 0 ⎟ ⎜ 0 m32 0 0 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜0 0 0 1⎟ ⎜ m ⎟ ⎜0 0 0 1⎟ ⎜0 m ⎟
⎝ ⎠ ⎝ 42 ⎠ ⎝ ⎠ ⎝ 42 0 0 ⎠
⎛1 0 0 0⎞
⎜ ⎟
⎜0 1 0 0⎟
=⎜
0 − m32 1 0 ⎟
⎜ ⎟
⎜0 − m 0 1 ⎟
⎝ 42 ⎠
Sisteme de ecuaţii liniare 15
ai(11) a1(1j)
j = 1, n ; aij( 2) = aij(1) − , pentru orice i, j = 2, n .
(1)
a11
Observăm că
( 2)
a21a12 1 a11 a12
a22 = a22 − = ≠ 0.
a11 a11 a21 a22
Dacă notăm
16 Bazele Analizei Numerice
⎛1 0 0 K 0⎞
⎜ ⎟
⎜0 1 0 K 0⎟
⎜ ( 2) ⎟
a32
⎜ 0 − ( 2) 1 K 0⎟
M2 = ⎜ a22 ⎟,
⎜M M M M⎟
⎜ ⎟
⎜ an( 22) ⎟
⎜⎜ 0 − 0 K 1⎟
( 2)
a22 ⎟
⎝ ⎠
atunci
⎛ a (3) (3)
a12 (3)
a13 K a1(n3) ⎞⎟
⎜ 11
⎜ 0 (3)
a22 (3)
a23 K a2(3n) ⎟
⎜ ⎟
A3 = M 2 A2 = ⎜ 0 0 (3)
a33 K a3(3n) ⎟ ,
⎜ ⎟
⎜ M M M M ⎟
⎜ 0 0 0 K ann (3) ⎟
⎝ ⎠
ai(22) a2( 2j)
unde aij(3) = aij( 2) pentru i=1, 2, j = 1, n şi ai(3j ) = ai( 2j ) − , i, j = 3, n .
( 2)
a22
Un calcul simplu ne arată că
a11 a12 a13
(3) 1
a33 = a a22 a23 ≠ 0 .
(1) ( 2) 21
a11 a22
a31 a32 a33
(r )
În general, arr ≠ 0 şi se poate considera matricea Frobenius:
⎛1 0 0 L 0⎞
⎜ ⎟
⎜ 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ă notăm cu Ar+1=MrAr , atunci
Sisteme de ecuaţii liniare 17
Exemplu.
⎛ ⎞
⎛ ⎞
⎛ 5 2 1⎞ ⎜ 1 0 0⎟ ⎜ 5 2 1⎟
⎜ ⎟
A1 = A = ⎜ 5 − 6 2 ⎟ , M1 = ⎜⎜ − 1 1 0 ⎟⎟ ,
A2 = ⎜⎜ 0 − 8 1⎟⎟ ,
⎜− 4 4 18 9
⎝ 2 1⎟⎠ ⎜ 0 1⎟ ⎜0 ⎟
⎝ 5 ⎠
⎝ 5 5⎠
⎛ ⎞ ⎛ ⎞ ⎛ ⎞
⎜1 0 0⎟ ⎜5 2 1⎟ ⎜ 1 0 0⎟
M 2 = ⎜ 0 1 0 ⎟ , U = A3 = ⎜ 0 − 8 1⎟ , M = M 2 M 1 = ⎜ − 1 1 0 ⎟ .
⎜ 9 ⎟ ⎜ 9⎟ ⎜ 7 9 ⎟
⎜0 1⎟ ⎜0 0 ⎟ ⎜ 1⎟
⎝ 20 ⎠ ⎝ 4⎠ ⎝ 20 20 ⎠
Considerăm sistemul
⎧ 5 x1 + 2 x2 + x3 = 12
⎪
⎨5 x1 − 6 x2 + 2 x3 = −1 ,
⎪ − 4x + 2x + x = 3
⎩ 1 2 3
18 Bazele Analizei Numerice
a cărui soluţie este x1=1, x2=2, x3=3. Sub formă matriceală sistemul se scrie:
⎛ 12 ⎞
⎜ ⎟
Ax=b , unde b = ⎜ − 1⎟ . Acest sistem este echivalent cu următorul sistem:
⎜ 3⎟
⎝ ⎠
(M2M1A)x=(M2M1)b . Efectuând calculele obţinem
⎧
⎪ 5 x1 + 2 x2 + x3 = 12
⎪
⎨ − 8 x2 + x3 = −13 .
⎪ 9 27
⎪ x3 =
⎩ 4 4
⎛ 1 0 0 K 0⎞
⎜ ⎟
⎜l 1 .0 K 0 ⎟
L = ⎜ 21 .
M M M M⎟
⎜ ⎟
⎜l l n3 K 1 ⎟⎠
⎝ n1 l n 2
Deoarece A = M 1−1M 2−1...M n−−11U , rezultă că:
A=LU (3)
Aşadar, orice matrice pătratică ce îndeplineşte condiţia (*) din Teorema 1 admite o
descompunere unică de forma (3), unde L este inferior triunghiulară având
elementele de pe diagonala principală egale cu 1 şi U este superior triunghiulară.
Descompunerea (3) este cunoscută sub numele de factorizarea LU.
⎛ ⎞ ⎛ ⎞
⎜ 1 0 0⎟ ⎜ 1 0 0⎟
L1 = ⎜ 1 1 0⎟ , L2 = ⎜ 0 1 0⎟ ,
⎜ 4 ⎟ ⎜ 9 ⎟
⎜− 0 1⎟ ⎜0 − 1⎟
⎝ 5 ⎠ ⎝ 20 ⎠
⎛ ⎞⎛ ⎞
⎜1 0 0⎟ ⎜5 2 1 ⎟ ⎛ 5 2 1⎞
⎜ ⎟
A = LU = ⎜ 1 1 0⎟ ⋅ ⎜0 −8 1 ⎟ = ⎜ 5 − 6 2⎟
⎜ 4 9 ⎟ ⎜ ⎟
9 ⎜
⎜− − 1⎟ ⎜0 0 ⎟ ⎝ − 4 2 1⎟⎠
⎝ 5 20 ⎠ ⎝ 4⎠
(r )
Observaţia 1. Dacă pivotul este “foarte mic” , adică arr << 1 , atunci
împărţirile la acest pivot produc erori de rotunjire foarte mari, care alterează
soluţia. În acest caz se recomandă schimbarea pivotului. Se poate alege un nou
pivot
π r = a ir( r ) = max {a (r )
ij ; r ≤ j≤n }
sau π r = a (jrr ) = max { a (r )
kl ; r ≤ k, l ≤ n }
Aceasta presupune schimbarea între ele a două linii şi eventual şi a două coloane.
n n
ϕ (x ) = ∑ ∑ aij xi x j = a11 x12 + 2a12 x1 x2 +...+ 2a1n x1 xn +
i =1 j =1
+ a22 x22 +....+ 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 număr real oarecare λ avem
ϕ(λei+ej)=aiiλ2+2aijλ+ajj > 0 . (1)
Pentru ca inegalitatea (1) să fie adevărată pentru orice λ∈R, trebuie ca
( )
∆ = 4 aij2 − aii a jj < 0 .
Aşadar am demonstrat că aij2 < aii a jj pentru orice i, j = 1, n , adică (b).
Exemplu.
⎛ 3 2 − 2⎞
⎜ ⎟
Matricea A = ⎜ 2 3 2 ⎟ satisface condiţiile din Propoziţia 1, dar nu este
⎜− 2 2 3 ⎟
⎝ ⎠
pozitiv definită.
Într–adevăr,
( )
ϕ (x ) = 3 x12 + x22 + x32 + 4(x1 x2 − x1 x3 + x2 x3 ) .
⎛ 1⎞
⎜ ⎟
Dacă x = ⎜ − 1⎟ , atunci ϕ(x)=9–12=–3<0, deci ϕ nu este pozitiv definită.
⎜ 1⎟
⎝ ⎠
Dacă inegalităţile (d) devin egalităţi pentru anumiţi indici, dar nu pentru toţi,
matricea se numeşte slab diagonal dominantă.
( )
n n
= ∑ ∑ aij ⋅ xi ⋅ xi − x j
i =1 j =1
j ≠i
Deoarece aij=aji avem şi inegalitatea:
( )
n n
ϕ (x ) > ∑ ∑ aij ⋅ x j x j − xi .
i =1 j =1
j ≠i
Adunând cele două inegalităţi rezultă
2
( )
n n
2ϕ ( x ) > ∑ ∑ aij ⋅ xi − x j ≥ 0.
i =1 j =1
j ≠i
Aşadar, ϕ(x) > 0 pentru orice x≠0 , deci ϕ este pozitiv definită.
aij≠0 dacă xi = x j ≠ 0 .
{
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
x≠0.
Aşadar, putem presupune că Φ≠S⊂M (incluziune strictă). Dacă notăm cu T=M \
S atunci S şi T satisfac condiţiile (i)–(iv) din Definiţia 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 ecuaţii liniare 25
2
⎛ a2( 1j) ⎞
⎜ n ⎟
ϕ1 (x ) = ⎜ a22
(1)
x2 + ∑ x j ⎟ + ϕ 2 (x ) ,
⎜⎜ j =3
(1)
a22 ⎟⎟
⎝ ⎠
unde
n n
ϕ 2 (x ) = ∑ ∑ aij( 2) xi x j
i =3 j = 3
este pozitiv definită. În final ϕ(x) se reprezintă ca o sumă de pătrate. Mai precis
ϕ(x) admite următoarea scriere:
2
n ⎛ n aij(i −1) ⎞
⎜ (i −1) ⎟
ϕ (x ) = ∑ ⎜ aii xi + ∑ xj ⎟ ,
(i −1)
i =1 ⎜ j =i +1 aii ⎟
⎝ ⎠
unde
a (pip −1) a (pjp −1)
aij(0) = aij şi aij( p ) = aij( p −1) − , p = 1, n − 1 .
a (ppp −1)
Introducem notaţiile:
rii = aii(i −1) , i = 1, n
aij(i −1)
rij = , i< j
rii (1)
rij = 0, j<i
rpp: = a pp ;
Pentru k:=p+1,n–1 execută
a pk
rpk := ;
rpp
sfârşit pentru k ;
Pentru i:=p+1,n execută
Pentru j:=i,n execută
aij:=aij–rpirpj ;
sfârşit pentru j ;
sfârşit pentru i ;
sfârşit pentru p ;
{ Rezolvarea sistemului RTy=b }
b
y1 = 1 ;
r11
Pentru i:=2,n execută
s:=0 ;
Pentru j:=1,i execută
s:=s+rij⋅yj ;
sfârşit pentru j ;
b −s
yi := i ;
rii
sfârşit pentru i ;
{ Rezolvarea sistemului Rx=y }
y
xn = n ;
rnn
Pentru i:=n–1,1 execută
s:=0 ;
Pentru j:=i+1,n execută
s:=s+rij⋅xj ;
sfârşit pentru j ;
y −s
xi := i ;
rii
sfârşit pentru i .
⎜ ⎟ ⎜
( )
⎛ x1 + sgn( x1 ) ⋅ x 2 ⎞ ⎛ x1 + x 2 ⋅ sgn( x1 ) ⎞
⎟
⎜ x2 ⎟ ⎜ x2 ⎟
x − σ ⋅ e1 = ⎜ ⎟ =⎜ ⎟ şi
⎜ M ⎟ ⎜ M ⎟
⎜ xn ⎟ ⎜ xn ⎟
⎝ ⎠ ⎝ ⎠
2 2
x − σ e1 2 = 2 x 2 + 2 x1 ⋅ x 2 = 2 x 2 x 2 + x1 ( ) .
Înlocuind în (1) obţinem
(
⎛ x1 + x 2 sgn x1 ⎞
⎜ ⎟
)
1 ⎜ x2 ⎟
h= ⎟ . (2)
(
2 x 2 x 2 + x1 ⎜
⎜
) M ⎟
⎜ x ⎟
⎝ n ⎠
Se obţine astfel următorul algoritm pentru determinarea lui h şi deci a matricei H:
H = In – β u uT
β= x ( 2 ( x 2 + x1 ))−1
(3)
u = (( x1 + x 2 )sgn( x1 ), x2 , ..., xn )
T
sgn(x1) = 1 dacă x1 = 0.
⎛ a (1) ⎞
⎜ 22 ⎟
În continuare considerăm vectorul a2(1) = ⎜ M ⎟ şi determinăm o matrice
⎜ (1) ⎟
⎜ an 2 ⎟
⎝ ⎠
~
ortogonală H 2 ∈Mn–1(R) astfel încât
~
H a (1) = σ ⋅ e~ ,
2 2 1
unde ~
e1T = (1, 0 , ..., 0) ∈Rn–1.
⎛1 0 ⎞
Notăm cu H 2 = ⎜⎜ ~ ⎟⎟ ∈M n(R) şi cu A2 = H2A1. Matricea A2 va arăta astfel
⎝0 H2 ⎠
⎛ a ( 2) a ( 2) a ( 2) K a ( 2) ⎞
⎜ 11 12 13 1n ⎟
⎜ 0 ( 2)
a22 ( 2)
a23 K a2( 2n) ⎟
⎜ ⎟
A2 = ⎜ 0 0 ( 2)
a33 K a3( 2n) ⎟ , unde a1( 2j ) = a1(1j) , j = 1, n .
⎜ ⎟
⎜ M M M M ⎟
⎜ 0 0 ( 2) ⎟
an( 23) K ann
⎝ ⎠
~
În continuare se determină o matrice Householder H 3 ∈Mn–2(R) cu
~ ~ ~
proprietatea că H 2 a 3( 2) = σ e~1 , unde e~1T = (1, 0, ..., 0) ∈Mn–2(R). Vom nota cu
⎛I 0 ⎞
H 3 = ⎜⎜ 2 ~ ⎟⎟ ∈M n(R) şi cu A3=H3A2. Matricea A3 va avea toate elementele de
⎝ 0 H3 ⎠
sub diagonala principală, din primele trei coloane, zero. Procedeul continuă într-un
mod evident. În final, obţinem o matrice superior triunghiulară An–1 = Hn–1An–2 =
=Hn–1⋅...⋅H2H1A. Dacă notăm H=Hn–1⋅...⋅H2H1 şi cu R=HA, atunci H este
ortogonală şi R superior triunghiulară.
Corolar. Pentru orice matrice nesingulară A∈M n(R) există o matrice ortogonală
Q şi o matrice superior triunghiulară R astfel încât A= QR.
⎛1 0 0 ⎞
⎜ ⎟
H 2 = ⎜ 0 − 0.961417354 0.275093933 ⎟ ;
⎜ 0 0.275093933 0.961417354 ⎟
⎝ ⎠
⎛ - 8.124038405 3.446561747 − 1.354006401 ⎞
⎜ ⎟
A2 = H 2 A1 = ⎜ 0 5.667557862 − 0.588142797 ⎟ ;
⎜ 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 ⎟⎠
⎝
Soluţia sistemului iniţial este x=R–1Hb , unde:
⎛ − 0.123091491 0.074854538 − 0.062742657 ⎞
−1 ⎜ ⎟
R =⎜ 0 0.176442839 0.053089941 ⎟ .
⎜ 0 0 0.511593975 ⎟⎠
⎝
Se obţine soluţia x1=1 ; x2= 2 ; x3= 3.000000001 .
Observaţia 1. Ax 2 ≤ A E x 2 , (∀) x.
n n ⎛ n ⎞⎛ n ⎞
Ax 2 = ∑ (ai1x1 + ... + ain xn )2 ≤ ∑ ⎜ ∑ aij2 ⎟⎜ ∑ x 2j ⎟ = A E ⋅ x 2 .
2 2 2
Într–adevăr,
⎜ ⎟⎜ ⎟
i =1 i =1⎝ j =1 ⎠⎝ j =1 ⎠
deci λ ≤ AM.
După cum se ştie, între mulţimea M n(R) a matricelor pătratice cu
elemente din R şi mulţimea L(Rn) a aplicaţiilor liniare şi continue, U : Rn→Rn ,
există o corespondenţă bijectivă. Mai precis, dacă A este matricea asociată
transformării liniare U, atunci U(eiT) = (a1i, a2i, ..., ani),
unde eiT = (0, ..., 1, ..., 0)∈Rn şi U(xT) = (Ax)T. Pe de altă parte, spaţiul L(Rn) este
un spaţiu normat în raport cu norma operatorială:
U
o
= sup { U (x ) ;
T
xT = 1 } (2)
Definiţia 4. Dacă λ1, ..., λn sunt valorile proprii ale matricei A , atunci se notează
cu ρ(A)= max λi şi ρ(A) se numeşte raza spectrală a matricei A (în această
1≤i ≤ n
definiţie λ i pot fi reale sau complexe)
n
(2) A 1= max ∑ aij ,
1≤ j ≤ n i =1
(( ))
1
T
(3) A 2= ρ A ⋅ A , 2
Demonstraţie.
n n n
Ax ∞ = max ∑ aij x j ≤ 1max
1≤i ≤n j =1
∑ aij ⋅ x j ≤ x ∞ 1max
≤i ≤n j =1
∑ aij
≤i ≤ n j =1
n
Rezultă A ∞ ≤ max ∑ aij . Rămâne să arătăm că există ~
x cu ~
x ∞= 1
1≤i ≤n j =1
n
astfel încât A~
x ∞ = max ∑ aij . Pentru aceasta, fie k astfel încât să avem
1≤i ≤ n j =1
n n
∑ akj = max ∑ aij
1≤i ≤ j =1
(6)
j =1
⎧ 0 dacã akj = 0
⎪
şi fie ~
x j = ⎨ akj .
dacã akj ≠ 0
⎪a
⎩ kj
n n
Evident că ~
x ∞ = 1 şi A~
x ∞ = ∑ akj = max ∑ aij . Aşadar, am demonstrat
j =1 1≤i ≤n j =1
(1). În continuare avem
n n
Ax 1= ∑ ai1x1 + ... + ain xn ≤ ∑ ( ai1 x1 + ... + ain xn ) ≤
i =1 i =1
⎛ n ⎞ ⎛ n ⎞
≤ ⎜ max ∑ aij ⎟ ⋅ ( x1 + ... + xn ) = max ⎜ ∑ aij ⎟⋅ x
⎜ 1≤ j ≤n ⎟ 1≤ j ≤n⎜⎝ i =1 ⎟ 1
⎝ i =1 ⎠ ⎠
n
de unde rezultă A 1≤ max ∑ aij .
1≤ j ≤ n i =1
Sisteme de ecuaţii liniare 37
n
Pe de altă parte dacă eTj=(0,...,1,...,0) , atunci e j = 1 şi Ae j = ∑ aij , de
1 1
i =1
n n
unde rezultă A 1 ≥ ∑ aij , pentru orice j = 1, n . Aşadar, A 1 ≥ max ∑ aij
i =1 1≤ j ≤ n i = 1
şi cu aceasta afirmaţia (2) este dovedită.
Fie B=ATA şi fie
{
µ1 = sup xT Bx ; x 2 = 1} (7)
Evident µ1 = sup{( Ax )T Ax ; x 2 = 1 }= A 2 , deci
2
A 2 = µ1 .
{
Deoarece mulţimea S = x ; x 2 = 1 } este compactă, rezultă că există v cu
proprietăţile: µ1=vTBv şi v 2 = 1 .
Vom arăta în continuare că Bv=µ1v , deci că v este un vector propriu pentru B şi
corespunde valorii proprii µ1.
T
⎛ z ⎞ ⎛ z ⎞
Într-adevăr, pentru orice z≠0 avem: ⎜ ⎟ B⎜ ⎟ ≤ µ şi deci
⎜ z ⎟ ⎜ z ⎟ 1
⎝ 2⎠ ⎝ 2⎠
2
z T Bz ≤ µ1 z 2 = µ1z T z (8)
Pe de altă parte este evident că relaţia (8) este verificată şi pentru z=0. Deci relaţia
(8) are loc pentru orice z. De asemenea avem:
vTBv=µ1vTv (9)
Dacă notăm cu C=B–µ1In , atunci avem:
zTCz≤0 , (∀) z şi (8')
vTCv=0 (9')
Fie z=v+ty , unde t∈R este oarecare şi y este un vector oarecare. Din (8') şi din
faptul că C este simetrică rezultă
vTCv+2tyT(Cv)+t2yTCy≤0 .
Ţinând seama de (9') avem
t 2 y T Cy + 2ty T (Cv ) ≤ 0 . (10)
T
Pentru ca (10) să fie adevărată pentru orice t∈R trebuie ca y Cv = 0. Cum y a
fost arbitrar rezultă 0=Cv=(B–µ1In)v=Bv–µ1v.
2
Aşadar, 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 u≠0, u 2 = 1 ,
astfel încât Bu=µu. În continuare avem
2 2
µ1 = A 2 ≥ Au 2
= u T Bu = u T µu = µ .
Aşadar, µ1 este cea mai mare valoare proprie a matricei B, deci am demonstrat şi
afirmaţia (3).
38 Bazele Analizei Numerice
max λi
(v) Dacă A este simetrică, atunci cond 2 ( A) = , unde λ1, ..., λn sunt
min λi
valorile proprii ale matricei A
(vi) Dacă A este ortogonală, atunci cond(A)=1 .
Pentru a evalua eroarea soluţiei sistemului la o perturbare a coeficienţilor
sistemului, avem nevoie de următoarele două leme.
(ii) A −1 ( B − A ) ≤ k < 1 .
α
Atunci B este nesingulară şi B −1 ≤ .
1− k
Demonstraţie.
Din Lema 1 rezultă că In+A–1(B–A)=A–1B este nesingulară.
Sisteme de ecuaţii liniare 41
A −1 (B − A) = A−1δA < 1
şi va rezulta
A−1 A−1
B −1
= ( A + δA ) −1
≤ ≤ . (7)
1 − A−1δA 1 − A−1 ⋅ δA
Din (6) şi (7) obţinem
δx A −1 ⋅ δ A A −1 ⋅ A δA
≤ = ⋅ .
x 1− A −1
⋅ δA −1 δA A
1− A ⋅ A⋅
A
Ţinând seama de definiţia numărului de condiţionare, ultima inegalitate devine
δx cond( A) δA
≤ .
x δA A
1 − cond( A)
A
42 Bazele Analizei Numerice
Calculul lui (LU )−1 este mai uşor decât calculul lui A−1 , deoarece
inversarea matricelor triunghiulare este uşoară. Să presupunem că
(LU )−1 = α şi A − LU < k
α
α
unde 0<k<1. Atunci din Lema 2 rezultă A−1 ≤
.
1− k
Într–adevăr, să alegem în Lema 2 matricea LU în loc de A şi matricea A în loc
de B. Avem
k
A−1 ( A − LU ) ≤ A−1 ⋅ A − LU ≤ α ⋅ = k < 1 .
α
α α A
Atunci rezultă A−1 ≤ şi deci cond ( A) ≤ .
1− k 1− k
Sisteme de ecuaţii liniare 43
lim e (m ) = 0 .
m
Deoarece lim B = 0 , rezultă
m →∞ m→∞
Demonstraţie.
Este suficient să arătăm că lim B m = 0 dacă şi numai dacă ρ ( B ) < 1 . Din
m→∞
Algebra liniară se ştie că matricea B se poate aduce la forma canonică Jordan, deci
că există o matrice nesingulară C astfel încât
⎛ J p (λ1 ) L 0 ⎞
⎜ 1 ⎟
−1
C ⋅ B ⋅C = J = ⎜ M J p2 (λ 2 ) M ⎟,
⎜⎜ ⎟
⎝ 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
m→∞ m→∞
de altă parte, J = D + N, unde
⎛ λ1 0 0⎞
⎜ ⎟
⎜ O ⎟
⎜0 λ1 ⎟
⎜ ⎟
D=⎜ O ⎟
⎜ ⎟
⎜ λr 0⎟
⎜ O ⎟
⎜ ⎟
⎝0 0 λr ⎠
este o matrice diagonală de ordinul n, iar N este o matrice nilpotentă de ordinul
n, adică Nn = 0 .
m
k m− k k
În continuare avem J m = ∑ C m D N . Deoarece Nk=0 pentru k≥n, vom
k =0
avea
n
k m− k k
J m = ∑ Cm D N . (6)
k =0
Observăm că D ∞ = max λ1 = ρ ( B ) < 1 . Din (6) rezultă:
1≤i ≤ r
n m(m − 1)...(m − k + 1) m−k n mk
N ∞ ⋅ ( ρ ( B ) )m − k
k k
Jm ≤ ∑ D∞ N ∞< ∑
∞ k =0 k! k =0 k!
Sisteme de ecuaţii liniare 45
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ă notăm cu D = diag ( a11 , ..., a nn ) şi cu E=D–A, atunci obţinem sistemul
echivalent (D–E)⋅x=b şi mai departe
⎛ 1 1 ⎞ n aij
Cum D -1 = diag⎜⎜ , ..., ⎟⎟ , rezultă că D −1 E ∞ = max ∑ .
⎝ a11 a nn ⎠ 1≤i ≤ n j =1 a ii
j ≠i
Sistemul (1) devine (D+L) x = –Ux +b şi mai departe obţinem următorul proces
iterativ:
(D+L) x(m+1) = –Ux(m) +b . (9)
Pe componente obţinem
1 ⎛⎜ i-1 n
(m ) ⎞
xi(m+1) = bi − ∑ aij x (jm+1) − ∑ aij x j ⎟⎟ , i = 1,n . (10)
aii ⎜⎝ j =1 j =i +1 ⎠
Din algoritmul (10) se observă că fiecare nouă componentă, x j , este imediat
( m+1)
⎛ v1 ⎞
⎜ ⎟
⎜ v2 ⎟
unde matricea A este simetrică şi pozitiv definită. Dacă v = ⎜ ⎟ este un vector de
M
⎜ ⎟
⎜v ⎟
⎝ n⎠
probă oarecare, atunci notăm cu
r= Av – b . (2)
Vectorul r se numeşte vectorul rezidual.
Scopul oricărei metode de relaxare este ca prin schimbarea sistematică a
vectorului v, vectorul rezidual corespunzător r să se micşoreze, 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) funcţia pătratică
1 n n n 1
F (v) = ∑ ∑ aij vi v j − ∑ bi vi = Av,v − b,v (4)
2 i =1 j =1 i =1 2
Deoarece A este pozitiv definită, rezultă Q(v)>0 pentru orice v≠0, unde
Q(v) = Av,v . Observăm de asemenea că pentru orice i = 1,n avem
∂F n
= ∑ aij v j − bi ,
∂ vi j=1
deci vectorul rezidual
r = gradF . (5)
Într–adevăr,
r,p
r0′ ,p = Av-b,p + t min Ap,p = r,p − Ap,p = 0 .
Ap,p
Pentru interpretarea geometrică a principiului relaxării să considerăm cazul
particular n = 2.
Ecuaţiile F(v) = constant, reprezintă ecuaţiile unor elipse concentrice, al
căror centru comun, coincide cu punctul de minim al funcţiei F. Într–adevăr,
ecuaţia F(v) = c revine la
a11v12 + 2a12 v1v 2 + a 22 v 22 − 2b1v1 − 2b2 v 2 = 2c . (8)
Deoarece A este pozitiv definită, rezultă că
⎛a a12 ⎞
δ = ⎜⎜ 11 ⎟⎟>0 ,
⎝ a12 a 22 ⎠
deci (8) reprezintă o elipsă.
Fie v0 un vector de probă oarecare şi c0=F(v0). Ecuaţia F(v)=c0
reprezintă o elipsă şi v=v0 aparţine acestei elipse. Deoarece r0=gradF(v0), rezultă
că r0 este perpendicular pe tangenta în v=v0 la elipsă. Direcţia p1 o alegem
astfel încât să nu fie perpendiculară pe r0. Fie v1=v0+tminp1 şi fie c1=F(v1).
Punctul v=v1 aparţine elipsei F(v)=c1 şi de asemenea aparţine dreptei ce
trece prin v0 şi are direcţia p1.
Fie r1=Av1–b. Din Observaţia 1, r0
rezultă că r1 este perpendicular v0
pe direcţia p1. Pe de altă parte v1
r1=gradF(v1) este perpendicular
pe tangenta în v=v1 la elipsa
F(v)=c1. Rezultă că v=v1, este p1
r1
punctul de tangenţă la elipsa
F(v)=c1 al dreptei care trece prin v0 şi are direcţia p1.
Exemplu.
⎧ − x1 + 0.2 x 2 + 0.2 x3 + 0.6 =0
⎪
⎨0.2 x1 − x2 + 0.2 x3 + 0.5 =0
⎪0.2 x + 0.2 x 2 − x3 + 0,4 =0
⎩ 1
⎛ 0⎞
(1) ⎜ ⎟
Dacă alegem v = ⎜ 0 ⎟ , atunci
⎜ 0⎟
⎝ ⎠
52 Bazele Analizei Numerice
⎛ 0.6 ⎞
( 1 ) ⎜ ⎟
r = ⎜ 0.5 ⎟ şi max(r1(1) , r2(1) , r3(1) ) = r1(1) = 0.6 .
⎜ 0.4 ⎟
⎝ ⎠
Aşadar
⎛ 1⎞
⎜ ⎟ (2) (1) r1(1) (2) (1) r1(1)
p1 = e1 = ⎜ 0 ⎟ , v = v − e1 şi r = r − Ae1 .
⎜ 0⎟ a11 a11
⎝ ⎠
Pe componente avem
⎧v ( 2) = 0.6 ⎧r (2) =0
⎪1 ⎪⎪ 1
⎪ ( 2) (2)
⎨v 2 =0 , ⎨r2 = 0.62 ,
⎪ ( 2) ⎪ (2)
⎪⎩v3 =0 ⎪⎩r3 = 0.52
(
r2( 2) = max r1(2) , r2(2) , r3(2) = 0.62 . )
Rezultă
⎛ 0⎞ (2)
⎜ ⎟ (3) (2) r2 (3) (2) r2(2)
p 2 = e2 = ⎜ 1 ⎟ , v = v − e2 şi r =r − Ae2 ;
⎜ 0⎟ a 22 a 22
⎝ ⎠
⎧v (3) = 0 .6 ⎧r (3) = 0.124
⎪1 ⎪⎪ 1
⎪ (3) (3)
⎨v 2 = 0.62 , ⎨r2 =0
⎪ (3) ⎪ (3)
⎪⎩v3 =0 ⎪⎩r3 = 0.644
r3
(3)
(
= max r1 , r2
(3) (3) (3)
, r3 ) = 0.644 .
În continuare
⎛ 0⎞
⎜ ⎟ r (3) r (3)
p3 = e3 = ⎜ 0 ⎟ , v (4) = v (3) − 3 e3 şi r (4) = r (3) − 3 Ae3 .
⎜ 1⎟ a33 a33
⎝ ⎠
⎧v ( 4) = 0.6 ⎧r (4) = 0.2528
⎪1 ⎪⎪ 1
⎪ ( 4) (4)
⎨v 2 = 0.62 , ⎨r2 = 0.1288 , etc.
⎪ ( 4) ⎪ (4)
⎪⎩v3 = 0.644 r =0
⎩⎪ 3
Sisteme de ecuaţii liniare 53
Iteraţia I
⎧ (1) 1 ( 0) ( 0)
⎪ x1 = a (b − a12 x2 − a1 3x 3 − a1 4x (40) )
⎪ 11
⎪ x (1) = 1 (b − a x ( 1) − a x (0) ⎛ 0.5 ⎞
21 1 23 3 − a 24x (40) ) ⎜ ⎟
⎪ 2 a22 (1) ⎜ 0.5 ⎟
⎨ rezultă x = ⎜
⎪ x3(1) =
1
(b − a 31x (11) − a 32x (21) − a 34x (40) ) 0.5 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.75 ⎟
⎝ ⎠
⎪ (1) 1
⎪ x4 = (b − a 41x (11) − a 42x (21) − a 43x (31) )
⎩ a 44
Iteraţia a II –a
⎧ ( 2) 1 ( 1) ( 1) ( 1)
⎪ x1 = a (b − a12 x2 − a1 3x 3 − a1 4x 4 )
⎪ 11
⎪ x ( 2) = 1 (b − a x ( 2) − a x ( 1) − a x ( 1) ) ⎛ 0.75 ⎞
21 23 24 ⎜ ⎟
⎪ 2 1 3 4
a22 ( 2) ⎜ 0.75 ⎟
⎨ rezultă x = ⎜
⎪ x3( 2) =
1
(b − a 31x (1 2) − a 32x (22) − a 34x (41) ) 0.83333 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.91667 ⎟
⎝ ⎠
⎪ ( 2) 1 ( 2) ( 2) ( 2)
x
⎪ 4 = ( b − a x
41 1 − a x
42 2 − a x
43 3 )
⎩ a44
Iteraţia a III –a
⎧ (3) 1 ( 2)
⎪ x1 = a (b − a12 x2 − a1 3x (32) − a1 4x (42) )
⎪ 11
⎪ x (3) = 1 (b − a x ( 3) ⎛ 0.875 ⎞
21 1 − a 23x (32) − a 24x (42) ) ⎜ ⎟
⎪ 2 a22 (3) ⎜ 0.90278 ⎟
⎨ rezultă x = ⎜
⎪ x3(3) =
1
(b − a 31x (13) − a 32x (23) − a 34x (42) ) 0.93981 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.96991 ⎟
⎝ ⎠
⎪ (3) 1
⎪ x4 = (b − a 41x (13) − a 42x (23) − a 43x (33) )
⎩ a 44
Iteraţia a IV –a
⎧ ( 4) 1 ( 3)
⎪ x1 = a (b − a12 x2 − a1 3x (33) − a1 4x (43) )
⎪ 11
⎪ x ( 4) = 1 (b − a x ( 4) ⎛ 0.95139 ⎞
21 1 − a 23x (33) − a 24x (43) ) ⎜ ⎟
⎪ 2 a22 ( 4) ⎜ 0.96373 ⎟
⎨ rezultă x = ⎜
⎪ x3( 4) =
1
(b − a 31x (1 4) − a 32x (24) − a 34x (43) ) 0.97788 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.98894 ⎟
⎝ ⎠
⎪ ( 4) 1
⎪ x4 = (b − a 41x (1 4) − a 42x (24) − a 43x (34) )
⎩ a 44
Iteraţia a V –a
Sisteme de ecuaţii liniare 57
⎧ ( 5) 1 ( 4)
⎪ x1 = a (b − a12 x2 − a1 3x (34) − a1 4x (44) )
⎪ 11
⎪x =
( 5) 1 ⎛ 0.98187 ⎞
(b − a 21x (15) − a 23x (34) − a 24x (44) ) ⎜ ⎟
⎪ 2 a22 (5) ⎜ 0.98658 ⎟
⎨ rezultă x = ⎜ ⎟ .
1 0.99184
⎪ x3(5) = (b − a 31x (15) ( 5) ( 4)
− a 32x 2 − a 34x 4 ) ⎜ ⎟
⎪ a33 ⎜ 0.99592 ⎟
⎝ ⎠
⎪ (5) 1
⎪ x4 = (b − a 41x (15) − a 42x (25) − a 43x (35) )
⎩ a 44
Dacă ω = 1, obţinem 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 ) -1 ( 1 ) −1 (0) (0)
⎨a21v1 + a22 ω v2 + ( 1 − ω )a22 v2 + a23v3 = b2 (2)
⎪ (1) (1 ) -1 ( 1 ) −1 (0)
⎪a31v1 + a32v2 +a33ω v3 + ( 1 − ω )a33v3 = b3
⎩
Dacă introducem notaţiile
⎛ 0 0 0⎞ ⎛ a11 0 0 ⎞
⎜ ⎟ ⎜ ⎟
E = ⎜ a 21 0 0 ⎟ , D = ⎜ 0 a 22 0 ⎟ şi F=ET ,
⎜a ⎟ ⎜ 0 0 a33 ⎟⎠
⎝ 31 a32 0 ⎠ ⎝
relaţiile (2) capătă forma matricială
(E+ω –1D)v(1) + [F+(1 –ω –1)D]v(0) = b . (3)
În general, pentru un sistem de n ecuaţii, şirul de vectori v(m) satisface relaţia:
(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 .
Notăm cu
⎪ [ ]
⎧M (ω) = −( E + ω −1 D) −1 F + (1 − ω −1 ) D
. (5)
[ ]
⎨ −1
⎪⎩C (ω) = E + ω −1 D b
Obţinem astfel procesul iterativ
v(m+1) =M(ω )v(m) + C(ω) . (6)
Pentru ω = 1 obţinem 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 obţine cea mai rapidă
convergenţă.
Se poate demonstra următoarea teoremă.
⎛ D1 F1 0 0 L 0 ⎞
⎜ ⎟
⎜ E1 D2 F2 0 L 0 ⎟
⎜ 0 E 0 ⎟
2 D3 F3 L
A =⎜ ⎟,
⎜ M O M ⎟
⎜ ⎟
⎜ 0 L Em− 2 Dm−1 Fm−1 ⎟
⎜ 0 L 0 Em−1 Dm ⎟⎠
⎝
unde Di sunt matrice pătratice de diferite ordine, Ek şi Fk sunt, în general,
matrice dreptunghiulare. Fk are acelaşi număr de linii ca matricea Dk şi acelaşi
număr de coloane ca matricea Dk+1. Ek are acelaşi număr de linii cu Dk+1 şi
acelaşi număr de coloane cu Dk. În afara matricelor care intră în bandă, toate
elementele sunt nule. Dacă, în plus, matricele Di sunt diagonale, A se numeşte
diagonal bloc tridiagonală.
Exemplu. Fie sistemul Ax = b din exemplul din paragraful precedent, care are
matricea diagonal bloc tridiagonală
⎛ 2 −1 0 0⎞ ⎛ 0 −1 0 0⎞
⎜ ⎟ ⎜ ⎟
⎜ −1 3 −1 0⎟ ⎜ −1 0 −1 0 ⎟
A=⎜ , E+F =⎜ ,
0 − 1 3 − 1⎟ 0 − 1 0 − 1⎟
⎜ ⎟ ⎜⎜ ⎟
⎜ 0 0 −1 2⎟
⎝ ⎠ ⎝0 0 − 1 0 ⎟⎠
⎛ 1 ⎞
⎜0 0 0⎟
⎜ 2 ⎟
⎛ 2 0 0 0⎞
⎜ ⎟ ⎜1 0 1 0⎟
⎜0 3 0 0⎟ ⎜ ⎟
D=⎜ ⎟ , − D −1 ( E + F ) = ⎜ 3 3
⎟.
0 0 3 0 1 1
⎜ ⎟ ⎜ 0 0 ⎟
⎜ 0 0 0 2⎟ ⎜ 3 3⎟
⎝ ⎠
⎜⎜ 0 0 1 0 ⎟⎟
⎝ 2 ⎠
Ecuaţia caracteristică este
60 Bazele Analizei Numerice
1
−λ 0 0
2
1 1
−λ 0
3 3 =0,
1 1
0 −λ
3 3
1
0 0 −λ
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λ
4± 7
Rezultă λi = ± şi λ1 =0.60763 .
18
2
Parametrul optim de relaxare ωopt = =1.11469 .
1+ 1 − λ12
Procedeul iterativ x (m+1)
=M(ω )x + C(ω) , unde
(m)
⎛ 0.9987 ⎞
⎜ ⎟
(5) ⎜ 0.99933 ⎟
x =⎜ .
0.99978 ⎟
⎜ ⎟
⎜ 0.99993 ⎟
⎝ ⎠
Sisteme de ecuaţii liniare 61
Fie
r(1)=gradF(v(1))=Av(1) – b.
Din Observaţia 1 din §8 rezultă că
r (1) ,p (1) = − r (1) ,r (0) = 0 . (4)
Următoarea direcţie de relaxare p(2) se alege de forma p(2)= – r(1)+c1p(1) şi în plus
să fie conjugată direcţiei p(1) în raport cu A.
Aşadar, avem:
0 = Ap (2) ,p (1) = p (2) ,Ap (1) = − r (1) ,Ap (1) + c1 Ap (1) ,p (1)
de unde rezultă
r (1) ,Ap (1)
c1 = . (5)
Ap (1) ,p (1)
Avem de asemenea
62 Bazele Analizei Numerice
r (1) ,p (2)
(2) (1) (2) (1)
v =v + t min p =v − p (2) . (6)
(2) (2)
Ap ,p
În general, pentru orice k≥2 obţinem
r ( k −1) ,Ap ( k −1)
ck-1 = , (7)
Ap ( k −1) ,p ( k −1)
vk = v ( k −1) + qk p ( k ) . (10)
Metoda gradienţilor conjugaţi este definită de formulele (7) – (10).
În continuare prezentăm unele simplificări şi proprietăţi suplimentare.
Deoarece r(k –1) este ortogonal pe direcţia 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
r ( k −1) ,r ( k −1)
qk = >0. (9’)
Ap ( k ) ,p ( k )
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 ) .
Obţinem deci următoarea relaţia de recurenţă
r ( k ) = r ( k −1) + qk Ap ( k ) . (11)
Observăm că
r ( k ) ,r ( k −1) = 0 . (12)
Într –adevăr, din (11) rezultă
r ( k ) , r ( k −1) = r ( k −1) , r ( k −1) + q k r ( k −1) , Ap ( k ) . (13)
Pe de altă parte, ţinând seama de (8), de (9’) şi de faptul că p(k) şi p(k –1) sunt
A – conjugate, rezultă
r ( k −1) , Ap ( k )
(k −1 ) ( k −1) ( k −1)
qk r ,Ap (k)
= r ,r = − r ( k −1) , r (k −1 )
(k ) ( k −1) ( k −1)
Ap ,− r + c k −1 p
.
Din (13) şi (14) rezultă acum (12) .
Sisteme de ecuaţii liniare 63
r (k −1 ) ,r (k −1 )
qk = ; v(k) = v(k −1 ) + qk p(k) ; r (k) = r (k −1 ) + qk Ap(k) ;
(k) (k)
Ap ,p
sfârşit pentru k .
În Mathcad algoritmul de mai sus este aplicat unui exempu.
64 Bazele Analizei Numerice
Folosind metoda gradientilor conjugati sa se gaseasca solutia sistemului de ecuatii liniare Ax=b
0
5 1 1 1 6
0
1 6 2 2 7 Vectorul de proba x n 4
A b 0
1 2 7 1 9
0
1 2 1 8 8
< 0>
GrCon( A , b , x, n ) r A .x b
< 0>
p r
< 0> . < 0>
r r
q
A p .p
.
x x q .p
< 1> < 0>
r r q .A .p
for k ∈ 2 .. n
<k 1> . r< k 1>
r
c
<k 2> . r< k 2>
r
<k 1>
p r c .p
<k 1> . r< k 1>
r
q
A .p .p
x x q .p
< k> <k 1>
r r q .A .p
x
1
1
GrCon( A , b , x, n ) =
1
1
Sisteme de ecuaţii liniare 65
Din Teorema 1 rezultă că vectorii reziduali r(k) sunt ortogonali doi câte
doi şi deci sunt liniar independenţi (dacă sunt nenuli). Aşadar, nu pot exista (n+1)
vectori reziduali nenuli. Rezultă că în metoda gradienţilor conjugaţi soluţia exactă
66 Bazele Analizei Numerice
se găseşte în cel mult n paşi. Teoretic ar trebui ca vectorul rezidual r(n) să fie zero
şi deci v=v(n) să fie soluţia exactă a sistemului.
În practică acest lucru nu se întâmplă, deoarece în determinarea vectorilor
r(k) intervin erori de calcul, care fac ca aceştia să nu formeze un sistem ortogonal.
Deoarece în general r(n)≠0, continuăm să calculăm r(k), k>n până obţinem un
vector rezidual nul sau foarte mic ⎛⎜ r (k) <<1⎞⎟ . Această atitudine se justifică
⎝ ⎠
prin faptul că metoda gradienţilor conjugaţi este o metodă de relaxare prin care
valoarea funcţiei pătratice F=F(v) se micşorează la fiecare pas.
Metoda gradienţilor conjugaţi se dovedeşte foarte utilă pentru sistemele în
care matricea A are multe zerouri şi fiecare ecuaţie are o anumită regularitate
internă.
Astfel de sisteme apar în procesul de discretizare a problemei la limită a
ecuaţiilor cu derivate parţiale de tip eliptic.
Definiţia 1. Se numeşte soluţie în sensul celor mai mici pătrate a sistemului (1),
acel vector x* , pentru care funcţia (2) are valoarea minimă.
În general, sistemul (1) nu este compatibil şi min f(x) = f(x* ) > 0 , iar x=x*
n
x∈R
este un substitut pentru soluţia sistemului şi anume soluţia în sensul celor mai
mici pătrate.
Funcţia 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)
Se observă că dacă A este pătratică, atunci P=A –1(AT) –1AT=A –1, deci
noţiunea de matrice pseudoinversă generalizează noţiunea de matrice inversă
(pentru matrice dreptunghiulare).
Rezolvarea practică a sistemului (5) ridică probleme din cauza faptului că numărul
de condiţionare 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
λ1 = sup ≥ max Bei ,ei = maxbii şi λn = inf ≤ min Bei ,ei = minbii ,
x≠0 x,x i i x≠0 x,x i i
rezultă
maxbii
cond( B) ≥ . (7)
minbii
maxbii 193
= = 38,6 .
minbii 5
21 3
Dreapta de regresie în acest caz este: y= 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ă determinăm dreapta de regresie corespunzătoare
punctelor M i ( xi ,yi ) , i = 1,n .
Matricele
⎛ 1 1⎞ ⎛ n(n + 1)(2n + 1) n(n + 1) ⎞
⎜ ⎟ ⎜ ⎟
⎜ 2 1⎟ T ⎜ 6 2 ⎟
A=⎜ şi B = A A =
M M⎟ ⎜ n(n + 1)
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
condiţionat.
Exemplul 2.
Să presupunem că măsurând unghiurile x1, x2, x3 ale unui triunghi găsim
valorile l1, l2, l3. Evident avem legătura
x1+ x2+ x3 = 180° .
Impunem condiţia ca abaterile datorate impreciziei măsurătorilor să fie cât mai
mici, deci ca expresia
(x1 − l1 )2 + (x2 − l2 )2 + (x3 − l3 )2
să fie minimă.
70 Bazele Analizei Numerice
Exerciţii
Sisteme de ecuaţii liniare 71
⎧ 5 x1 + x2 + x3 + x4 = 14
⎪ x + 8x + 2 x + x = 127
⎪ 1 2 3 4
3. ⎨
− x
⎪ 1 2 + x + 6 x3 − x 4 = 15
⎪⎩ x1 + x2 + x3 + x4 = 10
⎛1.0 0.2000 − 0.2000 0.2000 ⎞
⎜ ⎟
~ ⎜ 0 1 .0 0.2308 0.1026 ⎟
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 ⎟
⎝ ⎠
Soluţia sistemului x = (1 2 3 4)’.
⎧8 x1 − x2 − x3 + x4 =7
⎪− x + 6 x + x − 2 x =6
⎪ 1 2 3 4
5. ⎨
−
⎪ 1 2x + x + 7 x3 + x 4 = −8
⎪⎩ x1 − 2 x2 + x3 + 9 x4 = −11
⎛ 2.82843 0 0 0 ⎞
⎜ ⎟
T ⎜ − 0.35355 2.42384 0 0 ⎟
R. R =⎜ .
− 0.35355 0.361 2.59705 0 ⎟
⎜ ⎟
⎜ 0.35355 − 0.77357 0.54071 2.82564 ⎟
⎝ ⎠
⎛ 2.47487 ⎞
⎜ ⎟
T ⎜ 2.83641 ⎟
Soluţia sistemului R y=b este y = ⎜ iar cea a sistemului Rx=y , şi
− 3.13776⎟
⎜ ⎟
⎜ − 2.82564⎟
⎝ ⎠
⎛ 1⎞
⎜ ⎟
⎜ 1⎟
deci soluţia sistemului iniţial este x =⎜ ⎟ .
−1
⎜ ⎟
⎜−1⎟
⎝ ⎠
⎧6 x1 + x2 − 2 x3 − x4 = 19
⎪x + 5x + x − x = 15
⎪ 1 2 3 4
6. ⎨
⎪ − 2 x1 + x 2 + 11x3 − x4 =8
⎪⎩− x1 − x2 − x3 + 4 x4 = −10
⎛ 2.44949 0 0 0 ⎞
⎜ ⎟
T ⎜ 0.40825 2.19848 0 0 ⎟
R. R =⎜ .
− 0.8165 0.60648 3.15682 0 ⎟
⎜ ⎟
⎜ − 0.40825 − 0.37905 − 0.34954 1.88878⎟
⎝ ⎠
⎛ 7.75672 ⎞
⎜ ⎟
T ⎜ 5.3825 ⎟
Soluţia sistemului R y=b este y = ⎜ , iar cea a sistemului Rx=y , şi
3.50636 ⎟
⎜ ⎟
⎜ − 1.88878⎟
⎝ ⎠
deci soluţia sistemului iniţial este x= (3 2 1 –1)’.
74 Bazele Analizei Numerice
⎛ 6.49202 ⎞
⎜ ⎟
⎜ 5.40201⎟
Soluţia 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
⎪⎩ x1 − x2 + x3 − x4 =4
⎛1 2 1 − 1⎞
⎜ ⎟
⎜2 1 − 1 3⎟
10. Pentru matricea A = ⎜ , să se calculeze:
2 1 − 1 1⎟
⎜ ⎟
⎜ 1 − 1 − 1 1⎟
⎝ ⎠
a) det(A) , A–1, det(A–1);
b) A 1, A 2, A∞; A−1 , A−1 , A−1 ;
1 2 ∞
c) cond1(A) , cond2(A) , cond∞(A) .
⎛ 0.6667 0 − 0.3333 1 ⎞
⎜ ⎟
−1 ⎜ − 0.3333 0 0.6667 − 1⎟
R. a) det(A)=6, A = ⎜ ,
1 0 .5 − 1.5 1⎟
⎜ ⎟
⎜ 0 0 .5 − 0.5 0 ⎟⎠
⎝
det(A–1)=–0.1667;
⎧ A 1 = 6, A 2 = 5.7446, A ∞ = 7 ;
⎪⎪
b) ⎨
⎪ A−1 = 3, A−1 = 2.848, A−1 = 4 .
⎪⎩ 1 2 ∞
c) cond1(A)=18, cond2(A)=12.7511, cond∞(A)=28 .
11. Să se calculeze:
a) det(A) , A–1, det(A–1);
b) A 1, A 2, A∞; A−1 , A−1 , A−1 ;
1 2 ∞
c) cond1(A) , cond2(A) , cond∞ (A)
⎛ 4 −1 5⎞
⎜ ⎟
pentru matricea A = ⎜ 3 2 − 2 ⎟ .
⎜6 1 3 ⎟⎠
⎝
⎛ 1 1 −1 ⎞
−1 ⎜ ⎟
R. a) det(A)=8, A = ⎜ − 2.625 − 2.25 2.875 ⎟ , det(A–1)=0.125 ;
⎜ − 1.125 − 1.25 1.375 ⎟
⎝ ⎠
⎧ A 1 = 6, A 2 = 5.7446, A ∞ = 7 ;
⎪⎪
b) ⎨
⎪ A−1 = 3, A−1 = 2.848, A−1 = 4 .
⎩⎪ 1 2 ∞
c) cond1(A)=68.25, cond2(A)=48.28525, cond∞ (A)=77.5 .
Folosind metoda Iacobi să se găsească soluţia aproximativă pentru
următoarele sisteme de ecuaţii liniare :
Sisteme de ecuaţii liniare 77
⎧5 x1 − x2 − x3 =5
⎪
12. ⎨ x1 + 6 x2 + x3 = −4
⎪x − x + 7 x =9
⎩ 1 2 3
R. Sistemul se poate pune sub forma x = Bx+c, unde B = D–1 ⋅ (D–A), iar D =
⎛5 0 0⎞ ⎛0 1 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 6 0 ⎟ , E = D–A = ⎜ − 1 0 − 1⎟ ,
⎜0 0 7⎟ ⎜ −1 1 0 ⎟⎠
⎝ ⎠ ⎝
⎛ 0 0.2 0.2 ⎞ ⎛ 1 ⎞
⎜ ⎟ ⎜ ⎟
B = ⎜ − 0.16667 0 − 0.16667⎟ , c = D–1 ⋅ b = ⎜ − 0.66667⎟ , B 2 =0.41997,
⎜ − 0.14286 0.14286 0 ⎟ ⎜ 1.28571 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0⎞
( 0) ⎜ ⎟
ρ(B)= 0.29277. Soluţia la fiecare iteraţie, pornind cu x = ⎜ 0 ⎟ , este:
⎜ 0⎟
⎝ ⎠
⎛ 1 ⎞ ⎛ 1.12381 ⎞
⎜
(1) ⎟ ( 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⎞
⎜ ⎟
Soluţia exactă fiind x* = ⎜ − 1⎟ , eroarea care se face dacă se reţine ca soluţie
⎜ 1⎟
⎝ ⎠
aproximativă x(4) , este x* − x ( 4) = 0.01208 .
⎧ 6 x1 + x2 − x3 + x4 =2
⎪ x + 7x + x − x = −4
⎪ 1 2 3 4
13. ⎨ (să se scrie soluţia obţinută după patru
x
⎪ 1 + 2 x 2 + 8 x3 + x 4 =6
⎪⎩ x1 + x2 + x3 + 9 x4 −8
iteraţii).
R. Se poate pune sistemul sub forma x = Bx+c, unde B = D–1 ⋅ E , iar
⎛6 0 0 0⎞ ⎛ 0 −1 1 2⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 7 0 0⎟ ⎜ −1 0 − 1 1⎟
D= ⎜ , E = D–A = ⎜ ,
0 0 8 0⎟ − 1 − 2 0 − 1⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 0 9⎟ ⎜ 1 1 1 0 ⎟⎠
⎝ ⎠ ⎝
78 Bazele Analizei Numerice
⎧4 x1 − x2 − x3 + x4 = 3
⎪ x + 7 x + x − x = 14
⎪ 1 2 3 4
14. ⎨
x
⎪ 1 2 − x + 6 x3 + x 4 = 21
⎪⎩ x1 − x2 − x3 + 9 x4 = 38
R. Se poate pune sistemul sub forma x=Bx+c, unde B=D–1⋅E , iar
⎛ 4 0 0 0⎞ ⎛ 0 1 1 − 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 7 0 0⎟ ⎜ − 1 0 − 1 1⎟
D= ⎜ , E = D–A = ⎜ ,
0 0 6 0⎟ − 1 1 0 − 1⎟
⎜ ⎟ ⎜ ⎟
⎜ 0 0 0 9⎟ ⎜ −1 1 −1 0⎟
⎝ ⎠ ⎝ ⎠
Sisteme de ecuaţii liniare 79
⎛ 0.2 0 0 ⎞
−1 ⎜ ⎟
( D + L) = ⎜ 0.03333 0.16667 0 ⎟ ,
⎜ 0.075 0.125 0.25 ⎟⎠
⎝
⎛0 0 .4 0 .4 ⎞
⎜
–1
⎟
–(D+L) U = ⎜ 0 0.06667 0.23333 ⎟ ,
⎜0 0.15 0.275 ⎟⎠
⎝
⎛ − 0.6 ⎞ ⎛ 0⎞
⎜
–1
⎟ ( 0) ⎜ ⎟
(D+L) b = ⎜ 0.23333 ⎟ . Se obţin pornind cu x = ⎜ 0 ⎟ , vectorii:
⎜ 2.025 ⎟ ⎜ 0⎟
⎝ ⎠ ⎝ ⎠
⎛ − 0.6 ⎞ ⎛ 0.30333 ⎞ ⎛ 0.73531 ⎞
(1) ⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟
x = ⎜ 0.23333 ⎟ , x = ⎜ 0.72139 ⎟ , x = ⎜ 0.89203 ⎟ ,
⎜ 2.025 ⎟ ⎜ 2.61687 ⎟ ⎜ 2.85285 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0.89795 ⎞
( 4) ⎜ ⎟
x = ⎜ 0.95847 ⎟ .
⎜ 2.94334 ⎟
⎝ ⎠
⎧ 6 x1 − x2 − 2 x3 + x4 =2
⎪ 2x + 6x − x − x =8
⎪ 1 2 3 4
16. ⎨
−
⎪ 1 x − 3 x 2 + 8 x3 + 2 x4 =2
⎪⎩ x1 + x2 + x3 + 4 x4 = −1
⎛6 0 0 0⎞
⎜ ⎟
⎜0 6 0 0⎟
D=⎜ .
0 0 8 0⎟
⎜ ⎟
⎜0 0 0 4 ⎟⎠
⎝
⎛ 0.16667 0 0 0 ⎞
⎜ ⎟
−1 ⎜ − 0.05556 0.16667 0 0 ⎟
Atunci ( D + L) = ⎜ ,
0 0.0625 0.125 0 ⎟
⎜ ⎟
⎜ − 0.02778 − 0.05729 − 0.03125 0.25 ⎟
⎝ ⎠
⎛ 0 0.16667 0.33333 − 0.16667 ⎞
⎜ ⎟
–1 ⎜ 0 − 0.05556 0.05556 0.22222 ⎟
–(D+L) U = ⎜ ,
0 0 0.0625 − 0.1875 ⎟
⎜ ⎟
⎜ 0 − 0.02778 − 0.11285 0.03299 ⎟
⎝ ⎠
⎛ 0.33333 ⎞
⎜ ⎟
–1 ⎜ 1.22222 ⎟
(D+L) b = ⎜ .
0.75 ⎟
⎜ ⎟
⎜ − 0.82639 ⎟
⎝ ⎠
⎛0⎞ ⎛ 0.5 ⎞ ⎛ 0.95573 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(0) ⎜ 0 ⎟ (1) ⎜ 1 ⎟ ( 2) ⎜ 1.02778 ⎟
Alegând x = ⎜ ⎟ , obţinem: 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 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎧10 x1 − x2 − x3 + x4 =7
⎪ x + 11x − x − x = −10
⎪ 1 2 3 4
17. ⎨
⎪− x1 − x2 + 12 x3 + x4 = 22
⎪⎩ x1 + x2 + x3 + 13x4 = −24
R. Se observă că matricea coeficienţilor sistemului
⎛ 10 − 1 − 1 1⎞
⎜ ⎟
⎜ 1 11 − 1 − 1⎟
A=⎜
− 1 − 1 12 1⎟
⎜ ⎟
⎜ 1 1 1 13 ⎟
⎝ ⎠
este tare diagonal dominantă şi algoritmul Gauss–Seidel este convergent.
82 Bazele Analizei Numerice
⎛ 0⎞ ⎛ − 9⎞
⎜ ⎟ ⎜ ⎟
(1) ⎜ 0 ⎟ (1) ⎜ 24 ⎟
Alegând x = ⎜ ⎟ se obţine r = ⎜ .
0 − 30 ⎟
⎜ ⎟ ⎜ ⎟
⎜ 0⎟ ⎜ 32 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0⎞ ⎛ ⎞0 ⎛ − 5⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(1) ⎜ 0⎟ ( 2) ⎜ 0 ⎟ ( 2) ⎜ 20 ⎟
Deci p = e4 = ⎜ ⎟ , x =⎜ ⎟ r =⎜ .
0 0 − 34 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜1⎟ ⎜ − 4⎟ ⎜ 0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Mai departe obţinem :
⎛0⎞ ⎛ 0 ⎞ ⎛ − 8.09091⎞ ⎛0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 2) ⎜0⎟ (3) ⎜ 0 ⎟ (3) ⎜ 16.90909 ⎟ (3) ⎜1⎟
p = e3 = ⎜ ⎟ , x = ⎜ ; r =⎜ ⎟ , p = e2 = ⎜ ⎟ ,
1 3.090901⎟ 0 0
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ −4 ⎟ ⎜ 3.09091 ⎟ ⎜0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0 ⎞ ⎛1⎞ ⎛ 0.99697 ⎞ ⎛ 0 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 4) ⎜ − 1.87879 ⎟ ( 4) ⎜ 0⎟ (5) ⎜ − 1.87879 ⎟ (5) ⎜ 0.99697 ⎟
x =⎜ ; p = e1 = ⎜ ⎟ , x = ⎜ ; r =⎜
3.09091 ⎟ 0 3.09091 ⎟ 0.88182 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ −4 ⎟ ⎜ 0⎟ ⎜ −4 ⎟ ⎜ 0.21515 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛0⎞ ⎛ 0.99697 ⎞
⎜ ⎟ ⎜ ⎟
( 5) ⎜1⎟ (6) ⎜ − 1.98956 ⎟
, p = e1 = ⎜ ⎟ x =⎜ .
0 3.09091 ⎟
⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ −4 ⎟
⎝ ⎠ ⎝ ⎠
⎧4 x1 − 2 x2 + x3 =9
⎪
20. ⎨− 2 x1 + 6 x2 − x3 =5
⎪x − x + 5x =6
⎩ 1 2 3
⎛ 4 −2 1⎞
⎜ ⎟
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. Luând vectorul de probă
Sisteme de ecuaţii liniare 85
⎧14 x1 + x2 = 13
⎪x + 5 x2 − x3 = −3
⎪ 1
23. ⎨
⎪ − x2 + 14 x3 − 2 x4 = −15
⎪⎩ − 2 x3 + 5 x4 = 7
Să se precizeze numărul de iteraţii necesare pentru ca eroarea să se micşoreze de
10 ori.
R. Matricea A fiind simetrică şi pozitiv definită procedeul iterativ
Gauss–Seidel este convergent. Sistemul se poate pune sub forma
x(m+1)=Mx(m)+C , m≥0,
unde
⎛0 0 0 0⎞
⎜ ⎟
–1 –1 ⎜1 0 0 0⎟
M = –(D+E) F , C = (D+E) b , E = ⎜ , F = ET,
0 −1 0 0⎟
⎜ ⎟
⎜ 0 0 − 2 0⎟
⎝ ⎠
⎛14 0 0 0⎞
⎜ ⎟
⎜0 5 0 0⎟
D=⎜ .
0 0 14 0 ⎟
⎜ ⎟
⎜0 0 0 5 ⎟⎠
⎝
⎛ 0 − 0.07143 0 0 ⎞ ⎛ 0.92857 ⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 0.01429 0 .2 0 ⎟ ⎜ − 0.78571⎟
Deci M = ⎜ , C =⎜ .
0 0.00102 0.01429 0.14286 ⎟ − 1.12755 ⎟
⎜ ⎟ ⎜ ⎟
⎜0 0.0004 0.000571 0.05714 ⎟⎠ ⎜ 0.94898 ⎟
⎝ ⎝ ⎠
Dacă se porneşte cu v(0) = b obţin 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 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 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 numărul de iteraţii după care eroarea scade de 10 ori
1
este K≈ =0.88803, adică la fiecare iteraţie eroarea scade de 10 ori.
R(M )
88 Bazele Analizei Numerice
⎧ 5 x1 + x2 − x3 =5
⎪
24. ⎨ x1 + 8 x2 + x3 = 10
⎪− x + x + 15 x = 15
⎩ 1 2 3
Să se precizeze numărul de iteraţii necesare pentru ca eroarea să se micşoreze de
10 ori.
R. Matricea A fiind simetrică şi pozitiv definită procedeul iterativ
Gauss–Seidel este convergent. Sistemul se poate pune sub forma
x(m+1)=Mx(m)+C , m≥0,
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 − 0.2 0.2 ⎞ ⎛ 1 ⎞
⎜ ⎟ ⎜ ⎟
Deci M = ⎜0 0.02 − 0.12 ⎟ , C = ⎜ 0.9 ⎟ .
⎜ 0 − 0.01467 0.02133 ⎟ ⎜1.0067 ⎟
⎝ ⎠ ⎝ ⎠
Dacă se porneşte cu v(0) = b obţin 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 numărul de iteraţii după care eroarea scade de 10 ori
1
este K≈ =0.83108, adică la fiecare iteraţie eroarea scade de 10 ori.
R(M )
⎜ 12 ⎟
⎝ ⎠
r (0) , p (1) ⎛ 0.60797 ⎞
⎜ ⎟
q1 = − = 0.10133 , x =x + q1p = ⎜ − 0.81063 ⎟ .
(1) (0) (1)
(1) (1)
Ap , p ⎜ − 1.21595 ⎟
⎝ ⎠
Iteraţia a II-a .
⎛ − 1.94684 ⎞ r (1) , r (1)
(1) ( 0) (1) ⎜ ⎟
r =r + q1 Ap = ⎜ 0.90698 ⎟ , c1 = = 0.02911
⎜ − 1.57807 ⎟ r ( 0) , r ( 0)
⎝ ⎠
⎛ 2.12151 ⎞ r (1) , p ( 2)
(2)
⎜ (1)
⎟ (1)
p = –r +c1p = ⎜ − 1.13987 ⎟ , q2 = − = 0.17916 ,
⎜ 1.22874 ⎟ Ap ( 2) , p ( 2)
⎝ ⎠
⎛ 0.98807 ⎞
(2)
⎜
(1) (2)
⎟
x =x + q2p = ⎜ − 1.01485 ⎟ .
⎜ − 0.9958 ⎟
⎝ ⎠
Iteraţia a III-a.
⎛ − 0.09062 ⎞ r ( 2 ) , r ( 2)
⎜ ⎟
r ( 2)
=r (1)
+ q2 Ap ( 2)
= ⎜ − 0.12656 ⎟ , c2 = = 3.62608 ⋅ 10 −3
(1) (1)
⎜ 0.03906 ⎟ r ,r
⎝ ⎠
⎛ 0.09832 ⎞ r ( 2) , p (3)
(3)
⎜ (2)
⎟ (2)
p = –r +c2p = ⎜ 0.12243 ⎟ , q3 = − = 0.12133 ,
⎜ − 0.03461⎟ Ap (3) , p (3)
⎝ ⎠
⎛1⎞
(3) (2) (3)
⎜ ⎟
x =x + q3p = ⎜ − 1⎟ .
⎜ − 1⎟
⎝ ⎠
90 Bazele Analizei Numerice
26. Să se determine traseul optim pentru o conductă de gaze naturale care să treacă
prin "apropierea" localităţilor Li , i=1,...,10 , care raportate la un sistem cartezian
de referinţă au coordonatele următoare:
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. Luând traseul după o dreaptă, se obţine 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 = ⎜⎜ ⎟⎟ , c = ⎜⎜ ⎟⎟ , a cărui soluţie este
⎝ 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 ecuaţii neliniare 91
Exemplul 1.
⎧⎪ f1(x1,x2 ) ≡ 2 x 21+ x22 − 5 = 0
⎨ (4)
⎪⎩ f 2(x1,x2 ) ≡ x1+2 x2 − 3 = 0
Se observă că prima ecuaţie nu este liniară. Acest sistem se poate pune sub forma
echivalentă
⎪⎧ x1 = 2 x 21+ x22 − 5 + x1 ≡ g1(x1,x2 )
⎨ . (4’)
⎪⎩ x2=x1+3x2 − 3 ≡ g 2(x1,x2 )
Sistemul fiind foarte simplu se poate rezolva cu metoda substituţiei. Înlocuind
x1 = 3 − 2 x2 în prima ecuaţie obţinem 9 x 22 − 24 x 2 + 13 = 0 , ecuaţie care admite
4± 3
rădăcinile x1,2 = .
3
92 Bazele Analizei Numerice
∂g i ∂g
g i ( x) − g i ( y ) = (ξ i )( x1 − y1 ) +...+ i (ξ i )( xn − y n ) .
∂x1 ∂xn
Ţinând seama că
∂g i
( x) ≤mij ,(∀) x ∈ D,
∂x j
rezultă
n
g i ( x) − g i ( y ) ≤ mi1 x1 − y1 + ... + min xn − yn ≤ x − y ∞ ∑ mij
j =1
şi mai departe
n
G ( x) − G ( y ) ∞ = max g i ( x) − g i ( y ) ≤ x − y ∞ max ∑ mij = x − y ∞ M ∞ .
1≤i ≤ n 1≤i ≤ n j =1
⎧ 1+ 2 3
⎪ x1 = ≈ 1.4880338
⎪ 3
⎨ .
⎪ 4− 3
⎪⎩ x2 = 3 ≈ 0.7559831
⎡1 3⎤
Deoarece x1 ∈ [1,2] şi x2 ∈ ⎢ , ⎥ rezultă
⎣2 2⎦
1 3 − x1 3 11 5 − x22 19
≤ = g 2 ( x1, x2 ) ≤ şi ≤ = g1 ( x1 , x2 ) ≤ ,
2 2 2 8 2 8
deci 1 ≤ g1 ( x1 , x2 ) ≤ 2 .
Aşadar, dacă (x1 , x2 ) ∈ D atunci (g1 (x1 , x2 ), g 2 (x1 , x2 ))∈ D .
În continuare avem
∂g1 ∂g1 x2 ∂g 2 1 ∂g 2
=0 , =− ; =− ; =0
∂x1 ∂x2 10 − 2 x22 ∂x1 2 ∂x2
3 1
m11 = m22 = 0 ; m12 = ; m21 =
22 2
3 29
M ∞ = M 1= < 1 şi M 2= < 1.
22 44
Alegem x1(0) = 1.5 şi x2(0) = 1 (centrul dreptunghiului).
Se obţin următoarele valori pentru şirul aproximaţiilor succesive
Nr. de iteraţii 0 1 2 3 4 5 6
x1 1.5 1.414 1.490 1.478 1.488 1.487 1.488
x2 1.0 0.750 0.793 0.755 0.761 0.756 0.756
1 2 2
a) x ( p +1) − α ≤ n M 1M 2 x ( p ) − α
∞ 2 ∞
b) Dacă
1 2
2
2
n M 1M 2 x (0) − α < 1 ,
∞
atunci şirul { x ( p) } este
( p)
convergent şi . lim x =α .
p →∞
Demonstraţie. Din formula Taylor rezultă că pentru orice k = 1, n şi orice p ∈ N,
există un punct ξ k( p ) pe segmentul de dreaptă deschis de capete α şi x(p) astfel
încât
1
( )(
f k (α ) − f k ( x ( p ) ) = df k ( x ( p ) ) (α − x ( p ) ) + d 2 f k ξ k( p ) α − x ( p )
2!
. )
Ţinând seama că
n n
∂ 2 f k ( p)
d 2 f k ( ξ (k p ) )( α − x p ) = ∑∑ ∂x ∂ x
( ξ k )( αi − xi( p ) )( α j − x (j p ) )
i =1 j =1 i j
şi de ipoteza (iii), rezultă
n n
1
f k (α ) − f k ( x ( p ) ) − df k ( x ( p ) )(α − ( x ( p ) ) ≤ M 2 ∑ ∑ α i − xi( p ) α j − x (j p ) ≤
2 i =1 j =1
1 2
≤ M 2n 2 α − x ( p) , (∀)k = 1, n .
2 ∞
În continuare, avem
1 2
F (α ) − F ( x ( p ) ) − dF ( x ( p ) )(α − x ( p ) ) = M 2 n 2 α − x ( p ) (6)
∞ 2 ∞
Pe de altă parte din (4) rezultă
− F ( x ( p ) ) + dF ( x ( p ) )( x ( p ) ) = dF ( x ( p ) )( x ( p +1) ) (7)
Cum F(α)=0, din (6) şi (7) obţinem
1 2
dF ( x ( p ) )( x ( p +1) − α ) ≤ n 2 M 2 α − x ( p ) sau
∞ 2 ∞
1 2
J F ( x ( p ) )( x ( p +1) − α ) ≤ n 2 M 2 α − x ( p ) (8)
∞ 2 ∞
În sfârşit, ţinând seama şi de ipoteza (ii) avem
( x ( p +1) − α ) = J F−1 ( x ( p ) ) J F ( x ( p ) )( x ( p +1) − α ) ≤
∞ ∞
1 2
≤ J F−1 ( x ( p ) ) ⋅ J F ( x ( p ) )( x ( p +1) − α ) ≤ M1 M 2 n 2 α − x ( p)
∞ 2 ∞
Aşadar, am demonstrat afirmaţia a).
98 Bazele Analizei Numerice
1
Dacă notăm cu c= n 2 M 1M 2 , din a) rezultă
2
2
( x ( p +1) − α ) ≤ c ( x ( p) − α ) (9)
∞ ∞
Particularizând indicele p , obţinem succesiv
2
( x (1) − α ) ≤ c ( x ( 0) − α )
∞ ∞
2 4
( x ( 2) − α ) ≤ c ( x (1) − α ) ≤ c 3 ( x ( 0) − α )
∞ ∞ ∞
.............................................................
2 p +1
1⎛ ⎞
( x ( p +1) − α ) ≤ ⎜ c ( x (0) − α ) ⎟ .
∞ c⎜ ∞⎟
⎝ ⎠
Dacă c ( x (0) − α )
∞
< 1, atunci lim ( x ( p +1) − α )
p →∞ ∞
= 0, deci { x ( p) } este
⎛ 1 1⎞⎛1⎞ ⎛3⎞
⎛ x (1) ⎞ ⎛ 3 ⎞
⎜ − ⎟⎜ ⎟ ⎛3⎞ ⎛0⎞ ⎜ ⎟
⎜ 1 ⎟=⎜ ⎟− ⎜ 5 5⎟⎜ 2⎟ = ⎜ ⎟ −⎜1⎟ =⎜ 2⎟ .
⎜ x (1) ⎟ ⎜ 2 ⎟
⎜− 1 3⎟ ⎜ 1⎟ ⎜ 2⎟ ⎜ ⎟ ⎜ 3⎟
⎝ 2 ⎠ ⎝1⎠ ⎜ ⎟⎜ ⎟ ⎝1⎠ ⎝4⎠ ⎜ ⎟
⎝ 10 5⎠⎝ 2⎠ ⎝4⎠
Primele 3 iteraţii sunt prezentate în tabelul următor
Numărul iteraţiei 0 1 2 3
x1 1.5 1.5 1.488095 1.488034
x2 1.0 0.75 0.755952 0.755983
⎛ 1 − x2 ⎞
⎜ ⎟
4 x1 − x2 4 x1 − x2 ⎟
J F−1 ( x) = ⎜
⎜ 1 4 x1 ⎟
⎜ − 2( 4 x − x ) 2(4 x1 − x2 ) ⎟⎠
⎝ 1 2
⎡1 3⎤
x1 ∈ [1,2] ; x2 ∈ ⎢ , ⎥
⎣2 2⎦
⎧ 1 + x2 1 + 4 x1 ⎫ 9
J F−1 ( x) = max ⎨ , ⎬≤ .
∞ ⎩ 4 x1 − x2 2( 4 x1 − x2 ) ⎭ 5
9
Aşadar, putem lua M 1 = .
5
∂ 2 f1 ∂ 2 f1 ∂ 2 f1 ∂ 2 f2 ∂ 2 f2 ∂ 2 f2
= 4; =0 ; =2 ; = = =0
∂x12 ∂x1 x2 ∂x22 ∂x12 ∂x1∂x2 ∂x22
şi deci M2 = 4 .
⎛3⎞ ⎛ 1,488 ⎞ 2
x = ⎜⎜ 2 ⎟⎟ , α ≅ ⎜⎜
( 0)
⎟⎟ , x (0) − α ≈ 0.06 .
⎝1⎠ ⎝ 0,756 ⎠ ∞
1 2 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.
O
a
x2 x1 x0 b x
A
Din punct de vedere geometric, xp+1 reprezintă abscisa punctului în care tangenta
la graficul funcţiei f în punctul Mp[xp, f(xp)] întâlneşte axa Ox.
Într-adevăr, ecuaţia 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ă întâlneşte axa Ox.
Avem
0 − f(x0) = f’(x0)(x1 − x0)
şi mai departe
f ( x0 )
x1 = x0 −
f ' ( x0 )
adică prima iteraţie din (12).
1
Fie m1 = inf{⏐f’(x)⏐ ; x∈[a,b]} . Atunci putem lua M 1 = . Evident
m1
m2 = sup{⏐f"(x)⏐ ; x∈[a,b]} . Algoritmul este convergent dacă
1 2
M 1M 2 x0 − α < 1 .
2
Sisteme de ecuaţii neliniare 101
Numărul 0 1 2 3 4 5
iteraţiei
x 2.5 2.16418 2.09714 2.09456 2.09455 2.09455
Exerciţii
5 − e− x
R. Ecuaţia se poate pune sub forma x = = ϕ ( x) , unde ϕ(x) este o
10
contracţie şi şirul aproximaţiilor succesive x = ϕ (x) converge la soluţia ecuaţiei.
Valorile obţinute după primele 5 iteraţii sunt trecute în tabelul de mai jos.
Nr. de iteraţii 0 1 2 3 4 5
x 0 0. 0.43297 0.43514 0.43528 0.43529
4
5
⎛1⎞
⎜ ⎟
3
x5 − x* ≤ ⎝ ⎠ x1 − x0 = 0.00525 .
1
1−
3
4. Să se găsească soluţia aproximativă din cadranul întâi pentru sistemul
⎪⎧ x1 + 3 lg x1 − x22 =0
⎨ 2
⎪⎩2 x1 − x1 x2 − 5 x1 + 1 = 0
folosind metoda Newton.
R. Şirul aproximaţiilor succesive x ( p +1) = x ( p ) − J F−1 ( x ( p ) ) F ( x ( p ) ) , p ≥ 0
unde:
⎛ ∂f1 ∂f1 ⎞
⎛ x + 3 lg x1 − x22 ⎞ ⎜ ⎟
∂x ∂x2 ⎟
F ( x, y ) = ⎜ 21 ⎟ , J F (x ) = ⎜ 1
( p)
.
⎜ 2 x − x x − 5 x + 1⎟ ∂
⎜ f2 ∂f 2 ⎟
⎝ 1 1 2 1 ⎠ ⎜ ∂x
⎝ 1 ∂x2 ⎟⎠
Se obţin:
⎛ - 0.19112 0.25482 ⎞ ⎛ 3.59209 ⎞
J −1 ( x (0) ) = ⎜⎜ ⎟⎟ , x (1) = ⎜⎜ ⎟⎟ ;
⎝ - 0.31853 0.09137 ⎠ ⎝ 2.32015 ⎠
⎛ - 0.12916 0.16685 ⎞ ⎛ 3.49059 ⎞
J −1 ( x (1) ) = ⎜⎜ ⎟⎟ , x ( 2) = ⎜⎜ ⎟⎟ ;
⎝ - 0.25343 0.049 ⎠ ⎝ 2.26341 ⎠
⎛ - 0.13672 0.1773 ⎞ ⎛ 3.48745 ⎞
J −1 ( x ( 2) ) = ⎜⎜ ⎟⎟ , x (3) = ⎜⎜ ⎟⎟ ;
⎝ - 0.26238 0.05379 ⎠ ⎝ 2.26163 ⎠
⎛ - 0.13697 0.17765 ⎞ ⎛ 3.48744 ⎞
J −1 ( x (3) ) = ⎜⎜ ⎟⎟ , x ( 4) = ⎜⎜ ⎟⎟
⎝ - 0.26267 0.05395 ⎠ ⎝ 2.26163 ⎠
⎛ - 0.13697 0.17765 ⎞ ⎛ 3.48744 ⎞
J −1 ( x ( 4) ) = ⎜⎜ ⎟⎟ , x (5) = ⎜⎜ ⎟⎟ ş. a. m. d.
⎝ - 0.26267 0.05395 ⎠ ⎝ 2.26163 ⎠
5. Să se găsească soluţia aproximativă ( x>0 , y>0 ) pentru sistemul
104 Bazele Analizei Numerice
⎧⎪ x 2 − y =0
⎨ 2 2
⎪⎩ x + y − 3x = 0
folosind metoda Newton.
R. Şirul aproximaţiilor x ( p +1) = x ( p ) − J F−1 ( x ( p ) ) F ( x ( p ) ) , p ≥ 0 unde:
⎛ ∂f1 ∂f1 ⎞
⎛ x −y ⎞
2 ⎜ ⎟
∂x ∂x2 ⎟
⎜
F ( x, y ) = 2 ⎟ , J F (x ) = ⎜ 1
( p)
.
⎜ x + y 2 − 3x ⎟ ⎜ ∂f 2 ∂f 2 ⎟
⎝ ⎠ ⎜ ∂x
⎝ 1 ∂x2 ⎟⎠
⎛ 1⎞
Se obţin următoarele rezultate dacă se porneşte cu x (0) = ⎜⎜ ⎟⎟ :
⎝ 1⎠
⎛ 0.66667 0.33333 ⎞ ⎛1.33333 ⎞
J −1 ( x (0) ) = ⎜⎜ ⎟⎟ , x (1) = ⎜⎜ ⎟⎟ ;
⎝ 0.33333 0.66667 ⎠ ⎝1.66667 ⎠
⎛ 0.38961 0.11688 ⎞ ⎛1.22511 ⎞
J −1 ( x (1) ) = ⎜⎜ ⎟⎟ , x ( 2) = ⎜⎜ ⎟⎟ ;
⎝ 0.03896 0.31169 ⎠ ⎝1.48918 ⎠
⎛ 0.44138 0.1482 ⎞ ⎛1.21353 ⎞
J −1 ( x ( 2) ) = ⎜⎜ ⎟⎟ , x (3) = ⎜⎜ ⎟⎟ ;
⎝ 0.08148 0.36311⎠ ⎝1.47253 ⎠
⎛ 0.44792 0.15209 ⎞ ⎛1.21341 ⎞
J −1 ( x (3) ) = ⎜⎜ ⎟⎟ , x ( 4) = ⎜⎜ ⎟⎟
⎝ 0.08714 0.36914 ⎠ ⎝1.47237 ⎠
⎛ 0.44799 0.15213 ⎞ ⎛1.21341 ⎞
J −1 ( x ( 4) ) = ⎜⎜ ⎟⎟ , x (5) = ⎜⎜ ⎟⎟ .
⎝ 0.0872 0.3692 ⎠ ⎝1.47237 ⎠
f ( x) = a n x n + a n −1 x n −1 + ... + a1 x + a 0 ,
şi fie
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. Aşadar, cazul
considerat este practic cazul cel mai general. Fie x1 , x 2 ,..., x n rădăcinile
polinomului f. Pentru simplificare, vom presupune că aceste rădăcini sunt simple,
deci că f ( x k ) = 0 şi f ′( x k ) ≠ 0, k = 1, n .
Să presupunem că vrem să determinăm rădăcinile ecuaţiei h(x) = 0
cu una din metodele numerice cunoscute, de exemplu metoda Newton - Raphson.
Ne aşteptăm ca pentru ε > 0 foarte mic, rădăcinile ecuaţiei h(x) = 0 să fie
apropiate de rădăcinile ecuaţiei iniţiale f(x) = 0. Notăm cu zk o rădăcină oarecare
a ecuaţiei 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ă notăm cu
g ( xk )
q(ε ) = ,
f ′( x k ) + ε g ′( x k )
atunci
g ( x k ) g ′( x k )
q ′(ε ) = − . (3)
[ 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 ) ⎞⎟ g ( xk )
z k = xk − ε ⎜ k
−ε ≈ xk − ε . (4)
⎜ f ′( x k )
⎝ [ f ′( x k ) ]2 ⎟
⎠ f ′( x k )
Să presupunem că bi = 0 pentru i ≠ j şi b j = a j . Aşadar, modificarea
polinomului f constă în faptul că se înlocuieşte coeficientul a j cu coeficientul
a~ j = (1 + ε )a j , iar ceilalţi coeficienţi rămân neschimbaţi. Din (4) rezultă
a j x kj
z k − xk ≈ ε . (5)
f ′( x k )
Exemplul 1. Fie
12
f ( x) = ∏ ( x − k ) = ( x − 1)( x − 2)...( x − 12) .
k =1
Evident
Valori şi vectori proprii 109
p q
↓ ↓
⎛1 0 0 . . 0⎞
⎜ ⎟
⎜0 1 0 . . 0⎟
⎜ O . . ⎟
⎜ ⎟ ←p
⎜0 . . cos ϕ . . . sin ϕ . . 0 ⎟
⎜ ⎟
⎜ . 1 . ⎟ (1)
U =⎜M . O . M⎟
⎜ ⎟ ←q
⎜ . 1 . ⎟
⎜ 0 . . − sin ϕ . . . cos ϕ . . 0 ⎟
⎜ ⎟
⎜ . . O ⎟
⎜ . . 0 1 0⎟
⎜ ⎟
⎜0 . . 0 0 1 ⎟⎠
⎝
Aşadar, elementele matricei U sunt:
⎧u ii = 1 dacă i ≠ p şi i ≠ q
⎪
⎪u pp = cos ϕ , u pq = sin ϕ
⎨ (2)
⎪u qp = − sin ϕ , u qq = cos ϕ
⎪u = 0 în rest
⎩ ij
O asemenea matrice este ortogonală ( U T U = I şi deci U −1 = U T ) şi
reprezintă din punct de vedere geometric o rotaţie de unghi ϕ în planul determinat
de direcţiile ep şi eq. Notăm 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
a11 a12cosϕ−a14sinϕ a13 a12sinϕ+a14cosϕ a15
a21cosϕ− a22cos ϕ−2a24sinϕ a23cosϕ−
2
(a22−a44)sinϕcosϕ+ a25cosϕ−
a41sinϕ cosϕ+a44sin ϕ
2
a43sinϕ a24cos2ϕ a45sinϕ
a31 a32cosϕ−a34sinϕ a33 a32sinϕ+a34cosϕ a35
a21sinϕ+ (a22−a44)sinϕ a23sinϕ+ a22sin2ϕ+2a24sinϕ a25sinϕ+
a41cosϕ cosϕ+a24cos2ϕ a43cosϕ cosϕ+ a44cos2ϕ a45cosϕ
a51 a52cosϕ−a54sinϕ a53 a52sinϕ+a54cosϕ a55
⎧ 1
⎪c = cos ϕ =
⎪ 1+ t2 . (9)
⎨ t
⎪ s = sin ϕ =
⎪⎩ 1+ t2
1 1
Din (8) şi (9) rezultă că t ≤ 1, c≥ , s≤ şi deci că
2 2
⎡ π π⎤
ϕ ∈ ⎢−
, ⎥ .
⎣ 4 4⎦
Dacă notăm cu S(B) suma pătratelor elementelor nediagonale ale unei matrice B
oarecare, atunci din (3) şi (4), un calcul direct ne conduce la
[ ]
S ( A′′) = S ( A) − 2a 2pq + 2a ′pq
′2 .
Aşadar, dacă alegem unghiul rotaţie ϕ conform (8) şi (9) rezultă
′ =0 şi deci S ( A′′) = S ( A) − 2a 2pq .
a ′pq (10)
Deoarece aij2 ≤ a 2pq pentru i ≠ j , vom avea
2
S ( A) ≤ n(n − 1)a 2pq sau − S ( A) ≥ −2a 2pq . (11)
n(n − 1)
Din (10) şi (11) rezultă
⎛ 2 ⎞
S ( A′′) ≤ S ( A)⎜⎜1− ⎟⎟ < S ( A) pentru n ≥ 2 . (12)
⎝ n(n − 1) ⎠
Să considerăm acum un şir de rotaţii în urma cărora se obţin matricele A0
, A1 , A2 , ... , Ak , ... unde A0=A , A1=A′′ , A2 = A1′′ , etc.
Din (12) rezultă
k
⎛ 2 ⎞
S ( Ak ) ≤ ⎜⎜1− ⎟⎟ S ( A) . (13)
⎝ n(n − 1) ⎠
2
Cum 1− ∈ (0,1) pentru n > 2, din (13) rezultă lim S ( Ak ) = 0 .
n(n − 1) k →∞
Aşadar, la limită şirul {Ak } tinde la matricea diagonală.
Se poate demonstra următoarea teoremă
(k )
Teorema 1. Fie λi valorile proprii ale matricei A şi fie a jj elementele
diagonale ale matricei Ak . Atunci
a (jjk ) − λ j ≤ S ( Ak ) .
Deoarece a (pq
k)
este cel mai mare (în valoare absolută) element
nediagonal al matricei Ak, rezultă
Valori şi vectori proprii 113
S ( Ak ) ≤ (n 2 − n)(a (pq
k) 2
) < n 2 (a (pq
k) 2
) .
Din Teorema 1 obţinem
a (jjk ) − λ j < n a (pq
k)
. (14)
Inegalitatea (14) poate fi luată drept criteriu de oprire. Din inegalitatea
n a (k )
pq < ε , va rezulta numărul k al rotaţiilor necesare pentru a aproxima valorile
(k )
proprii λj ale matricei A cu elementele diagonale a jj ale matricei Ak. Şirul
de matrice Ak se calculează recursiv
⎧⎪ Ak = U T A k −1 U k , k ≥ 1
k . (15)
⎨
⎪⎩ A0 = A
Algoritm pentru determinarea valorilor proprii prin metoda rotaţiilor a lui Jacobi
Intrare A , ε ;
Repetă
Determină : max := elementul maxim în valoare absolută de
deasupra diagonalei principale a matricei A ;
Fie (p , q) poziţia 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 ;
n n
2
Calculează A := UT⋅A⋅U ; calculează S := ∑ ∑ aij
i =1 j =1
j ≠i
până când S<ε .
⎛ ⎞
⎜ ⎟
⎜1 0 0 ⎟ ⎛2 0 0⎞
⎜ 2 1 ⎟ ⎜ ⎟
U2 = ⎜0 − ⎟; A2 = U 2T A1U 2 = ⎜ 0 5 0⎟
⎜ 3 3 ⎟ ⎜0
⎜ ⎟ ⎝ 0 2 ⎟⎠
1 2
⎜0 ⎟
⎝ 3 3 ⎠
Rezultă: λ1 = 2 ; λ 2 = 5 ; λ3 = 2 .
⎛ a 21 ⎞ ⎛⎜ a (1) ⎞⎟
⎜ ⎟ 21
~ ⎜ ⋅ ⎟ ⎜ 0 ⎟
H1 ⋅ ⎜ =⎜ ⎟.
⋅ ⎟ ⎜ M ⎟
⎜ ⎟
⎜a ⎟ ⎜
⎝ n1 ⎠ ⎝ 0 ⎟⎠
Conform algoritmului (4) descris în Capitolul I §4 avem:
2
s = ( a 21 + ... + a n21 )1 / 2 , β = ( s( a 21 + s ) −1 , u = ( a 21 + s ⋅ sgn( a 21 ), a31 , ..., a n1 ) T ,
~
sgn( a 21 ) = 1 dacă a 21 = 0 , H 1 = I n −1 − β uu T .
Dacă notăm cu a~ = ( a ,..., a ) T , atunci
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
1 ⎠⎝ 1 ⎠ ⎝ 1 1 ⎠ ⋅ a ⎟
⎜ M ⎟
⎜ ⎟
⎝ 0 ⎠
Fie A1 = H1AHT1. Atunci
⎛ a11 − s ⋅ sgn(a 21 ) 0 ... 0 ⎞
⎜ (1) (1) ⎟
⎜ − s ⋅ sgn(a 21 ) a 22 a 23 ... a 2(1n) ⎟
⎜ (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
a i(22) (i = 4, n) din matricea A2 = H2A1H2T sunt nule, etc.
( )
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 0 ⎞
H i := ⎜⎜ ~ ⎟⎟ ;
⎝0 Hi ⎠
Ai := H i Ai −1 H iT ;
sfârşit pentru i.
⎛1 2 1 ⎞
⎜ ⎟
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
⎛ a1 b1 0 0 ... ... ... 0 ⎞
⎜ ⎟
⎜ b1 a 2 b2 0 ... ... ... 0 ⎟
⎜0 b 0 ⎟
2 a3 b3 ... ... ...
J =⎜ ⎟ . (2)
⎜ ... ... ... ... ... ... ... ... ⎟
⎜ ⎟
⎜0 0 0 0 ... bn −2 a n −1 bn −1 ⎟
⎜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 ) .
1≤i ≤ n 1≤i ≤n
Valorile proprii ale matricei A vor aparţine intervalului [a,b].
S(a) -S(b).
Exemplul 2.
y
Fie polinoamele:
f 3 ( x) = x 3 − 3 x 2 + 1 ;
f 2 ( x) = x 2 − 3x + 1 ;
f2 f3
f1 ( x ) = x − 1 ;
f 0 ( x) = 1 f1
Din reprezentarea grafică a f0
f2
λ 2(3)
f3
f 0 (λ ) = 1; f1 (λ ) = λ − a1 ; f k (λ ) = (λ − a k ) f k −1 (λ ) − bk2−1 f k −2 (λ ), k = 2, n,
atunci f n , f n −1 , ... , f1 , f 0 este un şir Sturm.
Demonstraţie. Evident f 0 (λ ) ≠ 0 , pentru orice λ ∈ R . Fie k ∈ {1, 2 , ..., n − 1} şi
α ∈ R astfel încât f k (α ) = 0 . Atunci f k +1 (α ) = −bk2 f k −1 (α ) . Din Teorema 3
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 rădăcină a polinomului fn. Din Teorema 3 şi din
faptul că lim f n ( x) = lim f n−1 ( x) = +∞ rezultă f n −1 (α1 ) > 0 şi mai departe că
x→∞ x→∞
f n (α1 + h) f (α − h)
sgn = 1 şi sgn n 1 = −1
f n−1 (α1 + h) f n−1 (α1 − h)
pentru h > 0 suficient de mic. Dacă x = α2 este următoarea rădăcină a
polinomului fn, vom avea f n −1 (α 2 ) < 0 şi deci, pentru h > 0 suficient de
mic
f (α + h) f (α − h)
sgn n 2 = 1 şi sgn n 2 = −1 ş. a. m.d.
f n−1 (α 2 + h) f n−1 (α 2 − h)
fn
f n -1
O α2 x
α1
Valori şi vectori proprii 123
a c λk b
Dacă S(c) ≥ k, atunci la dreapta lui c se află k valori proprii, deci
inclusiv λk. În acest caz notăm a1 = c, b1 = b. Dacă dimpotrivă S(c) < k, atunci
λk ∈ (a,c) şi notăm a1 = a, b1 = c.
a +b
Să presupunem că λk ∈ (c,b). Fie c1 = 1 1 . Dacă S(c1) ≥ k, atunci
2
notăm a2 = c1, b2 = b1, iar dacă S(c1) < k, atunci a2 = a1, b2 = c1 etc.
b−a a p + bp
Rezultă că λk∈(ap,bp), unde b p -a p = . Putem alege λ k ≈
2p 2
b−a
şi eroarea care se face va fi mai mică decât .
2p
⎛ 2 1 0⎞
⎜ ⎟
Exemplul 3. Fie A = ⎜ 1 2 1 ⎟ . Atunci r1 = 1, r2 = 2, r3 = 1 ,
⎜ 0 1 2⎟
⎝ ⎠
a = min(2−1, 2−2, 2−1) = 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ă
determinăm valoarea proprie λ1. Notăm 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
Exerciţii
a qq − a pp a33 − a11 1 − 1
θ= = = = 0 şi t=1 ,
2a pq 2a13 6
1 1 t 1
cos ϕ = = ; sinϕ = = , iar
1+ t 2 2 1+ t 2 2
Valori şi vectori proprii 125
⎛ 1 1 ⎞
⎜ 0 ⎟
⎜ 2 2⎟
U1 = ⎜ 0 1 0 ⎟ .
⎜ 1 1 ⎟
⎜− 0 ⎟
⎝ 2 2⎠
⎛ 1 1 ⎞ ⎛ 1 1 ⎞
⎜ 0 − ⎟ ⎛ 1 1 3⎞ ⎜ 0 ⎟
(1) T
⎜ 2 2⎟ ⎜ ⎟ ⎜ 2 2⎟
A = U1 ⋅ A ⋅ U1 = ⎜ 0 1 0 ⎟ ⋅ ⎜ 1 3 1⎟ ⋅ ⎜ 0 1 0 ⎟=
⎜ 1 1 ⎟ ⎜ ⎟ ⎜ 1 1 ⎟
⎜ 0 ⎟ ⎝ 3 1 1⎠ ⎜ − 0 ⎟
⎝ 2 2 ⎠ ⎝ 2 2⎠
⎛− 2 0 0 ⎞
⎜ ⎟
=⎜ 0 5 2⎟
⎜ 0 2 4 ⎟⎠
⎝
max a (1) = 2 = a 23
(1)
, p = 2 , q = 3 . Rezultă că
i < j ij
a qq − a pp a (1) − a 22
(1)
33 4−5 1 1 1
θ= = = =− şi , t = =−
2a pq (1) 2 2 2 2 2 2
2a 23 θ + sgn θ 1 + θ 2
1 2 t 1
cos ϕ = = ; sinϕ = =− , iar
1+ t 2 3 1+ t2 3
⎛ ⎞
⎜ ⎟
⎜1 0 0 ⎟
⎜ 2 1 ⎟
U2 = ⎜0 − ⎟ .
⎜ 3 3⎟
⎜ 1 2 ⎟
⎜⎜ 0 ⎟
⎝ 3 3 ⎟⎠
126 Bazele Analizei Numerice
⎛ ⎞ ⎛ ⎞
⎜ ⎟ ⎜ ⎟
⎜1 0 0 ⎟ ⎛− 2 0 0 ⎞ ⎜1 0 0 ⎟
( 2) T (1)
⎜ 2 1 ⎟ ⎜ ⎟ ⎜ 2 1 ⎟
A = U 2 ⋅ A ⋅U 2 = ⎜0 ⎟⋅⎜ 0 5 2 ⎟ ⋅ ⎜0 − ⎟=
⎜ 3 3⎟ ⎜ ⎜ 3 3⎟
0 2 4 ⎟⎠ ⎜
⎜ 1 2⎟ ⎝ 1 2 ⎟
⎜⎜ 0 − ⎟
3 ⎟⎠ ⎜⎜ 0 ⎟
3 ⎟⎠
⎝ 3 ⎝ 3
⎛ − 2 0 0⎞
⎜ ⎟
⎜ 0 6 0⎟
⎜ 0 0 3⎟
⎝ ⎠
⎛ 1 ⎞ ⎛ 1 ⎞
⎛ 1 ⎞ ⎜ ⎟ ⎜ ⎟
⎜ ⎟ ⎜ 6⎟ ⎜ 3 ⎟
⎜ 2 ⎟ ⎜ 2⎟ ⎜ ⎟
1 ⎟
λ1 = −2 , v1 = ⎜ 0 ⎟ , λ 2 = 6 , v 2 = ⎜ ⎟ , λ3 = 3 , v 3 = ⎜ .
⎜ 1 ⎟ ⎜ 3⎟ ⎜ 3 ⎟
⎜− ⎟ ⎜ 1 ⎟ ⎜ 1 ⎟
⎜ 2 ⎟ ⎜ ⎟ ⎜− ⎟
⎝ ⎠ ⎜ 6⎟ ⎜ ⎟
⎝ ⎠ ⎝ 3⎠
⎛1 0 0 0 ⎞
⎜ ⎟
⎜ 0 0.70711 0 0.70711⎟
U1 = ⎜ ,
0 0 1 0 ⎟
⎜ ⎟
⎜ 0 − 0.70711 0 0.70711⎟⎠
⎝
⎛ 1 − 0.70711 4 3.53553 ⎞
⎜ ⎟
⎜ − 0.70711 −4 − 0.70711 0 ⎟
A1 = ⎜ ,
4 − 0.70711 1 4.94975 ⎟
⎜ ⎟
⎜ 3.53553 0 4.94975 6 ⎟⎠
⎝
⎛1 0 0 0 ⎞
⎜ ⎟
⎜0 1 0 0 ⎟
U2 = ⎜ ,
0 0 0.85171 0.52401⎟
⎜ ⎟
⎜0 0 − 0.52401 0.85171⎟⎠
⎝
⎛ 1 − 0.70711 1.55422 5.10729 ⎞
⎜ ⎟
⎜ − 0.70711 −4 − 0.60225 − 0.37053 ⎟
A2 = ⎜ ⎟ ,
1.55422 − 0.60225 − 2.04527 0
⎜ ⎟
⎜ 5.10729 − 0.37053 0 9.04527 ⎟⎠
⎝
⎛ 0.89965 0 0 0.43661⎞
⎜ ⎟
⎜ 0 1 0 0 ⎟
U3 = ⎜ ,
0 0 1 0.52401⎟
⎜ ⎟
⎜ − 0.43661 0 0 0.89965 ⎟⎠
⎝
⎛ 0.63301 0 0.77414 0⎞
⎜ ⎟
⎜ 0 1 0 0⎟
U4 = ⎜ ,
− 0.77414 0 0.63301 0⎟
⎜ ⎟
⎜ 0 0 0 1 ⎟⎠
⎝
128 Bazele Analizei Numerice
⎛ 0.1458 0 0 0.98931⎞
⎜ ⎟
⎜ 0 1 0 0 ⎟
U9 = ⎜ ,
0 0 1 0 ⎟
⎜ ⎟
⎜ − 0.98931 0 0 0.1458 ⎟⎠
⎝
⎛1 1 1 4⎞
⎜ ⎟
⎜1 1 0 5⎟
A=⎜
1 0 1 4⎟
⎜ ⎟
⎜4 5 4 1 ⎟⎠
⎝
⎛1 0 0 0 ⎞
⎜ ⎟
⎜ 0 0.70711 0 0.70711⎟
U1 = ⎜ ,
0 0 1 0 ⎟
⎜ ⎟
⎜ 0 − 0.70711 0 0.70711⎟⎠
⎝
Valori şi vectori proprii 129
⎛ 1 − 2.12132 1 3.53553 ⎞
⎜ ⎟
⎜ − 2.12132 −4 − 2.82843 0 ⎟
A1 = ⎜ ,
1 − 2.82843 1 2.82843 ⎟
⎜ ⎟
⎜ 3.53553 0 2.82843 6 ⎟⎠
⎝
⎛ 0.88807 0 0 0.4597 ⎞
⎜ ⎟
⎜ 0 1 0 0 ⎟
U2 = ⎜ ,
0 0 0 0 ⎟
⎜ ⎟
⎜ − 0.4597 0 0 0.88807 ⎟⎠
⎝
⎛ − 0.83013 − 1.88389 − 0.41216 0 ⎞
⎜ ⎟
⎜ − 1.88389 −4 − 2.82843 − 0.97517 ⎟
A2 = ⎜ ,
− 0.41216 − 2.82843 1 2.97155 ⎟
⎜ ⎟
⎜ 0 − 0.97517 2.97155 7.83013 ⎟⎠
⎝
⎛1 0 0 0 ⎞
⎜ ⎟
⎜0 1 0 0 ⎟
U3 = ⎜ ,
0 0 0.93659 0.35043 ⎟
⎜ ⎟
⎜0 0 − 0.35043 0.93659 ⎟⎠
⎝
⎛1 0 0 0⎞
⎜ ⎟
⎜0 0.4217 0.90674 0⎟
U4 = ⎜ ,
0 − 0.90674 0.4217 0⎟
⎜ ⎟
⎜0 0 0 1 ⎟⎠
⎝
⎛ 0.99999 0.005 0 ⎞
⎜ ⎟
⎜ − 0.005 0.99999 0 0⎟
U 10 = ⎜ ,
0 0 1 0⎟
⎜ ⎟
⎜ 0 0 0 1 ⎟⎠
⎝
⎛ 4 1 −1 1⎞
⎜ ⎟
⎜1 5 0 1⎟
4. A=⎜
−1 0 6 0⎟
⎜ ⎟
⎜1 1 0 7 ⎟⎠
⎝
4 1
2
R. s= ∑ a1, j =1.73205 , β = =0.21132 ,
j =2 s ( a1,2 + s )
⎛ a 2,1 + s ⎞ ⎛1 + 1.73205 ⎞
⎜ ⎟ ⎜ ⎟
u = ⎜ a3,2 ⎟ = ⎜ −1 ⎟ ,
⎜ ⎟ ⎜ ⎟
⎝ a 4, 2 ⎠ ⎝ 1 ⎠
⎛ − 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 ⎟
⎝ ⎠
⎛1 0 0 0 ⎞
⎜ ⎟
⎜ 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 ⎟⎠
⎝
4 1
2
s= ∑ a 2, j = 0.52493 , β = =0.02581 ,
j =3 s ( a1,2 + s )
⎛ a1 + s ⎞ ⎛ 2.13076 + 0.52493⎞
u = ⎜ 3,21 ⎟=⎜ ⎟⎟ ,
⎜ a ⎟ ⎜⎝ 4.79743 ⎠
⎝ 4, 2 ⎠
~ ⎛ − 0.40591 − 0.91391⎞
H 2 = I 2 − β ⋅ u ⋅ u T = ⎜⎜ ⎟⎟ ,
⎝ − 0.91391 0.40591 ⎠
⎛1 0 0 0 ⎞
⎜ ⎟
⎜0 1 0 0 ⎟
H2 = ⎜ ,
0 0 − 0.40591 − 0.91391⎟
⎜ ⎟
⎜0 0 − 0.91391 0.40591 ⎟⎠
⎝
⎛ 4 − 0.57735 0 0 ⎞
⎜ ⎟
T ⎜ − 0.57735 − 5.33333 − 5.24933 0 ⎟
A2 = H 2 ⋅ A1 ⋅ H 2 = ⎜ .
0 − 5.24933 6.09139 0.77290 ⎟
⎜ ⎟
⎜ 0 0 0.77290 5.24193 ⎟⎠
⎝
⎛5 1 1 2⎞
⎜ ⎟
⎜1 7 −1 1⎟
5. A=⎜
1 −1 6 1⎟
⎜ ⎟
⎜2 1 1 8 ⎟⎠
⎝
4 1
2
R. s= ∑ a1, j =2.44948 , β = =0.11835 ,
j =2 s ( a1,2 + s )
132 Bazele Analizei Numerice
⎛ a 2,1 + s ⎞ ⎛1 + 1.73205 ⎞
⎜ ⎟ ⎜ ⎟
u = ⎜ a3,2 ⎟ = ⎜ 1 ⎟ ,
⎜ ⎟ ⎜ ⎟
⎝ a 4, 2 ⎠ ⎝ 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 ⎟
⎝ ⎠
⎛1 0 0 0 ⎞
⎜ ⎟
⎜ 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 ⎞
⎜ ⎟
T ⎜ − 0.57735 5.83333 − 1.76598 4.63299 ⎟
A1 = H 1 ⋅ A ⋅ H 1 = ⎜ ;
0 − 1.76598 6.77447 1.20585 ⎟
⎜ ⎟
⎜ 0 4.63299 1.20585 5.72552 ⎟⎠
⎝
4 1
2
s= ∑ a 2, j = 4.95815 , β = =0.02999 ,
j =3 s ( a1,2 + s )
⎛ a1 + s ⎞ ⎛ − 1.76598 − 4.95815 ⎞
u = ⎜ 3,21 ⎟=⎜ ⎟⎟ ,
⎜ a ⎟ ⎜⎝ 4.63299 ⎠
⎝ 4,2 ⎠
~ ⎛ − 0.35617 0.93441 ⎞
H 2 = I 2 − β ⋅ u ⋅ u T = ⎜⎜ ⎟⎟ ,
⎝ 0.93441 0.35617 ⎠
⎛1 0 0 0 ⎞
⎜ ⎟
⎜0 1 0 0 ⎟
H2 = ⎜ ,
0 0 − 0.35617 0.93441 ⎟
⎜ ⎟
⎜0 0 0.93441 0.35617 ⎟⎠
⎝
⎛ 5 0.81649 0 0 ⎞
⎜ ⎟
T ⎜ 0.81649 5.83333 4.95815 0 ⎟
A2 = H 2 ⋅ A1 ⋅ H 2 = ⎜ .
0 4.95815 5.05593 0.55078 ⎟
⎜ ⎟
⎜ 0 0 0.55078 7.44406 ⎟⎠
⎝
6. Să se găsească cea mai mare valoare proprie în valoare absolută, pentru matricea
Valori şi vectori proprii 133
⎛4 1 0 0⎞
⎜ ⎟
⎜1 5 −1 0⎟
A=⎜
0 −1 6 1⎟
⎜ ⎟
⎜0 0 1 7 ⎟⎠
⎝
2
f2(λ) = (λ −a22) f1(λ)− a12 f0(λ) = (λ −5) (λ −4)− 1 ,
2
f3(λ) = (λ −a33) f2(λ)− a 23 f1(λ) = (λ −6)f2(λ) – f1(λ) ,
2
f4(λ) = (λ −a44) f3(λ)− a34 f2(λ) = (λ −7)f3(λ) – f2(λ) .
a+b
Luând c = , f0(c) = 1, f1(c) = 1.5 , f2(c) = −0.25, f3(c) = −1.375,
2
f4(c) = 2.3125 ,
a+b
c= , f0(c) = 1, f1(c) = 2.75 , f2(c) = 3.8125, f3(c) = 0.10938,
2
f4(c) = −3.83984 ,
a+b
c= , f0(c) = 1, f1(c) = 3.375 , f2(c) = 7.01563, f3(c) = 6.27148,
2
f4(c) = −4.66382 ,
a+b
c= , f0(c) = 1, f1(c) = 3.6875 , f2(c) = 8.91016, f3(c) = 11.3439,
2
f4(c) = −1.10814 ,
a+b
c= , f0(c) = 1, f1(c) = 3.84375 , f2(c) = 9.93066, f3(c) = 14.46591,
2
f4(c) = 2.27495,
a+b
c= , f0(c) = 1, f1(c) = 3.76563 , f2(c) = 9.41431, f3(c) = 12.85651,
2
f4(c) = 0.42896,
( |λ1|>|λ2|>|λ3|>|λ4| )
Valori şi vectori proprii 135
⎛5 2 0 0⎞
⎜ ⎟
⎜2 6 1 0⎟
A=⎜
0 1 6 2⎟
⎜ ⎟
⎜0 0 2 8 ⎟⎠
⎝
2
f2(λ) = (λ −a22) f1(λ)− a12 f0(λ) = (λ −6) (λ −5)− 4 ,
2
f3(λ) = (λ −a33) f2(λ)− a 23 f1(λ) = (λ −6)f2(λ) – f1(λ) ,
2
f4(λ) = (λ −a44) f3(λ)− a34 f2(λ) = (λ −8)f3(λ) – 4f2(λ) .
a+b
c= , f0(c) = 1, f1(c) = 1.5 , f2(c) = −3.25, f3(c) = 17.6875,
2
f4(c) = 2.3125 ,
136 Bazele Analizei Numerice
a+b
c= , f0(c) = 1, f1(c) = 3.25 , f2(c) = 3.3125, f3(c) = 4.20312,
2
f4(c) = −12.19921 ,
a+b
c= , f0(c) = 1, f1(c) = 2.375 , f2(c) =−0.73437, f3(c) = −3.38476,
2
f4(c) = 5.05297 ,
a+b
c= , f0(c) = 1, f1(c) = 2.8125 , f2(c) = 1.09765, f3(c) = − 0.82299,
2
f4(c) = − 4.23631,
a+b
c= , f0(c) = 1, f1(c) = 2.59375 , f2(c) = 0.13378 , f3(c)= − 2.38052,
2
f4(c) = 0.43193,
a+b
c= , f0(c) = 1, f1(c) = 2.70312 , f2(c) = 0.60375 , f3(c) = − 1.67484,
2
f4(c) = −1.91781,
4. Interpolarea funcţiilor
Fie f : [a,b] → R şi fie x0, x1, ..., xn , (n+1) puncte distincte din
intervalul [a,b] , numite noduri.
Problema interpolării funcţiei f în nodurile xi, i = 0, n , constă în determinarea unei
funcţii g : [a,b] → R, dintr−o clasă de funcţii cunoscută, cu proprietatea
g(xi)=f(xi), i = 0, n .
Pusă sub această formă generală problema poate să nu aibă soluţie sau să
aibă o infinitate de soluţii.
Cea mai utilizată clasă de funcţii de interpolare este clasa polinoamelor,
datorită uşurinţei cu care se integrează şi se derivează.
Interpolarea funcţiilor prezintă o importanţă deosebită pentru cazul când
funcţia nu este definită printr−o relaţie analitică, ci printr−un tablou de valori, ce
reprezintă, de exemplu, rezultatele unei experienţe. Chiar şi atunci când funcţia este
dată printr−o relaţie analitică, dar această relaţie este complicată se poate alege
interpolarea în locul calculului direct.
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ă funcţia f în
nodurile xi, i = 0, n ( f(xi)=Pn(xi) , i = 0, n ). Acest polinom se numeşte polinomul
de interpolare al lui Lagrange.
Demonstraţie.
Căutăm un polinom Pn sub forma următoare:
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 condiţiile:
138 Bazele Analizei Numerice
⎧ 1 dacã j=i
Li ( x j ) = δ ij = ⎨ .
⎩0 dacã j ≠ i
Deoarece Li(xj)=0 pentru i≠j , rezultă că Li admite rădăcinile
x0, x1, ..., xi−1, xi+1,..., xn.
Aşadar,
Li(x)=ai(x−x0)...(x−xi−1)(x−xi+1)...(x−xn).
Cum Li(xi)=1, rezultă
1
ai = .
(xi − x0 )...(xi − xi −1 )(xi − xi +1 )...(xi − xn )
În concluzie avem
n
Pn ( x) = ∑ Li ( x) f ( xi ) (1)
i =0
unde
n (x − x j )
Li ( x) = ∏ . (2)
j =0 ( xi − xj)
j ≠i
Demonstraţie.
Considerăm funcţia auxiliară
E ( f ; x)
g (t ) = f (t ) − Pn (t ) − U n+1 (t ), t ∈ [a,b], x ≠ xi
U n+1 ( x)
Observăm că g se anulează în (n+2) puncte distincte x0, x1,..., xn, x. Din teorema
lui Rolle rezultă că există ξx∈(a,b) astfel încât g(n+1)(ξx)=0.
Cum
g (n+1) (t ) = f (n+1) (t ) −
E( f ; x)
(n +1)!
Un+1(x)
rezultă
f (n+1) (ξ x )
E( f ; x) = U ( x) .
(n + 1)! n+1
Corolar. Dacă există M>0 astfel încât ⏐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 funcţia f(x)=ln x şi nodurile 0.4; 0.5; 0.7; 0.8. Evaluăm 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 număr fiind doar un majorant al erorii.
Dacă folosim următoarele valori în noduri
Observaţia 1. Dacă f=Q este un polinom de grad cel mult n, atunci E(f;x)=0,
oricare x∈[a,b].
Afirmaţia rezultă din Teorema 2 deoarece, în acest caz f (n+1)(x)=0 .
140 Bazele Analizei Numerice
Observaţia 2. E(f+g;x)=E(f;x)+E(g;x)
Într−adevăr, 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+i⋅h, i = 0, n , unde
x −x
h= n 0 . (6)
n
Considerăm de asemenea schimbarea de variabilă
x=x0+th (7)
Înlocuind (6) şi (7) în (2) obţinem:
~
Li (t ) = Li ( x0 + th) = ∏
n
(t − j )
j =0 (i − j )
j ≠i
Folosind notaţia:
n
π n+1 (t ) = t (t − 1)(t − 2)...(t − n) = ∏ (t − j ) (8)
j =0
obţinem:
~ (−1) n−i π n+1 (t ) (−1) n−i i π n+1 (t )
Li (t ) = = Cn
i!(n − i )! t − i n! t −i
Obţinem astfel expresia polinomului lui Lagrange pentru noduri
echidistante
~ π (t ) n f ( xi )
Pn (t ) = n +1 ∑ (−1) n −i Cni . (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 considerăm un şir de diviziuni {∆n} ale intervalului [a,b] cu
lim ∆ n = 0, ∆ n : a = x (n) ( n) ( n)
0 < x1 < ... < xn = b .
n →∞
Notăm cu Pn − polinomul lui Lagrange care interpolează funcţia f în nodurile
xi( n) ,
i = 0,n . Dacă n este mare, Pn coincide cu f într−un număr mare de
noduri, deci ne aşteptăm ca eroarea
En(f;x)=f(x)−Pn(x)
să fie mică, eventual ca lim En ( f ; x) = 0 .
n→∞
Interpolarea funcţiilor 141
1 1
−
x −1 2 0 2 1
T4′ − 0 + 0 − 0 +
T4 1 Ì −1 Ê 1 Ì −1 Ê 1
π
Teorema 1. Fie xk = (2k + 1) , k = 0, n , zerourile polinomului Cebîşev Tn+1.
2n
Atunci, oricare ar fi (n+1) puncte distincte, zi, i = 0, n din intervalul [−1,1],
avem
sup ( x − x0 )( x − x1 )...( x − xn ) ≤ sup ( x − z0 )( x − z1 )...( x − z n ) .
x∈[−1,1] x∈[−1,1]
Demonstraţie. Deoarece
Tn+1(x)=2n(x−x0)...(x−xn) ,
rezultă că trebuie sa arătăm 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 încât
1 1
sup qn +1 ( x) < sup T ( x) = (5)
n n +1
x∈[−1,1] x∈[−1,1] 2 2n
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
Teorema 2. Fie Pn* polinomul lui Lagrange care interpolează funcţia f în nodurile
π
xi = cos(2i + 1) , i = 0, n .
2(n + 1)
Interpolarea funcţiilor 147
1
Atunci f − Pn* ≤ . f ( n +1)
Pentru acele funcţii care au
∞ n ∞
2 (n + 1)!
1 u
proprietatea că lim f (n+1) = 0 va rezulta că şirul Pn* ⎯⎯→ f .
n
n→∞ 2 (n + 1)! ∞
Fie
∆: a=x0<x1<...<xi−1<xi<...<xn=b
o diviziune oarecare a intervalului [a,b].
Se numeşte funcţie spline cubică o funcţie
s : [a,b] → R
cu următoarele proprietăţi:
(i) Restricţia lui s la fiecare subinterval [xi−1, xi] este un polinom de grad
cel mult trei;
(ii) s, s', s" sunt continue pe [a,b].
În continuare ne punem problema interpolării unei funcţii f : [a,b] → R
cu ajutorul unei funcţii spline cubice. Cu alte cuvinte, ne punem problema să găsim
o funcţie spline cubică s, astfel încât
s(xi) = f(xi) , i = 0, n .
Deoarece restricţia lui s la subintervalele [xi−1,xi] este un polinom de
grad cel mult trei, rezultă că
s(x)=ai+bix+cix2+dix3
pentru orice x∈[xi−1, xi]. Determinarea funcţiei s presupune deci determinarea a
4n coeficienţi (ai , bi , ci , di).
Să evaluăm acum de câte condiţii dispunem. Faptul că
s(xi) = f(xi), i = 0, n
ne asigură (n+1) condiţii. Pe de altă parte, din continuitatea lui s şi a derivatelor
s' şi s", rezultă:
s(k)(xi−0)= s(k)(xi+0) , i =1, n −1 , k = 0,2 ,
care ne asigură 3(n−1) condiţii. În total, dispunem deci de (4n−2) condiţii, cu
două mai puţin decât numărul coeficienţilor ce urmează a fi determinaţi.
Dacă se cunosc derivatele f'(a) şi f'(b), atunci adăugăm condiţiile
s'(a) = f'(a) şi s'(b) = f'(b).
Dacă nu se cunosc aceste derivate, atunci se aproximează
f'(a)≅ y 0′ şi f'(b)= y 0′
şi se pun condiţiile s'(a) = y 0′ şi s'(b) = y n′ . Dacă nu avem nici o informaţie
despre f'(a) şi f'(b) se pot pune condiţiile:
148 Bazele Analizei Numerice
s"(a) = s"(b) = 0 .
În acest caz se obţine aşa numita funcţie spline cubică naturală.
Înainte de a prezenta teorema fundamentală privind existenţa funcţiilor
spline cubice, reamintim următorul rezultat de algebră liniară.
Teorema 1. Pentru orice (n+3) numere date y 0′ , y0, y1, ..., y n ,y n′ , există o
funcţie spline cubică s, unică cu proprietăţile:
s(xi)=yi , 0≤i≤n , s´(x0) = y 0′ , s´(xn) = y n′ .
Demonstraţie.
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 condiţiile Mi=s"(xi) şi
Mi+1 = s"(xi+1) rezultă
M − Mi M x − M i +1xi
a = i +1 şi β = i i +1 ,
hi hi
unde hi = xi+1−xi. Aşadar 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
Integrând de două ori obţinem
Interpolarea funcţiilor 149
( xi +1 − x) 3 M i + ( x − xi )3 M i +1
s ( x) = + C ( xi +1 − x) +
6hi . (4)
+ D ( x − xi ), i=0 ,n-1
unde C şi D sunt constante arbitrare.
Punând condiţiile de interpolare s(xi) = yi , 0≤i≤n, rezultă
y hM y hM
C = i − i i şi D = i +1 − i i +1 . (5)
hi 6 hi 6
Înlocuind (5) în (4) obţinem pentru x∈ [xi , xi+1] şi i = 0, n − 1 :
( xi +1 − x) 3 M i + ( x − xi )3 M i +1
s ( x) = +
6hi
( xi +1 − x) yi + ( x − xi ) yi +1
+ − (6)
hi
(x − x)M i + (x − xi )M i +1
− i +1 hi , i=0 ,n-1 .
6
Să observăm că funcţia s definită în (6) este continuă pe [a,b].
Într−adevăr
⎡ (x − x)3 Mi−1 + (x − xi−1)3 Mi (xi − x) yi−1 + (x − xi−1) yi
lim s(x) = lim ⎢ i + −
x→xi x→xi ⎢
⎣ 6hi −1 h i −1
x<x i x<x i
şi analog lim s ( x) = yi .
x → xi
x > xi
În continuare vom pune condiţia 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) = +
2hi hi (7)
( M i +1 − M i )hi
− ,
6
pentru x∈(xi , xi+1), i = 0, n − 1 .
Punem condiţia ca lim s ' ( x) = lim s ' ( x) şi obţinem
x → xi x → xi
x < xi x > xi
ş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 (n−1) ecuaţii date de (8) adăugăm două ecuaţii care corespund
condiţiilor: s'(x0)= y 0′ şi s'(xn)= y 0′ .
Ţinând seama de (7) aceste ecuaţii sunt:
h0 h y − y0
M 0 + 0 M1 = 1 − y 0′ (9)
3 6 h0
hn −1 h y − yn −1
M n −1 + n −1 M n = yn′ − n . (10)
6 3 hn −1
Din (8), (9) şi (10) rezultă următorul sistem AM=b, unde
⎛ h0 h0 ⎞
⎜ 0 0 L 0 0 0 ⎟
⎜ 3 6 ⎟
⎜ h0 h0 + h1 h1
0 L 0 0 0 ⎟
⎜ 6 3 6 ⎟
⎜ h1 h1 + h2 h2 ⎟
A=⎜ 0 6 3 6
L 0 0 0 ⎟
⎜ ⎟
⎜ M M. M M O M M M ⎟
⎜ 0 hn −2 hn− 2 + hn −1
hn−1 ⎟
0 0 0 L
⎜ 6 3 6 ⎟
⎜ hn−1 ⎟
hn−1
⎜ 0 0 0 0 L 0 ⎟
⎝ 6 3 ⎠
⎛ y1 − y0 ⎞
⎜ − y0′ ⎟
⎜ h0 ⎟
⎛M0 ⎞ ⎜ y 2 − y1 y1 − y0 ⎟
⎜ ⎟ ⎜ − ⎟
⎜ M1 ⎟ ⎜ h1 h0 ⎟
M =⎜ ⎟ , iar b = ⎜ M ⎟.
M y − y y − y
⎜ ⎟ ⎜ n n −1 − n -1 n−2 ⎟
⎜M ⎟ ⎜ hn −1 ⎟
⎝ n⎠ hn − 2
⎜ y n − y n −1 ⎟
⎜ y ′ − ⎟
⎜ n
hn −1 ⎟
⎝ ⎠
Observăm că matricea A este simetrică, tridiagonală şi strict diagonal
dominantă. Un asemenea sistem are soluţie unică, care se obţine uşor cu algoritmul
Gauss. Înlocuind în (6) această soluţie, găsim funcţia spline cubică pe care o
căutam. Evident această funcţie este unică, deoarece soluţia (M0, M1,...,Mn) este
unică.
Interpolarea funcţiilor 151
5π
Exemplu: Să se determine valorile funcţiei f în punctul folosind
24
interpolarea spline cubică, ştiind că:
xi 0 π π π π
6 4 3 2
y i = f ( xi ) 0 0.5 0.70711 0.86603 1
⎛ − 5.15454 ⋅ 10 −3 ⎞
⎜ ⎟
⎜ − 0.50616 ⎟
⎜ ⎟
şi hi = xi+1 – xi , i = 0, 3 . Obţinem că: M = ⎜ − 0.70767 ⎟ .
⎜ − 0.88161 ⎟
⎜⎜ ⎟⎟
⎝ − 1.02524 ⎠
5π
Punctul ∈ [x1 , x 2 ] . Scriem funcţia de interpolare s pe acest interval:
24
152 Bazele Analizei Numerice
( x 2 − x) 3 M 1 + ( x − x1 ) 3 M 2 ( x 2 − x) y1 + ( x − x1 ) y 2
s ( x) = + −
6h1 h1
( x 2 − x) M 1 + ( x − x1 ) M 2
− h1
6
⎛ 5π ⎞
Calculăm valoarea funcţiei s în punctul dat: s⎜ ⎟ = 0.60875 .
⎝ 4 ⎠
5π
Deci, valoarea aproximativă a lui f în punctul este 0.60875.
24
a a a a
Mai departe avem
b n −1 xi +1
∫ s"( x)k"( x)dx = ∑ ∫ s"( x)k"( x)dx =
a i =0 xi
n −1⎛ xi +1 ⎞
⎜ xi +1 ⎟
= ∑ ⎜ s" ( x)k ( x) x − ∫ s ( x)k ( x)dx ⎟ .
′ ′′′ ′
i =0 ⎜⎝ ⎟
i
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
∫ s′′′(x)k ′(x)dx = 0
xi
şi mai departe
Interpolarea funcţiilor 153
b n −1
∫ s"( x)k"( x)dx = ∑ [s"( xi +1 )k ′( xi +1 ) − s"( xi )k ′( xi )] =
a i =0
= s" (b)k ′(b) − s" (a) k ′(a) = 0 .
deoarece k'(a) = k'(b) = 0. Aşadar
b b b
∫ [g"( x)] dx = ∫ [s" ( x)] dx + ∫ [k " ( x)] 2 dx .
2 2
a a a
b b
∫ [s" (x)] dx ≤ ∫ [g" (x)] 2 dx pentru orice g∈G.
2
Rezultă
a a
b
∫ [k"(x)]
2
Egalitatea are loc dacă dx = 0 , deci dacă k"(x)=0,
a
(∀) x∈[a,b]. Aşadar functia k este liniară pe [a,b].
Din condiţiile de interpolare k(xi)=0 pentru i = 0, n , rezultă k(x)=0,
(∀)x∈[a,b] şi deci că
b b
∫ [s"( x)] dx = ginf ∫ [g"( x)] dx .
2 2
∈G
a a
Se poate demonstra de asemenea următoarea teoremă.
b−a
i = 0,n , noduri echidistante, unde h = . Dacă sn este funcţia spline cubică
n
cu proprietăţile:
sn(xi(n) ) = f (xi(n) ) , i = 0, n ; s n′ ( a ) = f ' ( a ) şi sn′ (b) = f ' (b) ,
atunci pentru orice x∈[a,b] avem:
5 1 3
f(x)− sn(x) ≤ M4h4 , f '(x)− sn′ (x) ≤ M4h3, f " ( x) − sn" ( x) ≤ M 4 h 2 .
384 24 8
Aşadar, din Teorema 3 rezultă că şirul funcţiilor spline cubice {sn} care
interpolează funcţia f în nodurile echidistante {x }
(n )
i converge uniform pe
u u
intervalul [a,b] către funcţia f. Mai mult: sn′ ⎯⎯→ f ′ şi sn′′ ⎯⎯→ f " pe
intervalul [a,b].
În continuare vom defini funcţiile B−spline cubice şi vom arăta că orice
funcţie spline cubică care interpoleză funcţia f în nodurile x0, x1, ..., xn se
reprezintă ca o combinaţie liniară unică de funcţii B−spline cubice. Fie
∆: a=x0<x1<...<xi−1<xi<...<xn=b
154 Bazele Analizei Numerice
⎧4λ−1 + λ0 = 0
⎪λ + 4λ + λ = 0
⎪⎪ −1 0 1
⎨ L
⎪λ + 4λn + λn +1 = 0
⎪ n −1
⎪⎩λn + 4λn +1 = 0
Deoarece matricea sistemului este strict diagonal dominantă, deci
nesingulară, rezultă că sistemul admite numai soluţia banală
λ1 = λ2 = ... = λn+1 = 0 .
⎧ h
⎪4a0 + 2a1 = f ( x0 ) + 3 f ′( x0 )
⎪a + 4 a + a = f ( x )
⎪⎪ 0 1 2 0
⎨ L (13)
⎪a + 4an −1 + a n = f ( xn −1 )
⎪ n−2
⎪2 a h
+ 4a n = f ( xn ) + f ′( xn )
⎪⎩ n −1 3
Matricea coeficienţilor sistemului (13) este strict diagonal dominantă, deci sistemul
(13) are soluţie unică. Aşadar, sistemul (12) are soluţie unică.
Înlocuind această soluţie în (11) obţinem funcţia B căutată, care evident
este unică.
π π π
Exemplu. Să se determine valorile funcţiei f în punctele , , , folosind
12 8 5
interpolarea spline cubică, ştiind că:
xI 0 π π π π
6 4 3 2
yi=f(xi) 0 1 1 3 1
2 2 2
utilizând MATLAB.
În mediul MATLAB se scriu comenzile:
Interpolarea funcţiilor 157
Exerciţii
R.
5 5 a− xj a − x2 a − x3 a − x4 a − x5
P4 (a ) = ∑ yi ∏ = y1 ⋅ ⋅ ⋅ +
i =1 j =1 xi −xj x1 − x2 x1 − x3 x1 − x4 x1 − x5
j ≠i
a − x1 a − x3 a − x4 a − x5 a − x1 a − x2 a − x4 a − x5
+ y2 ⋅ ⋅ ⋅ + 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 −1−1 −1− 3 −1+ 3 −1 −1−1 −1− 3
= 91 ⋅ ⋅ ⋅ + 23 ⋅ ⋅ ⋅ +
− 3 + 2 − 3 − 3 −1 − 3 − 3 − 2 + 3 − 2 − 2 −1 − 2 − 3
−1+ 3 −1+ 2 −1−1 −1− 3 −1+ 3 −1+ 2 −1 −1− 3
+ ⋅ ⋅ ⋅ − ⋅ ⋅ ⋅ +
3 2 −1 −3 1+ 3 1+ 2 1 1− 3
−1+ 3 −1+ 2 −1 −1−1
+ 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
3π
a= .
8
⎛ 3π ⎞
R. P5 ⎜ ⎟ = 0.92388 .
⎝ 8 ⎠
Folosind metoda Aitken să se găsească valoarea aproximativă a funcţiilor
date de tabelele următoare în punctele menţionate în fiecare caz în parte.
3.
x −2 −1 0 1 3
y=f(x) −12 −5 −4 −3 23
a=0.5 .
R. Urmărind calculele ca în Teorema 1 §4.2 obţinem tabelul următor în care
ultima celulă dă valoarea aproximativă a funcţiei în punctul dat.
−2 −2.5 −12
−1 −1.5 −5 5.5
0 −0.5 −4 −2 −5.75
1 0.5 −3 −4.5 −2 −−3.875
3 2.5 23 5.5 5.5 −3.875 −3.875
Interpolarea funcţiilor 159
4.
x 0 30 45 60 90
y=f(x) 0 0.5 0.70710 0.86602 1
a=36 .
R.
0 −36 0
30 −6 0.5 0.6
45 9 0.70710 0.56568 0.58627
60 24 0.86602 0.51961 0.58392 0.58768
90 54 1 0.4 0.58 0.58752 0.58780
xi 0 0.25 0.75 1
y i = f ( xi ) 1 0.96923 0.75484 0.60653
y1 y0
h0 h0 y' 0
0 0 h0
3 6
h0 h0 h1 h1 y2 y1 y1 y0
0
6 3 6 h1 h0
A b
h1 h1 h2 h2 y3 y2 y2 y1
0
6 3 6 h2 h1
h2 h2 y3 y2
0 0 y' 3
6 3 h2
iar hi = xi+1 – xi , i = 0, 2
160 Bazele Analizei Numerice
⎛M0 ⎞ ⎛ − 1.00712 ⎞
⎜ ⎟ ⎜ ⎟
⎜ M1 ⎟ ⎜ − 0.93936 ⎟
iar M = ⎜ . Obţinem că: M = ⎜
M2 ⎟ − 0.347 ⎟
⎜ ⎟ ⎜ ⎟
⎜M ⎟ ⎜ 0.01396 ⎟
⎝ 3⎠ ⎝ ⎠
( x 2 − x) 3 M 1 + ( x − x1 ) 3 M 2 ( x 2 − x) y1 + ( x − x1 ) y 2
s ( x) = + −
6h1 h1
( x 2 − x) M 1 + ( x − x1 ) M 2
− h1
6
Calculăm valoarea funcţiei s în punctul dat: s (0.5) = 0.882 .
Deci, valoarea aproximativă a lui f în punctul 0.5 este 0.882.
xi 1 2 4 5
y i = f ( xi ) 0.5403 0.70121 0.80805 0.83382
⎛ − 0.33459 ⎞
⎜ ⎟
⎜ − 0.0483 ⎟
R. Obţinem că: M = ⎜ . Valoarea funcţiei f în punctul 3 este
− 0.01028 ⎟
⎜ ⎟
⎜ − 7.60083 ⋅ 10 −3 ⎟
⎝ ⎠
aproximată de s (3) = 0.76928 .
Integrarea şi derivarea numerică 161
Teorema 1. Pentru orice n noduri distincte, x1, ..., xn , există n constante A1, A2,
..., An (care nu depind de f ) astfel încât formula
b
∫ 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 (n−1).
Demonstraţie. Fie
n
Pn −1 ( x) = ∑ Li ( x) f ( xi )
i =1
polinomul lui Lagrange, care interpolează funcţia f în nodurile { xi }, i = 1, n .
Reamintim că
n x− xj
Li ( x) = ∏ .
j =1 xi − x j
j ≠i
Dacă notăm cu
E(f ; x) = f(x)−Pn−1(x) ,
atunci
n
f ( x) = ∑ Li ( x) f ( xi ) + E ( f ; x)
i =1
şi mai departe
b n⎛b ⎞ b
⎜ ⎟
∫w( x ) f ( x )dx = ∑∫ ⎜ ∫
w( x ) Li ( x )dx f ( xi ) + w( x ) E ( f ; x )dx .
⎟
a i =1 ⎝ a ⎠ a
Notăm cu
b
∫
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ă notăm cu
b
∫
R( f ) = w( x ) E ( f ; x )dx ,
a
atunci
b
∫ 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 (n−1), atunci E(f;x)=0 şi deci
R( f )=0 (Capitolul IV, §1, Observaţia 1).
Există trei tipuri de formule de integrare numerică:
Integrarea şi derivarea numerică 163
1. Formule Newton−Côtes,
2. Formule Gauss,
3. Formule Romberg.
În cele ce urmează vom prezenta primele două tipuri de formule.
Introducem notaţiile:
164 Bazele Analizei Numerice
(−1) n −i C ni nπ
n +1 (t )
di = ∫ dt , i=0 ,n (2)
n! 0 t −i
şi
h n+ 2 n ( n +1)
R( f ) = ∫ π n+1 (t ) f (ξ t )dt . (3)
(n + 1)! 0
Numerele { di }, i = 0, n , se numesc coeficienţii Newton−Côtes. Prin
urmare avem
b n
∫ f ( x)dx = ∑ Ai f ( xi ) + R( f ) (4)
a i =0
unde Ai = hdi , i = 0, n .
Primele trei formule Newton−Côtes au nume speciale.
Dacă n=1 obţinem formula trapezelor. În acest caz h = b−a,
(−1)1 C10 1 t (t − 1) 1
1 (−1) 0 C11 1 t (t − 1) 1 1
d0 = ∫ dt = − ∫ (t − 1) dt = , d 1 = ∫ dt = ∫ tdt =
1!
0
t
0
2 1! 0 t −1 0 2
Rezultă
h
A1 = A2 = .
2
Formula trapezelor este
b b−a
∫ f ( x)dx = [ f (a) + f (b)] + R( f ) (5)
a 2
h3 1
R( f ) = ∫ f " (ξ t ) t (t − 1)dt .
2 0
Dacă f∈C2[a,b] şi notăm cu M2=sup{ ⎜f"(x)⎢; x∈[a,b] } atunci
3
(b − a ) M 2 1 (b − a ) 3
R( f ) ≤ ∫ t (t − 1) dt = M2 (6)
2 0 12
y f
O a b x
Integrarea şi derivarea numerică 165
3
M2 ⎛b − a⎞ M2
R( f ) ≤ n ⎜ ⎟ = 2
(b − a )3 . (11)
12 ⎝ n ⎠ 12n
Formula (10) se numeşte formula trapezelor repetată.
2.5
2
Exemplul 1. Să se calculeze valoarea aproximativă a integralei ∫ sin( x )dx ,
0.5
folosind funcţia MATLAB trapz , şi luând pasul h=0.1 .
Integrarea şi derivarea numerică 167
function g=f(x)
g=sin(x.^2); % integrandul
după care se apelează cu secvenţa: quad('f',0.5,2.5,0.00001) şi se va afişa valoarea
0.3890. Am considerat eroarea relativă dintre doi paşi consecutivi 10−5.
Definiţia 1. Dacă
b
∫ w( x) f ( x) g ( x)dx = 0
a
atunci spunem că funcţiile f şi g sunt ortogonale pe [a, b] în raport cu ponderea
w.
a
pentru orice polinom Q de grad cel mult (n−1).
Integrarea şi derivarea numerică 169
b
[
∫ w( x) λ0 + λ1 x + ... + λ n−1 x
n −1 2
]dx = 0 (7)
a
Din (7) rezultă:
w(x) [λ0+λ1x+ ... +λn−1xn−1]2 = 0
pentru orice x∈[a,b]. Cum w se anulează numai într−−un număr finit de puncte
din [a,b], rezultă λ0+λ1x+ ...+λn−1xn−1=0. Am ajuns astfel la o contradicţie.
Aşadar, detC ≠ 0 deci sistemul (4) admite soluţie unică.
Dacă notăm cu a 0* , a1* , ..., a n* −1 soluţia sistemului (4), atunci
Pn* ( x) = a 0* + a1* x + ... + a n*−1 x n−1 + x n
şi cu aceasta teorema este demonstrată.
⎧ c 0 a 0 + c1a1 + c 2 a 2 = −c3
⎪
⎨c1a 0 + c 21a1 + c3 a 2 = −c 4 (9)
⎪ c a + c a + c a = −c
⎩ 2 0 3 1 4 2 5
Înlocuind (8) în (9) rezultă
⎧ 2
⎪2 a 0 + 3
a2 =0
⎪⎪ 2 2
⎨ a1 =−
⎪ 3 5
⎪ 2a +
2
a2 =0
⎪⎩ 3 0 5
3 3
care admite soluţia: a0 = a2 = 0 ; a1 = − . Aşadar, P3* ( x) = x 3 − x .
5 5
Primele şase polinoame Legendre sunt:
1 3 6 3 10 15
1 ; x ; x2 − ; x3 − x ; x4 − x2 + ; x5 − x3 + x
3 5 7 35 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
1 xk
Pentru calculul coeficienţilor c k = ∫ dx , facem schimbarea de
−1 1− x2
variabilă x = sin t şi obţinem
π π
2 k −1 2 k −2 k −1
c k = ∫ sin k xdx = ∫ sin xdx = ck −2 .
π k π k
− −
2 2
Rezultă ck = 0 pentru orice k impar şi
π 3 π 5 3 π
c2 = ; c 4 = ⋅ ; c 6 = ⋅ ⋅ etc.
2 4 2 6 4 2
Să determinăm polinomul Cebîşev de speţa I, T3* . Sistemul (4) devine
⎧ π
⎪ πa 0 + 2
a2 =0
⎪⎪ π 3π
⎨ a1 =−
⎪ 2 8
⎪π a + π
a2 =0
⎪⎩ 2 0 4
172 Bazele Analizei Numerice
3 3
care admite soluţia: a0 = a2 = 0, a1 = − . Aşadar T3* = x 3 − x .
4 4
În Capitolul IV, §3 am arătat că polinomul Cebîşev de gradul trei este:
T3(x)=4x3−3x. După cum am precizat în Teorema 1, polinomul ortogonal se
determină în afara unui factor constant de multiplicare.
Observăm că avem T3 = 4 T3* şi în general Tn=2n−1 Tn* , n∈N.
b b n
∫ w( x) f ( x) dx − I n = ∫ w( x) f ( x) dx − ∑ Ai f ( xi ) ≤
( n) ( n)
a a i =1
[ ]
b n
∫ w( x) [ f ( x) − Pε ( x)] dx + ∑ Ai Pε ( xi ) − f ( xi ) ≤
( n) (n) ( n)
≤
a i =1
b n
≤ ∫ w( x) f ( x) − Pε ( x) dx + ∑ Ai( n) Pε ( xi( n) ) − f ( xi( n) ) <
a i =1
⎛b n ⎞ b
⎜
< ε ∫ w( x) dx + ∑ Ai (n) ⎟
= 2ε ∫ w( x)dx .
⎜ ⎟
⎝a i =1 ⎠ a
b n
( n)
Am folosit faptul că ∫ w( x)dx = ∑ Ai .
a i =1
Aşadar,
b
lim I n = ∫ w( x) f ( x)dx
n→∞ a
şi cu aceasta teorema este demonstrată.
a+b c+d
unde x1 = , y1 = .
2 2
Pentru o mai bună aproximare a integralei se folosesc formulele repetate.
Dacă domeniul de integrare nu este un dreptunghi, atunci se construieşte
un dreptunghi D* , cu laturile paralele cu axele de coordonate şi care include
dreptunghiul D . Considerăm funcţia auxiliară
Integrarea şi derivarea numerică 177
⎧ f ( x, y ) dacă ( x,y) ∈ D
f * ( x, y ) = ⎨
⎩0 dacă ( x,y) ∈ D*\D
Integrala pe D se va aproxima cu y
*
∫∫ f ( x, y )dxdy ≅ ∫ f ( x, y )dxdy ,
D D*
O x
Particularizându-l pe n obţinem:
P0(x;x0) = f(x0)
P1(x;x0, x1) = f(x0) + (x−x0) f[ x0, x1]
P2(x;x0, x1, x2) = f(x0) + (x−x0) f[ x0, x1]+ (x−x0) (x−x1) f[ x0, x1, x2]
......................
Pn(x) = f(x0) + (x−x0) f[ x0, x1] +...+ (x−x0)...(x−xn−1) f[ x0, x1, ..., xn] (5).
Forma (5) a polinomului de interpolare poartă numele de polinomul de
interpolare al lui Newton.
În continuare prezentăm principalele proprietăţi ale diferenţelor divizate.
1) Diferenţa divizată de ordinul n este invariantă la permutarea nodurilor, adică:
f[ x0, x1, ..., xn]= f [ xi0 , xi1 , ..., xin ] .
(x n − x0 )
R( x n ) = − f ( xn ) = f ( xn )
x n − x0
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
Aşadar, R ( xi ) = f ( xi ), i = 0, n, deci R ( x) ≡ Pn (x; x 0 ,..., x n ) conform unicităţii
polinomului de interpolare Lagrange. Egalând coeficientul lui xn din membrul
stâng al relaţiei (8) cu coeficientul lui xn din membrul drept al acestei relaţii
f [x1 ,..., x n ] − f [x0 ,..., x n−1 ]
obţinem f [x0 ,..., x n ] = .
x n − x0
3) Dacă f este de clasă C n+1 , atunci pentru orice t ∈ [a, b] , t ≠ xi , i = 0, n
f ( n+1) (ξ t )
avem f [x0 , x1 ,..., x n , t ] = , unde ξ t∈ [a, b ] .
(n + 1)!
Într-adevăr, fie Pn +1 ( x ) = Pn +1 ( x; x 0 ,..., x n , t ) polinomul Lagrange care
interpolează funcţia f în nodurile x 0 ,..., x n , t . Atunci avem
Pn+1(x) = Pn(x) + (x−x0) ... (x−xn) 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) = (t−x0) ... (t−xn) f[ x0, x1, ..., xn, t]. (9)
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 încât
f ( n+1) (ξ t )
E( f ; t) = (t − x0 )...(t − x n ) (10)
(n + 1)!
Din (9) şi (10) rezultă
f ( n+1) (ξ t )
f [x0 , x1 ,..., x n , t ] = , unde ξ t ∈ [a, b]. (11)
(n + 1)!
⎧⎪ n ⎫⎪ n
unde Tn = ⎨(t1 ,..., t n ) ∈ R n t i ≥ 0, i=1,n, ∑ t i ≤ 1⎬ , iar t0 = 1 − ∑ ti .
⎪⎩ i=1 ⎪⎭ i =1
0 0 x1 − x0
f ( x1 ) − f ( x0 )
= = f [x0 , x1 ]
x1 − x0
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
f ( x1 ) − f (x0 )
f ′( x0 ) ≈ (2)
h
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
f ( x1 ) − f (x0 )
În concluzie, în cazul a două noduri avem f ′( x0 ) ≈ şi eroarea este
h
dată de relaţia
f ( x1 ) − f (x0 ) h
f ′( x0 ) − = − f " (ξ x0 ) (6)
h 2
unde ξ x0 ∈ ( x0 , x1 ) .
h2
f ′( x0 ) − P2′ f ( x0 ; x 0 , x1 , x 2 ) = f ′′′(ξ x0 ), unde ξ x 0 ∈ ( x 0 , x 2 ) .
3
În concluzie, în cazul a 3 noduri echidistante derivata se aproximează cu expresia:
− 3 f (x0 ) + 4 f (x1 ) − f (x 2 )
f ′( x0 ) ≈ = Dh f ( x 0 )
2h
h2
iar eroarea care se face este f ′( x0 ) − Dh f (x0 ) = f ′′′(ξ x0 ) (7)
3
În sfârşit să vedem cum se poate aproxima derivata de ordinul 2.
În cazul a 3 noduri echidistante avem
f ′′( x 0 ) = P2′′ ( x0 ; x0 , x1 , x 2 ) = 2 f [x 0 , x1 , x 2 ] =
f ( x 2 ) − 2 f ( x1 ) + f ( x 0 ) (8)
=
2
h
Se poate arăta că eroarea în acest caz este
h 2 IV
f " ( x0 ) − P2′′( x0 ) = − f (ξ x0 ) , unde ξ x0 ∈ ( x0 , x2 ) (9)
12
Derivarea numerică în MATLAB.
184 Bazele Analizei Numerice
Exemplu 1.
Să se aproximeze derivata funcţiei f(x) = ln(x4+x2+1) pe intervalul [0.5, 2.5] în
puncte echidistante (h = 0.1) folosind MATLAB. Secvenţa 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 1.4967 1.6947 1.8499 1.9597 2.0270 2.0579 2.0600 2.0406
2.0060 1.9612 1.9100 1.8552 1.7989 1.7423 1.6866 1.6323 1.5798
1.5293 1.4809
Pentru calculul derivatei folosind diferenţele centrate se poate scrie secvenţa
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 afişează rezultatele:
Valorile derivatei
Integrarea şi derivarea numerică 185
xi 0 2
f(xi) 1 5
Să se calculeze f ′(0) folosind derivata polinomului de interpolare al lui
Lagrange.
Aproximând funcţia 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
Să se calculeze f ′( 2) şi f ′′( 2) .
Aproximând funcţia 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 2⋅2
De asemenea conform (8)
f ( x2 ) − 2 f ( x1 ) + f ( x0 ) 27 − 2 ⋅ 11 + 3
f ′′( x0 ) = , f ′′(2) = =2.
2 4
h
Integrarea şi derivarea numerică 187
Exerciţii
π
2 cos x
2. ∫ dx , considerând n = 4 subintervale egale.
π x
10
π π π π π
R. h= , xi = +i⋅ , i = 1,3 , a = , b= , I=0.86398 .
10 10 10 10 2
x2
3 −
3. 2 dx , considerând n = 4 subintervale egale.
∫e
0
3
R. h= = 0.75 , xi = 3 ⋅ i , i = 1,3 , a = 0 , b = 3 , I = 2.24845 .
4
Pentru fiecare din cele trei exerciţii de mai sus să se calculeze valoarea
aproximativă a integralei dublând valoarea lui n .
π
2 sin x
6. ∫ dx (m = 8 )
π x
12
5π π π π π
R. n=4, h= , xi = +i⋅ , i = 1,7 , a = , b= ,
96 12 96 12 2
I = 1.00966 .
x2
3 −
7. 2 dx , (m = 8 )
∫e
0
3 3
R. h= = 0.375 , xi = ⋅ i , i = 1,7 , a = 0 , b = 3 , I = 2.24991 .
8 8
8. Fie funcţia dată prin tabelul de valori:
xi 0 2
f(xi) -1 3
1
2
R. Înlocuind x cu t+1 integrala devine ∫ sin(t + 1) dx şi acesteia i se
−1
poate aplica formula Gauss−Legendre de ordinul 3. Ţinând seama de Exemplul
din Capitolul 5 §2 se obţine I=0.31028 .
unde
b−a d −c
h= , k= , xi = a + ih , i = 1,n-1 , y j = c + jk , j = 1,m-1
n m
a) a = −0.5 , b = 0.5 , c = −1 , d = 1 , h = 0.25 , k = 0.5 , I = 1.33754
b) Se trece la coordonate polare pentru a transforma sfertul de disc de rază
2 din cadranul întâi într−un 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 0⎝0 ⎠
şi rezultă I = 0.73332 .
15.
(
∫∫ 2
)
ln x 2 + y 2
dxdy , mulţimea de integrare fiind precizată de
2
D x + y
a) D = { (x,y)∈R2 | 1≤x≤2 , 0≤y≤2 } ,
b) D = { (x,y)∈R2 | 1≤x2+y2≤4 , 0≤x , 0≤y }
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)
a = 1 , b = 2 , c = 0 , d = 2 , h = 0.5 = k şi f ( x, y ) =
( )
ln x 2 + y 2
x2 + y2
se obţine I = 0.636 .
b) Trecând la coordonate polare se aplică formula (1) pentru
π 2 ln ρ
a=1, b=2, c=0, d= , f ( ρ ,θ ) =
2 ρ
şi se obţine I = 0.73976 .
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 191
6. Rezolvarea numerică
a problemei Cauchy pentru ecuaţii diferenţiale
§6.1. Generalităţi
∂f
Observaţie. Dacă există şi este mărginită pe D, atunci f este lipschitziană
∂y
pe D. Într-adevăr, 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
L = max ( x, y ) . (4)
( x, y )∈D ∂ y
∂f
Exemplul 1. Fie ecuaţia y ′ = 1 + sin( xy ) , D = [0,1] × R . Deoarece = xcos xy ,
∂y
conform observaţiei de mai sus, putem lua L = 1. Atunci pentru orice (x0, y0) cu
0 < x0 < 1 există o soluţie a problemei Cauchy pentru ecuaţia dată pe un anumit
interval [x0–α, x0+α] ⊂ [0, 1].
max y ( x) − y ( x; δ , ε ) ≤ k ( ε + α δ ∞ ) , (8)
x − x0 ≤α
cu k = 1 /(1 − α L) .
y ( x0 ; ε ) = y 0 + ε
Dacă y(x) este soluţia 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ă când y(x; ε) este suficient de aproape de
y(x) , ceea ce se întâmplă pentru valori mici ale lui ε şi intervale mici
[x0-α, x0+α].
Ecuaţia diferenţială aproximativă (9) se poate integra uşor. Se obţine
⎡ x ∂f (t , y (t )) ⎤
z ( x; ε ) ≈ ε exp ⎢ ∫ dt ⎥.
⎢⎣ x0 ∂t ⎥⎦
Dacă derivata parţială satisface
∂ f
(t , y (t )) ≤ 0, x 0 − t ≤ α ,
∂ y
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 195
2
∂f ∂f ⎛ ∂f ⎞
( x0 , y 0 ) ⋅ ( x0 , y 0 ) + ⎜⎜ ( x0 , y 0 ) ⎟⎟ ⋅ f ( x0 , y 0 )
+ etc.
∂x ∂y ⎝ ∂y ⎠
Pentru p = 3 obţinem
h h2 h3
y ( x1 ) = y 0 + y ′( x 0 ) + y ′′( x 0 ) + y ′′′( x 0 ) + R4 .
1! 2! 3!
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 197
y 3
Exemplul 4. Fie ecuaţia y ′ = 1 −, y (1) = . Alegem h = 0.1 . În acest caz
x 2
y ∂f y ∂f 1 ∂ f 2
2y ∂ 2 f 1 ∂2f
f ( x, y ) = 1 − , = , =− , =− , = , =0 .
x ∂x x 2 ∂y x ∂x 2 x 3 ∂x∂y x 2 ∂y 2
⎛ 3⎞ 1
Atunci y ′(1) = f ⎜1, ⎟ = − , y ′′(1) = 2 , y ′′′(1) = −6 .
⎝ 2⎠ 2
Deci x0 = 1 , x1 = 1.1 . Aproximăm y(1.1) cu y1 dat de
3 0.1 ⎛ 1 ⎞ (0.1) 2 (0.1) 3
y1 = + ⎜ − ⎟ + ⋅ 2 + ( −6) .
2 1! ⎝ 2 ⎠ 2! 3!
x 1
Obţinem y1 = 1.459 . Pe de altă parte, soluţia exactă a problemei este y = + ,
2 x
deci y(1.1) = 1.459090 .
Metoda lui Euler are o interpretare geometrică foarte simplă: dacă s-a
determinat valoarea yn-1, pentru a determina yn , se consideră soluţia ecuaţiei (1)
care trece prin (xn-1, yn-1) (deci care satisface y(xn-1)=yn-1 ) ; se duce apoi tangenta
la graficul acestei soluţii, în punctul (xn-1, yn-1) ; se intersectează această tangentă
cu dreapta x=xn , obţinându-se yn. Din acest motiv, metoda lui Euler se mai
numeşte şi metoda liniilor poligonale. După cum se observă din figura de mai jos,
erorile se acumulează.
y2
y1
y (x 2)
y (x 1 )
y0
O x0 xx01 x2 x
metoda Runge-Kutta de ordinul doi. Valorile aproximative yn ale lui y(xn) sunt
date de
y n = y n −1 + a1h f ( x n−1 , y n −1 ) + a 2 h f ( x n−1 + b1h, y n −1 +
(16)
+ b2 h f ( x n−1 , y n −1 )) , n ≥ 1 ,
iar y0 = y(x0) . Constantele a1, a2, b1, b2 urmează a fi determinate. Dacă notăm
∂f ∂f
f = f ( x n −1 , y n−1 ) , f x = ( x n −1 , y n−1 ) , f y = ( x n −1 , y n −1 ) , atunci, din
∂x ∂y
formula lui Taylor pentru funcţii de două variabile, obţinem
(
y n = y n −1 + a1 h f + a 2 h f + b1 h f x + b2 h f y f + O(h 2 ) = )
(17)
( )
= 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
h2
h
y n = y n −1 + f +
1! 2!
( )
f x + f y ⋅ f + O(h 3 ) . (18)
Identificând coeficienţii lui h şi h2 din (17) şi (18), rezultă
⎧
⎪a1 + a 2 = 1
⎪
⎪ 1
⎨a 2 b1 = (19)
⎪ 2
⎪ 1
⎪⎩a 2 b2 = 2 .
⎧
⎪ y n = y n −1 + h(a1 g1 + a 2 g 2 ) , n ≥ 1
⎪
⎪
⎪g = f ( x , y )
⎪ 1 n −1 n −1
⎪
⎪
⎨ g 2 = f ( x n−1 + α h , y n −1 + α h g1 ) (20)
⎪
⎪
⎪a1 + a 2 = 1
⎪
⎪
⎪ 1
⎪a 2 α = .
⎩ 2
1
Pentru a1 = a 2 = , α = 1 , se obţine metoda Euler îmbunătăţită
2
h
y n = y n −1 + [ f (x n−1 , y n −1 ) + f (x n−1 + h, y n −1 + h f (x n−1 , y n −1 ))] , n ≥ 1 .
2
(21)
1
Pentru a1 = 0, a2 = 1 , α = , se obţine metoda Euler modificată
2
⎛ h h ⎞
y n = y n −1 + h f ⎜ x n −1 + , y n −1 + f ( x n −1 , y n −1 )⎟ , n ≥ 1 . (22)
⎝ 2 2 ⎠
⎛ 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
h
y 2 = y1 + ⋅ [g1 + 2 ⋅ (g 2 + g 3 ) + g 4 ] = 0.24999 .
6
cu condiţia iniţială
⎧⎪ 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 n−1 , y1,n −1 , y 2,n −1 )
(27)
g12 = f 2 ( x n −1 , y1,n −1 , y 2,n −1 )
⎛ h h h ⎞
g 21 = f1 ⎜ x n −1 + , y1,n−1 + 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,n−1 + g 21 , y 2,n −1 + g 22 ⎟
⎝ 2 2 2 ⎠
⎛ h h h ⎞
g 32 = f 2 ⎜ x n−1 + , y1,n −1 + g 21 , y 2,n−1 + g 22 ⎟
⎝ 2 2 2 ⎠
(
g 41 = f1 x n −1 + h, y1,n −1 + hg 31 , y 2,n −1 + hg 32 )
(
g 42 = f 2 x n −1 + h, y1,n −1 + hg 31 , y 2,n−1 + hg 32 )
şi
y1,0 = y1 ( x 0 )
.
y 2, 0 = y 2 ( x 0 )
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 203
Definiţie. Dacă y(x) este soluţia exactă a problemei Cauchy (1)-(2), se numeşte
eroare de trunchiere a metodei, funcţia
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 .
e (b − x0 ) L − 1
max z n − y n ≤ e (b − x0 ) ε + ⋅ δ ∞ .
n L
În consecinţă, există constantele k1, k2 , independente de h, astfel ca
max z n − y n ≤ k1 ε + k 2 δ ∞ . (37)
n
Această inegalitate este analoagă inegalităţii (8) din cazul problemei
Cauchy iniţiale. Aşadar metoda Euler este stabilă numeric. De altfel, toate metodele
numerice pentru problema Cauchy au această formă de stabilitate, imitând
stabilitatea problemei iniţiale. Analiza se poate simplifica, luând δ(x) = 0 şi
considerând numai efectul perturbării iniţiale y0 . Nu vom analiza aici problema
erorilor de rotunjire.
unde fi = f(xi,yi), i = n − m, n .
Vom aproxima valoarea exactă y(xn+1) prin
x n+1
y n +1 = y n + ∫ Pm ( x)dx. (40)
xn
n
După cum se ştie Pm ( x) = ∑ Li ( x) f ( xi , yi ), unde
i=n−m
208 Bazele Analizei Numerice
n x− xj n (t − j + n)h
Li ( x) = ∏ = ∏ =
j = n − m xi − xj j = n − m (i − j ) h
j ≠i j ≠i
m
(−1) n − i ∏ (t + k )
(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 )
Făcând schimbarea de variabilă (39) în (40), obţinem:
m
1
(−1) n −i ∏ (t + k )
n
k =0
y n +1 = y n + ∫ ( ∑ ⋅ h f i )dt
0 i = n − m (i − n + m)!( n − i )!(t + n − i )
Dacă notăm cu
m
∏ (t + k )
( −1) n − i ⋅ h 1
Ai = ⋅ ∫ k =0 dt , (41)
(i − n + m)!(n − i )! 0 t + n − i
obţinem
n
y n +1 = y n + ∑ Ai f i , (42)
i=n−m
cunoscută sub numele de formula Adams-Bashforth.
În continuare vom explicita formula (42) pentru valori particulare ale lui
m. Astfel pentru m = 1, deci când 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) −1 h 1 t (t + 1) t2 h
An −1 = ⋅∫ dt = − h =− ,
0!⋅1! 0 t + 1 2 2
0
1
(−1) 0 h 1 t (t + 1) ⎛ t2 ⎞ 3
An = ⋅∫ dt = h⎜ + t ⎟ = h .
1!⋅ 0! 0 t ⎜ 2 ⎟
⎝ ⎠ 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 obţine
h
y n +1 = y n + (23 f n − 16 f n −1 + 5 f n − 2 ) , (44)
12
iar pentru m = 3
h
y n +1 = y n + (55 f n − 59 f n −1 + 37 f n − 2 − 9 f n − 3 ) . (45)
24
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 209
h
y5 = y 4 + (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,
obţinându-se y(2.25)≈y5=0.22307 ( soluţia exactă fiind y(2.25)=0.22222).
h
y5 = y 4 + (55 f 4 − 59 f 3 + 37 f 2 − 9 f1 ) ,
12
Rezolvarea numerică a problemei Cauchy pentru ecuaţii diferenţiale 213
r0 = hλ + 1 + h 2 λ2 , r1 = hλ − 1 + h 2 λ2 . (59)
Soluţia generală a lui (56) este
y n = β 0 r0n + β1r1n , n ≥ 0 . (60)
Coeficienţii β0 şi β1 din (60) se determină din condiţiile ca y0 şi y1 să
coincidă cu ce se obţine din (60) pentru n = 0 şi n = 1.
⎧β 0 + β1 = y 0
⎨
⎩ β 0 r0 + β1r1 = y1 .
Soluţia 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 soluţiei exacte). Atunci, folosind
formula lui Taylor, obţinem
e λh − r1
β0 = = 1 + O ( h 2 λ2 )
2 2
2 1+ h λ
r0 − e λh
β1 = = O(h 3λ3 ) .
2 2
2 1+ h λ
Pentru aceste valori, β 0 → 1 şi β1 → 0 , când h → 0 . În
consecinţă β1r1n → 0 când h→0, deci din (60) rezultă că termenul β 0 r0n ar
Atunci termenul r1n va creşte mai puţin rapid decât r0n şi termenul corect
în (60), β 0 r0n va domina. Totuşi pentru λ < 0 , vom avea 0 < r0 < 1 , r1 < -1 ,
h > 0. În consecinţă, β1r1n va domina β 0 r0n când n creşte pentru h fixat,
necontând cât de mic este h ales iniţial. Termenul β 0 r0n →0 când n → ∞, pe
când termenul β1r1n creşte în magnitudine, alternând ca semn când n creşte.
Termenul β1r1n se numeşte soluţie parazită a metodei numerice (56), deoarece
nu corespunde unei soluţii a ecuaţiei diferenţiale originale y ′ = λy . Ecuaţia
originală are o familie de soluţii cu un parametru, depinzând de valoarea iniţială
y0, dar aproximaţia (56) are familia de soluţii (60), cu doi parametri, care depinde
de y0 şi y1. Noua soluţie β1r1n este o creaţie a metodei numerice; pentru
problema (55) cu λ < 0 ea face ca soluţia numerică să se depărteze de soluţia
corectă când
xn → +∞. Din cauza acestei comportări, spunem că metoda (47) este slab stabilă.
xk yk xk yk
216 Bazele Analizei Numerice
0 0 2 1.2914
0.25 0 2.25 1.145864
0.5 0.125 2.5 1.759889
0.75 0.242188 2.75 0.847244
1 0.470673 3 2.775987
1.25 0.631421 3.25 -1.505808
1.5 0.896326 3.5 3.267258
1.75 0.979721 3.75 -5.093296
Exerciţii
Folosind metoda Taylor de ordinul 3 să se găsească soluţia aproximativă a
următoarelor probleme Cauchy în punctele menţionate.
⎧ y ′ = xy
1. ⎨ în 4 paşi.
⎩ 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′ =
2. ⎨ y în 4 paşi.
⎪⎩ 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
obţinem:
xi 0 0.2 0.4 0.6 0.8 1
yi 1 1.1867 1.3484 1.4938 1.6272 1.7542
⎧ 2
y′ = − y −
⎪⎪ x2
4. ⎨
⎪ y (1.5) = 2 î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 ,
obţinem:
xi 1.5 1.7 1.9 2.1 2.3 2.5
yi 0.66667 0.75556 0.77979 0.76898 0.74142 0.70709
R. h = 0.2
y
C1
C2
O x
∂u
unde α, γ ∈ C(0)(C2) sunt cunoscute , iar este derivata după normala
∂n
exterioară la C2 .
Problema la limită pentru ecuaţia (1) constă în determinarea unei funcţii
u ∈ C(2)(G) ∩ C(1)( G ), care verifică ecuaţia (1) şi condiţiile la limită (2) şi (3) .
Dacă p = f = 0 şi C = C1, obţinem problema Dirichlet pentru ecuaţia
Laplace
⎧∆ u = 0,
⎨ (4)
⎩u C = ϕ .
Dacă p = f = 0 , C = C2 şi α = 0, obţinem problema Neumann pentru
ecuaţia Laplace
⎧∆ u = 0,
⎪
⎨∂ u (5)
⎪⎩ ∂ n C = γ .
Dacă p = 0 şi f ≠ 0 obţinem ecuaţia Poisson
∆u = f . (6)
Evident şi pentru ecuaţia Poisson putem considera problema Dirichlet sau
problema Neumann
⎧∆ u = f ⎧∆ u = f
⎪
⎨ , respectiv ⎨ ∂ u .
⎩u C = ϕ ⎪⎩ ∂ n C = γ
Dacă f=0 şi p≠0 se obţine ecuaţia vibraţiilor ∆ u + p(x,y) u=0 .
Aşadar, problema la limită (1)+(2)+(3), deşi nu reprezintă cazul cel mai
general, este suficient de generală pentru a acoperi cazurile uzuale de probleme la
limită pentru ecuaţii cu derivate parţiale de tip eliptic în plan.
În continuare, notăm 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 +
G ⎣2 2 ⎦
(8)
⎡1 ⎤
+ ∫ ⎢ α(s) u 2 − γ (s)u⎥ ds
C2 ⎣ 2 ⎦
şi ne punem următoarea problemă variaţională:
să se minimizeze funcţionala J pe mulţimea D .
Pentru ca această problemă să aibă soluţie trebuie mai întâi ca mulţimea D
să fie nevidă. Vom presupune aşadar, că există cel puţin o funcţie 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 funcţia u , în sensul că oricare ar fi u 0 ∈ D
avem D = u0 + D0 .
{ }
D.
Demonstraţie. Fie u0 ∈ D astfel încât J (u 0 ) = min J (u ) ; u ∈ D ,
⎛ ∂ u 0 ∂ h ∂u 0 ∂ h ⎞ ⎡ ∂ ⎛ ∂ u ⎞ ∂ ⎛ ∂u ⎞ ⎤
∫∫ ⎜⎜ + ⎟⎟dxdy = ∫∫ ⎢ ⎜ h 0 ⎟ + ⎜⎜ h 0 ⎟⎟⎥ dxdy −
G ⎝ ∂ x ∂x ∂y ∂y ⎠ G ⎣ ∂x ⎝ ∂ x ⎠ ∂ y ⎝ ∂ y ⎠ ⎦
⎛ ∂ 2u0 ∂ 2u0 ⎞
− ∫∫ h⎜ + ⎟dxdy = ∫ − h ∂u 0 dx + h ∂u 0 dy − ∫∫ h∆u dxdy .
⎜ ⎟ 0
G ⎝ ∂x
2
∂y 2 ⎠ C ∂y ∂x G
Deoarece h C = 0 , rezultă că avem
1
⎛ ∂u 0 ∂ h ∂ u 0 ∂h ⎞ ⎡ ∂u ∂u ⎤
∫∫ ⎜⎜ + ⎟⎟ dxdy = ∫ h ⎢− 0 dx + 0 dy ⎥ −
G ⎝ ∂x ∂x ∂y ∂y ⎠ C2 ⎣ ∂ y ∂x ⎦
(10)
− ∫∫ h∆u 0 dxdy .
G
r
Dacă notăm cu τ versorul tangentei
la curba C2, atunci
r dx r dy r r r C2
τ = i+ j = cos α i + cos β j . α r
ds ds τ
Pe de altă parte, versorul π+α β
normalei exterioare la curba C2 este α
r r r
n = cos β i + cos(π + α ) j . β
Ţinând seama de aceste
observaţii, mai departe avem
r
n
S
∂u 0 ∂u ⎛ ∂u dx ∂u 0 dy ⎞
∫ −h dx + h 0 dy = ∫ h⎜⎜ − 0 + ⎟ds =
C2
∂y ∂x 0 ⎝
∂y ds ∂x ds ⎟⎠
(11)
S S
⎛ ∂u ∂u ⎞ ∂u ∂u
= ∫ h⎜⎜ 0 cos β + 0 cos(α + π )⎟⎟ ds = ∫ h 0 ds = ∫ h 0 ds.
0 ⎝
∂x ∂y ⎠ 0
∂n C2
∂n
Cum ϕ ′(0) = 0, din (9), (10) şi (11) rezultă
0 = ϕ ′(0) = ∫∫ [− ∆u 0 − p( x, y )u 0 + f ( x, y )] ⋅ hdxdy +
G
(12)
⎡ ∂u ⎤
+ ∫ ⎢ 0 + α ( s )u 0 − γ ( s )⎥ ⋅ hds.
∂n
C2 ⎣ ⎦
adică (3) .
În continuare demonstrăm afirmaţia reciprocă. Fie u0 o soluţie a
problemei la limită (1)+(2)+(3), v ∈ D şi h = v-u0. Evident h ∈ D0.
Ţinând seama de definiţia funcţionalei J dată de (8) rezultă
J (v) − J (u 0 ) = J (u 0 + h) − J (u 0 ) =
⎡ 1 1 ⎤
= ∫∫ ⎢grad u 0 grad h + (grad h) 2 − pu 0 h 2 − ph 2 + f h ⎥ dx dy +
2 2
G⎣ ⎦
⎛ 1 2 ⎞
+ ∫ ⎜⎝α u 0 h + 2 α h − γ h ⎟ ds.
⎠
C2
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 + h∆u 0 ⎥ dx dy +
2 2
G⎣ ⎦
⎛ 1 2 ⎞
+ ∫ ⎜⎝α u 0 h + 2 α h − γ h ⎟ ds.
⎠
C2
Ţinând seama de (10) şi (11) rezultă
⎡1 1 ⎤
J (v) − J (u 0 ) = ∫∫ ⎢ ( grad h) 2 − p h 2 ⎥ dxdy +
G ⎣2 2 ⎦
(14)
⎡⎛ ∂u ⎞ 1 ⎤
+ ∫ ⎢⎜ 0 + α u 0 − γ ⎟ ⋅ h + α h 2 ⎥ ds .
C2 ⎣⎝
∂n ⎠ 2 ⎦
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 . (15)
G ⎣2 2 ⎦ C2 2
Cum p(x,y) ≤ 0 pe G şi α(s) ≥ 0 pe C2, din (15) rezultă
226 Bazele Analizei Numerice
1 2
J (v) − J (u 0 ) ≥ ∫∫ (grad h) dx dy ≥ 0 .
2G
Observăm că dacă h = v − u0 ≠ 0 atunci ∫∫ (grad h) 2 dx dy > 0 . Într-adevăr, în
G
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 făcută. Aşadar J(v) > J(u0)
1
dacă v ≠ u0.
Rămâne să demonstrăm unicitatea elementului u0. Fie u1∈D, u1≠u0,
astfel încât 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 contradicţie şi cu aceasta
teorema este demonstrată.
Observaţia 1. Funcţionala (8) are sens şi pentru funcţii u dintr-o clasă mai largă
şi anume funcţii de clasă C1.
funcţie pătratică, care apoi se minimizează. Vom numi această metodă, metoda
energiei.
Prezentăm cele două metode pe următorul exemplu.
A B x
Figura 1
şi care verifică condiţiile la limită
u AB = u DC = 0 , (18)
∂u
AD = 0 , (19)
∂x
∂u
+ u BC = 0 . (20)
∂x
Interpretarea fizică este următoarea: o membrană elastică are marginile AB
şi CD fixe, marginea AD liberă, iar marginea BC este rezemată elastic. Funcţia
căutată u = u(x,y) reprezintă deplasarea membranei sub acţiunea unei încărcări
continue f = f(x,y), care este aplicată perpendicular pe membrană.
∂u
Cum AC = 0, rezultă ecuaţia liniară
∂x
− 3u1 + 4u 4 − u 7 = 0 . (22)
Ecuaţii asemănătoare se obţin datorită nodurilor 2 şi 3.
∂u
Deoarece pe latura BC avem condiţia la limită +u = 0 , în nodul 16
∂x BC
obţinem
− 3u16 + 4u13 − u10
+ u16 = 0
2h
şi mai departe
− 3u16 + 4u13 − u10 + 2hu16 = 0 . (23)
Ecuaţii asemănătoare se obţin datorită nodurilor 17 şi 18.
În final se obţine un sistem de 18 ecuaţii liniare cu 18 necunoscute u1, u2,
..., u18. Rezolvând acest sistem se obţin valorile aproximative ale funcţiei u în
nodurile reţelei.
1 2
J 3 (u ) = ∫ u dy (28)
BC 2
şi considerăm reţeaua pătratică de pas h = 1 din figura 1. Metoda energiei constă
în aproximarea integralei J = J1 + J2 + J3 în nodurile reţelei, aproximare în urma
căreia se obţine o funcţie pătratică F = F(u1, u2, ..., u18) .
Problema minimizării funcţionalei J cu condiţia la limită (25), se va
înlocui cu problema minimizării funcţiei pătratice F cu aceeaşi condiţie la limită.
Condiţia necesară de minim pentru F şi anume, gradF = 0, ne conduce la un
sistem de 18 ecuaţii liniare în necunoscutele u1, u2, ..., u18.
∂u
Pentru discretizarea integralei J1 va trebui să aproximăm derivatele
∂x
∂u
şi . Ne propunem să facem această aproximare în pătratul haşurat, G2. Pe
∂y
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 pătratelor acestor expresii constituie o aproximare bună
2
⎛ ∂u ⎞
pentru derivata ⎜ ⎟ în centrul pătratului G2. Aşadar, avem:
⎝ ∂x ⎠
[ ]
2
⎛ ∂u ⎞ 1
⎜ ⎟ ≈ 2 (u14 − u11 ) + (u15 − u12 ) .
2 2
(29)
⎝ ∂x ⎠ 2h
2
⎛ ∂u ⎞
Un rezultat asemănător obţinem pentru ⎜⎜ ⎟⎟ şi anume:
⎝ ∂y ⎠
[ ]
2
⎛ ∂u ⎞ 1
⎜⎜ ⎟⎟ ≈ (u14 − u15 )2 + (u11 − u12 )2 . (30)
∂
⎝ ⎠y 2 h 2
Rezolvarea numerică a problemelor la limită pentru e.d.p. de tip eliptic 231
Ţinând seama că aria pătratului 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 .
4
]
(31)
Pentru aproximarea integralei J2 folosim metoda trapezelor pentru
integrala dublă (§5.3 , (1) ). Avem
h2
J2 ≈ [ f11u11 + f14 u14 + f15 u15 + f12 u12 ] . (32)
4
Pentru aproximarea integralei J3 se foloseşte metoda dreptunghiurilor şi se obţine
h 2
J 3 ≈ u16
2
( 2
+ u17 2
+ u18) . (33)
Aşadar, integrala J = J1 + J2 + J3 se va aproxima cu o funcţie pătratică
F = F(u1, u2, ..., u18) , care provine din adunarea expresiilor (31)+(32)+(33).
Funcţia pătratică F se compune dintr-o formă pătratică 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
Contribuţia celulei G2 în va fi
∂u11
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)
∂u11 −1
∂F
= 4u 4 − u 5 − u 7 − u1 + h 2 f 4 = 0 . (35’)
∂u 4
Să analizăm acum contribuţia î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
(u 5 − u 2 )2 + (u1 − u 2 )2 + h f 2 u 2 + ⎡⎢ 1 (u 5 − u 2 )2 + (u 2 − u 3 )2 ⎤⎥ + h f 2 u 2 .
4 4 ⎣4 ⎦ 4
Contribuţia 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 obţine astfel ecuaţia
1 1 h2
2u 2 − u 5 − u1 − u 3 + f2 = 0 . (36)
2 2 2
Modul de alcătuire a ecuaţiei (36) este pus în 1
evidenţă de schema din Figura 4. −
2
În cazul nodului 1 vom avea
1 h2
2u1 − u 4 − u2 + f1 = 0 ,
2 2
−1
deoarece u CD = 0 . În mod analog, nodului 3 îi
2
2 h
1 h 2u + f
corespunde ecuaţia 2u 3 − u 6 − u2 + f3 = 0 .
2 2 2
1
În sfârşit, rămâne să analizăm nodurile de − Figura 4
pe latura BC, de exemplu nodul 17. Şi în acest 2
caz avem numai două celule vecine.
Contribuţia nodului 17 în gradF datorită discretizării integralelor J1 şi
J2 va fi
1 1 h2
2u17 − u14 − u16 − u18 + f17 = 0.
2 2 2
h
La această expresie trebuie să adăugăm şi termenul ⋅ 2u17 = hu17 care
2
provine din discretizarea integralei J3. Aşadar, nodului 17 îi corespunde
ecuaţia
2
(2 + h )u17 − u14 − 1 u16 − 1 u18 + h f17 = 0 . (37)
2 2 2
Modul de alcătuire al ecuaţiei
(37) este pus în evidenţă de schema din 1
−
Figura 5. 2
−1
h2
( 2 + h)u + f
2
1
−
Figura 5 2
Rezolvarea numerică a problemelor la limită pentru e.d.p. de tip eliptic 233
1 1
− − -1 2 0
2 2
-1 0 -1 -1 4 0
-1 -1 0 -1 4 1
-1 -1 -1 -1 4 1
-1 0 -1 -1 4 0
-1 -1 0 -1 4 0
-1 -1 -1 -1 4 0
1
-1 0 − 3 0
2
1
-1 − 3 0
2
(39)
Matricea acestui sistem este simetrică, pozitiv definită şi diagonal bloc
tridiagonală.
Definiţie. Fie M={1,2,3, ... ,n}. O matrice pătratică A∈Mn(R) se numeşte de tip
(A) , dacă există două submulţimi S şi T ale lui M, nevide, cu proprietăţile: (i)
S∪T=M (ii) S∩T=φ (iii) Dacă aij≠0, atunci sau i=j sau i∈S şi j∈T.
1 2 4 7 10 13
3 5 8 11 14 16
6 9 12 15 17 18
Figura 7
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ă. Lăsăm în seama cititorului
deducerea matricei sistemului de ecuaţii liniare ce corespunde acestei numerotări.
2
ω opt = ,
1+ 1 − λ12
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 reţeaua cu 18 noduri avem:
λ1 = 0.837319 şi ωopt = 1.29306 .
Pentru a obţine o soluţie cu 6 zecimale exacte, sunt necesare 50 de iteraţii
cu metoda Gauss-Seidel şi numai 16 cu metoda suprarelaxării.
Pentru o reţea cu 77 de noduri, λ1 = 0.957686 şi ωopt = 1.5530 . Pentru a
obţine o soluţie cu 6 zecimale exacte sunt necesare 200 de iteraţii cu metoda
Gauss-Seidel şi numai 35 cu metoda suprarelaxării.
În încheierea acestui capitol vom analiza pe scurt cazul când frontiera
domeniului G este o curbă C (Figura 8). R2
Considerăm o reţea pătratică, de pas h, h R1
R3
care acoperă domeniul G şi notăm cu G’ C 1 2 3
domeniul haşurat (format din celulele
conţinute în interiorul domeniului G). 4 5 6 7
Să presupunem că se cunosc valorile
funcţiei u pe curba C. 8 9 10 11
Exerciţii
Rezolvarea numerică a problemelor la limită pentru e.d.p. de tip eliptic 237
1
1. Aplicând metoda reţelei pentru h = k = să se determine soluţia ecuaţiei lui
4
∂ 2u ∂ 2u
Laplace, + = 0 , într-un pătrat cu vârfurile A(0,0), B(0,1), C(1,1), D(1,0)
∂x 2 ∂y 2
şi cu condiţiile la limită următoare: u AB = y , u BC = 30(1 − x 2 ) , u CD = 0 ,
u AD = 0 .
R. Facem următoarele notaţii:
(
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 )
Determinăm valorile la limită ale funcţiei u şi obţinem:
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
0 0
0 0 0
Vom înlocui derivatele parţiale de ordin 2 în ecuaţia lui Laplace, pentru
nodurile interioare reţelei.
Obţinem astfel ecuaţiile:
u 42 + u 22 + u 33 + u 31 − 4u 32 = 0
u 43 + u 23 + u 34 + u 32 − 4u 33 = 0
1
2. Aplicând metoda reţelei pentru h = k = să se determine soluţia ecuaţiei lui
4
Laplace cu condiţiile la limită specificate în figura de mai jos, daca vârful din
stânga jos al plăcii are coordonatele (0,0).
0 0 1
0
R. Din cauza simetriei condiţiilor la0limită 0faţă 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
0 • •
4286 5268 4286
• 0
0 • •
1875 2500 1875
• 0
0
714
• 982
• 714
• 0
0 0
0 0 0
240 Bazele Analizei Numerice
3. Problema deformării elastice a unei plăci pătrate sub acţiunea unei forţe
∂ 2u ∂ 2u
constante se reduce la rezolvarea ecuaţiei = 1 , cu valori la limită egale
+
∂x 2 ∂y 2
cu 0. Să se determine soluţia ecuaţiei, folosind metoda reţelelor, dacă latura plăcii
1
pătrate se ia egală cu 1, iar distanţa h = .
4
1 2 3 4 5 B
A
⎧∆ 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
2 2 2 2
⎛ ∂u ⎞ ⎛ u16 − u17 ⎞ ⎛ ∂u ⎞ ⎛ 1 − u17 ⎞
⎜ ⎟ ≈⎜ ⎟ , ⎜⎜ ⎟⎟ ≈ ⎜ ⎟ .
⎝ ∂x ⎠ ⎝ h ⎠ ⎝ ∂y ⎠ ⎝ h ⎠
⎛ 1 ⎞
⎜ 2 − 0 0 0 0 0 0 0 −1 ⎟
⎜ 2 ⎟
⎜− 1 2 −
1
0 0 0 0 0 −1 0 ⎟
⎜ 2 2 ⎟
⎜ 1 1 ⎟
⎜ 0 − 2 − 0 0 0 −1 0 0 ⎟
⎜ 2 2 ⎟
⎜ 0 1 1 ⎟
0 − 2 − 0 −1 0 0 0
⎜ 2 2 ⎟
⎜ 1 ⎟
⎜ 0 0 0 − 2 −1 0 0 0 0 ⎟
⎜ 2 ⎟
⎜ 0 0 0 0 −1 4 −1 0 0 0 0 0 0 0 −1 ⎟
⎜ 0 0 0 −1 0 −1 4 −1 0 0 0 0 0 −1 0 ⎟
⎜ ⎟
⎜ 0 0 −1 0 0 0 −1 4 −1 0 0 0 −1 0 0 ⎟
⎜ 0 −1 0 0 0 0 0 −1 4 −1 0 −1 0 0 0 ⎟
⎜ ⎟
⎜ −1 0 0 0 0 0 0 0 −1 4 −1 0 0 0 0 ⎟
⎜ 0 0 0 0 0 0 0 0 0 −1 4 −1 0 0 0 0 0 0 0 − 1⎟
⎜ ⎟
⎜ 0 0 0 0 0 0 0 0 −1 0 −1 4 −1 0 0 0 0 0 −1 0 ⎟
⎜ ⎟
⎜ 0 0 0 0 0 0 0 −1 0 0 0 −1 4 −1 0 0 0 −1 0 0⎟
⎜ 0 0 0 0 0 0 −1 0 0 0 0 0 −1 4 −1 0 −1 0 0 0⎟
⎜ 3 ⎟
⎜ 0 0 0 0 0 −1 0 0 0 0 0 0 0 −1 5 − 0 0 0 0⎟
⎜ 2 ⎟
⎜ 0
⎜
0 0 0 0 0 0 0 0 0 0 0 0 0 −
3
2
(3 + 2 2 )h −
3
2
0 0 0⎟
⎟
⎜ 3 ⎟
⎜ 0 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 − 5 −1 0 0⎟
⎜ 2 ⎟
⎜ 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 −1 4 −1 0 ⎟
⎜ 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 0 0 − 1 4 − 1⎟
⎜ ⎟
⎝ 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 0 0 0 0 −1 4 ⎠
T
⎛ 1 ⎞
b = ⎜ − ,0,0,0,0,0,0,0,0,−1,−1,0,0,0,0,0,−1,−1,−1,−2 ⎟ .
⎝ 2 ⎠
se numeşte şir fundamental (Cauchy) dacă pentru orice ε>0 există nε∈N*
astfel ca x n − x m < ε , (∀) n, m ≥ nε .
Evident, orice şir convergent este şir Cauchy, afirmaţia reciprocă nefiind,
în general, adevărată.
2 2 2
x − y = x − y , x − y = x − 2 x, y + y .
Aducând cele două egalităţi obţinem (i). De remarcat că această identitate
este generalizarea următoarei proprietăţi din geometria elementară: suma pătratelor
diagonalelor unui paralelogram este egală cu suma pătratelor laturilor sale.
(ii) Folosind inegalitatea lui Cauchy-Buniakowski-Schwarz obţinem
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 mărginit, rezultă că membrul drept al inegalităţii
converge la 0, deci x n , y n → x, y .
Dar
2 2
( x − xm ) + ( x − xn ) = 4 x − ( xm + xn ) / 2 .
xm + xn
Deoarece ∈ H 0 , rezultă
2
2
( x − x m ) + ( x − x n ) ≥ 4d 2 . (8)
Ţinând seama de (6) şi (8), din (7) obţinem
2 ⎛ 1 1 ⎞ 2 2
x n − x m ≤ 2⎜⎜ d 2 + + d2 + ⎟ − 4d 2 = + .
2 2⎟ 2
⎝ n m ⎠ n m2
Deci şirul (xn)n este şir Cauchy şi cum H este complet, există
′
x = lim x n . Deoarece H0 este închis, rezultă x ′ ∈ H 0 . Trecând la limită în
n →∞
(6), găsim x − x ′ ≤ d , iar din x ′ ∈ H 0 , avem x − x ′ ≥ d , deci
x − x′ = d . (9)
Vom arăta acum că x ′′ = x − x ′ este ortogonal pe H0 şi deci
x ′′ ∈ H 0⊥ .
Fie y un element nenul din H0. Pentru orice λ∈R, avem
′
x + λy ∈ H 0 , deci
2 2
x ′′ − λy = x − ( x ′ + λy ) ≥d2,
adică
2 2
x − x ′ − 2λ x ′′, y + λ 2 y ≥ d2.
Având în vedere (9), obţinem
2
− 2λ x ′′, y + λ 2 y ≥0 .
x ′′, y 2
În particular, pentru λ= , se deduce x ′′, y ≤ 0, deci
2
y
x ′′, y = 0 , adică x ′′ ⊥ y. Astfel reprezentarea (4) şi relaţia (5) sunt stabilite.
Rămâne să arătăm unicitatea reprezentării (4). Fie
⊥
x = x1′ + x1′′ , x1′ ∈ H 0 , x1′′ ∈ H 0 . Din (4) se obţine x ′ − x1′ = x1′′ − x ′′.
Cum x ′ − x1′ ∈ H 0 , iar x1′′ − x ′′ ∈ H 0⊥ , rezultă (x ′ − x1′ ) ⊥ (x1′′ − x ′′), deci
x ′ − x1′ , x ′ − x1′ = 0. În consecinţă x ′ = x1′ , x1′′ = x ′′ . Teorema este demonstrată.
Definiţia 6. Elementele x ′ şi x ′′ unic definite de elementul x se numesc
proiecţiile elementului x pe subspaţiul H0, respectiv H 0⊥ .
După cum este cunoscut nu orice şir Cauchy de numere raţionale are limită
în Q , ci în R. De fapt în R noţiunile de şir convergent şi şir Cauchy sunt
echivalente (altfel spus, R este complet). În mod similar orice spaţiu prehilbertian
Introducere în metoda elementului finit 251
poate fi inclus într-un spaţiu Hilbert (deci complet). Se numeşte completatul unui
spaţiu prehilbertian H, cel mai mic spaţiu Hilbert care îl conţine pe H ca
subspaţiu. Un rezultat cunoscut de analiză funcţională precizează că orice spaţiu
prehilbertian admite un completat. În spaţiul completat, vom face distincţie între
elementele „vechi” din H şi elementele „noi” sau ideale obţinute prin completare.
Din teoreme cunoscute ale analizei funcţionale 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.
A : D → H , Ax (t ) = − x ′′(t ) + σ (t ) x (t ) .
Pentru x,y∈D, integrând prin părţi avem
1 1 1
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ă
1 1 1
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). Aşadar A este strict pozitiv. Aplicând Teorema
3, rezultă că, pentru ca x0∈D să fie o soluţie a problemei (15), (16), este necesar şi
suficient ca x0 să realizeze pe D minimul funcţionalei
1 1 1
F (u ) = ∫ x ′ 2 (t )dt + ∫ σ (t ) x 2 (t )dt − 2 ∫ f (t ) x(t )dt . (17)
0 0 0
De asemenea, dacă există un astfel de element, el este unic.
Observaţia 3. Problema clasică nu are sens decât pentru funcţii u care sunt de
clasă C 2 (G ) ∩ C1 (G ) . Funcţionala corespunzătoare are sens pentru funcţii de
clasă C1 (G ) ∩ C 0 (G ) . Deci prin trecerea de la problema clasică la funcţionala
energetică, condiţiile de regularitate pot fi slăbite. Altfel spus, problema de minim
pentru funcţionala energetică se poate pune pe o clasă mai largă de funcţii. Spre
∂u ∂u
exemplu, funcţionala (20) are sens dacă , , f ∈ L2 (G ) , deci nu mai este
∂x ∂y
necesar ca u să admită derivate parţiale de ordinul al doilea, iar derivatele
parţiale de ordinul întâi nu trebuie să fie neapărat continue. Totodată, existenţa şi
unicitatea soluţiei clasice, (adică a problemei (18), (19)) nu se poate garanta dacă
funcţia f nu este regulată. Se poate arăta că orice soluţie a problemei de minim
care este de clasă C2(G), este soluţie clasică a problemei considerate.
Altfel spus, problema de minim pentru funcţionala energetică se poate
pune pe o clasă mai largă de funcţii.
n
u ( x) = ∑ ci ϕ i ( x) , (22)
i =1
numerele reale c1, c2, ... ,cn , urmând a fi determinate. Înlocuind u dat de (22) în
funcţionala F, rezultă F(u) = Φ(c1, c2, ..., cn) şi deci problema minimizării
funcţionalei F este înlocuită cu problema determinării extremelor funcţiei
Φ : Rn → R. De remarcat că cele două probleme nu sunt echivalente, deoarece s-a
trecut de la funcţionala F la funcţia Φ, prin intermediul funcţiilor ϕ1, ϕ2, ..., ϕn ,
iar alegerea acestora este la dispoziţia noastră; eficienţa acestei metode, care se
mai numeşte şi metoda Rayleigh-Ritz, depinde în mare măsură de alegerea
funcţiilor ϕ1, ϕ2, ... , ϕn. Valorile parametrilor c1, c2, ... ,cn se determină, după
cum se cunoaşte, din sistemul de ecuaţii
∂Φ
= 0 , i = 1, n , (23)
∂ ci
adică
∂ ⎛ n ⎞
F ⎜ ∑ c j ϕ j ⎟ = 0 , i = 1, n .
∂ ci ⎜⎝ j =1 ⎟
⎠
În secţiunile următoare, vom arăta pe exemple concrete, cum se aleg
funcţiile ϕ1, ... , ϕn.
În continuare, vom prezenta metoda Rayleigh-Ritz ca metodă de cea mai
bună aproximare „în energie”. Fie D un subspaţiu dens al unui spaţiu Hilbert
H, iar A : D → H un operator liniar, simetric şi pozitiv definit. Presupunem că
pentru un f∈H dat, ecuaţia Au = f admite o soluţie unică u0∈D. Fiind dat un
subspaţiu n-dimensional Kn⊂D, vrem să aproximăm soluţia prin un∈Kn,
K n = Sp ( {ϕ1 ,..., ϕ n }) . Deci căutăm un = c1ϕ1 + ... + cnϕn 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 .
Vom nota cu HA completatul lui D în raport cu norma ⋅ A . Spaţiul
HA se numeşte spaţiul energetic al operatorului A. Conform Teoremei 2, există
şi este unic un element un∈Kn , element de cea mai bună aproximaţie, adică
u 0 − u n A = min u 0 − v A . (24)
v∈K n
2
g(c1, c2 , ... ,cn )= u n − u 0 A .
Determinăm (c1, ..., cn) punctul de minim al funcţiei g. Deoarece
n n
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
+ Au 0 , u 0 ,
din condiţiile
∂g
= 0 , i = 1, n ,
∂ ci
rezultă că c1, ... ,cn sunt soluţii ale sistemului liniar
n
∑ ϕi ,ϕ j c
A j
= f , ϕ i , i = 1, n , (25)
j =1
sistem care s-ar putea obţine direct din (23), ţinând seama de formula (10), care
dă funcţionala energetică a operatorului A.
π π
Exemplul 6. Fie G = {(x, y ) ; − < x, y < } . Să aplicăm metoda lui
2 2
Kantorovici la rezolvarea aproximativă a ecuaţiei
∂ 2u ∂ 2u
+ =2, (26)
∂ x2 ∂ y2
care satisface condiţiile la limită
Introducere în metoda elementului finit 257
⎛ π⎞ π
u ⎜ x, ± ⎟ = 0 , x ≤ ,
⎝ 2⎠ 2
(27)
⎛ π ⎞ π
u⎜ ± , y ⎟ = 0 , y ≤ .
⎝ 2 ⎠ 2
Se alege ca subspaţiu aproximant Kn , subspaţiul funcţiilor de un singur
argument y, care conform (27) satisfac
⎛ π⎞ ⎛π ⎞
ϕ i ⎜ − ⎟ = ϕ i ⎜ ⎟ = 0 , i = 1, n .
⎝ 2⎠ ⎝2⎠
Soluţia aproximativă se caută de forma
n
u ( x, y ) = ∑ α i ( x)ϕ i ( y ), (28)
i =1
unde funcţiile α i , i = 1, n , se determină astfel ca u să minimizeze funcţionala
F corespunzătoare problemei date. În acest caz
⎡⎛ ∂ u ⎞ 2 ⎛ ∂ u ⎞ 2 ⎤
F (u ) = ∫∫ ⎢⎜⎜ ⎟⎟ + ⎜⎜ ⎟⎟ + 4⎥ dx dy .
G ⎢⎣⎝ ∂ x ⎠ ⎝∂ y⎠ ⎥
⎦
Ţinând seama de (28), avem
π
2
F (u ) = ∫ Φ (α 1 , α 2 ,..., α n )dx =J (α 1 , α 2 ,..., α n ) ,
π
−
2
unde
π π
n n d ϕi d ϕ j
2 d αi d α j 2
Φ(α 1 ,α 2 ,...,α n ) = ∑ ∑ {α iα j ∫ dy + ∫ ϕ iϕ j ⋅ dy } +
i =1 j =1 π d y d y dx dx π
− −
2 2
π
n 2
+ ∑ α i ∫ 4ϕ i dy . (29)
i =1 π
−
2
Deoarece funcţiile ϕ i , i = 1, n , sunt cunoscute, integralele în (29) se pot
calcula exact. Se pune deci problema determinării extremalelor funcţionalei
J (α 1 , α 2 ,..., α n ) . Conform unui rezultat clasic de calcul variaţional, coeficienţii
α i , i = 1, n sunt daţi de sistemul Euler-Lagrange
∂Φ d ⎛∂Φ⎞
− ⎜ ⎟ = 0 , i = 1, n .
∂ α i dx ⎜⎝ ∂ α i′ ⎟⎠
258 Bazele Analizei Numerice
∑ (α j cij − α ′′j d ij ) = bi ,
n
i = 1, n , (30)
j =1
unde
π π π
dϕ i dϕ j
2 2 2
cij = ∫ dy , d ij = ∫ ϕ i ϕ j dy , bi = − ∫ 2ϕ i dy ,
π dy dy π π
− − −
2 2 2
cu condiţiile
⎛ π⎞ ⎛π ⎞
α i ⎜ − ⎟ = α i ⎜ ⎟ = 0 , i = 1, n .
⎝ 2⎠ ⎝2⎠
În general, metoda semidiscretă se poate aplica cu condiţia ca problema
unidimensională să poată fi rezolvată nemijlocit şi exact.
numai când avem un operator A de forma cerută (de remarcat, că, sistemul (34)
nu este altceva decât o rescriere a sistemului (25) ).
Ideea metodei lui Galerkin este de a considera soluţii aproximative pentru
ecuaţia (31), de forma de mai sus, unde coeficienţii ei se determină din sistemul
Au − f , ϕ i = 0 , i = 1, n , (35)
chiar dacă A nu satisface condiţiile din §8.3. Astfel de soluţii aproximative
au fost considerate de matematicianul rus B. G. Galerkin (1878-1945).
Aşadar 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 decât clasa problemelor care
provin din probleme variaţionale. Totuşi, este de dorit ca (35) să poată fi integrat
prin părţi, pentru a slăbi regularitatea cerută funcţiilor ϕi.
Deci metoda lui Galerkin este absolut generală. Ea se poate aplica cu
succes la ecuaţii de tipuri diferite: eliptice, hiperbolice, parabolice, chiar dacă ele
nu sunt legate de probleme variaţionale, ceea ce reprezintă un avantaj faţă de
metoda lui Ritz. Totuşi, pentru probleme legate de probleme variaţionale, ea se
găseşte într-o interdependenţă strânsă cu metoda lui Ritz, iar în multe cazuri este
echivalentă cu aceasta din urmă, în sensul că ambele conduc la aceeaşi soluţie
aproximativă.
∂u 0
(37), (38) cu f înlocuit cu f+∆u0 şi g înlocuit cu g − . 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).
Datorită prelungirii h→ u 0 şi apoi a translaţiei u → u~ = u − u 0 ,
rezultă că ipoteza condiţiei Dirichlet omogene pe C1 nu este o restricţie.
În continuare, vom multiplica ecuaţia cu derivate parţiale cu o funcţie test,
apoi vom integra pe G, utilizând formula lui Green şi ţinând seama de condiţiile
la limită (37), (38).
Fie acum spaţiile 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 } .
1 0
xn x
O x0 x1 xi-1 xi x xn-1
1
Ap
Ai
Ap Al
Ai Ak
Aj Ak
Graficul lui ψ i
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 porţiuni din cazul unidimensional, ϕi , date de
(42)-(44). Atunci funcţia de interpolare este dată de
n m
p( x, y ) = ∑ ∑ u i , j ϕ i ( x)ϕ j ( y ) , (53)
i =0 j =0
unde
u i, j = u ( xi , y j ) , i = 0, n , j = 0, m .
Pe elementul dreptunghiular [xi, xi+1]×[yj, yj+1] , funcţia 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 spaţiul funcţiilor de forma
n m
p( x, y ) = ∑ ∑ ci, j ϕ i ( x)ϕ j ( y ) , ci, j ∈ R , i = 0, n , j = 0, m ,
i =0 j =0
este dată de funcţiile
ψ ij ( x, y ) = ϕ i ( x)ϕ j ( y ) , i = 0, n , j = 0, m . (55)
⎛ 2 − 1 0 ... 0 0⎞
⎜ ⎟ ⎛ f ( x1 ) ⎞
⎜ ⎟ ⎜ ⎟
⎜ − 1 2 − 1 ... 0 0 ⎟ ⎜ f ( x2 ) ⎟
1 ⎜ ⎟
B= ⎜ ... ... ... ... ... ⎟ , d = ⎜ ... ⎟
2 ⎜ ... ⎟
h
⎜0 ⎜ f ( x n −1 ) ⎟
0 0 ... 2 − 1⎟ ⎜ ⎟
⎜ ⎟
⎜ ⎟ ⎝ f (x n ) ⎠
⎝0 0 0 ... − 1 2 ⎠
Aplicând ecuaţiei − u ′′(x ) = f ( x ) , metoda standard cu diferenţe finite, se
obţine exact acelaşi sistem de ecuaţii.
În cazul metodei elementului finit, soluţia aproximativă găsită,
aproximează soluţia exactă în orice punct al intervalului [0, 1].
[ ]
~ ~ 1 ~ ~ ~ ~
bi, j = ABi , B j = ∫ Bi′ (t ) B ′j (t ) + σ (t ) Bi (t ) B j (t ) dt , i, j = 0, n ,
0
iar
1 ~
d i = ∫ f (t ) Bi (t )dt , i = 0, n .
0
Introducere în metoda elementului finit 271
⎛ π π⎞ ⎛ π π⎞
Fie G = ⎜− , ⎟ × ⎜− , ⎟ ⊂ R 2 şi C frontiera sa. Se cere să se
⎝ 2 2⎠ ⎝ 2 2⎠
găsească soluţia ecuaţiei
272 Bazele Analizei Numerice
∂ 2u ∂ 2u
+ = 2, (60)
∂ x2 ∂ y2
cu condiţiile la limită
⎛ π⎞ π
u⎜ x , ± ⎟ = 0 , x ≤
⎝ 2⎠ 2
(61)
⎛ π ⎞ π
u⎜ ± , y ⎟ = 0 , y ≤ .
⎝ 2 ⎠ 2
Problema este abordată variaţional în Exemplul 5, rezolvarea sa fiind
echivalentă cu cea a minimizării funcţionalei
∂u ∂u
F (u ) = ∫∫ [( ) 2 + ( ) 2 ] dx dy + 2 ∫∫ u ( x, y ) dx dy
G ∂x ∂y G
pe mulţimea
W = { u ∈ C 2 (G ) ∩ C1 (G ) ; u = 0 pe C} .
Pentru orice u,v∈W, are loc
(u, v )−∆ = ∫∫ ( ∂u ⋅ ∂v + ∂u ⋅ ∂v ) dx dy .
G ∂x ∂x ∂y ∂y
Pentru găsirea soluţiei aproximative a problemei (60)-(61), vom folosi
elementele finite dreptunghiulare construite în secţiunea 6.2, care nu aparţin lui W.
În consecinţă W nu este „spaţiul bun” pentru rezolvarea acestei probleme cu
elemente finite dreptunghiulare.
Pentru a depăşi această dificultate, să constatăm, mai întâi, că noţiunea de
derivată în sensul distribuţiilor, introdusă în secţiunea anterioară pentru funcţii de o
variabilă, se extinde, în mod corespunzător la funcţii de mai multe variabile.
∂u
De exemplu, funcţia g(x,y) este , în sensul distribuţiilor, dacă
∂x
satisface
∂ϕ
∫∫ g ⋅ ϕ dx dy = − ∫∫ u dx dy , (∀ ) ϕ ∈ C 1 , ϕ = 0 pe C .
G G ∂ x
Fie
∂u ∂u
H 01 (G ) = {u ∈ L2 (G ) ; u , , ∈ L2 (G ) , u = 0 pe C}
∂x ∂ y
(derivatele parţiale sunt luate în sensul distribuţiilor) .
Spaţiul W este dens în H 01 (G ) , H10 (G ) fiind spaţiul energetic al
operatorului -∆. Spaţiul H 01 (G ) este spaţiu Hilbert în raport cu produsul scalar
∂u ∂v ∂ u ∂v
u , v = ∫∫ (uv + ⋅ + ⋅ ) dx dy .
G ∂ x ∂x ∂y ∂ y
Introducere în metoda elementului finit 273
1 i +1 j +1 2
3cij − ∑ ∑ c kl + 2h = 0 , i, j = 1, n . (65)
3 k =i −1 l = j −1
Soluţia exactă a problemei considerate este
8 ∞ (− 1)k +1 ch(2k − 1) y
2
⎛π ⎞
u ( x, y ) = −⎜ ⎟ + x 2 + ⋅ ∑ cos(2k − 1)x .
⎝2⎠ π k =1(2k − 1)3 ch((2k − 1)π / 2)
Valorile soluţiei aproximative în nodurile din figura :
⎛ π⎞ ⎛π π ⎞
⎜ 0, ⎟ ⎜ , ⎟
⎝ 2⎠ 10 9 7 ⎝2 2⎠
4
8 6
3
5
2
(0,0)
1
sunt date în următorul tabel :
Nodul n=3 n=7 N = 15 Soluţia exactă
1 - 1,534 - 1,473 - 1,459 - 1,454
2 - 1,321 - 1,308 - 1,304
3 - 0,950 - 0,907 - 0,897 - 0,894
4 - 0,370 - 0,362 - 0,359
5 - 1,394 - 1,381 - 1,376
6 -1,089 - 1,078 - 1,075
7 - 0,566 - 0,559 - 0,556
8 - 1,278 - 1,146 - 1,135 - 1,132
9 - 0,666 - 0,660 - 0,658
10 - 0,698 - 0,692 - 0,690
- ∆u=f în G, (66)
u = 0 pe OC, CB şi BA, (67)
Introducere în metoda elementului finit 275
∂u ∂u
=− = g pe OA (68)
∂x ∂y
Vom considera o reţea de tip y
1 C1
diferenţe finite, cu pasul h = k = pe C B
n
OC , respectiv OA. Decupăm apoi
fiecare pătrat astfel obţinut în două
triunghiuri şi obţinem o triangularizare de
tip elemente finite. Fie u~ ( x, y ) soluţia C1 C1
aproximativă definită pe G şi nu numai
în puncte izolate, cum se întâmplă în
cazul diferenţelor finite. Vom utiliza x
pentru triangularizarea de mai sus, spaţiul O C2 A
P al funcţiilor continue pe G şi afine pe
porţiuni construite în secţiunea 6.2. Aceste funcţii nu aparţin însă spaţiului
V = C1 (G ) ∩ C 0 (G ) din exemplul 7. În consecinţă, V nu este „spaţiul bun”,
alegerea bună fiind spaţiul
∂u ∂u
H 1 (G ) = {u ∈ L2 (G ) ; u , , ∈ L2 (G )}
∂x ∂y
(derivatele sunt considerate în sensul distribuţiilor), pentru care P este subspaţiu.
Căutăm soluţia u~ de forma
s
u~ ( x, y ) = ∑ ciψ i ( x, y ), (69)
i =1
s fiind numărul vârfurilor, funcţiile ψ i , i = 1, s sunt funcţiile de bază
corespunzătoare triangularizării, iar coeficienţii ci , i = 1, s , urmează a fi
determinaţi. Pentru simplitatea expunerii, vom presupune că vârfurile de pe C1
ocupă ultimele poziţii, n+1, n+2, ..., s. Aşadar vom avea ci = 0 , i = n + 1, s ,
necunoscutele propriu-zise fiind ci , i = 1, n . În definitiv
n
u~ ( x, y ) = ∑ ciψ i ( x, y ), (70)
i =1
necunoscutele ci trebuind determinate din condiţia ca u~ să satisfacă sistemul
(41), adică
n
∑ a(ψ j ,ψ i )c j = ∫∫ fψ i dxdy + ∫ gψ i dx , i = 1, n , (71)
j =1 G C2
unde
a ψ j ,ψ i = ∫∫ gradψ i ⋅ gradψ j dxdy .
G
276 Bazele Analizei Numerice
Notând
aij = a(ψ i ,ψ j ) , i, j = 1, n , bi = ∫∫ fψ i dxdy + ∫ gψ i dx , i = 1, n , (72)
G C2
sistemul (71) se scrie
n
∑ aij c j = bi , i = 1, n . (73)
j =1
Aşadar se pune problema rezolvării unui sistem de n ecuaţii liniare,
numite nodale. Dacă x este vectorul coloană al necunoscutelor cj şi b B 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 numeşte „matrice de rigiditate” şi este
evident simetrică. Mai mult, matricea A este şi pozitiv definită.
Într-adevăr
n n ⎛ n n ⎞
x T Ax = ∑ ∑ a(ψ j ,ψ i )ci c j = a⎜ ∑ c jψ j , ∑ ciψ i ⎟ = ∫∫ (grad u~ )2 dx dy ≥ 0 .
i =1 j =1
⎜ j =1 i =1
⎟
⎝ ⎠ G
P
T
P
~
Totodată x Ax=0, implică grad u = 0 în mulţimea conexă G, deci u~
este constantă pe G. Dar u~ se anulează pe C1, deci u~ =0 în G şi în consecinţă
B B
x=0, adică A este pozitiv definită. Prin urmare matricea A este nesingulară, deci
sistemul (73) admite soluţie unică.
Matricea A nu este numai simetrică ci şi rară (are multe zerouri). Într-
adevăr supp ψ i este constituit din mulţimea triunghiurilor care îl au pe Ai ca B B
vârf. Deci elementul aij are şanse să fie nenul, dacă şi numai dacă Ai şi Aj
B B B B B B
b v(a) + v(b)
∫ v( x) dx ≅ (b − a) . (76)
a 2
Formula (76) nu este altceva decât formula trapezului; are o precizie de
ordinul 2: dacă f este regulată (local de clasă C2 ) şi b-a = h→ 0 , atunci P P
ceea ce priveşte (75), este formula echivalentă formulei (76) în dimensiune 2; are o
precizie de ordinul 2.
Având în vedere simplitatea
şi repetitivitatea reţelei, este 3
2
suficient să scriem (71) într-un nod
interior lui G şi într-un nod pe OA
4
(extremităţile se exclud dacă u~ = 0
în O şi A). Să analizăm mai întâi 1
cazul unui nod interior lui G , ca în 0
figura alăturată. Vom utiliza o
numerotare locală, nodul fiind notat 5
cu indicele „0”, iar celelalte cu 1, 6
2, 3, 4, 5, 6. Funcţia ψ 0, B B
se obţine
1 1 ⎛ 1 1⎞
A=− , B = − , deci gradψ 0 = ⎜ − ,− ⎟ .
h h ⎝ h h⎠
De remarcat că gradψ0 nu depinde de i şi j. În mod asemănător se
B B
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 :
⎛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
h2
⎛ 2 1 1 2 1 1 ⎞
a 00 = ⎜⎜ + + + + + ⎟⎟ = 4
2⎝ h2 h2 h2 h2 h2 h2 ⎠
a 01 = a 04 = ∫∫ gradψ 0 ⋅ gradψ 1 dxdy , S = 012 ∪ 061 , deci
S .
a 01 = a 04 = −1
Introducere în metoda elementului finit 279
S
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 ,
b0 ≅
2 ⎝3 3 3 3 3 3 ⎠
conform formulei (75) şi ţinând seama că ψ0 se anulează în nodurile 1, 2, 3, 4, B B
sau
c − 2c0 + c 4 c 2 − 2c0 + c5
− 1 − = f0 . (78)
h2 h2
Se regăseşte discretizarea ecuaţiei –∆ u = f, cu diferenţe finite, după
binecunoscuta schemă „în cruce”.
Să analizăm 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 puţine.
În consecinţă a00 = 2 , a02 = –1,
4 0 1
B B B B
1
acolo), iar a01 = a04 = − (deoarece se
2
B B B B
h2
ia în calcul un singur triunghi). Din aceleaşi motive ∫∫ fψ 0 dxdy ≈ f0
G 2
0 1
⎛1 1 ⎞
(3 triunghiuri în loc de 6) şi ∫ gψ 0 dx = ∫ + ∫ ≈ h ⋅ ⎜ g 0 ⋅ 1 + g 0 ⋅ 1⎟ , unde g0
⎝2 2 ⎠
B
C2 4 0
, f0 sunt valorile lui g respectiv f în nodul 0. S-au utilizat iarăşi (75) şi (76)
B B B
h2
Aşadar, în acest caz b0 = f 0 + hg 0 . Ecuaţia nodală corespunzătoare
2
este
280 Bazele Analizei Numerice
2
1
c 2 − 2c0 +(c4 + c1 ) = −hg 0 − h f 0 . (79)
2 2
În ceea ce priveşte convergenţa metodei, dacă h este mărimea
elementelor finite (de exemplu diametrul), atunci lema lui Bramble şi Hilbert
precizează că
u − u~ = O(h),
unde
1/ 2
⎛ ∂u
2
∂u
2 ⎞
u =⎜ u 2 ⎟ ,
2
+ +
⎜ L (G ) ∂ x 2 ∂ y ⎟
⎝ L (G ) L2 (G ) ⎠
deci aproximarea este de ordinul 1. Pentru obţinerea unei aproximări 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.
Exerciţii
b
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 mărginit 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
⎧∆(∆u ) = f , f ∈ L2 (G ) în G
⎪
⎨ ∂u .
⎪⎩u | C = | C = 0
∂n
∂ 2u 2 ∂ 2u 2 ∂ 2u ∂ 2u
R. F (u ) = ∫∫ [( ) +( ) +2 ] − 2 ∫∫ f ( x)u ( x)dxdy .
2
G ∂x ∂y 2 ∂x 2 ∂y 2 G
4. Fie triunghiul A1A2A3 , unde Ai(xi, yi) , i=1, 2, 3. Dacă Pj = Aj, j=1, 2, 3, iar P4,
B B B B B B B B B B B B B B B B B B
P5, P6 sunt mijloacele laturilor A1A2, A2A3, A3A1 respectiv, să se arate că funcţia
B B B B B B B B B B B B B B B B
6
u ( x, y ) = ∑ u j µ j ( x, y ) , unde µ j = λ j (2λ j − 1) , j = 1, 2, 3 , µ 4 = 4λ1λ 2 ,
j =1
µ 5 = 4λ 2 λ3 , µ 6 = 4λ3 λ1 , funcţiile λi fiind date de (51).
lui G, G = {( x, y ) ∈ R 2 x ≤ 1, y ≤ 1} .