c9 ECUATII NELINIARE

18

Transcript of c9 ECUATII NELINIARE

Page 1: c9 ECUATII NELINIARE
Page 2: c9 ECUATII NELINIARE

O serie de analize inginereşti necesită determinarea valorilor variabilei x, care satisface ecuaţia neliniară:

f(x)=0;Valorile lui x care satisfac ecuaţia neliniară sunt cunoscute ca şi rădăcinile ecuaţiei. Număul rădăcinilor poate să fie finit sau infinit, poate să fie real sau complex, depinzând de natura ecuaţiei şi de problema fizică.

Funcţia f poate sa fie dată în formă explicită sau în formă implicită. Dacă este dată în formă explicită, se poate vorbi de forma ecuaţiei neliniare generale şi anume forma ecuaţiei polinomiale, respectiv a ecuaţiei transcedentale.

Exemplu: x6- x5+100x-60=0 este ecuaţie polinomială sinhx-excosx=0 este ecuaţie transcedentală.

O funcţie transcedentală este cea a cărei valoare nu poate fi determinată pentru nici o valoare specifică a argumentului x, printr-un număr finit de adunări, scăderi, înmulţiri sau împărţiri. Funcţiile exponenţiale, logaritmice, trigonometrice şi hiperbolice sunt exemple de funcţii transcedentale.

Page 3: c9 ECUATII NELINIARE

Ecuaţia polinomială:

Un caz special al ecuaţiei f(x)=0 este ecuaţia polinomială cu forma ei generală:

Ecuaţia are n rădacini dintre care unele se pot repeta. Relaţiile dintre rădăcini şi coeficienţi se numesc relaţiile lui Newton si au forma:

