Cap_5 Sisteme Neliniare

40
Rezolvarea sistemelor neliniare Nicolae D ˘ ane¸t - METODE NUMERICE

Transcript of Cap_5 Sisteme Neliniare

Page 1: Cap_5 Sisteme Neliniare

Rezolvarea sistemelor neliniare

Nicolae Danet - METODE NUMERICE

Page 2: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 2

Rezolvarea sistemelor neliniarePentru rezolvarea sistemelor neliniare prezentam doua metode:1) Metoda lui Newton2) Metoda aproximatiilor succesive

1 Metoda lui Newton

1.1 Metoda lui Newton pentru ecuatii neliniare

Fie ecuatia f(x) = 0,unde f ∈ C2([a, b]).

Presupunem ca ecuatia are o singura radacina în intervalul (a, b).

Acest lucru se întâmpla daca f(a) · f(b) < 0 si derivatele f 0(x) si f 00(x)pastreaza semn constant pe intervalul [a, b].

Rezolvarea sistemelor neliniare

Page 3: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 3

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

Interpretarea geometrica a metodei lui Newton

Pentru fixarea ideiilor consideram cazul în care

f(a) < 0, f(b) > 0, si f 0(x) > 0, f 00(x) > 0, ∀x ∈ [a, b].

• Notam x0 = b si ducem tangenta la curba în punctul B0(x0, f(x0)).Fie x1 punctul în care tangenta taie axa Ox.

• Ducem apoi tangenta la curba în punctul B1(x1,f(x1)).Notam cu x2 punctul în care aceasta tangenta taie axa Ox si continuam aceasta constructie.

Rezolvarea sistemelor neliniare

Page 4: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 4

Fie Bn(xn, f(xn)) un punct obtinut prin procedeul descris mai sus.Tangenta la curba y = f(x) în punctul Bn(xn, f(xn)) are ecuatia

y − f(xn) = f 0(xn)(x− xn).

Aceasta taie axa Ox în punctul de abscisa xn+1, ceea ce înseamna ca are loc egalitatea

0− f(xn) = f 0(xn)(xn+1 − xn),

de unde rezulta

xn+1 = xn −f(xn)

f 0(xn), n = 0, 1, . . .

Se observa ca punctul de pornire al procesului iterativ x0 satisface conditia

f(x0) · f 00(x0) > 0.

Aceasta înseamna ca:Valoarea functiei în punctul de pornire f(x0) are semnul derivatei a doua pe intervalul (a, b).

Rezolvarea sistemelor neliniare

Page 5: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 5

Sirul (xn) dat de metoda Newton converge catre ξ, solutia ecuatiei f(x) = 0,dupa cum se arata în teorema urmatoare.

Teorema. (Metoda lui Newton pentru ecuatii)

Fie f ∈ C2([a, b]) care satisface conditiile:

1) f(a) · f(b) < 0, i.e., functia f(x) ia valori de semne contrare la capetele intervalului [a, b].

2) Derivatele f 0(x) si f 00(x) pastreaza semn constant pe intervalul [a, b].Consideram un punct oarecare x0 din intervalul [a, b] care verifica conditia

f(x0) · f 00(x0) > 0 (1)

si definim sirul iterativ (xn) dat de metoda lui Newton

xn+1 = xn −f(xn)

f 0(xn), n = 0, 1, . . . (2)

În aceste conditii sirul (xn) converge la unica solutie ξ din intervalul (a, b) a ecuatiei f(x) = 0 .

Rezolvarea sistemelor neliniare

Page 6: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 6

Demonstratie. Pentru fixarea ideilor consideram cazul în care

f(a) < 0, f(b) > 0, f 0(x) > 0, f 00(x) > 0, ∀ x ∈ [a, b].

Deoarece functia continua f ia valori de semne contrare la capetele intervalului [a, b], ecuatia f(x) = 0

are cel putin o solutie în acest interval.

Pentru ca derivata întâi este strict pozitiva pe (a, b), functia f(x) este strict crescatoare pe (a, b). Înconsecinta, ecuatia f(x) = 0 are o singura solutie în intervalul (a, b) pe care o notam cu ξ.

