Sunteți pe pagina 1din 40

Rezolvarea sistemelor neliniare

Nicolae Dăneţ - METODE NUMERICE


Nicolae Dăneţ - METODE NUMERICE 2

Rezolvarea sistemelor neliniare


Pentru rezolvarea sistemelor neliniare prezentăm două metode:
1) Metoda lui Newton
2) Metoda aproximaţiilor succesive

1 Metoda lui Newton


1.1 Metoda lui Newton pentru ecuaţii neliniare
Fie ecuaţia f (x) = 0,unde f ∈ C 2([a, b]).
Presupunem că ecuaţia are o singură rădăcină în intervalul (a, b).
Acest lucru se întâmplă dacă f (a) · f (b) < 0 şi derivatele f 0(x) şi f 00(x)
păstrează semn constant pe intervalul [a, b].

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 3

Principiul metodei lui Newton constă în a înlocui arcul de curbă y = f (x) cu tangenta la curbă dusă
într-un punct al curbei convenabil ales.

Interpretarea geometrică a metodei lui Newton

Pentru fixarea ideiilor considerăm cazul în care


f (a) < 0, f (b) > 0, şi f 0(x) > 0, f 00(x) > 0, ∀x ∈ [a, b].
• Notăm x0 = b şi ducem tangenta la curbă în punctul B0(x0, f (x0)).
Fie x1 punctul în care tangenta taie axa Ox.
• Ducem apoi tangenta la curbă în punctul B1(x1,f (x1)).
Notăm cu x2 punctul în care această tangentă taie axa Ox şi continuăm această construcţie.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 4

Fie Bn(xn, f (xn)) un punct obţinut prin procedeul descris mai sus.
Tangenta la curba y = f (x) în punctul Bn(xn, f (xn)) are ecuaţia
y − f (xn) = f 0(xn)(x − xn).
Aceasta taie axa Ox în punctul de abscisă xn+1, ceea ce înseamnă că are loc egalitatea
0 − f (xn) = f 0(xn)(xn+1 − xn),
de unde rezultă
f (xn)
xn+1 = xn − , n = 0, 1, . . .
f 0(xn)
Se observă că punctul de pornire al procesului iterativ x0 satisface condiţia
f (x0) · f 00 (x0) > 0.
Aceasta înseamnă că:
Valoarea funcţiei în punctul de pornire f (x0) are semnul derivatei a doua pe intervalul (a, b).

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 5

Şirul (xn) dat de metoda Newton converge către ξ, soluţia ecuaţiei f (x) = 0,
după cum se arată în teorema următoare.
Teoremă. (Metoda lui Newton pentru ecuaţii)
Fie f ∈ C 2([a, b]) care satisface condiţiile:
1) f (a) · f (b) < 0, i.e., funcţia f (x) ia valori de semne contrare la capetele intervalului [a, b].
2) Derivatele f 0(x) şi f 00(x) păstrează semn constant pe intervalul [a, b].
Considerăm un punct oarecare x0 din intervalul [a, b] care verifică condiţia
f (x0) · f 00(x0) > 0 (1)
şi definim şirul iterativ (xn) dat de metoda lui Newton
f (xn)
xn+1 = xn − , n = 0, 1, . . . (2)
f 0(xn)
În aceste condiţii şirul (xn) converge la unica soluţie ξ din intervalul (a, b) a ecuaţiei f (x) = 0 .

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 6

Demonstraţie. Pentru fixarea ideilor considerăm cazul în care


f (a) < 0, f (b) > 0, f 0 (x) > 0, f 00(x) > 0, ∀ x ∈ [a, b].
Deoarece funcţia continuă f ia valori de semne contrare la capetele intervalului [a, b], ecuaţia f (x) = 0
are cel puţin o soluţie în acest interval.

Pentru că derivata întâi este strict pozitivă pe (a, b), funcţia f (x) este strict crescătoare pe (a, b). În
consecinţă, ecuaţia f (x) = 0 are o singură soluţie în intervalul (a, b) pe care o notăm cu ξ.

Pentru că f 00(x) > 0 pe intervalul [a, b], din condiţia (1) rezultă f (x0) > 0. Aceasta arată că punctul de
pornire a procesului iterativ trebuie să verifice condiţia f (x0) > 0. Pentru că f (b) > 0 luăm x0 = b.

Demonstrăm mai întâi prin inducţie că xn > ξ, n = 0, 1, . . .


