Documente Academic
Documente Profesional
Documente Cultură
(4.1 )
Aceasta este metoda falsei poziii (corzii). Metoda face parte tot din categoria metodelor iterative de rezolvare a unei ecuatii neliniare. Ipotezele pentru functia f sunt aceleasi ca si la metoda lui Newton. Numele metodei deriva din interpretarea geometrica. Mai exact se inlocuieste curba y = f (x) cu o coarda dusa prin punctele
B (b, f (b)) . A(a, f (a )) ,
X k ( xk , f ( xk )), k = 1,2,.... si punctul fix X 0 ( x0 , f ( x0 )) - punct dat de conditia initiala a problemei iterative. Aceasta metoda se construieste pe doua conditii initiale, cu alte cuvinte implica cunoasterea a doua aproximatii ale solutiei exacte l si anume x0 , x1 . Ca si la metoda lui Newton alegerea lui x0 se face astfel incat sa fie verificata relatia
(4.2 )
Pentru usurinta vom alege unul din capetele intervalului [a,b] care respecta acesta relatie, iar x1 va reprezenta celalalt capat.
Astfel pentru aflarea aproximantei de ordin 2 vom intersecta secanta determinata de punctele A(a, f (a )), B(b, f (b)) - corespunzatoare conditiilor initiale cu ecuatia:
in conditiile in care x0 = b, x1 = a .
Continuand algoritmul pe aceeasi idee, aproximatia de ordin n+1 se obtine ca intersectie a secantei X 0 X n cu axa OX xn+1 = xn f ( xn ) ( x0 x n ) f ( x0 ) f ( x n ) (4.3 )
f ' ( xk ) cu aproximanta
y A f(a)
b 0 f(b) B a
Se genereaza astfel un sir de aproximante pentru solutia exacta l a ecuatiei f ( x) = 0, x [a, b] . Sirul de aproximante x0 , x1 ,...., xn , xn +1 va converge in
anumite conditii la solutia exacta a ecuatiei. In ipoteza unei erori eps>0 vom considera xn+1 o aproximanta satisfacatoare a solutiei ecuatie date daca: xn+1 xn eps . Amintim un rezultat important din analiz folosit n continuare
f ' este
xn = xn1
f ( xn 1 ) ( xn 1 a ) rezulta f ( xn 1 ) f (a )
f ( xn 1 ) f (a ) ( xn xn1 ) xn1 a
f (l ) f ( xn1 ) =
f ( xn1 ) f (a ) ( xn xn 1 ) . xn 1 a
Deci
(l xn1 ) f ' (l n 1 ) = [(l xn ) + ( xn xn1 )] f ' (ln 1 ) = = (l xn ) f ' (ln 1 ) + ( xn xn1 ) f ' (l n1 ). Deci egalitatea de mai sus devine
* (l xn ) f ' (l n1 ) = ( xn xn1 )[ f ' ( xn 1 ) f ' (ln 1 )] ,
adica
l xn =
* f ' ( xn 1 ) f (l n1 )
f ' (l n1 )
xn xn1 .
adica l xn M 1 m1 xn xn1 . m1
Date de iesire
c- aproximatia solutiei aproximative Daca f (a) f (b) < 0 Atunci daca f ' ' (a) f (a) > 0 atunci c=b; k=0; altfel c=a; k=1; repeta d=c; daca k=0 atunci
c=d f (d ) (d a) f (d ) f (a)
altfel
c=d f (d ) ( d b) f (b) f (d )
Fie ecuatia f ( x) = 0 , f : R R , functie continua. Sa presupunem ca s-a gasit un interval [a, b] R pentru care f (a ) f (b) < 0 , cu alte cuvinte exista cel putin o solutie (eventual un numar impar) in acest interval. Metoda injumatatirii sau bipartitiei consta in aproximarea succesiva a radacinii ecuatiei prin mijlocul intervalului [a,b] care se noteaza cu
c=
a+b . 2
Daca f (c) = 0 atunci c este radacina. Daca f (c) 0 , se calculeaza semnul produsului f (a ) f (c). Daca acesta este ngativ, atunci radacina se afla in intervalul [a,c], altfel radacina se afla in [c,b]. Calculele se reiau pe fiecare subinterval. Metoda este simpla si necesita doar o evaluare de functie pe iteratie. Procesul de impartire a intervalului continua pana cand avem indeplinita una din conditiile de oprire.: - depasirea numarului maxim de iteartii - restrangerea intervalului sub un prag ales eps. Sa reluam algoritmul introducand notatiile:
a0 = a, b0 = b, x0 =
a0 + b0 . 2
x0 va imparti deci [a, b] in 2 subintervaluri de lungime egala, radacina l , aflandu-se in unul din cele 2 intervale. Fie [a1 , b1 ] noul interval in care se gaseste l , ce indeplineste conditia f (a1 ) f (b1 ) < 0. Evident l x0 < ba . 2
Urmand procedeul obtinem intervalele: [a1 , b1 ],[a2 , b2 ] ,....., [an , bn ] si mijloacele acestora ce vor reprezenta si aproximatiile solutiei ecuatiei. xn = an + bn , n 0. 2
Selectarea acestui interval se face conform conditiilor: Daca f (an ) f ( xn ) < 0 atunci an +1 = a n , bn+1 = bn . Se observa ca bn+1 a n+1 = si l xn < bn +1 a n+1 = b0 a0 2 n+1 bn an b a = .... = 0 n+1 0 2 2
Relatia are si rolul de a evalua precizia in cazul aproximarii solutiei l cu aproximatia de ordin n, xn . Relatiile anterioare arata ca ca sirurile {an },{bn } sunt convergente la l . Prin urmarea dupa injumatatiri succesive, lungimea intervalului [an , bn ] ce contine radacina se poate calcula astfel:
bn an =
ba . 2n
Prin urmare eroarea intre solutia exacta si aproximanta x este data de eps < l x ba . 2n
Convergenta
Metoda construete irul de iterate (puncte) x1,x2,...,xn... La fecare pas(iteraie) avem:
| xi | bi a i 2
rezult:
| x1 | ba 2
| x 2 |
ba 22
....
ba 1 | x n | n = (b a ) 2 2
n
Pentru a demonstra convergena este suficient s artm c irul definit de mijloacele intervalelor xi, are ca limit . Se observ c distana dintre cele dou margini ale intervalului se njumtete la fiecare iteraie. ntre valorile termenilor acestor iruri se poate scrie relaia :
bn an = ba 2n
Dar
Cum irul {an}este cresctor i mrginit de pe cnd irul {bn} este descresctor i mrginit de rezult convergena irurilor {an}, {bn}, {xn} ctre aceiai valoare:
lim a n = lim bn = lim x n =
n n n
Deoarece {an} i {bn} ncadreaz permanent soluia ecuaiei este adevrat inegalitatea: f(an)*f(bn)<0 Pentru a demonstra c numrul este soluia cutat tercem le limit inegalitatea de mai sus
lim[ f (a n ) * f (bn )] 0
n
Dar ambele iruri au limita , astfel c ajungem la inegalitatea : f()*f() 0 de unde rezult c este rdcina cutat. Pentru a evidenia viteza de convergen, se consider c la fiecare iteraie i, mijlocul intervalului [ai,bi], xi este cea mai bun aproximare a soluiei rezult c : |xi+1-|= |xi-| Dac condiia de finalizare a calculelor iterative este
ba n = log 2 1 2
|bn-an|= , atunci
Metoda biseciei converge spre soluie indiferent ct de departe este punctul de pornire, fapt pentru care se consider o metod global de determinare a soluiilor. Convergena spre soluie este lent, trebuie executate un numr mare de mpriri ale intervalului pentru a ajunge la o precizie satisfctoare. Metoda biseciei nu poate fi utilizat pentru determinarea soluiilor unei funcii care este tangent la axa Ox, fr s o strpung, fiindc nu se verific chiar condiia de start.
Problema ce se considera este de a alege o metoda, deci functia g, astfel incat sirul {xn }nN sa fie convergent la l. Este necesar ca solutia ecuatiei x = g (x) in intervalul [a, b] sa fie aceeasi cu solutia ecuatiei f ( x) = 0 in intervalul [a, b] . Procedeul de calcul a soluiilor aproximative prin relatia (*) se numete metoda punctului fix.
Are loc
atunci, oricare ar fi x0 [a, b] irul definit prin xn +1 = g ( x n ) converge spre unica soluie l a ecuaiei x = g (x) cu l [a, b] . Demonstraie. Dac l 1 i l 2 sunt dou soluii distincte ale ecuaiei x = g (x) urmeaz c
| l 1 l 2 | = | g (l 1 ) g (l 2 ) | L | l 1 l 2 | cu L < 1 .
Deci | xn +1 x n | Ln | x1 x0 | sau
| xn + p xn | = | ( xn + p x n + p 1 ) + ( x n + p 1 x n + p 2 ) + ... + ( x n +1 x n ) | | xn + p xn + p 1 | + | xn + p 1 x n + p 2 | + ...+ | xn +1 xn| .
Deci
| x n + p x n | | x1 x0 | ( Ln + p 1 + Ln+ p 2 + ... + Ln ) Ln | x1 x0 | | x1 x0 | 1 Lp 1 L
Ln . 1 L
Deoarece irul ( x n ) verific criteriul lui Cauchy urmeaz c el este convergent spre limita sa l i cum g este funcie continu, deoarece este strict contractant, aceast limit verific l = g (l) . Dac xn [a, b] atunci g ( x n ) [a, b] . Deoarece elementele irului ( x n ) aparin intervalului [a,b] (deoarece x0 [a, b] ) i ( x n ) converge, urmeaz c limita sa
l aparine intervalului [a,b].
Dac g este o funcie derivabil atunci o condiie suficient astfel nct g s fie strict contractant este urmtoarea.
unde 0 L < 1 . Condiia a) din teorema precedent trebuie s fie ndeplinit. ntr-adevr. deoarece
x = g ( x) 1 = 0. x 1 , x 1 x2
Pentru
funcia
g ( x) = x +
unde
x 1,
g ' ( x) = 1
| g ' ( x) | c < 1 , dar ecuaia x = g (x) nu are punct fix n intervalul considerat,
Intervalul [a,b] n care ipotezele teoremei de punct fix sunt verificate este, n general greu de determinat. Dac se poate calcula (estima) g ' (l) atunci are loc urmtorul rezultat.
Propoziia 4.3.5
Dac | g ' (l) | < 1 atunci exist un interval [a,b] coninnd l pentru care irul definit prin x0 [a, b] i xn +1 = g ( x n ) converge la l .
Propoziia 4.3.6 Fie l o soluie a ecuaiei x = g (x) . Dac g ' este continu ntr-o vecintate a lui l i | g ' (l) | > 1 , x0 l , irul definit de x0 i xn +1 = g ( x n ) nu converge spre l .
Dac | g ' (l) | = 1 atunci irul ( x n ) poate converge sau diverge. Pentru a determina in ce conditii sirul definit cu ecuatia xn+1 = g ( xn ) , n=0,1,... este convergent cu limita , se presupune g(x) derivabila pe [a,b], si se calculeaza distana la rdcina dupa care se aplica teorema cresterilor finite (Lagrange) : |xi+1-| = |g(xi) g()|=|g`()| * |xi-| cu [a,b]
Din relaia de mai sus rezulta ca sirul {xi} i=0,1,2,...,n este convergent spre daca distanta la rdcin scade la fiecare iteratie : |g`()|< 1
[a,b]
Cu alte cuvinte maximul valorii absolute a derivatei pe [a,b] trebuie sa fie subunitar :
M = sup | g ' ( x) |< 1
( a ,b )
[a,b] obinem
|xi+1 | M * |xi |
Rezulta ca metoda cvontractiei asigura o convergnta liniara, iar numarul de iteratii este cu atat mai mic cu ct M este mai aproape de zero. Un aspect de interes n prezentarea metodei o reprezint criteriul de oprire a procesului iterativ. De obicei aceasta se face cnd distant dintre dou aproximatii succesive devine mai mic dect o tolerant impus, |xi+1-xi|
Faptul ca f este contractie asigura terminarea programului ntr-un numar finit de pasi. Pentru a evita ciclarea n situatia n care un utilizator ar ncerca
folosirea programului pentru o functie care nu este contractie, se poate stabili de la nceput un numar maxim de pasi ce urmeaza a fi executati. De asemenea se poate afisa la fiecare pas diferenta dintre termenii consecutivi curenti. (pentru a observa ca sirul nu converge daca f nu e contractie). Astfel se poate folosi urmatoarea varianta a algoritmului: Date de intrare: - f (contractie) - x (termenul initial al sirului) 00 - eps (eroare ce determina conditia de oprire: se calculeaza termenii sirului pna la xn cu proprietatea xn xn+1 eps ). - Nmax- numrul mxim de iteraii ( n N max , va fi o condiie de oprire a buclei) Date de ieire: xn (aproximatie satisfacatore (determinata de eps) pentru punctul fix). { x = x ; x = f (x ) ; 0 00 1 0 n=1
Teorema urmtoare asigur condiiile pentru convergena unui proces iterativ de punct fix
Teorema
Presupunem c avem i) g , g ' C ([a, b]) ii) k este o constant pozitiv iii) p0 (a, b) iv) g ( x) [a, b] pentru x [a, b] Atunci a) Dac g ' ( x) k < 1 pentru orice x [a, b] atunci iteraia pn = g ( pn1 ) va converge la un punct fix unic p [a, b] ; b) Dac g ' ( x) > 1 pentru orice x [a, b] atunci pn = g ( pn1 ) nu va converge la p.