0...)( 012

21

1 axaxaxaxaxf nn

nn

n

nnn

n

i

n

ijj n

nn

jkkkji

n

i

n

ijj n

nji

n

nn

ii

a

axxxxx

a

axxx

a

axx

a

ax

01321

1 ,1

3

,1

1 ,1

2

1

1

)1(...

Page 4: c9 ECUATII NELINIARE

1. Metoda grafică. Rădăcinile reale ale unei ecuaţii pot fi interpretate grafic. Interpretarea grafică nu este posibilă dacă rădăcinile sunt complexe. Rădăcinile se întâlnesc acolo unde graficul lui f(x) intersectează sau atinge axele de coordonate. Dacă graficul lui f(x) atinge sau coincide cu axa x-ilor într-un punct notat x1 înseamnă că ecuaţia neliniară f(x)=0 are rădăcini multiple în x1.

Page 5: c9 ECUATII NELINIARE

În unele cazuri ecuaţia f(x)=0 poate fi descompusă în două părţi separate. Astfel cele două părţi pot sa fie reprezentate grafic, iar punctul de intersecţie dintre ele determină rădăcina ecuaţiei.

Să presupunem că dorim să determinăm o rădăcină pozitivă a ecuaţiei f(x)=0, unde

Dacă analizăm problema din punctul de vedere al unui matematician, putem observa că atunci când x se apropie de zero, respectiv este aproximativ zero, dinspre partea pozitivă a axei, sin(1/x) oscilează cu o frecvenţă descrescătoare şi devine singular în x=0. Conform celor precizate mai devreme, din punct de vedere grafic, este posibil să reprezentăm separat cele două funcţii x*sin(1/x) şi 0.2*exp(-x), care formează funcţia f(x), iar apoi vom spune că punctul de intersecţie al celor două grafice, este o rădăcină a ecuaţiei scalare f(x)=0.

)exp(2.01

sin)( xx

xxf

Page 6: c9 ECUATII NELINIARE

clf;clearx=0:0.01:2;y=x.*sin(x.^(-1));z=0.2*exp(-x);plot(x,y,x,z);xlabel('x');ylabel('y si z');gtext('y=xsin(1/x)')gtext('z=0.2exp(-x)')

Din figură se observă că rădăcina este una singură, fiind aproximativ egală cu valoarea 0.4. Aproximarea cu metoda grafică este relativ exactă dacă desenăm graficul cu un program, de exemplu în Matlab.

Page 7: c9 ECUATII NELINIARE

Dacă reprezentarea grafică este realizată pentru f(x) vom obţine graficul:

clf;clearx=0:0.01:2;y=x.*sin(x.^(-1))-0.2*exp(-x);plot(x,y);xlabel('x');ylabel('y');gtext('y=xsin(1/x)-0.2exp(-x)')

Page 8: c9 ECUATII NELINIARE

Pe de altă parte se poate reprezenta uşor funcţia f(x), iar graficul ei arată că rădăcina este aproximativ 0.38. Metoda grafică poate fi folosită pentru a determina o aproximaţie a rădăcinii mai acurată prin mărirea graficului în zona interesată. Acest lucru este posibil prin reprezentarea grafică în Matlab şi aplicarea de funcţii grafice specifice pentru zona de interes in determinarea cu aproximaţie a rădăcinii ecuatiei. Un program Matlab poate fi folosit pentru a determina o valoare de acurateţe cât mai bună a zeroului funcţiei, dacă se cunosc comportarea funcţiei, numărul de rădăcini şi valoarea aproximativă a zeroului căutat.Exemplu:Frecvenţa naturală de vibraţie a unei grinzi fixată la un capăt este soluţia ecuaţiei: cos (x) cosh (x) + 1 = 0unde x = 2 L / EI

L = lungimea grinzii (m) = frecvenţa (s-1)EI= rigiditatea la încovoiere (Nm) = densitatea de material (kg/m3) a grinzii

Determinaţi valorile aproximative ale celor mai mici trei rădăcini pozitive prin metoda grafică.

Page 9: c9 ECUATII NELINIARE

Rezolvare: Funcţia este f(x) = cos(x) cosh(x) + 1Deoarece ştim destul de puţin despre funcţia f, vom desena graficul ei în Matlab fără să impunem limite corespunzătoare variaţiei lui y pe axa Oy, ci doar pentru variaţia lui x pe axa Ox: 0 x 20.

clf;clearx=0:0.1:20;y=cos(x).*cosh(x)+1;plot(x,y,x,zeros(size(x)));xlabel('x');ylabel('y=cos(x)*cosh(x)+1');

Din acest grafic se observă căuna dintre rădăcinile ecuaţieieste aproximativ egală cu 17.5,dar între 0 şi 15 ecuaţia maipoate avea şi alte rădăcini.

Page 10: c9 ECUATII NELINIARE

Pentru a evidenţia existenţa altor rădăcini vom schimba limitele axelor de reprezentare grafică în Matlab, cu comanda axis: axis ( [0 20 -10 20] )  clf;clearx=0:0.1:20;y=cos(x).*cosh(x)+1;plot(x,y,x,zeros(size(x)));axis([0 20 -10 20]);xlabel('x');ylabel('y=cos(x)*...cosh(x)+1');

Acum se poate observa că cele mai mici rădăcini pozitive ale ecuaţiei f(x)=0 sunt x=1.8, x=4.6, x=7.8 şi astfel cele trei zerouri ale funcţiei au fost determinate prin metoda grafică.

Page 11: c9 ECUATII NELINIARE

Evident din acest exemplu se vede că metoda grafică este o metodă care poate pune capcane în determinarea rădăcinilor. O problemă-capcană ar fi desenarea unui grafic corect, dar prea sumar din nefericire, tocmai în unele situaţii mai delicate. Un exemplu de situaţie delicată este atunci când calitatea desenului nu este foarte bună în vecinătatea unei singularităţi a funcţiei de reprezentat. Dacă un grafic este neglijent desenat, proprietăţile speciale de comportament ale funcţiei f(x), precum şi punctele ei singulare pot fi ascunse astfel încât ele pot fi uşor confundate cu rădăcinile funcţiei.Prevenirea unor astfel de confuzii, în cazul în care o singularitate este bănuită, se poate face dacă mărim zona-problemă a graficului lui f(x), iar apoi analizăm dacă este într-adevăr singulară.Un alt exemplu de problemă-capcană apare atunci când graficul unei funcţii este desenat pe intervale echidistante, dar oscilaţiile ei rapide nu mai pot fi prinse în reprezentare, ceea ce produce o curbă de reprezentare cu lipsuri semnificative faţă de curba adevărată.Evitarea obţinerii unui grafic neadevărat presupune reprezentarea funcţiei de mai multe ori cu diferite vederi (mai mari, mai concentrate) până când comportamentul funcţiei este bine studiat.

Page 12: c9 ECUATII NELINIARE

2. Metoda bisecţiei Metoda bisecţiei este o metodă simplă, dar sigură pentru găsirea unei rădăcini reale într-un interval dat unde ştim că rădăcina există. Avantajul metodei este că ea este valabilă chiar şi pentru funcţii neanalitice, dar totuşi metoda bisecţiei ar trebui folosită după o analiză grafică iniţială a funcţiei din ecuaţie.

Să presupunem că o rădăcină a ecuaţiei f(x)=0 este localizată într-un interval cu capetele de interval x=a şi x=b, notat [a , b] sau a x b. Metoda bisecţiei se bazează pe faptul că atunci când un interval [a,b] are o rădăcină, semnele lui f(x) pe capetele intervalului sunt opuse: f(a)f(b) < 0.

Primul pas în acestă metodă este să înjumătăţim intervalul în două subintervale [a,xmij] şi [xmij,b] unde xmij=(a+b)/2. Dacă f( xmij)= 0, atunci xmij este o rădăcină a ecuaţiei f(x)=0. Dacă f(xmij) ≠0 atunci vom studia semnul lui f(a)f(xmij), respectiv a lui f(xmij)f(b). Pe acest criteriu se va determina jumătatea de interval din intervalul curent, în care se continuă procesul de căutare a rădăcinii ecuaţiei.

Dacă f(a)f(xmij)<0 atunci intervalul [a, xmij] are rădăcina, altfel dacă f(xmij)f(b)<0 rădăcina este căutată mai departe în intervalul [xmij, b].

Page 13: c9 ECUATII NELINIARE

Noul interval ce conţine rădăcina este înjumătăţit din nou. Procedura se repetă, iar mărimea intervalului ce conţine rădăcina devine tot mai mic. La fiecare pas, punctul din mijlocul intervalului este luat ca fiind cel mai aproape de rădăcina adevărată. Iteraţia este oprită când lungimea intervalului înjumătăţit este mai mică decât o toleranţă dată.Un alt criteriu de convergenţă care opreşte procesul iterativ de înjumătăţire a intervalului se referă la valoarea funcţiei pe punctul de mijloc:cu ε reprezentând o valoare foarte mică.

Mărimea intervalului după n paşi de iterare devine:

unde a0 şi b0 sunt valorile iniţiale a lui a şi b, iar numărătorul este lungimea intervalului iniţial [a,b].Expresia ( ) reprezintă eroarea maximă posibilă când rădăcina este aproximată de al n-lea mijloc. Aşadar, dacă toleranţa pentru eroare este dată de numărul foarte mic , numărul paşilor de iterare necesar este cel mai mic întreg n ce satisface inegalitatea:

sau

)(2

)( 00 n

ab

)( mijxf

n

ab

200

2log

)log( 00

ab

n

Page 14: c9 ECUATII NELINIARE

De exemplu, dacă lungimea intervalului iniţial este b0 - a0 = 1 şi = 0.0001 atunci numărul paşilor de iterare este n =14.

Presupunând că valorile pe capetele intervalului f(a) şi f(b) au semne contrare, algoritmul iterativ de determinare a rădăcinii lui f(x)=o este dat de paşii următori: Pasul 1: Notăm a(1)=a, b(1)=b. Pasul 2: Iniţializăm i=0; aleg ε o valoare foarte mică.Pasul 3: Incrementăm numărul iteraţiei: i=i+1.Pasul 4: Determinăm xmij=(a(i)+b(i))/2;Pasul 5: Dacă xmij satisface criteriul de convergenţăscriu rădăcina găsită x=xmij şi întrerup algoritmul, altfel trec la pasul 6.Pasul 6: Dacă f(xmij)f(a(i))>0, atunci a(i+1)=xmij

şi b(i+1)= b(i) şi mă duc la pasul 3,altfel daca f(xmij)f(a(i))<0, atunci a(i+1)= a(i) şi b(i+1)=xmij şi mă duc la pasul 3.

Metoda bisecţiei nu dă rezultate dacă se aplică de exemplu unei ecuaţii de forma f(x)=0, f(x)=(1+x)2, pe intervalul [a,b], cu a= -4 şi b=4. Intervalul [-4,4] conţine o rădăcină dublă, în timp ce f(-4)f(4)>0. Deci numărul de rădăcini din [a,b] trebuie sa fie impar.

)( mijxf

Page 15: c9 ECUATII NELINIARE

3. Metoda iterativă a lui Newton.  Iteraţia lui Newton este o schemă iterativă pentru determinarea unei rădăcini pentru o ecuaţie liniară. Ea este aplicabilă şi pentru domeniul complex şi poate fi extinsă la rezolvarea sistemelor algebrice de ecuaţii neliniare.

Schema iterativă Newton este obţinută prin dezvoltarea funcţiei neliniare în serie Taylor. Să presupunem că avem o problemă de determinare a rădăcinii unei ecuaţii f(x)=0. Trunchierea seriei Taylor până la ordinul întâi, în jurul unei estimări iniţiale x0, se scrie:

care reprezintă o aproximaţie pentru f(x). Pentru valoarea zero a lui f(x), se poate obţine următoarea aproximaţie pentru x1:

Procesul se repetă prin fomula generală:

n=1,2...

))((')()( 000 xxxfxfxf

)('

)(

0

001 xf

xfxx

)('

)(

1

11

n

nnn xf

xfxx

Page 16: c9 ECUATII NELINIARE

Algoritmul de determinare a soluţiei prin metoda iterativă Newton se poate observa în graficul de mai jos:

f(x)

x

f=f1

0 2 3 1

f=f0

Solutia finala

0 1 2 3 4 5 6 7

10

0

-10

-20

Page 17: c9 ECUATII NELINIARE

Pentru o valoare iniţială x0, linia care trece tangenţial prin (x0, f0) intersectează axa x-ilor în punctul x1. Apoi linia tangentă în (x1, f1) intersectează axa x-ilor în x2 şi procesul se repetă ciclic pentru următoarele iteraţii.

A deriva o funcţie dată este, dacă nu imposibil, cel mai adesea neobişnuit. În astfel de cazuri f'(x) poate fi evaluată prin aproximarea cu diferenţe. De exemplu f'(xn-1) poate fi aproximată prin:

unde h este o valoare mică, reprezentând pasul de derivare numerică. Expresiile de mai sus reprezintă aproximarea cu diferenţe înainte, respectiv înapoi. Erorile mici din aproximarea cu diferenţe nu au un efect considerabil asupra ratei de convergenţă a iteraţiei Newton. Acurateţea rezultatului final nu este afectată de eroarea aproximaţiei cu diferenţe. Totuşi cînd o situaţie de singularitate este în apropiere de o rădăcină, aproximarea cu diferenţe necesită a fi aplicată cu precauţie.

h

hxfxff

orh

xfhxff

nnn

nnn

)()('

)()('

111

111

Page 18: c9 ECUATII NELINIARE

Metoda lui Newton converge foarte rapid în cele mai multe cazuri şi din acest motiv este considerată cea mai puternică metodă. Totuşi ea poate să nu conveargă dacă valoarea iniţială a rădăcinii x0 este foarte departe de rădăcina exactă. De asemenea metoda poate să nu conveargă dacă valoarea derivatei este aproape de zero. Dificultăţile apărute, în general, pot fi corectate alegând o nouă valoare de start x0 pentru procesul iterativ.

Criteriul de convergenţă pentru întreruperea procesului iterativ poate sa fie unul dintre acestea:

Metoda lui Newton poate fi folosită şi pentru determinarea rădăcinilor complexe. În acest caz valoarea iniţială a rădăcinii este aleasă complexă, iar calculele sunt efectuate cu numere complexe.

)(

1

1

i

i

ii

ii

xf

x

xx

xx