ECUATII METODE NUMERICE IN INGINERIE

34
1 METODE NUMERICE ÎN INGINERIE TUDOR PAUNESCU MN 5. REZOLVAREA NUMERICĂ A ECUAŢIILOR GENERALITĂŢI DESPRE FUNCŢII ŞI ECUAŢII METODE DE REZOLVARE NUMERICĂ A ECUAŢIILOR BIBLIOGRAFIE REZOLVAREA NUMERICĂ A ECUAŢIILOR ÎN MATCAD

description

ECUATII METODE NUMERICE IN INGINERIE

Transcript of ECUATII METODE NUMERICE IN INGINERIE

Page 1: ECUATII METODE NUMERICE IN INGINERIE

1

MET

OD

E N

UM

ERIC

E ÎN

ING

INER

IE

TUDOR PAUNESCUMN

5. R

EZO

LVAR

EA N

UM

ERIC

Ă A

ECU

AŢIIL

OR GENERALITĂŢI DESPRE FUNCŢII ŞI ECUAŢII

METODE DE REZOLVARE NUMERICĂ A ECUAŢIILOR

BIBLIOGRAFIE

REZOLVAREA NUMERICĂ A ECUAŢIILOR ÎN MATCAD

Page 2: ECUATII METODE NUMERICE IN INGINERIE

2

[MOR04] C. Morariu, T.Păunescu. Informatică aplicată în inginerie. Mathcad 2001. Ed. Univ. Bv.

2004.

[SCH08] E. Scheiber. Analiză numerică. Brasov.

[POS94] M. Postolache. Metode Numerice. Ed. Sirius, Bucureşti, 1994.

[BEU92] T.Beu. Analiză numerică în Pascal. Ed. Micro inf. Cluj-Napoca. 1992.

[SAL72] M.G.Salvadori, M.L.Baron. Metode numerice în tehnică. Edit. Tehnică, Bucureşti, 1972.

[LAR89] D.Larionescu. Metode numerice.Ed. Tehnică, Bucureşti, 1989.

[MAR76] Gh. Marinescu. Probleme de analiză numerică rezolvate cu calculatorul. Ed. Acad RSR,

Bucureşti, 1987.

[DOD76] Gh.Dodescu, M.Toma. Metode de calcul numeric. Ed. did. şi pedag. Bucureşti, 1976.

[LIX79] L.Gr. Lixaru. Metode numerice pentru ecuaţii diferenţiale cu aplicaţii. Ed. Acad RSR, Bucureşti,

1979.

[MEM80 ] ***, Mică enciclopedie matematică, traducere din limba germană. Edit. Tehnică, Bucureşti, 1980.

[DOR76] W.S.Dorn, D.D.Mc.Cracken. Metode numerice cu programe in Fortran IV. Ed.Tehhnica. Buc. 76.

[HAU53] A.S.Hauseholder. Principles of Numerical Analysis. Mc Graw-Hill, New Zork, 1953.

[CON80] S.D.Conte- Elementary Numerical Analysis - An Algorithmic Approach, McGraw-Hill 3rd, 1980.

[PHI96] G. M. M. Phillips, P.J. Taylor. Theory and Applications of Numerical Analysis 2nd ed, Elsevier,

1996

[HOF01] J.F. Hoffman. Numerical Methods for Engineers and Scientists 2nd ed. Elsevier, 2001.

[NOC99] J.Nocedad. Numerical Optimization.Springer,1999.

BIBLIOGRAFIE

Page 3: ECUATII METODE NUMERICE IN INGINERIE

3

1. GENERALITĂŢI DESPRE FUNCŢII ŞI ECUAŢII

1.1. Funcţii (PRE)

Funcţie. Fie X şi Z două mulţimi. Dacă facem să corespundă fiecărui element x X un element y Y şi

numai unul spunem că am definit o funcţie pe X cu valori în Y.