Deoarece x0 = b, evident x0 > ξ. Presupunem apoi că xn > ξ şi demonstrăm că xn+1 > ξ. Folosind
formula Taylor de ordinul doi avem
f 00(cn)
0
0 = f (ξ) = f (xn + (ξ − xn)) = f (xn) + f (xn)(ξ − xn) + (ξ − xn)2,
2!
unde cn ∈ (ξ, xn). Deoarece f 00(cn) > 0, rezultă
f (xn) + f 0(xn)(ξ − xn) < 0.
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 7

În consecinţă
f (xn)
− xn < −ξ,
f 0 (xn)
de unde se obţine că
f (xn)
xn+1 = xn − > ξ.
f 0(xn)
Funcţia f (x) este strict crescătoare pe intervalul [a, b] deoarece f 0(x) > 0, ∀x ∈ [a, b]. Prin urmare,
xn > ξ implică f (xn) > f (ξ) = 0. Obţinem astfel că diferenţa
f (xn)
xn+1 − xn = − < 0,
f 0(xn)
ceea ce arată că şirul (xn) este un şir descrescător x0 > x1 > . . . > xn > xn+1 > . . . > ξ, deci şi
mărginit. Fie ξ̄ = lim xn. Prin trecere la limită a relaţie de recurenţă (2) se obţine
n→∞

f (ξ̄)
ξ̄ = ξ̄ − ,
f 0(ξ̄)
de unde rezultă f (ξ̄) = 0. Cum funcţia f (x) are o soluţie unică în (a, b), rezultă ξ = ξ̄. Deci şirul (xn)
dat de metoda Newton converge la unica soluţie ξ din intervalul (a, b) a ecuaţiei f (x) = 0. ¤

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 8

Metoda lui Newton modificată


Se calculează prima aproximare
f (x0)
x1 = x0 − .
f 0(x0)
În continuare, în locul tangentelor la curba y = f (x) în punctele Bn(xn, f (xn)),
se duc paralele la prima tangentă
y − f (xn) = f 0(x0)(x − xn).
Procedând la fel ca mai sus se obţine şirul
f (xn)
xn+1 = xn − , n = 0, 1, . . .
f 0 (x0)

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 9

Metoda lui Newton modificată

Această metodă se numeşte metoda lui Newton modificată.


Ea are avantajul că nu necesită calculul derivatei f 0(xn) la fiecare iteraţie.
Se foloseşte atunci când expresia derivatei este complicată şi se preferă calculul derivatei o singură
dată numai în punctul x0.
Dezavantajul metodei constă în faptul că este mai lent convergentă către soluţie.
Ideea acestei metode este importantă pentru aplicarea sa la sisteme de ecuaţii neliniare.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 10

Exemplu
Pentru a determina soluţia pozitivă a ecuaţiei
f (x) = x3 − 0, 2x2 − 0, 2x − 1, 2 = 0,
se determină mai întâi un interval de lungime egală cu unitatea în care se află această soluţie.

Calculăm
f (0) = −1, 2 < 0, f (1) = −0, 6 < 0, f (2) = 5, 6 > 0.
Deoarece f (1) · f (2) < 0, ecuaţia f (x) = 0 are cel puţin o soluţie pozitivă în intervalul (1, 2).

Pentru a demonstra unicitatea acestei soluţii se observă că pe intervalul (1, 2) derivatele f 0(x) şi f 00(x)
sunt strict pozitive.

Într-adevăr, derivata întâi


f 0(x) = 3x2 − 0, 4x − 0, 2
1
are rădăcinile −0, 2 şi , deci f 0(x) > 0, ∀x ∈ (1, 2). Evident
3
f 00(x) = 6x − 0, 4 > 0, ∀x ∈ (1, 2).
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 11

Luăm x0 = 2 şi construim şirul dat de metoda Newton


f (x0) f (2) 5, 6
x1 = x0 − = 2 − = 2 − = 2 − 0, 509 = 1, 491
f 0(x0) f 0(2) 11

f (x1) 1, 371
x2 = x1 − = 1, 491 − = 1, 257
f 0(x1) 5, 872

x3 = 1, 203, x4 = 1, 2, x5 = 1, 2.
Prin urmare soluţia ecuaţiei este x = 1, 2. ¤

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 12