Pentru ca f 00(x) > 0 pe intervalul [a, b], din conditia (1) rezulta f(x0) > 0. Aceasta arata ca punctul depornire a procesului iterativ trebuie sa verifice conditia f(x0) > 0. Pentru ca f(b) > 0 luam x0 = b.

Demonstram mai întâi prin inductie ca xn > ξ, n = 0, 1, . . .

Deoarece x0 = b, evident x0 > ξ. Presupunem apoi ca xn > ξ si demonstram ca xn+1 > ξ. Folosindformula Taylor de ordinul doi avem

0 = f(ξ) = f(xn + (ξ − xn)) = f(xn) + f 0(xn)(ξ − xn) +f 00(cn)

2!(ξ − xn)

2,

unde cn ∈ (ξ, xn). Deoarece f 00(cn) > 0, rezulta

f(xn) + f 0(xn)(ξ − xn) < 0.

Rezolvarea sistemelor neliniare

Page 7: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 7

În consecinta

f(xn)

f 0(xn)− xn < −ξ,

de unde se obtine ca

xn+1 = xn −f(xn)

f 0(xn)> ξ.

Functia f(x) este strict crescatoare pe intervalul [a, b] deoarece f 0(x) > 0, ∀x ∈ [a, b]. Prin urmare,xn > ξ implica f(xn) > f(ξ) = 0. Obtinem astfel ca diferenta

xn+1 − xn = −f(xn)

f 0(xn)< 0,

ceea ce arata ca sirul (xn) este un sir descrescator x0 > x1 > . . . > xn > xn+1 > . . . > ξ, deci simarginit. Fie ξ = lim

n→∞xn. Prin trecere la limita a relatie de recurenta (2) se obtine

ξ = ξ − f(ξ)

f 0(ξ),

de unde rezulta f(ξ) = 0. Cum functia f(x) are o solutie unica în (a, b), rezulta ξ = ξ. Deci sirul (xn)dat de metoda Newton converge la unica solutie ξ din intervalul (a, b) a ecuatiei f(x) = 0. ¤

Rezolvarea sistemelor neliniare

Page 8: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 8

Metoda lui Newton modificata

Se calculeaza prima aproximare

x1 = x0 −f(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 tangenta

y − f(xn) = f 0(x0)(x− xn).

Procedând la fel ca mai sus se obtine sirul

xn+1 = xn −f(xn)

f 0(x0), n = 0, 1, . . .

Rezolvarea sistemelor neliniare

Page 9: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 9

Metoda lui Newton modificata

Aceasta metoda se numeste metoda lui Newton modificata.

Ea are avantajul ca nu necesita calculul derivatei f 0(xn) la fiecare iteratie.Se foloseste atunci când expresia derivatei este complicata si se prefera calculul derivatei o singuradata numai în punctul x0.

Dezavantajul metodei consta în faptul ca este mai lent convergenta catre solutie.Ideea acestei metode este importanta pentru aplicarea sa la sisteme de ecuatii neliniare.

Rezolvarea sistemelor neliniare

Page 10: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 10

ExempluPentru a determina solutia pozitiva a ecuatiei

f(x) = x3 − 0, 2x2 − 0, 2x− 1, 2 = 0,

se determina mai întâi un interval de lungime egala cu unitatea în care se afla aceasta solutie.

Calculam

f(0) = −1, 2 < 0, f(1) = −0, 6 < 0, f(2) = 5, 6 > 0.

Deoarece f(1) · f(2) < 0, ecuatia f(x) = 0 are cel putin o solutie pozitiva în intervalul (1, 2).

Pentru a demonstra unicitatea acestei solutii se observa ca pe intervalul (1, 2) derivatele f 0(x) si f 00(x)sunt strict pozitive.

Într-adevar, derivata întâi

f 0(x) = 3x2 − 0, 4x− 0, 2

are radacinile −0, 2 si1

3, deci f 0(x) > 0, ∀x ∈ (1, 2). Evident

f 00(x) = 6x− 0, 4 > 0, ∀x ∈ (1, 2).Rezolvarea sistemelor neliniare

Page 11: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 11

Luam x0 = 2 si construim sirul dat de metoda Newton

x1 = x0 −f(x0)

f 0(x0)= 2− f(2)

f 0(2)= 2− 5, 6

11= 2− 0, 509 = 1, 491

x2 = x1 −f(x1)

f 0(x1)= 1, 491− 1, 371

5, 872= 1, 257

x3 = 1, 203, x4 = 1, 2, x5 = 1, 2.

Prin urmare solutia ecuatiei este x = 1, 2. ¤

Rezolvarea sistemelor neliniare

Page 12: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 12

Probleme.

Determinati cu o precizie de 10−7 solutiile ecuatiilor de mai jos. Pentru determinarea numarului desolutii si a intervalelor în care se gasesc acestea folositi repreyentarea grafica în Mathcad.

a) ex + 2−x + 2 cosx− 6 = 0;