Funcţie biunivocă. f:X Y este biunivocă dacă, oricare ar fi elementele x` ≠ x” din X, avem f(x`) ≠ f(x”).

Funcţie inversă a unei funcţii biunivoce f, funcţia f-1 prin care fiecărui element y Y îi corespunde acel

element unic x X pentru care f(x)=y.

Graficele f şi f-1 sunt simetrice faţă de prima bisectoare.

Funcţie reală de o variabilă vectorială. Fie X o

mulţime din Rn. O funcţie f:X Rn se numeşte funcţie

reală de o variabilă vectorială x=(x1, x2, ... , xn) X Rn

şi se notează f(x1, x2, ... , xn) sau f(x).

Funcţii vectoriale de o variabilă vectorială. Fie m

funcţii reale f1, f2, ... , fm definite pe o aceeaşi mulţime

X Rn (argumentul şi valorile funcţiei sunt vectori).

Corespondenţa (x1, x2, ... , xn) (f1(x1, x2, ... , xn), f2(x1,

x2, ... , xn ), ... , fm(x1, x2, ... , xn)) defineşte o funcţie

f=(f1, f2, ... , fm) pe X Rn cu valori în Rm.

Fig.1

Page 4: ECUATII METODE NUMERICE IN INGINERIE

4

Exemple de funcţii vectoriale

Exemplu de funcţie reală de două

variabile z=f(x,y) , (x,y) D R2, care

este o suprafaţă.

1. Funcţie reală de o variabilă vectorială 2. Funcţie vectorială de o variabilă vectorială

2.1. Reprezentarea parametrică a unei curbe

spaţiale: x=f1(t), y=f2(t), z=f3(t), t este parametru

Fig.2 Fig.3

Page 5: ECUATII METODE NUMERICE IN INGINERIE

5

2.2. Reprezentarea parametrică a unei suprafeţe spaţiale: x=f1(u,v), y=f2(u,v), z=f3(u,v), u,v sunt

parametri

Fig.4 Fig.5

Page 6: ECUATII METODE NUMERICE IN INGINERIE

6

Funcţii elementare

Funcţia polinomială (vezi rel. 1,2,3 pe slide-ul următor)

Funcţia raţională: raportul a două funcţii polinomiale.

Funcţia putere : y=xa , a real, dacă a=k/n, k,n- întregi funcţia se

numeşte iraţională.

Funcţia exponenţială: y=ax , a real, pozitiv şi diferit de 1.

Funcţia logaritmică: y=logax, unde a real, pozitiv şi diferit de 1.

Funcţii trigonometrice.

Funcţii pare, impare

Funcţie pară: f(x), x X, -x X, f(-x)=f(x), simetrie faţă de axa Y.

Funcţie impară: f(x), x X, -x X, f(-x)=-f(x), simetrie faţă de O.

Funcţii omogene

Fie o funcţie de n variabile notată simbolic: f(x1, x2, ... , xn) , (x1, x2, ... , xn) X Rn.Funcţia se numeşte omogenă dacă există un număr real a astfel încât să fie satisfăcută egalitatea:f(tx1, tx2, ... , txn) =taf(x1, x2, ... , xn) , (x1, x2, ... , xn) X pentru t R, t>0.

Fig.6

Fig.7

Page 7: ECUATII METODE NUMERICE IN INGINERIE

7

O ecuaţie cu o necunoscută de forma: f(x) = 0 se numeşte algebrică dacă funcţia f(x) este un polinom sau poate fi adusă la formă polinomială.Toate ecuaţiile care nu sunt algebrice se numesc transcendente.

Forma generală a unei ecuaţii algebrice este, deci: anxn+an-1xn-1+ ... +aixi+ ... +a1x1+a0=0 (1)unde:- n, reprezintă gradul ecuaţiei;- ai, reprezintă coeficienţii ecuaţiei, i 0,n, an ≠ 0 . Aceştia pot fi reali sau complecşi;-x, reprezintă variabila sau necunoscuta ecuaţiei.