Probleme.
Determinaţi cu o precizie de 10−7 soluţiile ecuaţiilor de mai jos. Pentru determinarea numărului de
soluţii şi a intervalelor în care se găsesc acestea folosiţi repreyentarea grafică în Mathcad.
a) ex + 2−x + 2 cos x − 6 = 0;
b) 2x cos 2x − (x − 2)2 = 0;
c) (x − 2)2 − ln x = 0;
d) ex − 3x2 = 0.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 13

1.2 Metoda lui Newton pentru sisteme de ecuaţii neliniare


Fie sistemul de ecuaţii neliniare
½
f1(x, y) = 0,
(3)
f2(x.y) = 0.
Presupunem că funcţiile f1, f2 ∈ C 2(D), unde D ⊂ R2 este o mulţime deschisă, convexă şi mărginită.
Fie (x0, y0) un punct oarecare din D.

Formula lui Taylor pentru funcţiile de două variabile dau egalităţiile


∂f1 ∂f1
f1(x, y) = f1(x0, y0) + (x0, y0)(x − x0) + (x0, y0)(y − y0) + R1(x, y),
∂x ∂y
∂f2 ∂f2
f2(x, y) = f2(x0, y0) + (x0, y0)(x − x0) + (x0, y0)(y − y0) + R2(x, y).
∂x ∂y
Neglijând resturile obţinem


⎪ ∼ ∂f1 ∂f1

⎪ f (x, y) = f (x , y ) + (x , y )(x − x ) + (x0, y0)(y − y0),
⎨ 1 1 0 0
∂x
0 0 0
∂y

⎪ ∂f2 ∂f2

⎩ f2(x, y) ∼
⎪ = f2(x0, y0) + (x0, y0)(x − x0) + (x0, y0)(y − y0).
∂x ∂y
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 14

Relaţiile de mai sus se scriu sub formă matriceală astfel


⎡ ⎤
∂f1 ∂f1 ⎡ ⎤
∙ ¸ ∙ ¸ x − x
f1(x, y) ∼ f1(x0, y0) ⎢ ∂x (x0, y0) ∂y
(x0, y0) ⎥ 0
= +⎢
⎣ ∂f2 ∂f2
⎥⎣

⎦. (4)
f2(x.y) f2(x0, y0) (x0, y0) (x0, y0) y − y0
∂x ∂y
Notăm cu
⎡ ⎤
∂f1 ∂f1
⎢ ∂x (x0, y0) ∂y
(x0, y0) ⎥
J(x0, y0) = ⎢
⎣ ∂f2 ∂f2


(x0, y0) (x0, y0)
∂x ∂y
matricea lui Jacobi asociată acestui sistem de funcţii.
Fie (x, y) o soluţie a sistemului neliniar (3), ceea ce înseamnă că (x, y) este un punct din D pentru
care avem
∙ ¸ ∙ ¸
f1(x, y) 0
= .
f2(x.y) 0

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 15

Considerăm (x0, y0) o aproximantă a acestei soluţii. Presupunem apoi că matricea lui Jacobi J(x0, y0)
este inversabilă. Atunci din relaţia (4) obţinem
∙ ¸ ∙ ¸ ∙ ¸
x ∼ x0 f1(x0, y0)
= − J(x0, y0)−1 · .
y y0 f2(x0, y0)
Dacă notăm
∙ ¸ ∙ ¸ ∙ ¸
x1 x0 f1(x0, y0)
= − J(x0, y0)−1 ·
y1 y0 f2(x0, y0)
∙ ¸ ∙ ¸
x1 x
se obţine un vector care aproximează soluţia
.
y1 y
∙ ¸
xk
Continuând acest procedeu obţinem un şir recursiv dat de formula
yk
∙ ¸ ∙ ¸ ∙ ¸
xk+1 xk f (x
1 k k, y )
= − J(xk , yk )−1 · , k = 0, 1, . . . (5)
yk+1 yk f2(xk , yk )

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 16

Dacă acest şir este convergent, i.e.,


∙ ¸ ∙ ¸
xk x
lim = ,
k→∞ yk y
atunci, prin trecerea la limită a relaţiei de recurenţă (5), se obţine
∙ ¸ ∙ ¸ ∙ ¸
x x f1(x, y)
= − J(x, y)−1 · ,
y y f2(x, y)
de unde rezultă că
∙ ¸ ∙ ¸
f1(x, y) 0
= .
f2(x, y) 0
∙ ¸
xk
Deci, limita şirului este soluţia sistemului neliniar considerat.
yk

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 17

Metoda lui Newton modificată