b) 2x cos 2x− (x− 2)2 = 0;

c) (x− 2)2 − lnx = 0;

d) ex − 3x2 = 0.

Rezolvarea sistemelor neliniare

Page 13: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 13

1.2 Metoda lui Newton pentru sisteme de ecuatii neliniareFie sistemul de ecuatii neliniare ½

f1(x, y) = 0,

f2(x.y) = 0.(3)

Presupunem ca functiile f1, f2 ∈ C2(D), unde D ⊂ R2 este o multime deschisa, convexa si marginita.Fie (x0, y0) un punct oarecare din D.

Formula lui Taylor pentru functiile de doua variabile dau egalitatiile

f1(x, y) = f1(x0, y0) +∂f1∂x(x0, y0)(x− x0) +

∂f1∂y(x0, y0)(y − y0) +R1(x, y),

f2(x, y) = f2(x0, y0) +∂f2∂x(x0, y0)(x− x0) +

∂f2∂y(x0, y0)(y − y0) +R2(x, y).

Neglijând resturile obtinem⎧⎪⎪⎪⎪⎨⎪⎪⎪⎪⎩f1(x, y) ∼= f1(x0, y0) +

∂f1∂x(x0, y0)(x− x0) +

∂f1∂y(x0, y0)(y − y0),

f2(x, y) ∼= f2(x0, y0) +∂f2∂x(x0, y0)(x− x0) +

∂f2∂y(x0, y0)(y − y0).

Rezolvarea sistemelor neliniare

Page 14: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 14

Relatiile de mai sus se scriu sub forma matriceala astfel

∙f1(x, y)

f2(x.y)

¸∼=∙f1(x0, y0)

f2(x0, y0)

¸+

⎡⎢⎢⎣∂f1∂x(x0, y0)

∂f1∂y(x0, y0)

∂f2∂x(x0, y0)

∂f2∂y(x0, y0)

⎤⎥⎥⎦⎡⎣ x− x0

y − y0

⎤⎦ . (4)

Notam cu

J(x0, y0) =

⎡⎢⎢⎣∂f1∂x(x0, y0)

∂f1∂y(x0, y0)

∂f2∂x(x0, y0)

∂f2∂y(x0, y0)

⎤⎥⎥⎦matricea lui Jacobi asociata acestui sistem de functii.Fie (x, y) o solutie a sistemului neliniar (3), ceea ce înseamna ca (x, y) este un punct din D pentrucare avem ∙

f1(x, y)

f2(x.y)

¸=

∙0

0

¸.

Rezolvarea sistemelor neliniare

Page 15: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 15

Consideram (x0, y0) o aproximanta a acestei solutii. Presupunem apoi ca matricea lui Jacobi J(x0, y0)este inversabila. Atunci din relatia (4) obtinem∙

x

y

¸∼=∙x0y0

¸− J(x0, y0)

−1 ·∙f1(x0, y0)

f2(x0, y0)

¸.

Daca notam ∙x1y1

¸=

∙x0y0

¸− J(x0, y0)

−1 ·∙f1(x0, y0)

f2(x0, y0)

¸

se obtine un vector∙x1y1

¸care aproximeaza solutia

∙x

y

¸.

Continuând acest procedeu obtinem un sir recursiv∙xkyk

¸dat de formula

∙xk+1yk+1

¸=

∙xkyk

¸− J(xk, yk)

−1 ·∙f1(xk, yk)

f2(xk, yk)

¸, k = 0, 1, . . . (5)

Rezolvarea sistemelor neliniare