O altă formă, sub care se poate reprezenta o ecuaţie algebrică de gradul n, este formanormală: xn+bn-1xn-1+ ... +bixi+ ... +b1x1+b0=0 (2)Această formă se obţine din forma generală (1) prin împărţire cu bn .

O ecuaţie algebrică de gradul n cu o necunoscută are întotdeauna n rădăcini. Aceste rădăcini nu trebuie să fie toate diferite.

Dacă coeficienţii, ai, sunt numere reale şi dacă ecuaţia are o rădăcină complexă a + i b , atunci ecuaţia ⋅admite ca rădăcină şi valoarea complexă conjugată a − i b .⋅

Notând cu xj , j =1...n , cele n rădăcini ale ecuaţiei, se poate obţine, din (2), o nouă formă de reprezentare a ecuaţiei de gradul n, ca un produs de factori liniari:(x − x1) (x − x⋅ 2) … (x − x⋅ ⋅ j ) … (x − x⋅ ⋅ n)= 0. (3)Această ultimă formă de reprezentare a ecuaţiilor algebrice poartă denumirea de formă factorizată.

1.2. Ecuaţii (PRE)

Page 8: ECUATII METODE NUMERICE IN INGINERIE

8

1.3. PROBLEME BINE SAU RĂU CONDIŢIONATE [POS94, PHI96]

În general, o problemă importantă care trebuie rezolvată înainte de aplicarea unei metode numerice este

cea a determinării sensibilităţii soluţiei la modificarea datelor de intrare.

De exemplu la rezolvarea unei ecuaţii, sau a unui sistem de ecuaţii datele de intrare sunt coeficienţii

ecuaţiilor, dacă la mici modificări ai acestora soluţiile sunt puternic afectate problema spunem că este rău

condiţionată. Evident că o astfel de problemă trebuie rezolvată numeric mult mai precis decât una bine

condiţionată.

Să presupunem că S(d) reprezintă soluţia unei probleme, pentru un set dat de date d. Să mai presupunem

că datele sunt perturbate d+δd şi că soluţia perturbată este S(d+δd).

Notăm cu II δd II un număr nenegativ care este măsura perturbării datelor, şi cu II S(d+δd)-S(d) II măsura

diferenţei între soluţii.

Spunem că problema este bine condiţionată pentru un set asociat de date dacă sunt satisfăcute condiţiile:

C1. Există o soluţie unică pentru setul de date d şi pentru seturi apropiate. Există un număr real pozitiv

ε>0 astfel încât S(d+δd) există şi este unică pentru orice δd respectând II δd II <ε.

C2. Soluţia S(d) este dependentă continuu de date astel că:

II S(d +δd) - S(d) II 0 când II δd II 0.

Page 9: ECUATII METODE NUMERICE IN INGINERIE

9

Condiţia Lipschitz

O funcţie f, definită pe [a,b] satisface condiţia Lipschitz pe [a,b] dacă există o constantă L>0 astfel încăt

(4)

Pentru oricare x1, x2 din [a,b].

Dacă este satisfăcută condiţia L pe [a,b], atunci f este constant uniformă pe [a,b].

Exemplu.

f(x)=x2 , definită pe [-1,1]

2121 xxLxfxf

2121 2 xxxfxf

Adesea soluţiile unei probleme bine condiţionate respectă condiţia L. În acest caz există constantele L>0

şi ε>0 astfel încât:

(5)

Pentru orice δd respectând II δd II <ε.

Dacă L nu este prea mare, problema este bine condiţionată.

dLdSddS

Page 10: ECUATII METODE NUMERICE IN INGINERIE

10

Exemplu.

f(x)=x2+x-1150 este rău condiţionată

în vecinătatea soluţiilor 33.415335764 şi -

34.415335764.

Pentru x=100/3 valoarea funcţiei