Pentru a nu inversa matricea jacobiană la fiecare pas de calcul se consideră metoda lui Newton
modificată în care se foloseşte numai inversa matricei J(x0, y0).
Formulele care dau şirul recurent în acest caz sunt
∙ ¸ ∙ ¸ ∙ ¸
xk+1 xk f (x
1 k k, y )
= − J(x0, y0)−1 · , k = 0, 1, . . . (6)
yk+1 yk f2(xk , yk )
Metoda este mai lent convergentă, dar are avantajul calculării inversei unei singure matrice.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 18

Metoda lui Newton fără inversarea matricei lui Jacobi


Considerăm şirul care defineşte metoda Newton
∙ ¸ ∙ ¸ ∙ ¸
xk+1 xk f1(xk , yk )
= − J(xk , yk )−1 · , k = 0, 1, . . .
yk+1 yk f2(xk , yk )
Notăm
∙ ¸ ∙ ¸
ak f1(xk , yk )
= J(xk , yk )−1 · . (7)
bk f2(xk , yk )
Atunci şirul devine
∙ ¸ ∙ ¸ ∙ ¸
xk+1 xk ak
= − , k = 0, 1, . . .
yk+1 yk bk
Egalitatea (7) este echivalentă cu
¸ ∙ ∙ ¸
ak f1(xk , yk )
J(xk , yk ) = .
bk f2(xk , yk )
∙ ¸
ak
Din acesta egalitate se determină vectorul prin rezolvarea unui sistem liniar, fără a fi necesară
bk
inversarea matricei lui Jacobi.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 19

Probleme
Determinaţi soluţia sistemelor de ecuaţii neliniare de mai jos pornind de la aproximanta iniţială scrisă
în dreptul fiecăruia. Calculaţi aproximaţiile xhki până când k xhki − xhk−1i k∞< 10−6.
½ µ ¶ µ ¶
3x2 − y 2 = 0, x0 1
a) = .
3xy 2 − y 3 − 1 = 0, y0 1
½ µ ¶ µ ¶
ln(x2 + y 2) − sin(xy) = ln 2 + ln π, x0 2
b) = .
ex−y + cos(xy) = 0. y0 2
⎧ 3 2
⎛ ⎞ ⎛ ⎞
⎨ x + x y − xz + 6 = 0, x0 −1
c) ex + ey − z = 0, ⎝ y0 ⎠ = ⎝ −2 ⎠ .

y 2 − 2 xz = 4, z0 1
⎧ 2 2 2
⎛ ⎞ ⎛ ⎞
⎨ x + y + z = 1, x0 0.5
2 2
d) 2x + y − 4z = 0, ⎝ y0 ⎠ = ⎝ 0.5 ⎠ .
⎩ 2
3x − 4y + z 2 = 0, z0 0.5

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 20

2 Metoda aproximaţiilor succesive


2.1 Metoda aproximaţiilor succesive pentru ecuaţii
Fie Φ : I ⊂ R −→ R o funcţie continuă pe intervalul I. Ne propunem să rezolvăm ecuaţia
Φ(x) = 0. (8)
Pentru a putea aplica metoda aproximaţiilor succesive aducem ecuaţia (8) la forma echivalentă
x = f (x), (9)
unde f trebuie să fie o funcţie continuă definită pe un interval [a, b] şi să ia valori tot în intervalul [a, b].
Considerăm apoi o valoare oarecare x0 ∈ [a, b] şi construim şirul aproximaţiilor succesive
x1 = f (x0)
x2 = f (x1)
··· ······
xk = f (xk−1)
··· ······

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 21

Dacă şirul (xk ) este convergent şi are limita egală cu x, prin trecerea la limită a relaţiei de recurenţă
xk = f (xk−1)
rezultă
x = lim xk = lim f (xk−1) = f ( lim xk−1) = f (x).
k→∞ k→∞ k→∞

Aceasta arată că x, limita aproximaţiilor succesive xk , este soluţia ecuaţiei x = f (x).
Apare în mod natural următoarea problemă: în ce condiţii şirul (xk ) este convergent?
Răspunsul este dat de teorema de punct fix a lui Banach, care în cazul de faţă are următorul enunţ.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 22

Teoremă.
Fie f : [a, b] −→ R o funcţie de clasă C 1 pe intervalul [a, b]. Dacă:
1) Funcţia f ia valori în intervalul [a, b], i.e., ∀x ∈ [a, b] ⇒ f (x) ∈ [a, b],
2) q = max |f 0(x)| < 1,
x∈[a,b]