Page 16: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 16

Daca acest sir este convergent, i.e.,

limk→∞

∙xkyk

¸=

∙x

y

¸,

atunci, prin trecerea la limita a relatiei de recurenta (5), se obtine∙x

y

¸=

∙x

y

¸− J(x, y)−1 ·

∙f1(x, y)

f2(x, y)

¸,

de unde rezulta ca ∙f1(x, y)

f2(x, y)

¸=

∙0

0

¸.

Deci, limita sirului∙xkyk

¸este solutia sistemului neliniar considerat.

Rezolvarea sistemelor neliniare

Page 17: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 17

Metoda lui Newton modificataPentru a nu inversa matricea jacobiana la fiecare pas de calcul se considera metoda lui Newtonmodificata în care se foloseste numai inversa matricei J(x0, y0).

Formulele care dau sirul recurent în acest caz sunt∙xk+1yk+1

¸=

∙xkyk

¸− J(x0, y0)

−1 ·∙f1(xk, yk)

f2(xk, yk)

¸, k = 0, 1, . . . (6)

Metoda este mai lent convergenta, dar are avantajul calcularii inversei unei singure matrice.

Rezolvarea sistemelor neliniare

Page 18: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 18

Metoda lui Newton fara inversarea matricei lui JacobiConsideram sirul care defineste metoda Newton∙

xk+1yk+1

¸=

∙xkyk

¸− J(xk, yk)

−1 ·∙f1(xk, yk)

f2(xk, yk)

¸, k = 0, 1, . . .

Notam ∙akbk

¸= J(xk, yk)

−1 ·∙f1(xk, yk)

f2(xk, yk)

¸. (7)

Atunci sirul devine ∙xk+1yk+1

¸=

∙xkyk

¸−∙akbk

¸, k = 0, 1, . . .

Egalitatea (7) este echivalenta cu

J(xk, yk)

∙akbk

¸=

∙f1(xk, yk)

f2(xk, yk)

¸.

Din acesta egalitate se determina vectorul∙akbk

¸prin rezolvarea unui sistem liniar, fara a fi necesara

inversarea matricei lui Jacobi.

Rezolvarea sistemelor neliniare

Page 19: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 19

ProblemeDeterminati solutia sistemelor de ecuatii neliniare de mai jos pornind de la aproximanta initiala scrisaîn dreptul fiecaruia. Calculati aproximatiile xhki pâna când k xhki − xhk−1i k∞< 10−6.

a)½

3x2 − y2 = 0,

3xy2 − y3 − 1 = 0,

µx0y0

¶=

µ1

1

¶.

b)½ln(x2 + y2)− sin(xy) = ln 2 + lnπ,

ex−y + cos(xy) = 0.

µx0y0

¶=

µ2

2

¶.

c)

⎧⎨⎩x3 + x2y − xz + 6 = 0,

ex + ey − z = 0,

y2 − 2xz = 4,

⎛⎝ x0y0z0

⎞⎠ =

⎛⎝ −1−21

⎞⎠ .

d)

⎧⎨⎩x2 + y2 + z2 = 1,

2x2 + y2 − 4z = 0,3x2 − 4y + z2 = 0,

⎛⎝ x0y0z0

⎞⎠ =

⎛⎝ 0.5

0.5

0.5

⎞⎠ .

Rezolvarea sistemelor neliniare

Page 20: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 20

2 Metoda aproximatiilor succesive

2.1 Metoda aproximatiilor succesive pentru ecuatiiFie Φ : I ⊂ R −→ R o functie continua pe intervalul I. Ne propunem sa rezolvam ecuatia

Φ(x) = 0. (8)

Pentru a putea aplica metoda aproximatiilor succesive aducem ecuatia (8) la forma echivalenta

x = f(x), (9)

unde f trebuie sa fie o functie continua definita pe un interval [a, b] si sa ia valori tot în intervalul [a, b].

Consideram apoi o valoare oarecare x0 ∈ [a, b] si construim sirul aproximatiilor succesive

x1 = f(x0)

x2 = f(x1)

· · · · · · · · ·xk = f(xk−1)

· · · · · · · · ·

Rezolvarea sistemelor neliniare

Page 21: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 21