este -5.556. Pentru x=33 care diferă cu

1% valoarea funcţie este -28 de

aproximativ cinci ori mai mare.

În acest caz L este relativ mare

(L=67.8)

Se observă că L are valoarea pantei

în punctul soluţiei.

Page 11: ECUATII METODE NUMERICE IN INGINERIE

11

2. METODE DE REZOLVARE NUMERICĂ A ECUAŢIILOR

Probleme care se pun la rezolvarea numerică a ecuaţiilor algebrice şi transcendente [LAR89]:

Separarea rădăcinilor: determinarea unui interval în care se găseşte fiecare din rădăcinle reale ale

ecuaţiei. Se poate folosi şirul Rolle, sau în Mathcad mai simplu prin reprezentarea grafică a funcţiei şi

operaţii succesive de zoom se pot identifica intervalele asociate rădăcinilor.

Calculul aproximativ al fiecărei rădăcini reale şi evaluara erorii. Prin rădăcină aproximativă se înţelege o

valoare xa care este suficient de apropiată de valoarea exactă xe.

(6)0 , xexa

2.1. METODA ÎNJUMĂTĂŢIRII INTERVALULUI (METODA BISECŢIEI) [LAR89]

Metoda înjumătăţirii este cea mai simplă metodă de determinare a unei soluţii pentru ecuaţii cu o

singură variabilă relă, dar şi cea mai slab convergentă.

Fie funcţia continuă f: [a,b] R şi ecuaţia f(x)=0 la care f(a).f(b)<0. Astfel f are în intervalul [a,b] un

număr impar de rădăcini, deci există cel puţin o rădăcină.

Se notează cu ε eroarea admisă pentru determinarea rădăcinii exacte (xe).

Page 12: ECUATII METODE NUMERICE IN INGINERIE

12

Fig.8

Etape:

Dacă f(0.5(a+b))=0 atunci xe=0.5(a+b) este rădăcina.

Dacă nu, se utilizează punctul 0.5(a+b) pentru împărţirea în două a

intervalului şi se reţine subintervalul care respectă condiţia produsului

negativ al valorilor funcţiei la capetele isubintervalului.

Se continuă operaţiile de înjumătăţire , după n operaţii dacă se

alege xa=0.5(an+bn).

Eroarea după n iteraţii este : (7)abxxenn

2

1

Fig.9

P. Scrieţi un progam care să utilizeze criteriul de ieşire Ixn-xn+1I < ε şi comparaţi-l cu cel prezent

S-a notat cu s şi d abscisa capătului din stânga, respectiv dreapta a intervalului curent, cu j jumătatea intervalului.

Page 13: ECUATII METODE NUMERICE IN INGINERIE

13

2.2. METODA SECANTEI (METODA COARDEI) [BEU92]

Metoda secantei este asemănătoare metodei înjumătăţirii, cu deosebire că subintervalele succesive de

căutare se obţin prin împărţirea intervalului în raportul f(ai-1)/f(bi-1). Dpdv. geometric se înlocuieşte local

funcţia cu coarda care trece prin punctele (a i, f(ai)) şi (bi, f(bi)).

Se presupune că că f’(x) este continuă şi păstrează semnul pentru x [a,b].

Din ecuaţia coardei (f(xi)=0):

(8)

Se deduce abscisa punctului de intersecţie a a coardei cu axa X:

(9)

În general metoda este mai eficientă decât metoda bisecţiei şi este folosită pentru obţinerea de rădăcini