atunci
a) Şirul aproximaţiilor succesive
xk = f (xk−1), k = 1, 2, . . .
este convergent pentru orice valoare iniţială x0 ∈ [a, b].
b) Valoarea limită
x = lim xk
k→∞

este unica soluţie din intervalul [a, b] a ecuaţiei x = f (x).


c) Estimarea erorii care se face aproximând soluţia exactă x cu o aproximantă succesivă xk este dată
de una din formulele
q
| xk − x |≤ | xk − xk−1 |, k = 1, 2, . . .
1−q
qk
| xk − x |≤ | x0 − x1 |, k = 1, 2, . . .
1−q
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 23

Demonstraţie. În condiţiile date funcţiei f este o contracţie de constantă q pe intervalul [a, b].
Într-adevăr, pentru orice x1, x2 ∈ [a, b], conform teoremei lui Lagrange, există ξ ∈ (a, b) astfel încât
f (x1) − f (x2) = f 0(ξ)(x1 − x2).
Atunci
|f (x1) − f (x2)| ≤ max |f 0(ξ)| · |x1 − x2| = q |x1 − x2|.
x∈[a,b]

Restul afirmaţiilor rezultă din teorema aproximaţiilor succesive. ¤

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 24

Exemplu.
În acest exemplu ne propunem să determinăm soluţiile reale ale ecuaţiei
x3 + x − 1000 = 0
folosind metoda aproximaţiilor succesive. Notăm
Φ(x) = x3 + x − 1000.
Funcţia Φ(x) este strict crescătoare pe R deoarece derivata sa Φ0(x) = 3x2 + 1 > 0 pentru orice x ∈ R.
Prin urmare, ecuaţia Φ(x) = 0 are o singură rădăcină reală. Pentru a localiza această rădăcină se
observă că Φ(0) = −1000 şi apoi, după mai multe încercări, se ajunge la
Φ(9) = 93 + 9 − 1000 = 729 + 9 − 1000 = −262 < 0.

Φ(10) = 103 + 10 − 1000 = 10 > 0.


Deoarece funcţia continuă Φ(x) are valori de semne contrare la capetele interva-lului (9, 10) soluţia
reală a acestei ecuaţiei se află în acest interval.
Pentru a putea aplica metoda aproximaţiilor succesive se aduce ecuaţia la forma x = f (x).

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 25

Această formă nu este unică!


De exemplu, ecuaţia dată se poate aduce pe intervalul (9, 10) la una din formele echivalente
31000 1 √
x = 1000 − x , x = 2 − , x = 3 1000 − x.
x x
Pentru aplicarea metodei aproximaţiilor succesive se va alege acea formă pentru care funcţia din
membrul drept este o contracţie pe intervalul [9, 10].
Dacă considerăm prima funcţie f1(x) = 1000 − x3, atunci f 01(x) = −3x2 şi
max | f 01(x) | = max | 3x2 | = 3 · 102 = 300,
x∈[9,10] x∈[9,10]

deci funcţia f1 nu este contracţie pe intervalul [9, 10].


1000 1 0 −2000 1
Pentru f2(x) = − , avem f 2 (x) = + . Folosind modul de reprezentare grafică din
x2 x x3 x2
Mathcad obţinem
max | f 02(x) | = 2, 731.
x∈[9,10]

Prin urmare, nici funcţia f2 nu este contracţie pe [9, 10].

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 26


Pentru f3(x) = 3 1000 − x, avem
0 1 −2 −1
f 3 (x) = (1000 − x) 3 (−1) = p .
3 3 3 (1000 − x)2
Atunci
1 1 ∼
| f 03(x) |= p ≤ √
3
= 0, 003 < 1,
3 (1000 − x)
3 2 3 9902

deci f3 este o contracţie pe intervalul [9, 10].


Verificăm apoi dacă funcţia f3 ia valori tot în intervalul [9, 10]. Fie x ∈ [9, 10]. Atunci
√3
√3
√3

3
√3
9 = 729 ≤ 990 ≤ 1000 − x ≤ 991 ≤ 1000 = 10,
ceea ce arată că într-adevăr f3(x) ∈ [9, 10] pentru orice x ∈ [9, 10].

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 27