Daca sirul (xk) este convergent si are limita egala cu x, prin trecerea la limita a relatiei de recurenta

xk = f(xk−1)

rezulta

x = limk→∞

xk = limk→∞

f(xk−1) = f( limk→∞

xk−1) = f(x).

Aceasta arata ca x, limita aproximatiilor succesive xk, este solutia ecuatiei x = f(x).

Apare în mod natural urmatoarea problema: în ce conditii sirul (xk) este convergent?

Raspunsul este dat de teorema de punct fix a lui Banach, care în cazul de fata are urmatorul enunt.

Rezolvarea sistemelor neliniare

Page 22: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 22

Teorema.Fie f : [a, b] −→ R o functie de clasa C1 pe intervalul [a, b]. Daca:1) Functia f ia valori în intervalul [a, b], i.e., ∀x ∈ [a, b]⇒ f(x) ∈ [a, b],2) q = max

x∈[a,b]|f 0(x)| < 1,

atuncia) Sirul aproximatiilor succesive

xk = f(xk−1), k = 1, 2, . . .

este convergent pentru orice valoare initiala x0 ∈ [a, b].b) Valoarea limita

x = limk→∞

xk

este unica solutie din intervalul [a, b] a ecuatiei x = f(x).

c) Estimarea erorii care se face aproximând solutia exacta x cu o aproximanta succesiva xk este datade una din formulele

| xk − x |≤ q

1− q| xk − xk−1 |, k = 1, 2, . . .

| xk − x |≤ qk

1− q| x0 − x1 |, k = 1, 2, . . .

Rezolvarea sistemelor neliniare

Page 23: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 23

Demonstratie. În conditiile date functiei f este o contractie de constanta q pe intervalul [a, b].

Într-adevar, pentru orice x1, x2 ∈ [a, b], conform teoremei lui Lagrange, exista ξ ∈ (a, b) astfel încât

f(x1)− f(x2) = f 0(ξ)(x1 − x2).

Atunci

|f(x1)− f(x2)| ≤ maxx∈[a,b]

|f 0(ξ)| · |x1 − x2| = q |x1 − x2|.

Restul afirmatiilor rezulta din teorema aproximatiilor succesive. ¤

Rezolvarea sistemelor neliniare

Page 24: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 24

Exemplu.În acest exemplu ne propunem sa determinam solutiile reale ale ecuatiei

x3 + x− 1000 = 0

folosind metoda aproximatiilor succesive. Notam

Φ(x) = x3 + x− 1000.

Functia Φ(x) este strict crescatoare pe R deoarece derivata sa Φ0(x) = 3x2+1 > 0 pentru orice x ∈ R.

Prin urmare, ecuatia Φ(x) = 0 are o singura radacina reala. Pentru a localiza aceasta radacina seobserva ca Φ(0) = −1000 si apoi, dupa mai multe încercari, se ajunge la

Φ(9) = 93 + 9− 1000 = 729 + 9− 1000 = −262 < 0.

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

Deoarece functia continua Φ(x) are valori de semne contrare la capetele interva-lului (9, 10) solutiareala a acestei ecuatiei se afla în acest interval.Pentru a putea aplica metoda aproximatiilor succesive se aduce ecuatia la forma x = f(x).

Rezolvarea sistemelor neliniare

Page 25: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 25

Aceasta forma nu este unica!De exemplu, ecuatia data se poate aduce pe intervalul (9, 10) la una din formele echivalente

x = 1000− x3, x =1000

x2− 1

x, x = 3

√1000− x.

Pentru aplicarea metodei aproximatiilor succesive se va alege acea forma pentru care functia dinmembrul drept este o contractie pe intervalul [9, 10].

Daca consideram prima functie f1(x) = 1000− x3, atunci f 01(x) = −3x2 si

maxx∈[9,10]

| f 01(x) | = maxx∈[9,10]

| 3x2 |= 3 · 102 = 300,

deci functia f1 nu este contractie pe intervalul [9, 10].

Pentru f2(x) =1000

x2− 1

x, avem f 02(x) =

−2000x3

+1

x2. Folosind modul de reprezentare grafica din

Mathcad obtinem

maxx∈[9,10]

| f 02(x) |= 2, 731.