aproximative care ulterior sunt aproximaţii iniţiale pentru alte metode iterative mai eficiente.

)()(

)(

ii

i

ii

ii

afbf

af

ab

ax

)()(

)()(

ii

iiiii afbf

afbbfax

Fig.10a

Page 14: ECUATII METODE NUMERICE IN INGINERIE

14

Fig.10b

Etapele metodei secantei, varianta falsei poziţii pot fi urmărite pe figura de mai sus:- Având o aproximaţie iniţială, x0, a rădăcinii xr, se ia un nou punct x1, care să respecte condiţia:If ( x1 )I < If ( x0 )I - Dreapta care trece prin punctele M0 şi M1 intersectează axa X în punctul de abscisă x2. Ridicând perpendiculara se găseşte punctul M2.- Coarda M1M2 intersectează axa X în punctul de abscisă x3. Prin ridicarea perpendicularei se obţine punctul M3.- şamd.(P). Scrieţi un program de calcul a rădăcinilor unei ecuaţii monovariabile oarecare bazat pe metoda falsei poziţii.

Metoda secantei: varianta falsei poziţii [MEM80, MOR06]

start

Page 15: ECUATII METODE NUMERICE IN INGINERIE

15

Metoda secantei: varianta coardei cu punct fix [MEM80, MOR06]

Fig.10c

Metoda demarează la fel cu cea a falsei poziţii, cu deosebire că în continuare toate coardele trec prin

punctul M0.

(P). Scrieţi un program de calcul a rădăcinilor unei ecuaţii monovariabile oarecare bazat pe

metoda falsei poziţii.

Page 16: ECUATII METODE NUMERICE IN INGINERIE

16

Exemplu

În exemplul de mai sus este prezentat programul unei variante

a metodei corzii, diferit de cel al falsei poziţii, în care pentru

demararea procesului iterativ s-a considerat că primele două

soluţii sunt chiar capetele intervalului iniţial de căutare. S-a

notat cu s şi d abscisa capătului din stânga, respectiv dreapta

intervalului curent, cu x solutia curentă şi cu xa cea anterioară.

Alegerea următorului subinterval se face ca la metoda

înjumătăţirii.Fig.11

Page 17: ECUATII METODE NUMERICE IN INGINERIE

17

2.3. METODA LUI NEWTON (METODA TANGENTELOR) (S)

Fie ecuaţia f(x)=0 care are în intervalul [a,b] o singură rădăcină reală xe. Se presupune că derivatele f’(x) şi

f’’(x) sunt continue şi au semn constant pe intervalul [a,b].

Fig.12

Metoda propune aproximarea rădăcinii xe printr-un şir

determinat de intersecţiile tangentelor duse la curbă cu

axa X.

Pentru un punct Ak [xk, yk], ecuaţia tangentei la f în

punctul Ak are ecuaţia: kkk xxxfxfy )()( '

Dacă se notează cu x k+1 abscisa punctului de intersecţie a tangentei cu axa X, rezultă formula iterativă a

lui Newton

(10)

Daca se dezvoltă funcţia de iterare în serie Taylor în vecinătatea punctului xe , x=xk şi

se trunchiază după al doilea termen, rezultă eroarea la fiecare iteraţie este proporţională cu pătratul erorii

precedente (metodă iterativă de ordin 2), deci metoda Nexton converge mai rapid decât metoda iteraţiilor

care este o metodă iterativă de ordin 1. Pe de altă parte la fiecare iteraţie este necesară evaluarea funcţiei şi

a derivatelor ei, operaţii câte o dată dificilă sau imposibilă dacă funcţia nu are formă analitică.

kk

kk xf

xfxx

'1

xfxf

xx'

Page 18: ECUATII METODE NUMERICE IN INGINERIE

18

Din figură se observă că valoarea de start x0=a , deci astfel ca f(x0)f”(x0)>0.

Exemplu

Fig.13

Page 19: ECUATII METODE NUMERICE IN INGINERIE

19

Condiţiile suficiente pe care trebuie să le satisfacă f(x)

pentru convergenţa spre soluţia exactă.Fig.14

În figura de mai sus sunt reprezentate: dreapta y=x şi curba funcţiei f(x). Se presupune că 0< f ‘(x) <1.

O soluţie a ecuaţiei F(x)=0 este punctul de intersecţie a celor două grafice.

Fie x0 o primă estimare a soluţiei.

Se ridică perpendiculara în x0 pe axa X până la intersecţia cu f(x), punctul A.

Deplasare pe orizontală până la intersecţia cu prima bisectoare, punctul B, a cărui ordonată este f(x0),

notăm cu x1 abscisa corespunzătoare, x1=f(x0).

Continuare după aceeaşi succesiune de operaţii.

2.4. METODA ITERATIVĂ (METODA APROXIMAŢIILOR SUCCESIVE)[DOR76, POS94]

Metoda este simplă, nu este deosebit de eficientă, prin ea se pot determina rădăcinile reale ale ecuaţiei

generale f(x)=0.

Ecuaţia se pune sub forma x=F(x), de exemplu prin

adunarea în ambii membri a lui x: x+0=x+f(x).

Dacă x0 este o aproximaţie iniţială a soluţiei, se obţin

succesiv aproximaţiile:

x0 x1=f(x0) x2=f(x1) … xn=f(xn-1).

Converge xn spre xe când n creşte?

Page 20: ECUATII METODE NUMERICE IN INGINERIE

20

Fig.15Fig.16

Dacă -1< f ‘(x) <1 proces iterativ convergent. Dacă 1< f ‘(x) proces iterativ divergent.

Page 21: ECUATII METODE NUMERICE IN INGINERIE

21

Fig.17

Dacă f ‘(x)<-1 proces iterativ divergent. Fig.18

Dacă f ‘(x0)=-1 proces iterativ ciclic.

Concluzii

I f ‘(x) I < 1 – iteraţii convergenteI f ‘(x) I > 1 – iteraţii divergenteI f ‘(x) I = 1 – iteraţii ciclice

Dacă într-un punct xi I f ‘(xi) I > 1 iar în alt punct I f ‘(xj) I < 1

procesul poate converge sau diverge spre soluţia exactă.

Page 22: ECUATII METODE NUMERICE IN INGINERIE

22

Criteriul de oprire a iteraţiilor

C1. Un criteriu frecvent utilizat este acela când două iteraţii succesive diferă printr-o cantitate mică

prestabilită.

(11)

C2 (S). Criteriu bazat pe contracţie.

Noţiunea de contracţie în R [POS94].

Presupunem că X este un interval real sau chiar întregul R. Considerăm că ecuaţia x=f(x), unde f:X X

este o funcţie derivabilă care satsface relaţia:

(12)

Dacă se aplică teorema lui Lagrange rezultă:

(13)

Adică f este o contracţie alui X.

Se demonstrază principiul contracţiei, care aplicat la evaluarea erorii absolute stipulează: fie ε>o dat,

presupunem că dorim să calculăm soluţia eactă cu o eroare mai mică decât ε. Atunci se găseşte numărul

minim de iteraţii n care satisface relaţia:

(14)

Dacă 0 ≤ C ≤ 0.5 iteraţiile sunt rapid convergente şi relaţia 5 poate fi folosită ca şi criteriu de oprire,

deoarece

0 ,1 nn xx

1)(sup ' Xx

xfC

yxCyfxf )()(

nCC

xx

110

nnn xxexx 1

Page 23: ECUATII METODE NUMERICE IN INGINERIE

23

Fig.19

Dacă 0.5 < C < 1 relaţia 14 nu mai poate fi folosită ca şi criteriu

de oprire. Din fig. 19 vedem că dacă f’(x) are valori apropiate de 1,

deşi Ixn –xn-1I este mic Ixn –xe I este mare.

Fig.20

Exemplu metoda iterativă

Varianta 1

Varianta 2

Codul metodei aproximaţiilor succesive varianta 2 este superior

calitativ comparativ cu cel din varianta 1 deoarece necesită mai

puţină memorie (nu se folosesc variabile indexate) şi în plus în

cazul unui proces divergent opreşte iteraţiile după un număr

predeterminat de paşi.

Page 24: ECUATII METODE NUMERICE IN INGINERIE

24

Exemplul 2

Nu întotdeauna transformarea F(x) = f(x)+x=x duce la convergenţa procesului.

De exemplu ecuaţia x3-x2-x-1=0. Pentru F(x)=x3-x2-1 metoda iterativă nu este convergentă (fig. 22).

Dacă se utilizează forma echivalentă F(x) =1+1/x+1/x2 procesul iterativ este convergent (fig. 16) şi se

obţine:

Fig.21Fig.22

P. Faceţi o comparaţie între cele patru metode testând căteva funcţii, pentru fiecare funcţie testaţi acelaşi interval, şi pentru acelaşi criteriu de oprire a iteraţiilor. Modificaţi programele să afişeze rădăcina şi numărul de iteraţii în care a fost atinsă.

Page 25: ECUATII METODE NUMERICE IN INGINERIE

25

3.1. Ecuaţii polinomiale

3. REZOLVAREA NUMERICĂ A ECUAŢIILOR ÎN MATCAD

Funcţia polyroots:

Sintaxa funcţiei: polyroots(v);

Argumentele funcţiei: v – reprezintă un vector, de dimensiuni n+1 linii × 1 coloană,

ce conţine valorile coeficienţilor ecuaţiei algebrice, a i, scrişi sub forma:

Valoarea returnată: un vector, de dimensiuni n linii × 1 coloană, ce conţine valorile

aproximative ale celor n rădăcini ale ecuaţiei.

Pentru rezolvarea numerică a ecuaţiilor algebrice funcţia polyroots utilizează

două procedee diferite:

- metoda LaGuèrre (implicită);

- metoda companionului matriceal.

Acestea pot fi selectate din meniul existent în fereastra pop-up

Fig.23

Page 26: ECUATII METODE NUMERICE IN INGINERIE

26

Exemplul 1-polyroots

În exemplul alăturat vectorul coeficienţilor v a

fost obţinut prin apelarea operatorului

simbolic coeffs din toolbar-ul Symbolic.

Vectorul coeficienţlor polinomului poate fi

introdus şi manual .

Fig.24

Page 27: ECUATII METODE NUMERICE IN INGINERIE

27

Exemplul 2-polyroots

Pentru determinarea preciziei celor două metode, s-au introdus ca argumente ale funcţiei g vectorii soluţie.

Se observă că pentru aplicaţia dată metoda companionului este mai precisă.

Fig.25

Page 28: ECUATII METODE NUMERICE IN INGINERIE

28

3.1. Ecuaţii transcendente

În Mathcad ecuaţiile transcendente se rezolvă de obicei prin intermediul funcţiei root. Datorită algoritmilor,

pe care îi utilizează, root reprezintă o funcţie cu un grad mare de generalitate, ce poate fi folosită la

rezolvarea ecuaţiilor cu o necunoscută, indiferent de tipul lor.

Sintaxa opţional, a<b, intervalul trebuie să cuprindă doar o soluţie

f(a)f(b)<0

root(f(var1, var2, ...), var1, [a, b])

Funcţia root returnează valoarea variabilei var1 care face funcţia egală cu zero.

Varianta 1 care nu apelează la intervalul de căutare, necesită specificarea unei valori de start a variabilei

var1, declarată anterior apelării funcţiei root. Acesta este indicat să fie cât mai apropiată de valoarea

exactă (reprezentarea grafică a funcţiei este de mare ajutor). Dacă se caută o rădăcină complexă a

ecuaţiei, valoarea iniţială trebuie să fie un număr complex. Metoda iterativă este a secantei (corzii) sau

Mueller (utilizatorul nu are control asupra metodei folosite în maniera prezentată la funcţia polyroots).

Varianta 2 necesită specificarea intervalului în care se află soluţia curentă. Evident că în acest caz nu mai

este necesară specificarea unei valori de start a variabilei. Metodele folosite sunt Ridder sau Brent.

În ambele situaţii precizia obţinerii soluţiei este controlată de variabila TOL. Aceasta are ca valoare implicită 10-3 şi minimum 10-15. O scădere exagerată a valorii TOL măreşte timpul de calcul şi poate duce şi la neconvergenţă, nu este indicat a se depăşi 10-12. După cum s-a amintit într-un curs anterior TOL poate fi modificat prin meniul Tools Worksheet Options tab-ul Built in variables, sau direct în foia de lucru.

salt

Page 29: ECUATII METODE NUMERICE IN INGINERIE

29

Metoda Mueller [PHI96]

Metoda Mueller este o extensie a metodei secantei care utilizează la fiecare iteraţie trei puncte în loc de

două.

În esenţă metoda se desfăşoară în următoarele etape:

Să presupunem că se începe cu două soluţii aproximatixe x0 şi x1 şi se utilizează metoda secatei pentru a-l

obţine pe al treilea, notat cu x2.

Pe baza acestora se construieşte un polinom de interpolare (F(x)) prin care se determină următoarea soluţie

aproximativă x3. Dacă polinomul are două soluţii reale se alege cea ai apropiată de x2.

Se continuă cu construirea altui polnom de interpolare pe baza ultimelor trei puncte (x1,x2,x3) şamd.

F(x)

Page 30: ECUATII METODE NUMERICE IN INGINERIE

30

Limitări ale funcţiei root

Dacă valoarea de start este prea aproape de un minim sau maxim al funcţiei, este posibil ca algoritmul

folosit de root să nu fie convergent sau să conveargă spre o rădăcină relativ îndepărtată de valoarea de

start.

Există un minim sau maxim local între valoarea de start şi rădăcină.

Există o discontinuitate între valoarea de start şi rădăcină.

Ecuaţia are rădăcină reală şi s-a utilzat o valoare de start complexă sau invers.

Rădăcinile sunt foarte apropiate, o soluţie este micşorarea TOL.

Dacă rădăcina este situată într-o zonă cu pantă mică, reduceţi valoarea variabilei TOL, utilizaţi o funcţie

transformată din funcţia iniţială prin împărţire la derivată

F(x) G(x)=F(x)/F’(x).

Root aplicată la funcţii cu pante mari în zona soluţiilor poate duce la soluţii complexe, cu parte imaginară

mică, deşi soluţia este reală.

Dificultăţile enumerate mai sus, pot fi uneori depăşite prin rezolvarea simbolică a ecuaţiei prin operatorul

solve.

Page 31: ECUATII METODE NUMERICE IN INGINERIE

31

Exemplul 1-root

Fig.26

Fig.27

Aplicaţia din figura 26 este rezolvată în două variante:- cu aplicarea funcţiei root de două ori asupra funcţie f;- cu utilizarea unei funcţii f1 mai simple din care a fost eliminat termenul (x-sol1). Operaţia este utilă când soluţiile sunt foarte apropiate.

Aplicaţia din figura 27 se referă la o funcţie de două variabile, situaţie în care una dintre ele se consideră cunoscută.

Exemplul 2-root

Page 32: ECUATII METODE NUMERICE IN INGINERIE

32

Fig.28

În captura de mai sus este utilzată forma funcţiei root cu interval de căutare.

Exemplul 3-root

Page 33: ECUATII METODE NUMERICE IN INGINERIE

33

Exemplul 4-root

Fig.29

Dependenţa precizie soluţiei de punctul de start al algoritmului folosit de funcţia root.

Page 34: ECUATII METODE NUMERICE IN INGINERIE

34

Exemplul 5 - root

Utilizarea funcţiei root la rezolvarea ecuaţiilor

polinomiale poate duce în unele cazuri la soluţii

mai precise decât prin polyroots.