Verificările de mai sus arată că metoda aproximaţiilor succesive se poate aplica în cazul în care ecuaţia
iniţială este adusă la forma x = f3(x).
Luăm ca valoare iniţială x0 = 10 şi calculăm aproximantele
x1 = f3(x0) = 9, 96655
x2 = f3(x1) = 9, 96666
x3 = f3(x2) = 9, 96667
Ultimile două aproximante au primele patru zecimale egale. Cu o precizie de 10−4 soluţia ecuaţiei este
x = 9, 9666.
Pentru estimarea erorii am folosit acest criteriu practic a cărui justificare teoretică constă în faptul că
1
în cazul q ≤ are loc inegalitatea | x3 − x |≤| x3 − x2 |. Cum în exemplul de faţă | x3 − x2 |= 10−5,
2
rezultă că x = x3 = 9, 9666. ¤

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 28

Probleme
1) Folosind metoda aproximaţiilor succesive determinaţi soluţia ecuaţiei x3 − x − 1 = 0 din intervalul
[1, 2] cu o precizie de 10−5 luând ca valoare iniţială x0 = 1.
2) Folosind metoda aproximaţiilor succesive determinaţi soluţia ecuaţiei x4 − 3x2 − 3 = 0 din intervalul
[1, 2] cu o precizie de 10−5 luând ca valoare inţială x0 = 1.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 29

2.2 Metoda aproximaţiilor succesive pentru sisteme de ecuaţii neliniare


Vom descrie în cele ce urmează modul cum se pot rezolva sistemele de ecuaţii neliniare folosind
metoda aproximaţiilor succesive. Pentru simplitatea expunerii ne vom limita la cazul n = 2.
Un sistem de ecuaţii neliniare
½
F1(x, y) = 0,
F2(x, y) = 0,
poate fi rezolvat folosind metoda aproximaţiilor succesive dacă acesta poate fi adus la forma echiva-
lentă
½
x = f1(x, y),
(10)
y = f2(x, y),
cu f1, f2 ∈ C 1(D), unde D = [a, b] × [c, d] este un domeniu din R2.
Reamintim că o funcţie f (x, y) este de clasă C 1 pe domeniul D dacă funcţia f (x, y) şi derivatele sale
∂f ∂f
parţiale (x, y), (x, y) sunt continue pe D.
∂x ∂y

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 30

Dacă sistemul a fost adus la forma


½
x = f1(x, y),
y = f2(x, y),
∙ ¸
x0
atunci se ia un punct oarecare din D şi se defineşte şirul aproximaţiilor succesive
y0
∙ ¸ ∙ ¸
xk f1(xk−1, yk−1)
= , k = 1, 2, . . .
yk f2(xk−1, yk−1)
∙ ¸
xk
Pentru ca acestă definiţie să poată fi aplicată trebuie ca toate aproximaţiile succesive să aparţină
yk
domeniului D.
Teorema care urmează arată în ce condiţii şirul construit mai sus este convergent la soluţia sistemului
(10).

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 31

Teoremă. Dacă
1
1) Funcţiile f1, f2 sunt
∙ de¸ clasă C pe domeniul D. ∙ ¸
x0 xk
2) Valorile iniţiale şi toate aproximaţiile succesive aparţin domeniului D.
y0 yk
3) Derivatele parţiale ale funcţiilor f1 şi f2 satisfac inegalităţile
⎧¯ ¯ ¯ ¯
⎪ ¯ ∂f1 ¯ ¯ ∂f1 ¯

⎪ ¯ ¯ ¯
(x, y)¯ + ¯ (x, y)¯¯ ≤ q1 < 1,

⎨ ∂x¯ ∂y
¯ ¯ ¯ ¯ ∀ (x, y) ∈ D.

⎪ ¯ ∂f2 ¯ ¯ ∂f2 ¯

⎪ ¯ ¯ ¯
⎩¯ (x, y)¯ + ¯ (x, y)¯¯ ≤ q2 < 1,
∂x ∂y
Atunci şirul
∙ ¸ ∙ ¸
xk x
−→ , k → ∞,
yk y
soluţia sistemului
½
x = f1(x, y),
y = f2(x, y).

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 32

Demonstraţie. Considerăm funcţia F : D ⊂ R2 −→ R2 definită prin


∙ ¸
f1(x, y)
F (x, y) = , ∀ (x, y) ∈ D.
f2(x.y)
Notăm matricea derivatelor cu
⎡ ⎤
∂f1 ∂f1
⎢ ∂x (x, y) ∂y
(x, y) ⎥
F (x, y) = ⎢
0
⎣ ∂f2 ∂f2
⎥.