Prin urmare, nici functia f2 nu este contractie pe [9, 10].

Rezolvarea sistemelor neliniare

Page 26: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 26

Pentru f3(x) =3√1000− x, avem

f 03(x) =1

3(1000− x)

−23 (−1) = −1

3 3p(1000− x)2

.

Atunci

| f 03(x) |=1

3 3p(1000− x)2

≤ 1

33√9902

∼= 0, 003 < 1,

deci f3 este o contractie pe intervalul [9, 10].

Verificam apoi daca functia f3 ia valori tot în intervalul [9, 10]. Fie x ∈ [9, 10]. Atunci

9 =3√729 ≤ 3

√990 ≤ 3

√1000− x ≤ 3

√991 ≤ 3

√1000 = 10,

ceea ce arata ca într-adevar f3(x) ∈ [9, 10] pentru orice x ∈ [9, 10].

Rezolvarea sistemelor neliniare

Page 27: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 27

Verificarile de mai sus arata ca metoda aproximatiilor succesive se poate aplica în cazul în care ecuatiainitiala este adusa la forma x = f3(x).

Luam ca valoare initiala x0 = 10 si calculam aproximantele

x1 = f3(x0) = 9, 96655

x2 = f3(x1) = 9, 96666

x3 = f3(x2) = 9, 96667

Ultimile doua aproximante au primele patru zecimale egale. Cu o precizie de 10−4 solutia ecuatiei estex = 9, 9666.

Pentru estimarea erorii am folosit acest criteriu practic a carui justificare teoretica consta în faptul caîn cazul q ≤ 1

2are loc inegalitatea | x3 − x |≤| x3 − x2 |. Cum în exemplul de fata | x3 − x2 |= 10−5,

rezulta ca x ∼= x3 = 9, 9666. ¤

Rezolvarea sistemelor neliniare

Page 28: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 28

Probleme

1) Folosind metoda aproximatiilor succesive determinati solutia ecuatiei x3 − x − 1 = 0 din intervalul[1, 2] cu o precizie de 10−5 luând ca valoare initiala x0 = 1.

2) Folosind metoda aproximatiilor succesive determinati solutia ecuatiei x4 − 3x2 − 3 = 0 din intervalul[1, 2] cu o precizie de 10−5 luând ca valoare intiala x0 = 1.

Rezolvarea sistemelor neliniare

Page 29: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 29

2.2 Metoda aproximatiilor succesive pentru sisteme de ecuatii neliniareVom descrie în cele ce urmeaza modul cum se pot rezolva sistemele de ecuatii neliniare folosindmetoda aproximatiilor succesive. Pentru simplitatea expunerii ne vom limita la cazul n = 2.Un sistem de ecuatii neliniare ½

F1(x, y) = 0,

F2(x, y) = 0,

poate fi rezolvat folosind metoda aproximatiilor succesive daca acesta poate fi adus la forma echiva-lenta ½

x = f1(x, y),

y = f2(x, y),(10)

cu f1, f2 ∈ C1(D), unde D = [a, b]× [c, d] este un domeniu din R2.

Reamintim ca o functie f(x, y) este de clasa C1 pe domeniul D daca functia f(x, y) si derivatele sale

partiale∂f

∂x(x, y),

∂f

∂y(x, y) sunt continue pe D.

Rezolvarea sistemelor neliniare

Page 30: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 30

Daca sistemul a fost adus la forma ½x = f1(x, y),

y = f2(x, y),

atunci se ia un punct oarecare∙x0y0

¸din D si se defineste sirul aproximatiilor succesive

∙xkyk

¸=

∙f1(xk−1, yk−1)

f2(xk−1, yk−1)

¸, k = 1, 2, . . .

Pentru ca acesta definitie sa poata fi aplicata trebuie ca toate aproximatiile succesive∙xkyk

¸sa apartina

domeniului D.

Teorema care urmeaza arata în ce conditii sirul construit mai sus este convergent la solutia sistemului(10).

Rezolvarea sistemelor neliniare

Page 31: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 31

Teorema. Daca1) Functiile f1, f2 sunt de clasa C1 pe domeniul D.

2) Valorile initiale∙x0y0

¸si toate aproximatiile succesive