(x, y) (x, y)
∂x ∂y
Norma infinit a matricei F 0(x, y) este
½¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯¾
¯ ∂f ¯ ¯ ∂f ¯ ¯ ∂f ¯ ¯ ∂f ¯
0
kF (x, y)k∞ = max ¯ ¯ 1 ¯ ¯
(x, y)¯ + ¯
1 ¯ ¯
(x, y)¯ , ¯
2 ¯ ¯
(x, y)¯ + ¯
2
(x, y)¯¯
∂x ∂y ∂x ∂y

≤ max {q1, q2} < 1.


În acest caz funcţia F (x, y) este o contracţie pe domeniul D de constantă q = max {q1, q2} < 1 în raport
cu distanţa dată de norma infinit de pe R2. Pentru a demonstra această afirmaţie se observă mai întâi
că
kF (x1, y1) − F (x2, y2)k∞
= max {| f1(x1, y1) − f1(x2, y2) |, | f2(x1, y1) − f2(x2, y2) |} .
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 33

Evaluăm apoi fiecare din cele două module de mai sus. Deoarece f1 este o funcţie de clasă C 1 pe D,
f1 este diferenţiabilă pe D 1. Prin urmare este adevărată formula lui Lagrange pentru funcţii de două
variabile 2
∂f1 ∂f1
f1(x1, y1) − f1(x2, y2) = (ξ, η)(x1 − x2) + (ξ, η)(y1 − y2),
∂x ∂y
unde ξ este un punct cuprins între x1 şi x2, iar η este cuprins între y1 şi y2. Atunci avem
| f1(x1, y1) − f1(x2, y2) |
¯ ¯ ¯ ¯
¯ ∂f1 ¯ ¯ ∂f1 ¯
¯
≤ ¯ ¯
(ξ, η)¯ · |x1 − x2| + ¯ ¯ (ξ, η)¯¯ · |y1 − y2|
∂x ∂y
µ¯ ¯ ¯ ¯¶
¯ ∂f1 ¯ ¯ ∂f1 ¯
≤ ¯¯ (ξ, η)¯¯ + ¯¯ (ξ, η)¯¯ · max {| x1 − x2 |, | y1 − y2 |}
∂x ∂y

≤ q1 · k(x1, y1) − (x2, y2)k∞.

1
Rezultat clasic de Analiză matematică. Se poate consulta, de exemplu: M.Nicolescu, N.Dinculeanu, S.Marcus, Analiză matematică,
vol.1, Editura Didactică şi Pedagogică, Bucureşti, 1966, pag.591.
2
A se vedea lucrarea citată mai sus, pag.630.
Rezolvarea sistemelor neliniare
Nicolae Dăneţ - METODE NUMERICE 34

Analog se obţine
| f2(x1, y1) − f2(x2, y2) |≤ q2 · k(x1, y1) − (x2, y2)k∞.
Atunci
kF (x1, y1) − F (x2, y2)k∞ ≤ q · k(x1, y1) − (x2, y2)k∞
Deoarece q < 1, rezultă că F este o contracţie pe D. Concluzia teoremei rezultă atunci în baza
teoremei aproximaţiilor succesive. ¤

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 35

Exemplu.
În acest exemplu vom ilustra aplicarea metodei aproximaţiilor succesive pentru determinarea soluţiei
pozitive a sistemului
½
F1(x, y) = x3 + y 3 − 6x + 3 = 0,
F2(x, y) = x3 − y 3 − 6y + 2 = 0.

În acest scop sistemul trebuie adus mai întâi la forma echivalentă




⎪ 1 3 3 1

⎨ x = (x + y ) + = f1(x, y),
6 2

⎪ 1 1

⎩ y = (x3 − y 3) + = f2(x, y).
6 3
Fie (x0, y0) un punct oarecare din domeniul bidimensional [0, 1] × [0, 1]. Atunci
1 1 1
0 ≤ (x30 + y03) ≤ (1 + 1) = ,
6 6 3
1
de unde, adunând în ambii membrii, rezultă că
2
1 1 1 5
≤ f1(x0, y0) ≤ + = .
2 3 2 6

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 36