∙xkyk

¸apartin domeniului D.

3) Derivatele partiale ale functiilor f1 si f2 satisfac inegalitatile⎧⎪⎪⎪⎪⎨⎪⎪⎪⎪⎩

¯∂f1∂x(x, y)

¯+

¯∂f1∂y(x, y)

¯≤ q1 < 1,

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

¯+

¯∂f2∂y(x, y)

¯≤ q2 < 1,

Atunci sirul ∙xkyk

¸−→

∙x

y

¸, k →∞,

solutia sistemului ½x = f1(x, y),

y = f2(x, y).

Rezolvarea sistemelor neliniare

Page 32: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 32

Demonstratie. Consideram functia F : D ⊂ R2 −→ R2 definita prin

F (x, y) =

∙f1(x, y)

f2(x.y)

¸, ∀ (x, y) ∈ D.

Notam matricea derivatelor cu

F 0(x, y) =

⎡⎢⎢⎣∂f1∂x(x, y)

∂f1∂y(x, y)

∂f2∂x(x, y)

∂f2∂y(x, y)

⎤⎥⎥⎦ .Norma infinit a matricei F 0(x, y) este

kF 0(x, y)k∞ = max

½¯∂f1∂x(x, y)

¯+

¯∂f1∂y(x, y)

¯,

¯∂f2∂x(x, y)

¯+

¯∂f2∂y(x, y)

¯¾≤ max {q1, q2} < 1.

În acest caz functia F (x, y) este o contractie pe domeniul D de constanta q = max {q1, q2} < 1 în raportcu distanta data de norma infinit de pe R2. Pentru a demonstra aceasta afirmatie se observa mai întâica

kF (x1, y1)− F (x2, y2)k∞= max {| f1(x1, y1)− f1(x2, y2) |, | f2(x1, y1)− f2(x2, y2) |} .

Rezolvarea sistemelor neliniare

Page 33: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 33

Evaluam apoi fiecare din cele doua module de mai sus. Deoarece f1 este o functie de clasa C1 pe D,f1 este diferentiabila pe D 1. Prin urmare este adevarata formula lui Lagrange pentru functii de douavariabile 2

f1(x1, y1)− f1(x2, y2) =∂f1∂x(ξ, η)(x1 − x2) +

∂f1∂y(ξ, η)(y1 − y2),

unde ξ este un punct cuprins între x1 si x2, iar η este cuprins între y1 si y2. Atunci avem

| f1(x1, y1)− f1(x2, y2) |

≤¯∂f1∂x(ξ, η)

¯· |x1 − x2| +

¯∂f1∂y(ξ, η)

¯· |y1 − y2|

≤µ¯

∂f1∂x(ξ, η)

¯+

¯∂f1∂y(ξ, η)

¯¶·max {| x1 − x2 |, | y1 − y2 |}

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

1 Rezultat clasic de Analiza matematica. Se poate consulta, de exemplu: M.Nicolescu, N.Dinculeanu, S.Marcus, Analiza matematica,vol.1, Editura Didactica si Pedagogica, Bucuresti, 1966, pag.591.

2 A se vedea lucrarea citata mai sus, pag.630.

Rezolvarea sistemelor neliniare

Page 34: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 34

Analog se obtine

| 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, rezulta ca F este o contractie pe D. Concluzia teoremei rezulta atunci în bazateoremei aproximatiilor succesive. ¤

Rezolvarea sistemelor neliniare

Page 35: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 35

Exemplu.În acest exemplu vom ilustra aplicarea metodei aproximatiilor succesive pentru determinarea solutieipozitive a sistemului ½

F1(x, y) = x3 + y3 − 6x + 3 = 0,F2(x, y) = x3 − y3 − 6y + 2 = 0.

În acest scop sistemul trebuie adus mai întâi la forma echivalenta⎧⎪⎪⎪⎨⎪⎪⎪⎩x =

1

6(x3 + y3) +

1

2= f1(x, y),

y =1

6(x3 − y3) +

1

3= f2(x, y).

Fie (x0, y0) un punct oarecare din domeniul bidimensional [0, 1]× [0, 1]. Atunci

0 ≤ 16(x30 + y30) ≤

1

6(1 + 1) =

1