Analog avem
1 1 1
− ≤ (x30 − y03) ≤ ,
6 6 6
1
de unde, adunând în ambii membrii , rezultă
3
1 1 1 1 1 1
= − + ≤ f2(x0, y0) ≤ + = .
6 6 3 6 3 2
Dacă notăm
½
x1 = f1(x0, y0)
y1 = f2(x0, y0)
∙ ¸ ∙ ¸
1 5 1 1
atunci (x1, y1) aparţine dreptunghiului D = , × , , care este inclus în [0, 1]×[0, 1]. Prin urmare,
∙ ¸ 2 6 6 2
xk
dacă definim şirul prin relaţiile de recurenţă
yk
∙ ¸ ∙ ¸
xk f1(xk−1, yk−1)
= , k = 1, 2, . . .
yk f2(xk−1, yk−1)

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 37

acesta rămâne în domeniul D. În plus, pentru orice punct (x, y) ∈ D au loc inegalităţile
¯ ¯ ¯ ¯ µ ¶
¯ ∂f1 ¯ ¯ ∂f1 ¯ x2
y 2
1 25 1 34
¯ (x, y)¯+¯ (x, y)¯ = + < + = = q1 < 1,
¯ ∂x ¯ ¯ ∂y ¯ 2 2 2 36 4 72
¯ ¯ ¯ ¯ ¯ 2¯
¯ ∂f2 ¯ ¯ ∂f2 ¯ x2 ¯ y ¯ x2 y 2 34
¯ ¯ ¯ ¯ ¯ ¯
¯ ∂x (x, y)¯ + ¯ ∂y (x, y)¯ = 2 + ¯− 2 ¯ = 2 + 2 < 72 = q2 < 1.

Deoarece sunt îndeplinite condiţiile din teorema de mai sus sistemul are o soluţie unică în D care
1 1
se obţine cu metoda aproximaţiilor succesive. Luăm ca valori inţiale x0 = , y0 = , care aparţin
2 2
domeniului D. Atunci
⎧ µ ¶

⎪ 1 1 1 1
⎨ x1 = + + = 0, 542,
2 6 µ 8 8¶

⎪ 1 1 1 1
⎩ y1 = + − = 0, 333.
3 6 8 8
Apoi
½ ½ ½
x2 = 0, 533, x3 = 0, 532, x4 = 0, 532,
y2 = 0, 354, y3 = 0, 351, y2 = 0, 351.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 38

∙ ¸
f1(x, y)
Dacă notăm cu F (x, y) = , atunci
f2(x, y)
34 1
kF (x, y)k∞ = max{q1, q2} = < ,
72 2
ceea ce implică
kx − xhkik∞ ≤ kxhki − xhk−1ik∞.
∙ ¸ ∙ ¸
x3 x4
Aceasta arată că dacă în iteraţiile şi coincid primele trei zecimale, atunci
y3 y4

kx − xh3ik∞ < 103.


∙ ¸
x3
Această inegalitate arată că soluţia calculată aproximativ cu trei zecimale exacte este x(3) = =
y3
∙ ¸
0, 532
. ¤
0, 351

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 39

Probleme
1) Sistemul de ecuaţii neliniare
½
x2 − 10x + y 2 + 8 = 0,
xy 2 + x − 10y + 11 = 0,
este adus la forma echivalentă
⎧ 2 2

⎨x= x + y +8
= f1(x, y),
2
10
⎩ y = xy + x + 8 = f2(x, y),

10
necesară pentru aplicarea metodei aproximaţiilor succesive.
a) Folosind teorema ?? demonstraţi că funcţia
F = (f1, f2)T : D ⊂ R2 −→ R2
are un punct fix în domeniul D = {(x, y)T | 0 ≤ x, y ≤ 1, 5}.
b) Folosind metoda aproximaţiilor succesive aproximaţi soluţia acestui sistem cu o precizie de 10−5 în
raport cu norma k · k∞.

Rezolvarea sistemelor neliniare


Nicolae Dăneţ - METODE NUMERICE 40

2) Sistemul neliniar
½
5x2 − y 2 = 0,
y − 0, 25(sin x + sin y) = 0,
µ ¶T
1 1
are o soluţie în vecinătatea punctului , .
4 4
a) Determinaţi o funcţie F şi o submulţine D a lui R2 astfel încât F : D −→ R2 să aibă un punct fix în
D.
b) Folosind metoda aproximaţiilor succesive aproximaţi soluţia acestui sistem cu o precizie de 10−5 în
raport cu norma k · k∞.

Rezolvarea sistemelor neliniare

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