3,

de unde, adunând1

2în ambii membrii, rezulta ca

1

2≤ f1(x0, y0) ≤

1

3+1

2=5

6.

Rezolvarea sistemelor neliniare

Page 36: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 36

Analog avem

−16≤ 16(x30 − y30) ≤

1

6,

de unde, adunând în ambii membrii1

3, rezulta

1

6= −1

6+1

3≤ f2(x0, y0) ≤

1

6+1

3=1

2.

Daca notam ½x1 = f1(x0, y0)

y1 = f2(x0, y0)

atunci (x1, y1) apartine dreptunghiului D =

∙1

2,5

6

¸×∙1

6,1

2

¸, care este inclus în [0, 1]× [0, 1]. Prin urmare,

daca definim sirul∙xkyk

¸prin relatiile de recurenta

∙xkyk

¸=

∙f1(xk−1, yk−1)

f2(xk−1, yk−1)

¸, k = 1, 2, . . .

Rezolvarea sistemelor neliniare

Page 37: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 37

acesta ramâne în domeniul D. În plus, pentru orice punct (x, y) ∈ D au loc inegalitatile¯∂f1∂x(x, y)

¯+

¯∂f1∂y(x, y)

¯=

x2

2+y2

2<1

2

µ25

36+1

4

¶=34

72= q1 < 1,¯

∂f2∂x(x, y)

¯+

¯∂f2∂y(x, y)

¯=

x2

2+

¯−y

2

2

¯=

x2

2+y2

2<34

72= q2 < 1.

Deoarece sunt îndeplinite conditiile din teorema de mai sus sistemul are o solutie unica în D carese obtine cu metoda aproximatiilor succesive. Luam ca valori intiale x0 =

1

2, y0 =

1

2, care apartin

domeniului D. Atunci ⎧⎪⎪⎨⎪⎪⎩x1 =

1

2+1

6

µ1

8+1

8

¶= 0, 542,

y1 =1

3+1

6

µ1

8− 18

¶= 0, 333.

Apoi ½x2 = 0, 533,

y2 = 0, 354,

½x3 = 0, 532,

y3 = 0, 351,

½x4 = 0, 532,

y2 = 0, 351.

Rezolvarea sistemelor neliniare

Page 38: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 38

Daca notam cu F (x, y) =

∙f1(x, y)

f2(x, y)

¸, atunci

kF (x, y)k∞ = max{q1, q2} =34

72<1

2,

ceea ce implica

kx− xhkik∞ ≤ kxhki − xhk−1ik∞.

Aceasta arata ca daca în iteratiile∙x3y3

¸si∙x4y4

¸coincid primele trei zecimale, atunci

kx− xh3ik∞ < 103.

Aceasta inegalitate arata ca solutia calculata aproximativ cu trei zecimale exacte este x(3) =

∙x3y3

¸=∙

0, 532

0, 351

¸. ¤

Rezolvarea sistemelor neliniare

Page 39: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 39

Probleme

1) Sistemul de ecuatii neliniare ½x2 − 10x+ y2 + 8 = 0,

xy2 + x− 10y + 11 = 0,

este adus la forma echivalenta ⎧⎪⎨⎪⎩x =

x2 + y2 + 8

10= f1(x, y),

y =xy2 + x+ 8

10= f2(x, y),

necesara pentru aplicarea metodei aproximatiilor succesive.a) Folosind teorema ?? demonstrati ca functia

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 aproximatiilor succesive aproximati solutia acestui sistem cu o precizie de 10−5 înraport cu norma k · k∞.

Rezolvarea sistemelor neliniare

Page 40: Cap_5 Sisteme Neliniare

Nicolae Danet - METODE NUMERICE 40

2) Sistemul neliniar ½5x2 − y2 = 0,

y − 0, 25(sinx + sin y) = 0,

are o solutie în vecinatatea punctuluiµ1

4,1

4

¶T

.

a) Determinati o functie F si o submultine D a lui R2 astfel încât F : D −→ R2 sa aiba un punct fix înD.

b) Folosind metoda aproximatiilor succesive aproximati solutia acestui sistem cu o precizie de 10−5 înraport cu norma k · k∞.

Rezolvarea sistemelor neliniare