REZOLV AREA NUMERICA A ECUAIIILOR ALGEBRICE SI lRANSCENDENTE
,
3.2. Izolarea radacinilor
Se considera ecuatia de forma
f(x) = 0, (3.2.1)
unde functia f: I -+R, I c R este continua pe intervalul I.
Realizarea izolarii tuturor radacinilor ecuatiei (3.2.1) se incepe, in cazul general, cu divizarea domeniului de definitie I al functiei f(x) intr-un numar minimal de sub intervale astfel, incnt in fiecare din ele sa se contina nu mai mult de 0 radacina real a; in continuare, are loc izolarea propriu-zisa, adica selectarea dintre aceste subintervale pe ace lea care contin cate o singura radacina,
Deseori, la izolarea radacinilor se aplica metoda graficii. Pentru aeeasta, se construieste graficul functiei y = f(x) si, daca S este abscisa punctului de intersectie al grafieului eu axa Ox, atunci f(s) = o.
y
y =f(x)
a
o
ib x
Fig. 3.2.1
De exemplu, in cazul figurii (3.2.1), abseisele punctelor de intersectie (Sl. S2 si S3 ) ale curbei y = f(x) cu axa Ox, reprezinta radacinile ecuatiei f(x) = O.
Daca ecuatia nu poseda radacini foarte "apropiate" intre ele, atunci, folosind metoda in studiu, putem indica efectiv pereehi de valori a, si b, intre care sunt situate care 0 singura radacina Si.
Foarte freevent, pentru izolarea grafica a radacinilor, e mai comod de inloeuit ecuatia (3.2.1) printr-o ecuatie echivalenta ei de forma
g(x) = tp(x) , (3.2.2)
apoi de construit graficele functiilor y = g(x) si y = tp(x) in acelasi sistem de coordonate.
b x
Fig. 3.2.2
Abscisele punctelor de intersectie ale acestor 2 grafice ( Sl si S2, in cazul figurii 3.2.2) vor reprezenta radacinile ecuatiei (3.2.2).
36
CapitolullII. REZOL VAREA NUMERIC,'\' A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
Apelarea la aceasta varianta a metodei grafice este rezonabila in cazurile cand cercetarea functiei y = f(x) este dificila, iar construirea graficelor functiilor y = g(x) si y = rex) nu prezinta dificultati. De exemplu, pentru f(x) = x2 - cosx, se construiesc curbele y ::; x si
y = cosx. Abscisele punctelor de intersectie ale graficelor obtinute vor reprezenta solutiile ecuatiei transcendente x2 - cosx = o.
Se mentioneaza, ca metoda grafica de izolare a radacinilor nu intotdeauna permite separarea sigura a lor, de exemplu, pot fi chiar si cazuri de "pierdere" a unor solutii, De aceea, in continuare, radacinile izolate grafic trebuie validate prin cercetare suplimentara, utilizand unele proprietati ale functiilor, care se studiaza in cursu] de analiza rnatematica. In acest scop poate fi utila
Teorema Bolzano-Cauchy. Dacii functia y = f(x) este continua pe [a,b] si la extremitiitile acestui interval are valori de semne opuse (adica f(a)· f(b) < 0 ), atunci pe \ a, b) existii eel putln 0 riidiicinii a ecuatiei f(x) ::; o.
In ipoteza teoremei formulate, in interiorul intervalului [a, b) existd un numar impar de radacini ale ecuatiei f(x) = 0 ( Fig. 3.2.3 ), mai mult, radacina ~ vafi unica pe (a, b), daca _:le aeest interval f(x) este monotond, in particular, daca exista ~i isi pdstreazii semnul ,ierivatafO\x), adica f(!)(x) > 0 sau f(l)(x) < 0, V x E (a, b) (Fig.3.2.4).
y
y =f(x)
a
x
o
Fig. 3.2.3
y f(a) >0
f(J)(x) < 0 V x E (a, b)
a
x
.Fig.3.2.4
in cazul existentei derivatei [unctiei f(x) pe [a,b], pentru izolarea radacinilor poate fi
coma metoda analiticii, care presupune urmdtoarea succesiune de actiuni: 1) se afla derivata f(1)( x);
2) se rezolvd ecuatia f(J)(x) = 0;
3) se alcatuieste tabelul semnelor valorilor funciiei f(x), utiliriind sirul lui Rolle: ,;1 orile critice (radacini ale derivateii sau valor; foarte apropiate de aces tea;
. .ilorile marginale ale domeniului de definitie alfunctiei ftxv;
~ \ se determina intervalele, La extremitatile carora functia are valori de semne opuse . . 'c' intervale con/in in interiorul lor elite a singura radacina a ecuatiei in studiu.
~~ exemplu, pentru configuratia 3.2.5 a graficului functiei y = f(x), prin metoda ::23. trebuic sa obtinem urmatoarele intervalele "suspecte": [a ,ttl , [td2], [t2,(3], [t3,t4], .. ., _ :t5.t6], [t6,b], iar dupa validare -jntervalele de izolare a radacinilor reale: [a,tIl, [td2],
37
Catlitolul III, REZOI,VAREA NUMERIC.i\. A ECVATm~f.,GERRICE SI TRANSCENDENTE
pIJ(tS) == 0 -~')(")=O
its it6 :b x
--,~-+--,-,-----~.---'-~""'-+-
y =j(x)
Fig, 3.2.5
Evident, aplicarea mctodei descrise este eficienta daca realizarea p.2) nu prezinta dificultati.
Exemplul 1. Folosind metoda grafica, sa se izoleze radacinile reale ale ecuatiei
f(x) == x3 + 3x -, 6:::: 0 . (3.2.3)
Rezolvare. Scriern ecuatia (3.2.3) sub forma x3:::: -3x + 6, apoi construim graficele functiilor y:::: x' ~i y :::: .,_ 3x + 6. Conform figurii 3.2.6, ecuatia (3.2.3) are 0 singura radacina reala 1;E(L2). Verificarn aceasta afirmatie. Pc intervalul [1,2J functia f(x) :::: x' + 3x - 6 este continua ~i Ia cxtremitatile lui primeste valorile f( 1) :::: -2 si f(2):=: 8, care sunt de sernne opuse. Mai mull, j(])(x) = 3x2+ 3> 0, V xE(-·=,+oo). Deci, inrr-adevar unica radacina a ecuatiei (3.2.3) este situata pc intervalul (1,2).
y = - 3x + 6
y
,
-_ v = 3x--l
- __ - y =x3
......................... 2 .
Fig. 3.2.6
Fig. 3.2.7
Exemplul 2. Folosind metoda grafica, sa se izoleze radacinile reale ale ecuatiei
3 2 '
f(x) == x - 3x + 1 :::: O.
(3.2.4)
38
Capitolul m. REZOLVAREA NUIVrERICA A ECUATHLOR ALGEBRICE 81 TRANSCENDENTE
~ .. :F,h are. ~nlocuind ecuatia (3.2.4) prin echivalenra ei x'::: 3x2 -- 1. construim curbele
.:: - y = 3x": .. 1 ( Fig, 3.2.7 ). Conform desenului, toate 3 radacini ale ecuatiei in studiu
'" =- ::1tial restrans. Prin probe constatam ca j(3) >0. deci ~3E (1,3).
: ecuatia polinorniala de gradul trci poseda exact 3 radacini, iar in cazul dat toate ::::,'C::. decade necesitatea dcmonstratii unicitatii lor pe intervalele respective.
:. ve ruplul 3 Prin metoda analitica sa sc localizeze radacinile rcalc ale ecuatiei
f(x) = xi + 3x2 - 1 :::: O. '
(3.2.5)
k e zolvare. Functiaj(x, este definite si derivabila pe lntreaga axa numcrica.
Dcoarece au loc trei alternatii de sernne ale functici f(x) , conch idem cit ecuatia (3.2.5) are :ci radacini reale. Luand de proba x::: --3, aflarn f(-3) =: -3 < O. Prin urmare, radacinile .,uatiei in studiu se contin respectiv in inrervalele: (--3, -2), (-1, 0): (0, J).
Pcntru localizarea unci radacini, pornind de la inrervalul la, b], uneori este utila metoda »robelor, realizata conform urmatorului algoritrn. Se alege pasul initial It = (b - a)in, IlE N·". ::~ilialjzand x::: a, se calculeaza succesiv valorilejtx) ell pasul h pana cand valoarea Fx)
:·.u·~i schimba semnul. Astfel primim extremitatea din drcapta a intervalului restrans:
b' = a + i-h, unde i - numarul de pasi parcursi. In continuare, pasul h se rnicsoreaza, .alcularea valorilor f(x) decurge in directia opusa ell semn negauv al pasului. Procesul .ontinua pana cand I(x) nu-si schimba din nou sernnul. in asa mod, extrernitatea stanga a .ntervalului restrans va fi a * = b * -j'h/m, unde m este coeficicntul de rnicsorare a pasului .nitial Iz. Daca pc intervalul [a*, b"] functia f(x) este monotone. atunci [a*, b*] la sigur, va reprezenta intervalul de izoiare a unci radacini. Depistarea radacinii va putea esua, daca pasul h va depasi distanta dintre careva radacini vecine.
In scopul izolarii unei radacini a ecuatiei I (x) :;:: 0, pornind de la intervalul indicat [a, bl, po ate fi utilizata schema logica din figura 3.2.8. care descrie algoritmul prezentat mai sus.
CapitolullII. REZOL V AREA NUMERICA A ECUATlILOR ALGEBRICE SI TRANSCENDENTE
Serie: 'NDR'
Nota: 'NDR' -'Nu-i depistata radacina !'.
Intrebari si exercitii
Fig. 3.2.8
1. Pentru simplitate, in schema logica reprezentata in figura 3.2.8, nu a fast prevazut cazul eventualei depistari a unei radacini exacte. Care pot fi consecintele ? Dati propuneri in vederea perfectionarii schemei in cauza.
2. Transcrieti schema logica, reprezentata in figura 3.2.8, intr-un program Pascal, destinat localizarii uneia dintre radacinile reale ale ecuatiei I(x) = 0 pe intervalul specificat la, b].
40
Capitolul Ill. REZOL V AREA NUMERIC~ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
3. De elaborat un program Pascal, destinat localizarii tuturor radacinilor reale ale =,-::uatiei !(x)==O pe intervalul specificat [a, b].
4. Subiecte pentru sarcini individuale:
a) Sa se izoleze prin metoda grafica radacinile reale ale urmatoarelor ecuatii neliniare:
Comparati rezultatele izolarii prin metoda analitica eu cele obtinute eu ajutorul - rogramului, elaborat conform exercitiului 3.
Capitolul III. REZOLVAREA NUMERIC\ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
Precizarea radacinilor
In continuare vom exam ina cele mai uzuale metode numence de precizare a radacinilor reale ale ecuatiilor neliniare: dihotomia. metoda coardelor, metoda Newton, metoda rnixta a coardelor ~i tangentelor.
3.3. Metoda injumatatirii ( dihotomiei) intervalului
Fie functia j'(x) este continua pc [zz, b], radacina ]; a ecuatiei f(x) = 0 este izolata pe acest interval, iar b - a > 2E, unde E este un numar pozitiv suficient de mic. Elaboram algoritmul de calcul al radacinii I; ell precizia data E, utilizand 0 variants a metodei probelor, ~i anumc, metoda injumiitiuirii intervalului, care se realizcaza dupa cum urmeaza.
Divizam intervalul [a, bl In doua jumatat! prin punctul c = ( a + b)/2 si calcularn valoarea fCc). Daca fCc) = 0, atunei e este valoarea exacta a radacinii si procesul de caleul stopeaza. Insa daca f(e) -.:f:: 0, din cele doua jumatati [a, e] si le, b 1 0 alegern pe aceea, la extremitatile careia functia prezinta valori de semne contrare( in fig.3.3.1 acesta e intervalul [c, b] ), il renotam r aI.bI ]. Daca bI - aJ> 2E, repetam aceleasi rationamente pentru intervalul nou [at.bI [.Capatam [a2,b2J de lungimea (b -a)/22.
Continuand procesui injumatatirii intervalului, vom obtine, sau ca la un careva pas mijlocul intervalului va fi radacina ecuatici ( caz ce sc inralneste foarte rar in practica ), sau un sir de intervale incluse unul in altul { fall. bnl: [all, bll] c [an-hbn-ll. n = 1,2,3, ... ; ao = a, b., = b}, pentru care
o
(3.3.1)
(3.3.2)
y
x
f(b»O
b
a
Fig. 3.3.1
Extremitatile stangi ao, ah ... , an, ... ale intervalelor construite formeaza un sir mono ton crescator marginit superior(de exemplu, de b), iar extremitatile drepte b-; b-, ..• , b.; ... - un sir monoton descrescator margin it inferior (de exemplu, de a). Deci sirurile {an},{brz} sunt convergente si, in baza egalitatii (3.3.2), conchidem ca ele au limita cornuna:
lim an = lim bll = I •.
Trecand la limita in (3.3.1), in virtutea c2ntin~itatf(fill~tieif(x), obtinem [f(A)]2 ::; 0. Deci f(A) = 0, adica A este radacina ecuatiei f(x) = 0; in baza unicitatii radacinii pe [a, b], rezulta
ca 1.=1;.
42
CapitolullII. REZOLVAREA NUMERIC'\' A EClJATIILOR ALGEBRICE SI TRANSCENDENTE
( Begin)
11 :=[Ln( (b-a )/eps)/Ln2]; L Fa:=:f(a);
Da
Nu
e:=(a+b)!2; Pc i« !(c);
Nu
a :=c; Fa:=Fc;
b:=c;
Nu
c :=(a + b)/2
zit radacina!'
Fig. 3.3.2
43
Capitolul III. REZOLV AREA NUMERIC~ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
Intrucat ~E [an, bnL In cali tate de aproximatie pentru ~ poate fi acceptat orice numar X E [an, bn]. Dar este rezonabil sa luam x = (an + bn)/2, deoarece daca b., - an S; 2E, atunci I ~ -- x I :::; (bn - an)/2::; E, adica X va fi aproximatie cu exactitatea solicitata.
Estimarea aposteriori a erorii
Din cele expuse urrneaza, ea daca dorim sli obtinem solutia aproximativa a eel/ariel j(x) = 0 cu eroarea e, estimatii aposteriori, trebuie sa continuam procesul injumatiuirii pan a la obtinerea unui interval (an. bll] de lungimea (bn - an) :::; 2E. in rezultat, vom capata:
~ = (an + bn)12 ± E.
Metoda injumatatirii, cu estimare apostcriori a erorii, poate fi realizata conform schemei logiee din figura 3.3.2.
Estimarea apriori a erorii
Pentru estimarea apriori a erorii, pornim de la egalitatea (3.3.2). Rezulta, ca pentru calculul rddacinii cu preciria e, proeesul injumauuirii intervalului trebuie continuat pdnd fa prima valoare a lui n, care satisface inegalitatea
(b-a)I2":::;2E, (3.3.3)
adica
11 = [In((b - a)/E)/ln2].
(3.3.4)
In ehenarul ce urrneaza este prezentata in limbajul Turbo Pascal unitatea de program REAT in care este inclusa functia Bisect, destinata calculului cu aproximatia E a radacinii ~, izolata pe [a, b], aplicand estimarea aposteriori a erorii:
{Rezolvarea ecuatiilor algebriee si transcendente }
Type Func = Function(x:Real):real; {Declarare tip funetic}
Function Bisectra.b.eps.real; f.Func; afis.boolean; Var nc,n:byte):real;
{n-numarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale; f -numele functici din ecuatia f(x) = 0; afis -confirmare pentru afisarea aproximatiilor succesive anterioare celei finale}
Implementation {**********************************************************************} Function Bisect;
Var c, Fa, Fe.real; { Declararea variabilelor locale, auxiliare ]
Exemplu. Fie ecuatia f (x) == x3 + 3x2 - 1 = O. Functia f (x) este continua pe intreaga - \3 numerics, iar radacinile ecuatiei date sunt izolate dupa cum urrneaza: ~1 E [-3, -2]; ~~ E [-1, 0]; ~3E [0, 1]. Aplicand programul atasat mai jos P_3_3_l Ia determinarea - ~jacinilor ecuatiei in stu diu ell preeizia eps = 0.0001, dupa 13 iteratii pentru fiecare din _:estea, se obtin rezultatele:
Vom spune ca radacina ~ a unei ecuatii jtx) = 0 este simplii daeaf(~) = 0 si f (1)( ~):;t: O. ~~ exemplu, functia y =jtx), graficul careia are aspectul din figura 3.3.3, In intervalul [a, b] _:~ 0 radacina simpla. In figurile 3.3.4 si 3.3.5 sunt reprezentate graficele a doua functii ce __ radacini multiple.
Capitolul m. REZOLVAREA NUMERIC,\ A ECUATIILOR ALGEBRICE Sf TRANSCENDENTE
y
f(})( .r ) > 0:
11"( ') ,., x) > t;
V XE la. bj
o a
Fig. 3.3.3
Fig. 3.3.4
Fig. 3.3.5
Dihotomia este 0 metoda destul de clara sub aspect algoritrnic ~i sigura In aplicare: in cazul radacinilor simple ea genereaza siruri convergente pentru orice functii continui. posedand stabilitatc la erori de rorunjire. Desi viteza de convergentd a rnetodei este redusa ( la executia unui pas precizia dour se dubleaza ), in multe cazuri aceasta metoda are 0 cornplexitate temporal a acceptabila in context practic, Mentionarn, de asemenca, ca metoda injumatatirii nu poate fi aplicata In cazul radacinilor de multiplicitate para (Yezi cazul radacinilor ~2 ~i C,3 din figura 3.3.4 ).
Intrebari si exercitii
1. Care sunt conditiile suficiente pentru aplicarea metodei injumatatirii intervalului la rezolvarea ecuatiilor algebrice ~i rranscendente ?
2. Po ate oare fi aplicata metoda dihotomiei pentru precizarea radacinilor multiple?
3. Care pot fi consecintelc la aplicarea metodei dihotomiei, daca apriori nu a Iost specificat corcct intervalul [a, b] de izolare a radacinii ? Indicatie: analizati cazurile:
1) pe [a, b] nu se contine nici 0 radacina;
2) pc la, b J sc contin mai mult de 0 radacina:
a) un numar par de radacini;
b) un numar impar de radacini.
4. Care pot fi consccintele daca la aplicarea metodei dihotomiei nu se va examina cazul j(c) = O?
5. Elaborati un program pentru aplicarea metodei dihotomiei in cazul estimarii apriori a erorii. Indicatie: utilizati formula (3.3.4).
6. Deterrninati numarul de operatii aritmetice utilizate la efectuarea calculelor dupa programul elaborat conform p.4.
7. Elaborati un program Pascal care va realiza metoda dihotomiei, fiind dat numarul de divizari n; programul va determina si eroarea s a rezultatului obtinut. Indicatie: utilizati relatia (3.3.3).
8. Sa se realizeze printr-un program unie atat localizarea radacinilor pe intervalul speeifieat [a, b], cat si determinarea lor cu exaetitatea prescrisa E.
9. Subiecte pentru sarcini individuale:
Sa se rezolve prin metoda dihotomiei ecuatiile neliniare, propuse la sfarsitul
paragrafului 3.2, eli precizia prestabilita E.
46
Capitolul III. REZOLVAREA NUMERIC.~ A ECUATHLOR ALGEBRICE Sl TRANSCENDENTE,
3.4. Metoda secantelortcoardelor)
-~.ccr3. ecuatia j(x) == o.
__ :.~epuL vom cere indeplinirea acclorasi conditii ca si la metoda dihotorniei: .,. c. h] - ... R este continua pe intervalul [a, bj:
.. _._:_ ina ]: a eciuuiei j(x):::: 0 cste izolata pe [rz, bL deci lea) 'f(b) < O .
. i~", _, dctcnninat radacina ~ ell exactitatea E.
, ". dihotomie, in calirate de aproximatie a radacinii se va cauia un punct interior al __ . _" [a, b], dar 111 acest caz el nu neaparat va fi mijlocul scgmentului.
" ~ecr geometric metoda ill studiu este echivalenta cu inlocuirca curbei y :::: f (x) pc ..iul [a, b] prin segmentul de dreapta ce unestc punctele (a,fea)) ';ii (b,f(b)) (Fig.3.4.1) .
.. _ -\lmfmd astfel solutia S prin punctul de intersectie C1 al sccantei ell axa Ox. La alegerea . .niervalului urmator [ahbd se foloseste conceptul metodei dihotomiei: cxtrernitatea In care - :--:nul functiei coincide ell semnul valoriij'(c.), trece III Cl- In cazul fjg,3,4-.1 b a trecut in Cl. ~ __ j procedeul va putea fi continuat prin constructia secantci corespunzatoare intervalului _: .b, j. Procesul se repcta, pfina nu obtinem 0 apropiere suficienta de solutie.
y
o a
! (b,J(b))
b x
Fig. 3.4.1
Sa deducern acum expresia analitica a aproximatiei solutiei ~. In aces! scop pomim de la :~.;a~ia dreptei care trece prin punctele (a,/(a) si (b,f(b»:
y-f(a) x-a
---=. _ _o_ __ =
f(b)-f(a) b-a
Intersectia secantei cu axa Ox se obtine substituind in ecuatia de mai sus y = 0 si _ - .and prin CI valoarea corespunzatoare a lui x:
- f(a) _ c1 -~
f(b)-f(a) b-a'
'::Jnde
C = a __ _;:_f_(a) - (b -a),
1 f(b)-f(a)'
(3.4.1)
.:_. in forma simetrica,
47
anf(bn) -bnf(an)
Cn+l = .,
f(bn) - f(an)
an+1 :::: an ~I bn+1:::: CII+I, dad! f(all)' f(CII+l)<O, an+1 = CII+i si bn+1 :::: b.; daca f(all)' f(Cn+l»O ( n =0,1,2, ... ).
CapitolullII. REZOLVAREA NUMERICA A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
af(b)-b/(a)
C1 = .'
feb) - /(a)
Asadar, algoritmul de construire a sirurilor {a,,}, {bn}, {cn+d este similar celui folosit la metoda dihotomiei: initializand ao:::: a, b« = b, se aplica rcpetat urmatoarea secventa de formule recurente:
(3.4.2)
Este demonstrat ca sirul {C,,+I}, construit conform algoritmului prezentat, converge catre radacina ~. Daca pentru estimarea erorii se accepta una din relatiile 1/(CII+I) I ~ E sau Icn+l - C" I ~ E, (care, la general, nu sunt echivalente ell relatia definitorie I ~ - C"+l I ~ E ), atunei aceasta interpretare a metodei secantelor fumizeaza rezultate satisfacatoare.
Estimarea erorii
Acurn, in plus la conditiile impuse fa inceputul paragrafului curent, vom cere ca functia f(x) safie derivabild pe [a, b] si sa existe un numdr m >0 astfel, incdt I/(])( x) 12m. Atunci conform formulei generale (3.1.3), pentru estimarea aposteriori a erorii aproximatiei Cn+l poate fi folositii formula:
unde m = infl/w( x)1. xE [a, b].
Observatie, In calitate de m poate fi acceptata valoarea minima a expresiei If (1)( x)1 pe intervalul [a. b], iar pentru a obiine solutia ~ cu precizia prescrisa E, procesul de ealeul at termenilor sirului {Cn+I} se intrerupe cdnd se va satisface relatia
(3.4.3)
Prezentam In limbajul Turbo Pascal functia Secante, destinata caiculuJui cu precizia E a
radacinii , izolata e la, b], a licand estimarea a osteriori a erorii, conform relatiei (3.4.3) Function Secante(a, b, m, eps:Real; f: Func; afis.boolean; Var nc,n:Word):Real; {n-numarul de iteratii; nc-numarul de zecimale Ia afisarea valorilor reale; f -riumele functiei din ecuatia f(x) = 0; afis -confirm are pentru afisarea aproximatiilor
If afis Then WriteLn('x=', cl :O:nc,' f(x)=', f(cl):O:nc); c t= c l ; Fc:=f(c);
If Fe<> 0
Then Be in
48
CapitolullII. REZOLV AREA NUMERIC,~ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
If Fa* Fe <0 Then Begin b: = C; Fb:= Fe; End Else Begin a:= c; Fa:= Fe; End;
cl:= (a*Fb - b*Fa)/(Fb - Fa); Inc(n);
End;
L'ntil abs(f( CI» <= Er; 5 ecante.ecl ;
End. {Secante}
t-~::> atie. in continuare vom considera ca functia Secante este inclusa In unitatea REAT.
Exemplu_l. Fie ecuatia f(x) == x5 + 7x + 5 = 0, care are radacina ~ izolata pe -';;;-valul [-1,0]. Vom evalua valoarea In, conform relatiei (3.4.3). Dcrivata functiei este .: : x) = 5x4 + 7, iar valoarea minima a modulului derivatei pe intervaluI [-1,0] este 7, -==ci putem accepta In = 7.
Exemplu_2. Se considera ecuatia f(x) == 20x + sine 6rrx) + 100 = o.
:>;:>terminam f (1\ x) = 20 + 6rrcos( 6rrx). Tinand cont de domeniul de variatie al functiei ." = COSX, constatam ca f ~J)( x) >0 \:!XE (-oo ,+(0), deci functia f(x) este mono ton . .escatoare pe intreaga axa numerica. In baza monotoniei functie f(x) ~i justetei relatiei . -5.2)1(-4.4)<0, rezulta: unica radacina a ecuatiei 'in studiu este situata 'in intervalul -5.2, -4.4]. Cercetand variatia functiei f(J)( x) pe intervalul restrans, obtinem:
f ')(x)1 >1, \:!XE [-5.2, -4.4], deci putem accept a In = 1.
Pentru rezolvarea ecuatiilor examinate eu precizia prestabilita E, s-a aplieat programuI P _3_4_1.
Readln;
End; {Rezolvare} Begin
Clrscr;
Program P _3_4_1; { Metoda Secantelor }
Uses Crt, REAT;
Function Yl(x:real):real; Far; {Far-directiva de compilare}
Begin Yl :=x *x*x*x*x+ 7*x+5; end; {Definirea primei funetii }
Function Y2(x:real):real; Far; {Definirea funetiei a doua }
Begin Y2:=20*x+sin(6*Pi*x)+IOO; end;
Procedure Rezolvare(a, b, rn, eps:ReaJ; F:Fune;afis:boolean;ne,k:byte); Var x:Real; n:byte;
Begin
ClrScr; Writel.nr'Rezolvarea ecuatiei ,',k,':'); If F(a)*F(b)<O Then
WriteLn('x=' ,x:O:ne,' f(x)=' J(x):O:ne); Writeln('n=' .n); End
Else Writel.nr'Nu este izolata radacina');
49
Capitolul IIi. REZOLVAREA NL1MERiC.~ A ECUATJILOR ALGEBRICE SI TRANSCENOENTE
r==-=========~===~~-=--
II RezolvareCLO.7, O.OOOl,yl,true, 1J, 1);
ii Rezolvaref-S.Z. -4,4. 1,0.0001. y2. true, 11,2);
Ii Readln:
L End. ==~=
Analizand secventele aproximatiilor radacinilor ecuatiilor in studiu, prezentate in acest iabcl, conch idem ell prirnul sir converge monoton catre radacina din partea dreapta a ei, pe cand eel de-al doilea sir, este convergent, dar nu si monoton. Cauzele acestei divergente vor putea fi motivate, studiind In coniinuare 0 alta varianta a metodei secantelor - metoda coardelor.
Metoda coardelor, Acum. in plus La conditiile impuse La inceputul paragrafului curent, vom cere ca [unctia f(x) si'i fie de doua ori derivabild pe !a, b], iar derivatele f (1)( x) si f(2\ x) sa nu se anuleze sijiecare sa-si pdstreze semnul pe acest interval. In acest ca: putem aplica () variantd mai rapidd a metodei secantelor.
Restrictiile formulate suplimentar specifica patru tipuri posibile de configuratie a graficului Iunctiei f(x) pe intervalul la, b] ( Fig. 3.4.2 ), fiecarc din care corespunde unuia din urmatoarele cazuri:
I. f(1)( x) > 0; f(2)( x) > 0; [unctia e strict cresciitoare, graficul ei este convex in jos; II. j 1l( x) > 0; f(2\ x) < 0; functia e strict cresciitoare, graficul ei este convex ill sus; III. fW( x) < 0; 1(2)( x) > OJ [unctia e strict descresciitoare, graficul ei este convex in
jos;
IV. f(o( x) < 0; f(2)( x) < 0; functia e strict descresciitoare, graficul ei este convex in
sus.
50
f:apitolullII. REZOLVAREA NUMERJCA A ECUATJILOR ALPEBRICE SI TRA~SCEl\ilml\TE
I y
o
f(I)( x) > 0; I'": x) > 0
III y
f(I)( x) < 0; rUle x) > 0
x
f(I)( x) > 0; f'\x)<o
o
x
IV y
r1)( x) < 0; fi'2\x) <0
o a
Co
Fig. 3.4.2
Cercetand constructiile din figura 3.4.2, conchidem ca unul din punctele a si b. pe tot rcursul de caleul al aproximaiiilor Ck (k = 0,1,2 .... ), este fixinemiscaty, acesta fiind acea +einitate a segtnentului [rz, b], En care semnul functiei coincide cu semnul derivate; de .iinul doi, adicd fixii este extremitatea pentru care are loc relatia: f (X)1(2)( x) > O.
Astfel putem face urmatoarea concretizare:
in cazurile I si IV fixa este extremitatea b, iar formula f(cn)
- ~ .nuta prin inductie, pomind de la formula (3.4.1), genereaza un sir monoton crescator ':'~ginit superior: a = CQ < c) < C2 < ... < Cn < Cn+1 < ... < ~ < b;
in cazurile II si III extremitatea fixa este a, iar formula
cn+1 = cn - f(c,J (en -a) (Co = b; n = 0,1,2, ... ), (3.4.5)
j(cn)-f(a)
-::nuta din (3.4.4) prin interschimbul lui a eu b, genereaza un sir monoton descrescator
Deoarece orice sir crescatortdescrescator) marginit superior(inferior) este convergent, _-~'::3Za ca sirurile generate de formulele (3.4.4) si (3.4.5) sunt convergente, iar valoarea de
51
Capitolul III. REZOL V AREA NUMERICA A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
Iimitat 1 ) a fiecarui din ele este radacina a ecuatiei respective. Intr-adevar, tinand cont de continuitatea functiei j'(r), trecem la limita in formula recurenta (3.4.4):
f(lim cn)
I· I' n-"~ (b I' )
Imcn+! = Imcn - • - Imcn '
11->= n-->= f(b)- f(hmcll) n-.=
n.......,oo
sau dupa inlocuire,
1..=A.- ICA.) (b-'J...),
I(b) - I(A.)
de un de rezulta f( A) = 0, iar, in virtutea unicitatii solutiei pe [a, b], conchidem ca A. = ~, ceea ce trcbuia de demonstrat. In cazul formulei (3.4.5), demonstratia este analogica.
Notand prinp capatul jbzzr, reunim formulele (3.4.4) si (3.4.5) in una singura, pe care, dupa analogie eli (3.4.2),0 reprezentam in forma simetrica:
cnf(p)- p : f(cn)
cn+l = , (3.4.6)
f(p)-f(cll)
(n = 0,1,2, .. ; Co= b si p = a, daca J(a) 1(2)( a) > 0; Co= a si p = b, daca feb) 'f(2)( b»O) Formula (3.4.6) si reprezinta "miezul" algoritmului metodei coardelor.
Estimarea erorii. in ipotezele impuse de metoda coarde/or, se demonstreaza cii estimarea aposteriori a erorii este conformd relatiei
I ~ - cn+ll::; ( M2 - ml)/ m-: len+l - Cn 1 '
unde
m, = inflf(I)( x)1 ~i M2 = suplf(l)( x) I.
xE [a, b] xE [a, b]
Deci pentru a obtine solutia ~ cu precizia E, procesul de calcul al termenilor sirului {ell+]}, dupa formula (3.4.6), se va intrerupe cdnd va [i satisfdcuta relatia (M2 - ml)/ m» lell+l - cllls E, sau
I CIl+] - cllls E' m, / ( NI2 - ml). (3.4.7)
Mai jos se prezinta functia Coarde( considerata components a unitatii REAT). destinata ealculului ell preeizia [; a radacinii ecuatiei f(x) = 0, izolate pe [a, b], aplicand formula recurenta (3.4.6) eu estimare aposteriori a erorii:
Function Coarde (a.b.rn 1,m2,cps:real; f,f2:Func; afis.boolean.Var nc,n:bytc):rcaI; 1 {n-numarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale:
f-numele functiei din ecuatia f(x)=O; f2-numele derivatei a doua a functiei f(x); afis-confirmare pentru afisarea aproximatiilor succesive anterioare celci finale}
Var c.c l.p.Fa.Fp.Fc.Er.real; {Declararea variabilelor locale auxiliare} Begin
Er:=eps*m1/(M2-ml); Fa.efra); n:=O;
[Determinarea extremitatii fixe si initializarea celei mobile} If Fa*F2(a»0 Then Begin p:=a; Fp.ef'a; e1 :=b; End
Else Begin :=b; F :=F(b); e1 :=a; End;
52
Capitolul HI. REZOL V AREA NUMERIC;\' A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
{Calculul iterativ al aproximatiilor succesive} Repeat
c1 :=(c*Fp-p*Fc)/(Fp-Fc); inc(n); Until abs( c l-c )<=Er;
Coarde.ec l ;
End; {Coarde}
Exemplu. Fie ecuatia I(x)=, x3 - 4x + 1 = 0, care are radacinile.Le [-3,-21. ~2 E [0.1,11, ~,E [l,2]. Vom verifica posibilitatea aplicarii metodei coardelor pentru precizarea radacinilor ecuatiei date.
Derivatele functiei sunt: I (1\ x) = 3x2 - 4; / (2)( x) = 6x. Examinant semnele acestor derivate pe intervalele de izolare ale fiecarei radacini si determinam marimile m, si M2:
1) /(1)( x) = 3x2 - 4> 0, 1(2\ x) = 6x < 0, V x E [-3,-2]:
cazul II:co==b = -2,p = a == -3, m, = minl/W( x)1 == 1f(I)( -2)1 = 8,
M2= maxI/U)(x)1 = 1f(J)(-3)1 = 21 pentru xE [-3,-2];
3) Constatam ca derivata / (1)( x) = 3x2 - 4 nu are semn constant In intervalul [1,2]. Deci .:ste necesar de restrans intervalul de izolare a radacinii ~3' Prin injumatatirc, obtinem noul subinterval de izolare, si anume [l.5, 2], pentru care avem:
r 1)( x) == 3x2_ 4> 0, /(:)( x) = 6x > 0, V x E [1.5,21:
cazull: cs=« = 1.5,p == b == 2, m, == minl/(Il( x)1 == 1f(J\ 1.5)1 == 2.75. M2= max 1/(1)( x)1 = =1/'\ 2)1 == 8, Vx EI1.5,2j.
Pentru rezolvarea ecuatiei date s-a aplicat programul P __ 3_ 4_2.
Program P _3_A_2; {Metoda_Coardelor}
Uses Crt, Rcat;
Function F(x:real):real; Far; [Far-directiva de compilare} Begin F:==x*x*x-4*x+l; End; {Definireafunctiei f(x)}
Function F2(x:real):real; Far; [Definirea derivatei a doua a functiei f(x)}
Begin F2:==6*x; end;
Procedure Rezolvarera.b.m l ,m2,eps:Real; F,F2:Func;afis:boolean:nc,k:byte):
Var x:Real: n.byte; Begin
ClrScr;
Writel.nr'Precizarea radacinii_',k, ': '); If F(a)*F(b)<O Then
Begin
xc=Coarde (a.b.m l ,m2,eps,f,f2,true,nc,n); WriteLn(,Aproximatia finala: '); WriteLn('x=',x:O:nc, ' f(x)=',f(x):O:nc);
53
Capitolul m. REZOLVA REA NUMERICA A En)A lHLOR ALGEBRICE SI TRANSCENDENTE
Readln;
End~ [Rezolvare} Begin
Rezolvare(·3,2. 8, 21,0.0001. L 1"2, true, 5, 1); Rezolvarett). L l , 1, 4, (lOOO L f. . true. 5,
Rezultatele obtinute I a executia programului P .. 3_A __ 2, sunt prezentate in urmatorul
Analizand secventele aproxirnatiilor radacinilor ecuatiei In studiu, prezentate in tabelul atasat, ne convingem ca toate trei siruri converg monoton catre radacinile respective conform cazurilor specificate in analiza anterioara,
~ :,.2. III. REZOL VAREA NU,\fFJUC;\ AECUATHLOR AI-GERRICI': 51 TRANSCENDENTE
eve rcirii
;,.:ntrt' aplicarea metodei secantelor. este suficienta doar continuitatea .r ;'C iniervalul de izolarc a radacinii ecuatiei j(x) =0 ?
_.: 0:.: cxemplului __ 2 prin programul P_3_ 4_1 S-3. obrinut un sir alternativrci nu 2~ .iproximatii ale radacinii. Explicati fenomenul.
- JJ consecintcle, daca la aplicarea mctodei coardelor nu va fi coree: specificat
., :~,1 fix? (Indicatie: Vezi sectiunea J a figurii 3.4.2);
) ~l <c fadi 0 analiza cornparativa a celor 2 variante ale metodei secantelor. [inand cont
de urmatoarele:
a) conditiile suficiente de aplicare;
b) modalitatile de estirnarc a erorilor:
c) modurile apropiere de radacina;
ell avantajele ~i dezavantajelc fiecarei din variante.
5. Elaborati un program care va metoda coardelor fiind dat nurnarul de divizari programul va deterrnina si eroarea G a rezultatului obtinut. Indicatie: utilizati relatia .~-+7).
6. Rcalizati un program carcva efectua alternativ un pas al mctodei dihotomiei ~j un pas _II, metoda coardelor;
7 S:5. se realizcze printr-un program unic atf~t metoda ~j metoda coardclor,
;;lic8te dependent una rap. de alta. Ambele meiode vor folosi estimarea apostcriori a crorii, Prograrnul va Iolosi acelcasi date de intrare pentru 811!bc1e metode. Faceti 0 analiza .omparativa a rezultatelor obtinute prin metodele studiate:
8. Subiecte pentru sarcini individuale:
Sa se rezolve prin metoda coardelor ccuatiile neliniare, propuse la sfarsitul paragrafului . 2, ell precizia prescrisa E.
3.5. Metoda lui Newton
Fie ecuatia
f(x) = 0, I: [a.bl-~R la,b] cR
(3.5.1)
Vom cere indeplinirea acelorasi conditii ca ~i la metoda coardelor: l)func{ia f(x) este de doud ori dcrivabila pe intervalul !a, b]; 2)f(a) ·f(b) < 0;
3) derivatele f (J)( x) ,~i f (2)( x) nu se anulearii si fiecare isi pdstreara semn constant [a,bl·
Aceste conditii garanteaza existenta si unicitatea radacinii ~ a ecuatiei (3.5.1) pc [a, b], .: . ai mult, restrictia 3) specifica unul din cele patru tipuri posibile de configuratie ale ;~aficulni functieijtx) (vezi fig,3.5.1), cunoscute deja de la metoda coardelor.
Un procedeu efectiv de precizare a radacinii ~ este metoda lui Newton. Constructia care ,:.1 la baza acestei metode 0 apropie de metoda coardelor, inlocuind coarda eu tangenta ~3sata la graficul functiei y =.f(x), asa cum se vede In sectiunile Iigurii 3.5.1.
o
Capitol"l III. REZOL V AREA NUMERIC':\ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
I y
/(1)( x) > 0: /(2)( X) > 0
y =/(x)
o
x
III y
IV y
(tof(to»
/(1\ X) < 0; /(2)( X) > 0
o
b
o a
X
Fig. 3.5.1
II y
/(1)( x) > 0; /(2)( x) < 0
x
(1o,f(4»
/0)( x) < 0; /(2)( x) < 0
4 x
b
a
Pomind de la 0 aproximatie initiala ~E [a,b]. eonstruim t, ea punet de intersectie al tangentei, trasata la grafie prin punetul (t., /(10», eu axa Ox. Pentru a determina analitic acest punct, seriem ecuatia respeetivei drepte tangenta:
y - /(to) =/(1)( to) (x - to).
Substituind in aceasta ecuatie y = 0
~i notand prin t, valoarea respectiva a lui x, obtinem: -- /(to) = /(I)(~)( tl- to),
t =t _ /(to)
I 0 / (l)(tO) .
de unde rezulta
In general, repetand constructia de mai sus prin intersectia dreptei tangents, trasata la grafie prin punetul (tn,f(tn», cu axa Ox, se obtine:
/(tn)
tn+l = tn - (1) ( n = 0,1,2,3, ... ) (3.5.2)
/ (tn)
Aceasta si este constructia care poarta numele de metoda lui Newton sau metoda tangentelor.
Urmeaza de rezolvat intrebarea initializarii sirului {t,}. Cercetand constructiile din figura 3.5.1, observam ca to a fost initializat prin una din extremitatile segmentului [a, b]. De regula, asa si se accepta: to = a sau ~ = b, in dependents de faptul, in care din aceste puncte are lac 56
Capitolul III. REZOLV AREA NUMERIC~ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
inegalitatea f(to) f (2)(to) >0. Daca insa, vom pomi de la cealalta extremitate, tangenta construita poate genera parasirea intervalului (cum ar fi in sectiunea I a figurii 3.5.1), caz In care consecintele sunt imprevizibile.
Teorema 3.5.1. Fie functia f(x) cu proprietiitile 1) -3), formulate la inceputul temei curente. Atunci, pentru convergenta sirului {tn+Il, generat de formula recurentii (3.5.2), ciitre riidiicina ~ este suficient de pornit de la acea extremitate (to = a sau to = b ) a intervalului rap], pentru care este satisfiicutii rela(iaj(to)f(2l(to»O.
*Demonstra{ie. Examinam cazul I(celelalte eazuri se examineaza analogie):f(J)( x) > 0, f(2}( x) > ° Y X E [a, b]. Fie tn >~. Scazand din (3.5.2) egalitatea
f(~)
~=~- f(l)(tn)'
apoi aplicand formula Lagrange, obtinem egalitatile
t .:» =t .:» _f(tn)-f(~) (t _~)(1 __ f(l)(11» ):
n+1 ~ n ~ f(1)() n ~ f ( ) , ~ < 11 < tn. (3.5.3)
tn (u tn
Deoarece, dupa ipoteza f (1)( x) > 0, f (2)( x) > ° Y X E [a, b), din (3.5.3) rezulta o <I'": 11 )/ f(l)( tn)<1. De aici urmeaza ca 0< tn+1 - ~ < t, - ~, adica
~ < tn+1 < tn. (3.5.4)
Intrucat pentru n = ° are loe relatia to = b > ~, In baza inductiei matematice complete, inegalitatea (3.5.4) este justa pentru toate valorile n = 0,1,2, ... , mai mult, aceasta relatie confirma ca sirul { tn+l} este monoton descrescator si marginit inferior de numarul ~. Urmeaza ca sirul generat de formula (3.5.2) este convergent, iar valoarea lui de limita( A ) este radacina ecuatiei (3.5.1). Intr-adevar, tinand eont de continuitatea functiei f(x), tree em la limits In formula recurenta (3.5.2):
A=J __ f(')..) f(1)(')..)'
.ie unde f(A) = 0, iar in virtutea unicitatii solutiei, eonchidem ca ').. = ;, ceea cesi trebuia iii.iernonstrat.
In baza teoremei 3.5.1 si analizei constructiilor din figura 3.5.1, generalizam urmatoarele: in cazurile I si IV ( f(b)1(2)(b»0 ), initializdnd to= b.formula (3.5.2) va genera sirul
b = to> t, > ... > t, > tn+1 > "', convergent din dreapta catre radacina ;;
In cazurile II si III ( f(a)1(2)(a»0 ), initializ/ind to= a, formula (3.5.2) va genera sirul a = to < t, < ... < tn < tn+1 < ... , convergent din stdnga cdtre radacina ~.
Estimarea erorii
Pentru estimarea aposteriori a erorii aproximatiei to+1 po ate fi adaptata formula generala, .onform teoremei 3.1:
.... nde m, = in~f(I)( x)l, xe [a, b).
In conditiile de aplicare a metodei Newton, este dedusa Inca 0 formula pentru estimarea .::.~osteriori a erorii aproximatiei tn+t. si anume
57
Capitol"l III. REZOLV AREA NUMERICA A ECIJA TIlLOR ALGEBRICE SI TRANSCENDENTE
I ~ I M,.. ·2
tll+1 - I; $ -z: ( tn+l - til) , ~ml
unde m, = inflj(IJ( x)I si M2 = suplj(2)( X) I.
xE la, hi XE la, bi
Conform acestei inegalitati, procesul de calcul of aproximatiilor tn+l ( n = 0,] .2.3 .... )
dupaformula (3 5.2) se va intrerupe atunci cdnd vafi satisfiicuta inegalitatea
I I ' f2mlE
ttl'"! -tn S ./--. - . (3.5.5)
V M2
Mai jos este prczentata functia Newtoni considerata cornponenta a unitatii REA T). destinata calculului cu aproximatia E a radacinii ecuatiei j(x) = 0, izolate pe la, bJ. aplicand estimarea aposteriori a erorii conform relatiei (3.5.5).
III i;'unction Ne~rt~n(a,b.m 1.m2,cps:real: f.f Lfz.Func; afis.boolean.Var nc,;:byte):reaJ; i {n-numarul de iteratii: nc-numarul de zecimale la afisarea valorilor reale;
.1 f-numele functiei din ecuatia f(x)=O; f1 ,f2-numele primelor doua derivate ale functiei ~ ftx); afis-confirmare pentru afisarca aproximatiilor succesive anterioare celei finale} Ii Var :,tl,Er:reai: {Declararea variabilclor locale auxiliare}
II Be~~::::sqrt(2~'m 1 *cps/M2); nr=O;
~ { Initializarea aproximatiei solutiei }
il If F( a)*F2(a»0 Then t l i=a;
~ Else u :=b;
Ii {Calculul iterativ al aproximatiilor succesive ]
Pentru rezolvarea acestei ecuatii s-a aplicat programul P _3_5_1 de mai jos
Program P _3 _5 _1 ; Uses Crt, Reat;
Var x,a,b,ml,rn2,e s.Real.n.byte;
,
[MetodajNewton]
58
Capitulul II1. REZOLVAREA NUMERIC'\' A ECUATlILOR ALGEBRICE SI TRANSCENDENTE
~=======
Function F(x:real):real: Far; {Far-directiva de compilare}
Begin F:=x*x*x-4*x+l: end; [Definirea functiei f(x)}
Function FI (x.realj.real; Far; [Definirea primei derivate a functiei [(x)}
Begin FI :=3*x*x-4: end; Function F2(x:real):real; Far; Begin F2:=6*x; end; Procedure Rezolvarera.b.m Lmz.eps.Real; F,Fl,F2:Ful1c;afis:booican:nc,k:byte); Var x:Real; n.byte:
Begin
ClrScr: Writcl.nt 'Precizarea radacinii_' .k,': '); If F(a)*F(h)<O then
a = l.5; b == 2; 1111 = 2.75; M2 =12; cps == 0.0001;
afis = true; nc=5; k=3 I
=:1
II X Il X Il x II
~
II -3.00000 0 0.10000 0 2.00000
1 -2.39130 1 0.25139 1 1.87500
, -2.15496 2 0.25410 2 1.86098 ~I
-
:- -2.11595 3 1.86081 I
~ -2.11491 --I
Solutiile m1
,
~ + + +
_- = = Iesire
~I 2.11491_0.0001 S2 0.25410_0.0001 IL S3 1.86081_0.0()Ol I,
Analizand secventele aproximatiilor radacinilor ecuatiei in studiu, prezentate 111 acest _ - e . _ ne convingem ca toate trei siruri converg monoton catre radacinile respective conform 59
Capitol"1 III. REZOLV AREA NUMERIC:\ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
cazurilor specificate in analiza anterioara. Mentionam, de asemenea, ca datele de intrare pentru programele P _3_5_1 si P _3_ 4_2 sunt identice si, dupa cum si era de asteptat, aproximatiile finale ale solutiilor, obtinute prin ambele metode, coincid in limitele exactitatii solicitate, diferenta fiind totusi in vitezele de convergenta: metoda tangentei poseda viteza mai mare dedit cea a cooardelor.
*
Estimarea vitezei de convergenta a metodei Newton.
in baza, asa numitei formule Taylor, dedusa in cursurile avansate de analiza matematica, are loc relatia: f(~) =Rt,,) + f(l)( tll)( ~- tll)+~f(2)( lln) (~- t1l)2, (11n este situat intre ~ si til)
Prin urmare,
In asa mod, se obtine inegalitatea
I 1M2 I 12 tll+l - ~ ::;:; -2-- ttl - ~ ,
III I
unde: m, = inflf(l)( x) I, M2=suplf(2)( x) I.
xE [rz, b] xE [a, bJ
(3.5.6)
Din relatia (3.5.6) se vede ca eroarea aproximatiei curentc, obtinute dupa formula (3.5.2), este proportionala patratului erorii aproximatiei precedente, de aceea se spune ca metoda Newton poseda convergenta de ordinul doi sau patratica. Daca intervalul [a, bJ este ales intr-atdt de mic, incdt are loe inegalitatea
M,
q= -_- (b-a)<l,
2mJ
atune! formula (3.5.6) asigurd 0 vitezii rapidd de convergentd a procesului Newton. Intr-adevar, in asa caz, aplicand succesiv inegalitatea (3.5.6) pentru n = 0,1,2'00" obtincrn estimatia
~"--l
I t,,+1 - ~ I < q- (b - a),
(3.5.7)
care indica 0 viteza rapida de convergenta a sirului { tll+1 }. De exernplu, daca la pasul n s-au obtinut k cifre sigure, at unci pasul (n + 1) va da aproximativ 2k cifre sigure.
Rapiditatea convergentei si este acea caracteristica care promoveaza metoda Newton in rangul celor mai cfective metode de precizare a radacinilor.
Mentionam, de asemenea, ca formula (3.5.7) reprezinta, de fapt, estimarea apriori a erorii. Modul de utilizare al acestei inegalitati este cel cunoscut: daca dorim sa obtinem solutia S cu precizia ~:. va trebui sa calculam t,,+1 pana la acel n, care satisface inegalitatea
2" 1
q - (b-a) < E,
(3.5.8)
60
Capitolul III. REZOLV AREA NUMERIC'\ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
.: - :-:1ai mica valoare a lui 11 fiind
11 = [In(ln_E_llnq + 1)/ln2J +1 . b-a
(3.5.9)
Inrrebari si exercitii
1. Sa se faca 0 analiza cornparativa dintre metoda coardelor si metoda tangentelor, facand
referinta la urmatoarele momente:
a) conditiile suficiente de aplicare;
b) modalitatile de estimare a erorilor:
c) modurile de apropiere de radacina:
d) avantajele si dezavantajele fiecarei din metode.
"' Dati exemple de consecinte posibile, daca la aplicarca metodei tangentelor nu va fi .orect ales punctul de start ftJ. Indicatie: vezi sectiunea I a fig.3.4.2.
3. Elaborati un program care va realiza metoda Newton, fiind dat numarul de iteratii 11; programul va determina si eroarea E a rezultatului obtinut, Indicatie: utilizati relatia (3.5.8).
·t Elaborati un program pentru aplicarea metodei Newton 'in cazul estimarii apriori a erorii.
Indicatie: utilizati formula (3.5.9).
5. Subiecte pentru sarcini individuale:
Sa se rezolve prin metoda Newton ecuatiile neliniare, propuse la sfarsitul paragrafului 3.2. cu precizia prescrisa E.
3.6. Metoda mixta a coardelor ~i tangentelor
Fie ecuatia
f(x) = O, f: la.bl~R, la,b] c R.
(3.6.1 )
Yom cere indeplinirea acelorasi conditii ca si la metoda Newton: l)ful1c{ia .f(x) este de doua ori derivabild pe intervalul la. b]; 2)f(a)i(b) < 0;
3) derivatele f (jl( x) si f (c)( x) nil se anulearii }i [iecare L)i pastreazii semn constant ne fa, b].
Aplicand in mod alternativ metoda coardelor si metoda tangentelor, obtinem 0 metoda .nixta, care genereaza doua siruri de aproxirnatii, convergente catre radacina ~ a ecuatiei fix) = 0 din directii opuse. In rezultatul restrangerii, la ficcare pas din ambcle capete, a intervalului de izolare a radacinii. lungimea acestui interval va constitui 0 eroare absoluta a aproximatiei radacinii, iar precizarea radacinii va decurge suficient de rapid.
In asa mod, la aplicarea metodei mixte, se va simplifica esential problema estimarii erorii care. in cazurile aplicarii independente a metodclor componente, impune cercetari -uplimentare, cum ar fi determinarea valorilor extremale ale modulelor functiilor f \!)( x) si ( 2)( x).
£1
CapitolulllI. Rl<:ZOLVAREA NUMERIC' A ECI1ATHLOR ALGEBRICE SI TRANSCENDENTE
tY
I I f(i\X»O;fi2\x»O
C
a!
,~~ ,~~~~ __ ~. ~ __ ~b~_-4
to
o
Fig. 3.6.1
IT
I
I
0 tu
a b x
Co
,Fig. 3.6.2
In scopul elaborarii algoritmului de realizare a meiodei mixte, revenim din nou la cele parru tipuri posibile de configuratie ale graficului functiei y = ftx), prezentate la studicrea variantei a doua a metodei coardelor ~i a metodei tangentelor. lntrucat, la aplicarea metodei in studiu, cazurile I si IV respectiv II si III sunt similare, ne limit am eli interpretarea geometries a cazurilor I si II (figurile 3.6.1 si 3.6.2).
Examinant cazul I (j,(l)( x) > 0; 1(2)( x) > 0), Initializand Co = a si t, = b, din considerente didactice, aplicam mai intai metoda coardelor
co/(to) -tof(co)
c1 == . - -,
f(to)- f(co)
Capitol"1 Hl._ REZOLVARE.,4 NUl'vIERICA A EClJATHLOR ALGEBRICE SI TRANSCE1\DENTE
'-', ctoda tangcntelor
f(to)
t I = t 0 ,~--------f (I) (t i') .
~~lPd primul pas al rnetodei mixte. obtinern subintcrvalul restrans Ic,Jd, in care este ,'.:::Cl radacina ~. Aplicand ill mod similar aceasta metoda pentru subintervalul Icl,t.j, - - :'tm till nou subinterval - [C2.U 7i a.rn.d.
in general, aplicand metoda mixia pentru intervalul lc.; tnl, obtincm
(3.6.2)
fUn)
t = t --.- .. -----."
11,1 1/ r«:
"' . II
(n = 0, J ,2 •... ).
Obscrvarn ca forrnulcle (3.6.2) si (3.6.3) sunt valabile ~iill (,lUU! II (fll)( x) > O: '( x) < 0 ). ell cxcepiia iniiializarii: Co = b si to::::: a, iar radacinu ~E I til' en J.
In ban celor cxpusc ~i analizci constructiilor din figurilc 3.6.1 ~i 3.0.2, gencralizam ~.,trel:
daca f(a)/\2\a) >0, atunci [orniulcle recurcnte (3.62):;;i n 6.3) vor genera intervale ulnse unul til ultul: {[tll+1, CII+ll: Ie,!!. end] c It". en!. n =: 0, I ,1" .. ; t.= a, c, = b}, pcntru care - .. trcmitiitile stdngi: a = to < t, <, ... < tIl <, 1"e1 <: , .. , formeaJj ill1 sir convergent dill suinga catre .idacina E" iar cxtrcmitaiile drepte: b :.:: ('o> c, > ... > c; > CII+1 > ... , ·-un sir convergent din
.rcaptu ciitre radacina ~;
daca fl/sa .f~a)I(2\a) <: 0, [ormulelc numite For genera intervale inclusc uI/II1 In altul [cll+!, 'It.d: !CII+h tll+I!clcn, in!' 11 = 0,1,2, ... : Co ::..--::- 0, ~,= h}, pentru core cxtrcmit/itilc =tinut« prin metoda tangentelor isi schimba rolul Cit ce!e obiinute prin metoda coardelor: procesul de aplicare alternativii a metodelor coardelor si tangentelor, prin intermediul 'ormulelor (3.6.2) # (3.6.3) se va intrerupe atunci cdnd va fi satisfiicutii inegalitatea
(3.6.4)
: :-; rezultat vom capata
Este evident, ca ordinea aplicarii Iormulelor (3.6.2) si (3.6.3) nu este principiala, dar
'l[a~i este mai efectiv de pornit ell metoda tangentelor. intrucat valoarea obtinuta prin
.ceasta metoda se va folosi deja la prima aplicare a metodei coardelor.
In figura 3.6.3 este reprezentata schema logicii de realizare a metodei mixte a eoardelor 51 tangentelor.
CapitolullII. REZOLV AREA NUMERIC'\ A ECUATIILOR ALGEBRICE SI TRANSCENDENTE
t :=a; c :=b
Nu
t :=b; c :=a
c* f(t)-t* f(c)
c '- _ _:___-_:___
.- f(t) - f(c)
Nu
Fig. 3.6.3
Da
x := (c + t )/2
In eontinuare se prezinta functia Mixta( considerata componenta a unitatii REA T), destinata ealeulului eu aproximatia e a radacinii ecuatiei f(x) = 0, izolate pe [a, b), aplicand metoda mixta a coardelor si tangentelor.
£illlilnilli m. REZOLVAREA NUMERIC" A EClJATJILOR ALGEBRICE SI TRANSCENDENTE
'l7;nction ~'1ix(a(,~~t)-,eps:r~.a!: fJl,f2:Func; afis.boolean.Var nc,n:byte):r~aJ; [n-numarul de iteratii; nc-numarul de zccimale la afisarea valorilor reale:
f-numcle functiei din ecuatia f(x)=O; fl ,f2-numele primelor doua derivate ale functiei
I'(x ); afis-confirmarc pentru afisarea aproximatiilor succesive anterioare celei finale} Var t, c, Ft, Fe.real; {Dcclararca variabilelor locale aux iliare}
Begin n:={);
{ lnitializarea aproxirnatiilor initiale aJe solutiei If Fa*F2(a»O Then Begin t:=a; c:::::b; end Else Begin t:=b: cr=a; end:
{Calculul iterativ al aproximatiilor succcsive} Repeat
Exemplu, Fie ecuatia f(x) 0", x' -- 4x + 1 = 0, radacinile carcia sunt izolate dupa cum
urmeaza: ~IE [-3,-·21, ~2 E fO.I,!], ~3E [1.5,2]. Folosind metoda mixta a coardelor ~i
tangentelor, sa se prccizeze ell cxactitatca prescrisa ~ radacinile ecuatiei date.
Rezolvare. In paragraful precedent aceasta ecuatie a fost deja rezolvata prin metoda \'ewton, unde preliminar a fost confirrnata posihilitatea aplicarii acestei metodc. Dar. dupa cum se stie, conditiile suficicnre de aplicare a metodci iangentelor sunt in vigoare ~i pentru metoda mixta.
_Pcn.1!L1 rezC?_lvarea ccuatici S-;1 aplicat programul P _3_=§~1=. =======~~===~
cazurilor specificate III analiza anterioara. Mentionam, de aserncnea, c;'i daicle de intrarc pentru programelc P 6 I, P __ 3_5_1 si P __ 3_ 4_2 sunt identice si, dupa cum ~l era de asteptat, aproxnnariile finale ale solutiilor, obtinute prin [oate feci metode. coincid III limitele
nr[lmai marc ca cea a coardelor ~;j mal mica ca cea a iangcntelor.
Caoitolul m. REZOLVAREA NUMERIC\ A ECOATIILOR ALGEBRICE)~i TRAJ',fSCENDENTE
Intrebari si exercitii
1. Sa se faca 0 analiza cornparativa dintre metoda dihotomiei si metoda mixta a
_ ':trdelor ~i tangentelor facand referinta la urrnatoarele:
1) conditiile suficiente de aplicare;
2) modalitatile de estirnare a erorilor:
3) modurile de apropiere de radacina;
4) avantajele si dezavantajele fiecarei din metode.
2. Dati exernple de consecinte posibile, daca la aplicarea metodei mixte nu vor fi corect - __ ,e punctele de start to si Co-
3. Elaborati un program care va realiza metoda mixta a coardelor ~i tangentelor, fiind nurnarul de pasi n; programul va detennina si eroarea E a rczultatului obtinut, Indicatie: - .: .izati relatia (3.6.4).
4. Subiecte pentru sarcini indivlduale:
Sa se rezolve prin metoda mixta a coardelor ~i tangentelor ecuatiile neliniare, propuse la . _:~ltul paragrafului 3.2, eu preeizia prescrisa E.
Capitolul IV. REZOLVAREA NUlVIERICA
A SISTEl\IELOR DE ECUATII ALGEBRICE LINIARE
4.1. *Matrice
in acest paragraf se vor reaminti unele notiuni din algebra matricialii, studiate in cursul de matematicii pentru clasa a Xl-a.
Definitie. Numim matrice de dimensiuni (de tip) n x.m tn , mE N*) un tablou dreptunghiular
A=
all aI2 ••• aIm an an ... aun
(4.l.1 )
format din n x m numere reale aranjate 111 n linii ~'i m coloane, Numerele aij se nuniesc elementele matricei. Prescurtat, matricea sc mai noteazii prin (ai;)n x m-
Cazuri particulare:
10. Matricea pentru care n = 1 se numeste matrice -linie ( vector -liniei. iar matricea pentru care m = 1 se numeste matrice -coloanii ( vector =coloanii ). Dec; un vector
n -dimensional poate avea urmatoarele reprezenuiri:
x = (XI. X2, ... ,XII) - vector -Iinie,
Y=
-vector -coloanii.
( 4.1.2 )
Yn
2° ,0 matrice A = (aiJ )11 XII, ell acelasi numar de linii si CO/OUllC, se numeste matrice piitraticii, iar n este ordinul matricei: 0 1101(/111 inai simplu A = (aiJ )/1' Elementele a.], i =1 +n.formeaza diagonala principalii, iar clementele ai.n-i+J, i =1 +n.jormeaui diagonala secundarii a matricei pdtratice.
3". 0 matricc patratica III care toate elementele situate deasuprairespectiv dedesubtuli diagonalei principale sunt egale cu 0 sc numeste inferiorirespectiv superior) triunghiulard. 4() , Matricea pdtratica, La care toate elemeutele situate In afara diagonalei principale SUIl! egalc cu zero, se numeste matrice diagonalii. Aceasta mat rice areforma
d, 0 0 0
o d, 0 0
D=
o 0 0 ... d;
5° . Matrical diagonald ell, toate elementele situate pe diagonala principala egale ell 1 se numeste matrice unitate; se noteaza prin 1/1 sau En.
68
Capitolul IV. REZOLVAREA NUMERICA A SISTEMELOR DE ECUATII ALGEBRICE LINIARE
Definitie. Matricea AT, obtinuta din matricea (4.1.1) prin schimbarea liniilor ell coloanele si reciproc, se numeste transpusa matricei A:
all an··· ani 1
T a12 a02••• an2
A = .
. . . . . . . . . . . .
aim aUIl ••• alll1l J
In particular, transpusul vectorului -coloana (4.1.2) este un vector -Iinie:
T
Y = (YhY2,'" ,Yn).
Exemple:
2 0 3 5 [~ 0 0 ~l [~ 7 1 ~l 1 0 0 0
2 7
.\ = 5 -1 4 AT = 6 1 0 8 1 14 = 0 1 0 0
o -1 '1 5 o ' 0 4 3 ' 0 0 1 0
7 6 8 "'-
3 4 8 2 3 4 0 0 0 1 0 0 0
\Iatrice patratica Transpusa Matricc inferior Matrice superior Matrice unitate
de ordinul 3 matricei A triunghiulara triunghiulara de ordinul 4 Egalitatea matricelor. Doua mal rice A ::: (aij )l1xm si B = (bi.; )Ilxm, ambele fiind de . eleasi dimensiuni n x.m, sunt egale dacd aiJ = bi,;. i =1 +Tl, j =1 +Jtl .
Operatii cu matrice:
I) Suma matricelor A = (aij )Ilxm si B::: (biJ )nxm. ambele fiind de aceleasi dimensiuni 0( Ill, este matricea C = (Cij )lIxm, elementelc careia se calculearii conform [ormulei
Cij= ai,j + bij' i =1 + n.] =1 + m.
2) Fie A =: (aiJ )nxl1I si H :::: (hi,; )1I1X[" doua matrice astfel incdt numarul de CO/O{/IlC ale "}lIei sd [ie egal ell numdrul de linii ale celei de a doua. Prill produsul C = A·B se »inselege matricea
t11
_ = (CiJ)IlXp, clcnientcle careia se calculeaza astfel CiJ= Laikb,,;, i =1 +11, i=' +]7. k=l
5·1+(·-1).5+0·7 5·0+(-1).(-1)+0·1 5·3+(-·1)-4+0·0 = 0 I II'
Consecintii. Pentru orice Ina trice patraticd A = (aij)n cste justa relatia: A·IIl = Ifl·A = A.
3) inmul(irea cu scalari a matricelor. Produsul dintre numiirul a (sau scalarul a )~i - .. uricea A = (aij )flXlIl este matricea B = (biJ )Ilxm, elementele cdreia se calculcaza dupa =ula bij= a'aiJ' i =1 + ll,j =1 + m . Se noteazii B = a·A.
£illill.9Iu1 IV. REZ;OLVAREA Nl'MERICA :\ SISTE'\lELORDE ECUATH ALGEBRICE LINIARE
I Definitie. 0 m~ltrjcl.' p'l!~'atict'i A-.I·e nunieste inversabilii dacii exista 0 asa matrice,
i notata prin A-i incdt arc foe relatia A·A-1 =: /\,'-'·A ::;: 111, Matricca A-I se numeste in versa
In mod similar obtinern relatia B·A = h Deci B == A'I si A == B" .
4.2. *Determinanti
,
Prezentul paragraf este consacrat repetiirii unor elemente din teo ria determinantilor, studiate in cursul de matematicii pentru clasa a XI-a.
Vom reaminti mai intfii formulele detcrminantilor de ordinul 2 si 3:
(4.2.1)
all a12 au
a21 an a23 = all ana3l + aI2a21a31 + aLla2i a32 - ana22a,] - all a21 a33- all a23a32· a3l a32 a«
( 4.2.2 )
Constatam ca termenii acestor 2 determinanti sunt produse de elemente ce apartin la linii si coloane distincte. In plus, oriee astfel de produs este termen in formula determinantului respectiv.
In continuare vom urmari scopul de a da definitia detcrminantului unei matrice patratice de ordinul n in asa mod, incat pentru n = 2 ~i 3, sa obtinem determinantii definiti prin formulele (4.2.1 ) si respectiv ( 4.2.2 ).
Consideram 0 matrice patratica de ordinuln
lall al2 ••• aln A = ~.21. ~~2. ~ ~ ~ ':
alii all2 ••• allll
Tinand cont de formulele determinantilor de ordinul 2 si 3, in mod natural formula determinantului de ordinul n trebuie sa contina toate produsele posibile din n elemente, aces tea din urma fiind selectate in asa mod, incat sa apartina la linii distincte(deci, din fiecare linie se va lua cate un singur element) si in acelasi timp la coloane distincte (adica, din fiecare colo ana se va Iua cate un singur element).
70
Mentionarn. ca problema forrnarii scturilor de clemente ce se VOl' include ill aceste produse, este similara roblernei plasari: pe tabla de )(ih de dimen.iunea II >( nan turnuri i'n a~?;~ mod inc£H acestea ',a nu se arneruntc .eciproc.
Asadar, ficcare produs ce ne intcrcseaza este de forma
J ',. •
.. nul' .il.h", .. .In
a'.j,'a:j, ,,'((lIi!!, sunt toate clcmcntcle multimii {1 ,,?, J:::: t.i.J»: .. .I, )
':l'1'CZllltZl u perrnutare a numcrclor
, , "n,
Nnmarul \()(,Jj de pennut.iri dill n clemente C:-.1C cg;J1 0: It ~ Inscami'~} ':~i 1',),]sUi ex a. t "I 'UUlhC de forma (t2,?' )
t'::\cmplu. in pcruun.ircu r: ., 2),01),(2,1 NOi .im nU11lJrUI tolal de invcrsruni din pcrrnutarca J pii;; 0 '.J I
-t, '; 'nl \;-:11 dcfinitiei, dcrcrmin.mtul dc ordinul Ii pentru ~- "j ·;t n >: ..
defini\1 anterior prin f"'tTHJidl' (4,,', l ~\ (4,2,2 ),
7:
CapitoiullV. REZOLVAREA NUMERIC,\ A SISTEl\1ELOR DE ECUATII ALGEBRICE LlNIARE
Definirie. Fie A == (aiJ )nxlI. Dcterminantul matricei obtinute prin suprimarea liniei i ~'i coloanei j dill matricca A, se numeste minorul elementului ai,j si se noteazii M i,j, iar
del (A) = 0 ~'i se llwl1e,yte nesingularii (sa/{ nedegeneratli) dac/i det (A)::f:. 0, JI
I' Definitie. Dan'! A = (aiJ )n, atunci matrice~-l------
I All A21 •• • Alli Al2 An ... An2
0/ cdrei element, ee apariine liniei j .yi coloanei i. este complementul algehric 01 clementului ai' din matricea A, se numeste matricea adjunctii matricei A,
In continuare vorn formula uncle proprietati ale deterrninantiior si matricelor. cunoxcutc din cursu] de algebra xupcrioara, care vor fi utile in expuncrea ulterioara a materiel.
Proprietatea 1 Dcu.ii fa elementele unci liniitsau coloanei a matricei A se (Iduna clemente le respective ale altci liniitsau coloanei inmuliite ('II unul si acelasi num/ir, atunci sc obtine () matrice, of carei determinant este cgal cu determinantul matricei A,
Proprietatea 2. Dacii toate elemente!e unei liniitsau coloanei dintr-o matrice patratica sunt ega le cu O. atunci detenninantul acestei matrice este egal cu 0,
Proprietatea 3. Dacii matricea B se obtine din matricea A prin permutarea a doud linii ( sou coloanei, atunci Illl = -IAI·
Teorema 4.2.1. Fie A::: (aiJ )u, Pentru orice i = 1 + n este adeviiratii egalitatea
11
det (A) = "a .. A .. , L.. " y j=l
numitii formula dezvoltiirii determinantului dupii linia i, iar pentru orice j =1 + n are loc egalitatea
11
det (A) = L:aUAij ,
;=1
numitii formula dezvoltiirii determinantului dupii coloanaj.
72
Capitolul IV. REZOLVAREA NUMERIC\' A SISTEMELOR DE ECUATII ALGEBRICE LINIARF
Teorema 4.2.2. Fie A= (aiJ)n 0 matrice nedegeneratii, adicii .1. = det (A) ;j: O. Atunci inversa matricei A se obtine prin impiirtirea elementelor matricei adjuncte la .1., adicii
A-I = .l . A*_
A
4.3. Calculul numeric al determinantilor
,
Yom rrece In revista urmatoarele 3 procedee.
JO _ Un proccdeu de calcul <11 deterrninantilor rezulta din definitia acestora, prczenrata in puragraful precedent. Insa. trebuie de tinut cont de faptul ca complcx itatea algoritmilor bazati ;,C acest procedcu cste de ordinul O(ll"ll l). De exernplu, pentru n = 30 este nccesar un numar astronomic de opcratii -rnai marc de 10,°.
2°. Un a! doilea procedeu sc bazeaza pc folosirea teoremei 4.4.1, adica pe dczvoltarea .ieterminantilor dura 0 linie sau coloana. Cornplex itatea de calcul al algoritrnilor bazati pe .rcest procedcu este de ordinul O(n!). Dcci situatia nu difera esential de cca impusa de
:Jroeedeul 1°.
3°. Un alt proccdeu de calcul, mult mai eficient dedit primele doua, intrucat are .omplexitatea 0(11'). consta In reducerea calculului determinantului de ordinul n la calculul .nui singur determinant de ordinul n--l. Se utilizeaza proprietatile determinantilor, 'in special, ;,roprietatea 1. Procedeul deplin de calcul, traditional atribuit lui Gauss, cstc iicrativ ~i ~-lI1iseaza eu readucerea determinanrului la forma superior sau inferior triunghiulara.
Vom cxamina aplicarca unei aiare scheme la reducerea determinantului de ordinul n
all ale au ••. aIj ••• all1 all an all ••• alj ••• a}n all a3? a:n ••• a3.i ••• a311
(4_3.1 )
_J forma superior triunghiulara; apantia, pe parcursul transformarilor, a zerourilor sub .iiagonala principala, 0 vom face prin atribuirea lor In mod direct, pe pozitiile respective, fara .:. le mai calcula.
Sa presupunem ca elementul all;j: O. Ne punem ca scop primar sa ajungern la un '::ctcrminant care sa contina pe prima coloana numai zcrouri, ell exceptia elernentului all. \::easta sc poate obtine prin adunarea succesiva la elementele liniilor i = 2 + n a clementelor ~;>peetivc din prima linic.Tnmultite eu (-ail fall); fara a afeeta valoarea determinantului
-1..3.1), vom obtine:
,
Cani.to1uIIV. REZOLVAREA NUMERIC\' A S!STEMELOR DE ECUATH A,LGEBRICE UI\IARE
all al2 au··.alj···{lill
(.!. ") (i) (ll (l)
a ~~' a v ... a 2)' .. a 211
(I) (I) (l) (tl
o a 12 a jJ ... a :lj ... a :Ill
\ (1) (1) II) (1)
lJ a i 2 a i3 ... a ij .. a in
;._ {I} (I) (1) (1) U a n2 a n3 ... a n] ... a nn
(n ail
unde am notal a i; ::: aU - -- (II}
ti.] ==
.n),
In cominuare, daca a ()1~ :f 0, se vor aduna succesiv la elcmentele liniilor i =: 3 + 11
1 I ive din J .. d ' 1 . . (i) / II, "-
e ementete respective din una a . oua, mmu me eu (-a i2 a ~2 ); vom caputa:
a! I al2 an ... alj .. , (lIn
(1) (,I)
f'f' II) ,l)
\ a 7') al, .. a 2j ., a 2n
(\ 0
(2) ,(2) (2,j
a .i3 ... a lj ... a in
() 0
o 0
(2) (2) (2)
a 113' • a 'II .. a nn
("
..
(.2i In
(lrj =«,
uncle s-a no! at
a c· ~J
'j, a I~
(i; j == 3, . , , ,n).
c;'i $1 In continuare clcmcntcle diagonalc respective VOl' fi difcrite de zero. icand succes: v transforrnari similare, la al (n-l) --le8 pas vorn incheia reduccrea determinantului (43 1) 1;} forma superior triunghiulara
Intrucat toate elernentele situate sub diagonal a principal a a detcrminantului (4.3.2) sum nule. dezvoltand SHeeeS!V dupa prima coloana deterrninantul initial, apoi minorii ce corespund complcmentelor algebrice care apar in continuare ca factori. obtinern valoarea
74
Capitolul _lV. REZOLV AREA NUMERIC.~ A SISTEMELOH DE ECUA TIl ALGEBRICE LINJARE
A • (l) • • (1I-!)
a::::: a! 1 an'" a lin .
El I l' J {Ji (2f (n-I) I . lc nrocedeului .: cmenie c oiagona e a J I • a2i . a 33' •... , a 1111 se numcsc etemente pivot a e procec ell HI
Gauss.
La Iiccare pas p al procedcului descris s ._(1 presupus ca a ~~! if:: O. Acum, pentru a gcneraliza acest algorirrn, vom exam ina evcntuala situatic cando de excrnplu, la pasul p
• (p-l) " ~ . .
elementul a PI' = O. In acest caz, daca toate clementcle sirului
11'1) (1'-1) (pI!
a p.p , a 1'+1.1' .... , {[ll.p (43.4)
-unt nule. deterrninantul este cgal ell zero (proprietatea 2) si urrnatorii pasi nu se efccrueaza.
111s11. chiar daca valoarea la ~;)I:;t O. dar ea este ell rnult mai midi dedit modulele celorlaltc
• (1'-1)
elemcnre din acest sir, atunci in rezultatul impartirii la a p,p ~1 transformarii liniilor
urmatoare. VOl' aparea erori considerabile. Pentru a evita asa situatii, vom permuta linia p cu .inia ce corespunde elementului maximal dupa modul in sirul (4.3.4). Yom obtine un nou determinant, avand semnul schimbat 1'ata de eel anterior (proprictatea 3). Astfel. initializand prin 1 variabila Semn, la ficcarc permutare de doua Iinii vom schimba valoarea acestci
ariabile in opusa.
A A d ((0») (' . ~
cum, notan a!i" n = ai,i In» prczentam
schema generala a algoritmului de calcul al determinantului:
(1) (n-l )
&=Semn-all·a22·····ann·
(4.3.5)
I" .Lnitializare: Semn :::::1:
Se executii repetat, pentru p == 1.2 .... .n -1, urmiitoarea secventiit+umbritii) de instructiun i:
I 2°. Din ~irul (4.3.4) se selecteazii elementul pivot(al pasului p) $i pozi(ia lui (k)fn I acest #1', adicii se giise~te un as« element a ~-1) care satisface condi(ia:
I (P-I)I I (p.l)1 • lui;
a , .... 1' = max a ip , 1 ::::: p + n # se memoreazii pozi{ia k a ~
3° . Dacii a r;l) = 0, atunci : A := 0; Salt la p. 7;
4". ill ca: contrar: se schimbii cu locurile Zinia pcu Zinia k; Semn:= -Semn; 5° Se modificii determinantul conform formulei (4.3.3). pentru p curent;
{Tiniind cont de reprezentarea (4.3.2):} 6° . Se calculeazli:
7° , Sfdrsit.
I; 4 2
6 -1 2
Ii =
2 3 -1 0
1 0 Capitolul IV. REZOL V AREA NUMERICA A SISTEMELOR DE ECUATII ALGEBRICE LINIARI~
Exemplu, Sa se calculeze valoarea determinantului:
Rezolvare:
Yom aplica algoritmul descris mai sus ararand prin sageti transformarile efectuate consecutiv, iar, pentru comoditate, fractiile Ie vom reprezenta in forma ordinara:
In continuare este prezentata in limbajul Pascal unitatea de program RezSEAL in care sunt incluse functia Determinant, destinaia calculului determinantului de ordiuul n prin reducere la forma superior triunghiulara, procedura Geu __ Matrice, care genereaza nleaior 0 matricc cu clemente intregi dintr-un interval definit prin extremitatile lui, precum si functia TimpufCurent care intoarce timpul curent In secunde.
{$N+} {Utilizarea coprocesorului matematic 80X871
Unit RezSEAL:
{Rezolvarea sistemelor de ecuatii algebrice liniare}
In asa mod, iimpul necesar pentru calculul unui determinant de ordinul n prin metoda : JUSS, aproximativ este proportional cubului ordinului respective. De exernplu, ~ntru calculul unui determinant de ordinul 100 1;1 un calculator ce executa 10' de operatii pe -.unda, va fi necesar un timp
T =- UJi'.]() 8 :::.: 0,01 ....
In realitatc acest timp va fi considerabil dCPU9it, deoarece in program. in afara de
'c"ra\iile aritmetice mennonate ex isra si alte i (celc implicate in realizarea
.c.rnutarilor de linii, calculul elementelor pivot pe coloane, salturi, operatii Iogice etc.).
Intrebari si exercitii
1, Care este deosebirea dintre determinant si matrice ?
79
Capitolul IV. REZOLVAREA NUMERJC4 A SISTE,\mLOR DE ECUATII ALGEBRICE LINIARE
2. Cu ce semne vor aparea 111 deterrninantul de ordinul n produsele elementelor: a) diagonalei principale ? b) diagoualei secundare ?
3. Fie matricea patratica A = (UiJ )11' Sa se cornpuna un program care va verifica justeta urmatoarei afirmatii: det (A) = det (AT);
4. Realizati 0 Iunctie In care calculul determinantului se va face prin reducerca lui la forma inferior triunghiulara:
5. Fie matricca patraiica A = (o"j)" cu clemente numere uuregi. Sa se modifice algoritmul de calcul al det(A) in usa mod, 'incat sa fie evirate operati ile de irnpartire.
6. Se considera matricea patratica A = (au)/1 si numerele naturale I si k, 1 <; l, k :s II Sa se compuna 0 functie care va calcula complementul algebric A/.k al elcmcntului a/.k din matricca A.
7. Se considers matricea patratica A = (ai,i )n. Sa se cornpuna cate un program care va calcula det (A) prin dezvoltarea determinantului dupa:
a) prima lillie a matricci A; b) prima coloana a matricei A.
Prin experiment b. calculator faccti 0 analiza comparati va a cornplexitatii temporale a programului elaborat cu cea a programului P_4_3 __ 1.
S. Fie pentru inversarea matricei nesingulare A = (ai,;)11 se foloseste un algoritrn bazat pe aplicarea teoremei 4.2.2 si a subalgoritmului de calcul al determinantilor prin reducerca la forma triunghiulara. Determinati complexitatea temporala a unui asemenca algoritm.
4.4. Ceneralitati despre sisteme de ecuatii aIgebrice liniare
Consideram urmatorul sistem de 11 ecuatii liniare eu 11 necunoscute: ailxl+a12X2+a13'\'3+"'+ a1nx,,==b1 a.'IXI+anx!+a23Xl + ... + a2nXII ==h, a3Ixl+ai!X2+a13x~+",+ a3nxn=b;
(4.4.1 )
unde aij ~I b; (i,j = 1 ,2, ... ,n) sunt nurnere reale. Sisternul (4.4.1) mal poate fi scris astfel: n
L a ii x j = b i (i = 1,2, ... ,17 ). ';=1 .
sau, tinand eont de regula inmultirii a doua matrice si de conditia de egalitate a doua matriee. sub forma vectoriala
Ax = b, (4.4.2)
unde A = (ai,,)1/ estc matricea cocficientilor neeunoscutelor. b = ( b ; b, ..... hn)T -
T -
vectorul-coloana al terrnenilor liberi, iar x = ( X:, X2, ••• ,xn) -vectorul-coloana 2..
necunoseutelor sistemului In studiu.
ISe numeste soltuie a sistemului ( 4.4.1) orice set de numerc £'1. £'2. ('1 ....• £'n. care
Ifiilld sUbslit/li~e /11 IOc/I~ necunoscutelor ~I' :2, ... '. x" din ecu(,"ri~le acest~/i s~stenl, .V(~ transforma jlecare dill aceste ecua(ll til egaluate lIumerlea adevarll/a, adieu
80
CapitolullV. REZOLVAREA NUMERICA A SISTEMELOR DE ECUATII ALGEBRICE LINIARE
n
l:a .. c. = b. J=l IJ J I
( i = 1,2, ... ,n ).
Sistemul ill studiu se numeste compatibil; daca el are eel putin 0 solutie si -
incompatibil (contradictoriu). daca nu are solutii. Sistemul compatibil. 10 rdndul sau, "
poate avea una SO/I mai multe solutii si se numeste compatibil determinat daca arc solutie
uniuf, ior eel care are mai muir dec(lt 0 solurie -col1lpatibilnedetcrminat. J
Teorerna 4.4.l. Dacii matricea A este nedegeneratii, atunci sistemul (4.4.1) este compatibil determinat.
Demonstratie Conform ipotczci teoremei det(A):f:; O. Deci, In baza teorcmci 4.2.2, ex ista matricea inversa k'. Inmultind din stanga ambele parti ale sistcmului (4.4.2) ell matricea kl,obtincm
sau
(4.4.3)
care rcprczinta solutia sisternului (4.4.2). Intrucat fiecare solutie arc forma (4.4.3), rezulta ca ca cste unica, adica daca det(A):f:; 0, atunci sistemul (4.4.1) este compatibil deterrninat.
I Doua sisteme de ccuatii liniare ell acelasi numar de necunoscute se numesc I echivalente daca ambele sum incompatibile, sau ambele slim compatibile si all uncle si
I aceleasi solutii.
. .
! Se numesc transformiiri de echivaletuii ale sistemului de forma (4.4, 1) II rmatoarele
i .,
I operant:
I 1) permutarea a doua ccuatii ole sistemului;
i 2) iiimultirea ambelor parii ale ecuatiei sistemului prin oricare numar }1t'1I/1f:
, 3) adunarea /0 ambele parti ale unei ecuatii a partilor corespunrdtoarc ale altei
; ecuatii. inmultite prin orice uumdr.
Metodcle numerice de rezolvare a sistemului (4.4.1) pot fi divizate in doua clase: metode directe (cxacte) ~i metode iterative.
Metodele directe furnizeaza solutia prin efectuarea unui numar finit de operatii .irirmeticer astfel sunt. de exemplu, regula Kramer, metoda Gauss ~i modificarile ei si a.). Cele mai uzuale In practica metode directe constau in transformarea sistemului de forma (4.4,1) .mr-un sistem echivalent, rezolvarea caruia se simplifica considerabil. Mentionam, de .isemenea. ca acesre mctode asigura obtinerea solutiei exacte ~ = (Sl ';7' ... , s ?' doar In
~ n
cazurile In care datele initiale sunt exacte si calculele intermediate se efectueaza fara rotunjiri, lnsa, se stie ca la efectuarca operatiilor elementare pe calculator, de regula, apar erori de .otunjire, datorita carora metodele directe, in caz general, furnizeaza solutii aproximative. In .onsecinta, metodcle directe au dezavantajul ca la aplicarea lor exista pericolul acurnularii -ronlorr estimarca carora este foarte dificila), ceea ce poate devaloriza rezultatul foarte .rccvent. in cazul unui numar mare de ecuatii. Acest dezavantaj impune lirnitarea aplicarii .ietodelor directe la rezolvarea doar a sistemelor de dimensiune Il $; 200.
Metodele iterative constau in construirea unui sir de vectori
XI
fapilolul IY. REZOLVAREA NOMERJ(~,\ A SJSTEMELOR DE ECUATH ALGEBRICE LINIARE
.k , (( ,., k ,
"to-' ' ::: .... " 1i.1 V { .I
,/I,. ,~\.- I , .. 'i.. <~ , •
II. )T
.. , X 11 " ~
It :::: 0,1,2, ... convergent (dupa component e) catrc solutio
trunchicrea sirului { X(kl }, arc 10e 1a un indice s, deterrninat pe parcursul calcului, in functie
de prccizia impusa, astfel. incat
( ~\ \
tcrmcnul curcnt X"
sa constituic 0 aprox.imatie
sa:isfitGltoarc a solutiei caurate ~. Printrc cell' mai raspfinditc metode iterative sum: metoda itcratici simplcrmcroda Iacohi) metoda Gauss-Seidel s.a
Merodele iterative sunt lipsite de ncajunsul indicat a CclOI directe, darin schimb ficcare metoda concrcta dintre acesrca au intotdcauna estc couvcrgcnta in aplicarea la clasc concrete de ccuatii. Ace-ire metod", sc u!ili:te1l2{lH conditiile asigurarii unei viteze sporite de convergenta). mal ales, pcntru rezolvarca sistcmclor "mari", de pana l» ordinul lCt.
4.5. Rezolvarca sistemelor de ecuarii liniare folosind regula lui Kramer
Considcrarn <istcmul liniar de n ccuaiii ell 11 necunoscutr
Ax=b,
(4.5.1 )
(III al!" • {[Ij' •• GIN
(I,: a~;., ••• a'j" .(l0ll
I a., ai.' , •• {lii'" {fll;
l .: .; ... .; i : : .~,:"
cstc rnatricea cocficicntilor (L: pe ![illgj nccunoscutc, b = (bl b, ..... bil)T iermcnilor libcri, iar x:·:: \ Xi' X.' , , • ,x/l) r =coloana necunoscutclonvcctorul C:1utJ1) Exprcsiu A = deliA) se numestc determinant principal al sistemului (4.5. J).
Fie matricca A estc nedegcncrata, adica A:j:. O. Atunci, utilizand formula
x= A'lb,
dcdusa pc parcursul dcmonstrarii teoremei (4.4,1), put em capata Iorrnule pentru calculul necunoscutei ecuatiei (4.5.1). Conform teorcmei (4.2.2),
£\.-1 - _!_. £\."
, - ~ , ,
... coloana
unde
estc matricea adjuncts matricei A,
81
CapitolullV. REZOI.V AREA NUMERIC-X. A SISTI~.lvmLOR DE ECUATII ALGEHRICE LINIAR~
Deci
1 *
x = .-- A b, sau
~
XI AI'
X2 - A21,
~ •
XII (4.5.2)
unde, asa-numitii determinanti secundariisau auxiliarii L~ ai sistemului (4.5.1) sc obtin din determinantul A prin inlocuirea coloanei j a acestuia ell coloana terrnenilor liberi b, adica au forma
II
Aj = LAijbi=
;",1
all aI2.·' alJI h, al.j+i·" alii a2, (In ••• a?,j.[ b : a2,j+i' •• a211 a31 a32'" aJ,j.1 b, a3,j+J ••• a311
(j = 1,2, ..• .n )
Din egalitatea (4.5.2) obtinemformulele lui Kramer:
_ AI _ '~2 _ A j
Xl - ~' X2 - A' .. . X.i - A '
Rezulratul obtinut poate fi formulat astfel:
(4.5.3 )
Teorema 4.5.1 (Regula lui Kramer). Dacii determinantul principal A al sistemului (4.5.1) este diferit de zero, atunci sistemul este compatibil determinat $i solutia sa se exprimii prin formulele (4.5.3).
Deci rezolvarea unui sistem liniar de forma (4.5.1) se po ate face prin calculul a n+l determinanti de ordinul n. Deoarece complexitatea temporala a algoritmului de calcul al fiecarui din acesti dererminanti este O(n3), rezulta ca complexitatea regulii Kramer este de ordinul 0(n4).
Mentionam ca forrnulele lui Kramer sunt convenabile pentru cercetari teoretice ale proprietatilor solutiilor sistemelor de ecuatii liniare, dar mai putin convenabile pentru aflarea numerica a lor, intrucat, pentru valori mari ale lui n, necesita calcule laborioase. In practica sistemele in studiu, de obicei, se rezolva prin alte metode, cum ar fi eele de tip Gauss, eu complexitatea temporal a. de ordinul O(n3).
Pentru calculul tuturor determinantilor, care intervin in regula lui Kramer, vom apela de 11+1 ori functia Determinant, inclusa in unitatea RezSEAL(Vedeti paragrafu14.3). Obtinem astfel programul P _ 4_5_1 care rezolva sisteme de ecuatii liniare compatibil determinate, folosind regula lui Kramer.
{$N+}
I Program P _4_5_1; Uses Crt, RezSEAL; {$M 65520,0, 655360} Const
\VriteLn(' Durata de executie:',T:O:l 1); Writel,n:
WriteLn('Se va mai rezolva un alt sistem 't , din'); ReadLn(St); Until St<>'d';
End.
Observatie. Conform programului P __ 4 __ 5_1, afisarea la ecran a matricei A are sens direct pentru nS 12. :Jaca se doreste, programuI ar putea fi adaptat pentru inscrierea date lor de iesire intr-un fisier textual.
Intrebari ~i exercitii:
1. Culegeti , apoi lansati in executie programul P _ 4_5_1. Pcntru testare ar putea fi .olosite urmatoarele exemple:
2x + 2z + t = -6a.
x + y + z + t = 2a.
- 2x + 2y =t == 2a.
3x + y -z == 0
Sistemul este compatibil determinat pentru Va. E R: x = -2 o : y = 2 ex: z = -4 ex ; t = 6 a. ;
{Xl +rzr , +2X'J = 1 2) 2x) + 2x 2 + .r , = -1
Xl + x2 - X} = P
a) a. = 2; f3 :::: J: sistcmul este cornpatibil determinat:
X] =--3, x2=3,x3=-1;
b) ex == I; f3 == -- 2: sistemuJ este cornpatibil nedeterminat;
c) a == 1; ~:::: 2: sistemul este incompatibil. Poate oarc fi aplicata regula Kramer In cazurile b) si c) ale cxemplului 2) '!
2. Adaptati programul P _ 4_5_1 pentru afisarea mesajelor respective in cazurile: a) sistemul de ecuatii are 0 infinitate de solutiit 'Sistemul cste compatihil nedeterminat') ;
b) sistemul nu adrnite nici 0 solutief'tSisternul este incompatibil");
ill continuare, eventualul program ce va reflecta modificarile programului P _ 4_5_1. va .umit P _4_5_2.
3. Se considera numarul natural 11::; 100 si setul de numere reale Xi (i = 1 +11). Sa se : _:,oreze 0 procedura care va genera aleator 0 matrice A de dimensiuni n x (n+ 1), care va '~-:-:czenta matricea ext ins a a sistemului de ecuatii algebrice liniare cu solutia = ( x I' X 2 , .•• , X n ) T. Matricea generata se va mernora in fisierul textual Matrice.dat.
85
allXI+al X2+ aI3X3+···+alnX,,=a1,n+1 a21X, + all X:+ an X,+ ••• + a2n X,,=a2.11+1 all Xl + a12 X2 + a_;l X3 + ... + a3n Xn == al./Hi
(4,6.1 )
4. Modificati programul P._4_5_2 in asa mod, incat acosta sa admita alternativa de a rezolva sistemul de ccuatii, rnatricea extinsa A = (Alb) a caruia se va chi dintr-un fisier textual. eventual din Matrice.dat, creat conform subicctului 3. Prograrnul va afisa solutia x* a sistemului, prccum si cornponentele vectorului Ax*-b. unde A si b au semnificatiilc desemnate pentru ccuatia (4.5.1).
5. Dad! In anietul functiei Determinant parametrul valoare A se va transforma ill parainetru variabila, atunci programul P.A_5 __ 2 va furniza rezultate eronate. Verificati aceasta afirrnatie ell ajutorul tcstelor $i cxplicati fcnomenul in cauza.
6. Rulati programul P _ 4_5.2 ell diverse valori 3]C lui n i: 1 no. variind, de asemcnca, extremitatile inrervalului !p,q] tipul elementelor tabloului A si a variabilci Dp, Descrieti rezultatul cercetarii.
7. Care sunt sugestiile constructive ell privire la posibilitatca de a rezolva In limbajul Pascal sisterne de ecuatii algebrice liniare de dimensiune 11> 1 OO? Dati propuneri In vederea realizarii.
4.6. Metoda eliminarii succesive (Gauss)
Consideram un sistem de 11 ecuatii liniare eu 11 necunoscute prezentat sub forma:
In ipoteza ea sistemul (4.6.1) este compatibil determinat, metoda Gauss de rezol vare porneste de la eliminarea succesiva a lui XI din ecuatiile acestui sistem incepand ell a doua. apoi se elimina X2 din ecuatiile obtinute, incepand eli a treia si a.m.d.
In rezultat, se obtine un alt sistem, echivalent ell eeJ initial:
all X2 + ai, Xl + ... + alII XII
(1) (1) (1)
a 22 X2 + a 23 X3 + .. , + a 3n Xn
(2) (2)
a.B X3 + ... + a 3n Xfl
== a) n+)
= a~l)
,_,n+l
(2)
= a 3.11+)
(4.6.2)
a (n-i) _ (fl-l) nn Xn - a n.n+i
Este clar, ca efeetuarea aeestor transformari este echivalenta eu efeetuarea transforrnarilo: de echivalenta respective asupra liniilor matricei extinse A a sistemului (4.6.1). In acest sco; poate fi aplicat proeedeul de calcul al determinantilor, adica transfonnarea matrieei
86
CapitoJul IV. REZOLVAREA NUMF:RIC\\ SISTEMKLOR DE ECUATIl ALGEBRICE LINIARE
in mauicea:
A=
ra! I a I 2 a JJ. • • a:j , • • a ill a i.ll+; 1 I a21 a22 an ••• a~i ••• {Lit (/2,/1+1 a., a;, (/1,' •• aV •• (J'1l ({,,iI'" I
ani att:> an, ... a"j' .. all II a/l,1I H) .nlizand forrnulcle:
( p ::;;: 1,2" , .,n --I ; l = P +. " ... tl ; .I ::;;: P + .. , .. ,Ii' ,« U :::: a
. -nilare ell (4.3,3).
Sistcrnul ( 4.6.2) sc poate rezolva succesiv, incepand ell valoarea lui x.; care se deterrnina _,:l ultima ecuatie, apoi valoarea gac,iti'i se substituie III penultirna ecuatie. din care aflarn pc ,'j rsa 1'1"; departe Tn rezultat i'~Il"Cl';1'11
_ <' _ _:.~"~. :..:_~~ I _,~.:~._ • _ . 1 . ~ __ ~. ~_~ " .;__'_ l' Ui-fc_ A
_
Procedcu) de reducere a sisiemului (
: tecta it metodei Gauss. iar . _":c~tei metode, rcalizata conform formulelort-l.o.a)
Remarca. Nu C ncaparat de \Tpf~Cdr compatihilitatca sisre.nu.lui 'in snunu. .nainre de J aplica metoda
_ c , d\:i:;~\.rt(\: cvcntuala egalitatc cu zero a delcrn1;nantuluip<'~~lleri 1n proccsul rc;_\!~z?\rii
~ i ~l~CH:.
Realizurea fazci direcre prin intermediul formulei ( ) neccsita
'1 J, iar a cclci indirecte necesita n(n·---l) opcrarii antmer ice, - -:.-+) ure complexitatea O(n2).
Decimetoda Gauss are complexitatea O(n')+ O(Jl2) :.:: O(ll').
.. contmuare esre prezentata in limbajul procedura Gauss: considerata
-:·.)onenta a unitatii de program RezSEAI,), care rezolva srsreme de ecuatii liniare, . sind algoritrnul expus mai sus:
, ------_.. -~ ._--"_.. - -_-._ - .. ~:.- •.. ~.
{Rezolvarca sisiemelor de ecuatii liniare prin metoda Gauss}
Procedure Gauss(n:byte; A: Mattice; Var XiVector: Val' Daboolcan);
t n-numarul de ecuati i; Avrnatricca ex tinsa a sistemulu i; X· vectorul necunoscutelor; Daetrue daca determinantul principal este <>0, altfel Da=false]
"I
I
,
I
I
11,7
Var
temp, q, max: Double; i.j.p.k.c.byte;
Begin { Faza directa} Da.etrue;
For p:=l to n do
Begin
k:=p; max.eabsta] p,p J);
For e:=p+ l to n do {Cautarea pivotului in eoloana curenta p}
if abst a] c.pl c-rnax then
Begin rnax.e.absral c.pjj.k.ec; End;
if maxeO then Begin D~~:= false; writcl.nr'Deterrninantul pr.:::',O); Exit; End; if p<>k then
Begin {Perrnutarea liniei k ell p}
for j:=p to n+ 1 do
Begin tcmp.ealp.j]; a[p,jj:=a!k.j]; alk.jl.etemp; end; End;
{Declararea variabilelor locale, auxiliare}
Capitolul IV. REZOL V AREA NUMERICA A SISTEMELOR DE ECUATU ALGEBRICE LINIARE
for i:=p+ 1 to n do Begin
q=ali.p I/a[ p,p I;
for j:::::p+ 1 to 11+1 do a] i.j ]:=a[ Lj ]-q*a[p,j I;
End End;
{ Faza indirecta } x[n]:=a[n,n+1 J/a[I1,111: for i:=n·l down to 1 do Begin
q:=a! i.n+ 1 I;
for j:=i+l to n do q:=q-a[Lj)*x[j]: x[iJ:=q/a[i.i); End;
End;{Gauss}
{Modificarea matricei conform formulei (4.6.3))
o varianta de aplicare a metodei Gauss este cea realizata prin programul P _ 4_6_1.
{$N+}
matematic 80X87}
{Utilizarea coprocesorului Program P _ 4_.6_.1; [Aplicarea metodei Gauss la rezolvarea
sistemelor de ecuatii liniare}
Uses Crt, RezSEAL; {$M 65520,O,655360} Const
p=-1O; q= 10;
{Setarea la maxim a dimensiunii segmentului stivci}
Capitolul IV. REZOLVAREA NUMERIC.'\ A SISTEMELOR DE ECUATII ALGEBRICE LINIARE
End else
Begin
GcrrMatricetn.n+ 1 .p.q.A); WritcLn;
WriteLn(,Matricea extinsa a sistemului, generata aleator:'); Scrie(n.n+ 1);
WriteLn(,Matricea se va tasta/genera?, t/g'); ReadLn(St); If St::::'t' then
Begin
WriteLn(Tastati matricea extinsa:'):
For i:=] to n do
For j:=l to n+I do Readt A] i,j J); Read!n;
Capi!olul IV. REZOLVAREA NUl\IERICr\ A SISTEMELOR DE EClJATII ALGEBRICE LINIARE
Intrebari si exercitii:
1. Testati programul P _ 4 __ 6_1. in accsr scop ar putea fi folosite urmatoarelc exernplc:
j( 2x . + 2z + t == -6a
1 _ x + V + Z + t == 2a
) .
1-2x+2y =t =2a
l 3x + 'y - z = ()
Sisternul este compatibil determinat pentru Va E R: x == -2 a: )' == 2 a: z = -4 a ; t = 6 a;
rO+2a)X; +(l+3a)x2 +ax, +(a-l)x4 =3
~ 3a.x: +(3+2a)x" +ax3 +(a.-I)x4 == 1
I 3ax~+ 3ax}+3x3+(a-llx4=1
l 3ax!+ 3ax_,+cxx,+(a-·i)x4=I
Daca a 1; 1 si ex,:f: 3. sistcmul arc solutie unica:
x, =: 21(3 o.), X2::::: .r, := 0, X4 =(3 -- 7 ex )/( a --1)/(3-- a). In caz contrar: Ll:::: O.
2. Elaborati lin program care va rczolva un sistem de ecuatii liniarc, matricea
coeficicn]i caruia esre de forma inferior triunghiulara.
3. considera numarul natural n s:: 100 si setul de numcre reale Xi (i = 1 +n). Sa sc
i0rnpun8 0 procedura care va genera alcator 0 matrice A de dimensiuni 11 X (n+ 1), care va reprezenta rnatricea extinsa a sisternului de ecuatii algebrice liniarc ell solutia X"' ::: (Xi' X.',,, "Xii {. Matricea generata xc va memora in Iisicrul rextual Matrice.dat.
4. Modilicari programulP ! 'in U?8 mod. inca: acesra s~\ adrnita alternativa de a
rezolva sistemul de ccuatii, matricca extinsa A;:;.: (Alb) a caruia sc va citi dintr-un fisier textual, eventual din Matrice.dat, crcat conform subiectului 3. Programul va afisa solutia x* a sistemului, prccum ~i cornponentelc vectorului Ax*-b, unde A si b au semnificatiile desernnate pentru sistemul (4.51).
5. Rulati, cu acelcasi valori n -::; i 00, programele P _4._5_1 si P _ 4_6_1, adaptate pentru utilizarea matricei extinse A, gcnerata aleator, Comparaji duratele de executie a calculelor (excluzand operatiile de intrare-iesire), efectuate dupa aceste programe, pentru valori cornune ale lui n .
6. Metoda Jordan de rezolvare a sistemului (4.6.1) in faza directa utilizcaza formule de calcul similare eu (4.6.3), deoscbirea constand In Iaptul ca indicii p ~i i variaza in alte limite, astfel, incilt (4.6.1) sc reduce la un sistcm de forma diagonala Dx = c, unde D cste rnatrice diagonals de ordinul n, adica du = 0 pentru i:f:: j. Evident, faza indirecta se va sirnplifica: daca
c·
det(A) '# 0, atunci Xi =~_, i =1, ... .n. d ..
11
Sa se elaboreze 0 procedura care va realiza metoda Jordan.
Capitolui IV._REZOLVAREA NUMERIC;\.:\ SISTEl\fELOR DE EClJATII ALGEBRICE UNIARE
4.7. =Metode iterative. Notiuni introductive
,
Regula Kramer :;;i metoda Gauss examinate 'in paragrafele precedente, III I au consrituit ccva nou. iar studierea lor, reducandu-se la 0 sisternatizare a cunostintclor din algebra de clasa a XI-a, le-a dat 0 forma algoritrnica. Metodelc iterative, ce vor fi pre zen tate iu continuare, constituie 0 abordare coruplet diferita a rezolvarii sisternclor de ccuatii algebrice Jiniare. Ceca ce aduce nou materia care urrneaza in acest paragraf, fata de cca cuprinsa in manualul de maternatica. se refera la cunosrintele care vor veni in sprijinul prezentarii ulterioare a materiei.
in 0.4.1 am dcfinit vectorii ca matrice particulate cu 0 sinsura lillie sau coloana. In
" ~
conrinuare vorn opera cu vectori-coloane n-dimensionali. Evident. operatiile de adunare ~i
inmultire ell un scalar, definite pentru matrice, se extind si asupra vectorilor.
iD~finiti{:.--MlIllimea tuturor vectorilor 11 =dimensionali, pentru care sunt definite
I operatiilc iumuliirii vectorului ell un scalar si adunarea a doi vectori. se numeste spatiu i vectorial; if notam cu R".
Un sir {X(k)} de vectori din RII are aspeetu!:
11)
, x' =
(k) ... ,x
, ...
,'eea ee reprezinta, de fapt, Il siruri de numere reale.
Se spune ca sirul {x(k)} converge la ~= (~ ,~ ,. '" ~ f' daca sirurile eomponcnte din
1 2 n
x(k)} sunt convergente respectiv la componentele vectorului ~: limx;k) = ~i (i =1, 2,.",11).
k-oo
Definitie. Numim norma a matricei A = (aU)n x m, numarul real definit prin:
111 n
IIAIII == ~nax}:1 aij I sau IIAI12 == max LI aij I·
I =1+11 j=1 J =1+111 ;=1
Se observa di JJAII e = 0, (e = 1,2) atunci si numai atunci cand matricea A este nula, adica .oate elementele ei sunt egaJe eu zero.
Exemple. Sa se determine normele urmatoarelor matrice:
Capitolul IV. REZOL VAREA NLTMERIC\ A SISTEMELOR DE ECUA TIl ALGEBRICE LINIARE
Metodele iterative de rezolvare a sistemelor de ecuatii liniare permit de obtinut solutia sistemului ell prccizia prescrisa prin trunchierea unui sir convergent de vectori. Proccsul de construire a unui asa sir se numeste proces iterativ.
Exercitiu. Elaborati 0 procedura care va determina normele unci matrice date.
4.8. =Metoda iteratiei simple( Metoda Iacobi )
In acest paragraf vom examina una din cele mai simple met ode iterative -metoda Iacobi. Fie dat sistemul
pentru care se presupune ca matricea A = (aiJ)/I este nedegenerata, Efectuand transformari de echivalenta a sistemului (4.8.1) obtinern sistemul de ecuatii:
XI =UIIXI+ a12X2+ ••• + alnX/1+ /1 I
(4.8.2)
X/1= a,lIXI+ Un2X2+"'+ an,IlXn+ fJ , 11
numit sistern redus la forma standard. Introducand notatiile a= ( aU ),,,
P = (PI' Pc' .... Pn)1', X = (Xl. X2, .. , . X/1)T, scriem sisternul (4.8.2) In forma matriciala:
x = ax + IJ . (4.8.3)
Constatam ca partea drcapta a sisternului (4.8.3) defineste 0 aplicatie F: y = ax + fI care transforma vectorul X al spatiului vectorial RI1 'intr-un vector y al aceluiasi spatiu.
Metoda in studiu consta In urmatoarele. Considerand 0 aproximatie initiala arbitrara X[OI E RIl a solutiei exacte a sistemului (4.8.1), cu ajutorul aplicatiei F determinam 0 noua
aproximatie X(l) = ax'o! +p. Avand pe Xiii, determinam X(21=ax(]1 +P etc. Suntern condusi astfel ia urrnatorul procedeu iterativ
x'/"= a x(k-ll+p, k= 1,2, ... , (4.8.4)
care ;;i constituie metoda lacobi.
Siru]
X
i 1 (2)
.X .x
xrk)
( 4.8.5)
gencrat de formula recurenta (4.8.4). pornind de la aproximatia initiala r ?". este denumit sir al aproximatiilor succesive.
Exemplul T. Fie sistemul
92
Capitolul IV. REZOLVAREA NllMERIC:\ A SISTEMELOR DE ECllATIl ALGEHRICE LlNIARE
pe care prin transformari de echivalenta il reducem 1a forma (4.8.2), anume
Considerand 0 aproximatie initiala. de exemplu, vectorul x(O) :::: (0; 0; OJ!,
(4.8.6)
substituim
componentele lui in partea dreapta a sistemului (4.8.6) si efectuam calculele respective. Obtinem componentele unui nou vector X(I) == (- 0, I; - 0,2; - O.3)T. Utilizand Xii) in calitate
i2I ·T· ~
de vector initial, se va obtine urmarorul vector x == (0,1; - 0,2: - 0,2) ~l a.rn.d. In asa mod
se va genera un sir de aproximatii succesive: xIO):::: (0; 0; Of', x II) = (- 0,1: - 0,2; - OJ?
xe) :::: (0,1; - 0.2: - 0,2)T, ...
Teorema 4.8.1. Dacii sirul (4.8.5), generat conform formulei (4.8.4), este convergent >i ~= lim xlk) .atunci ~ este unica solutie a sistemului (4.8.1).
k-oo
Demonstratie, Trecand la limita in (4.8.4), obtinem ~ verifies sisternul (4.8.3), deci ~i sisternul echivalent (4.8.1).
a~ + p. Prin urmare, ~
Prezentam fara dernonsrratie urmatoarea teorema.
Teorema 4.8.2. 0 conditie suficientii de convergentd a sirului (4.8.5), pentru x(O)
arbitral', este ca Iiall 0 < l , (e =1.2).
Evident, respect area conditiei prezentate de convergcnta a metodei Iacobi depinde de nodul in care a fost construita matricea a. Pentru asigurarea convergentei, de obicei, xe ~r()cedeaza astfel. Sisternul initial (4.8.1), prin transformari de echivalenta, se reduce la un .: stern cu rnarricea A == (aiJ)" diagonal predominantii, ecea ce aici va insernna ca elementele ~c pe diagonala principala satisfac macar una din conditiile:
n
laiil> Ilaijl (i:;:: 1,2, ... ,11 ) i=1.
loF-i
(4.8.7)
,..lLl
II
lajjl> Ilaijl (j == 1,2, ... .n ). (4.8.8)
1=1. i¢.j
::c continuare, din prima ecuatie a sisternului obtinut se determina XI. din a dona XL ~i a.m.d. ;,tfel forma standard (4.8.2),111 cazul examinat, sc construieste eu ajutorul formulelor
Pi = b/aii, aU = -au/aii. pentru i =i si aii = 0 (i,j = 1,2, ... ,Il). (4.8.9)
::: rezultat, conditia de convergenta poate fi formulate prin referinta directa la elementele ·'.atricei A.
Teorema 4.8.3. Dacii matricea A a sistemului (4.8.1) este diagonal predominantii. .ar sistemul (4.8.2) se determind prin transformiirile definite conform formulelor (4.8.9), ctunci procesul iterativ (4.8.4) COil verge ciitre unica solutie pentru orice x\(J) E R" .
93
D!illt!lluJ IV ,_8_f,ZOLY AREA N(J]VlERIC\ A SrSTEMELOR D;:; EC{JATII ALGEBRICE LINIARE
Observatic. On proces iterativ convergent se bucura de importanta proprietate de autocorectare ceca cc insearnna c{l aparitia unci crori izolate In calcule, care nu se va rcpeta in continuarc, nu va influenta solutia finala, deoarcce 0 aprox imatie obtinuta gre~i.l poate fi considerate ca 0 aproximatie initiala noua.
Exemplul B. Sa xc reduca la forma cu matrice diagonal predominanta urrnatorul sistem
Rezolvare. Efectuand urmatoarele transformari de echivalenta
(I) = (A) + (H), (II) = (C),
(III) = 2·(A) + (C), obtincm sistemul
care, evident, are matrice diagonal predominanta atat pe linii, cat si pe coloane.
Eficacitatea aplicarii metodelor iterative depinde de alegerea vectorului initial si de viteza de convergenta a procesului.
94
Capitolul IV. REZOLVAREA NUl\JERlC,\ A SISTEMELOR DE ECUATII ALGE.J;lRICE LiNIARE
Estimarea erorii metodei Iacobi
Este adevarata urrnatoarca afirrnatie:
Teorema 4.8.4. Fie ecuatia (4.8.3), iar q este una din normele linll J sau Ila112' Dacii ~ este solutia sistemului (4.8.1) # q < 1, atunci au foe urmiitoarele incgalitiui:
\1 .
He'
(4.8.10)
il Ik) ,.i! < q Ilil'X(kl._ .r (k-liliil
il.\;· - ql ~. -------.,
'i IIG 1--. q I 16
(4.8.11 )
( k z. L o =:: 1 sau 2 ).
Sa exarnmam inegalitatea (4.8.10l. Partea dreapia il ci reprezinta 0 croarca absoluta a aproximatici x 'k) . 0 noraru pnn I'k. Este justa relatia rk +1 :=: qri; unde rk,+l este eroarea
t 1 ~ ..., k+i I D' l' I' . < • •
a )SO uta a aproxrmanei X' , co procesui uerauv converge cu viteza progresiei geometrice
care odata ell tindcrea rariei q 1 a zero.
estimarea apriori {l. erorii procesului Iacobi, apelarn din nou la inegalitatea
(·:.R.I0),
stat/itn
caiculul
1 <. ~ (' j: j: \ T ..
so uuc, t,= . .,., , .. ,.." l eli
j 11
PI"CCI"ZW data E, procesul (4.8.4) trebuie continua: pima /0 prima valoare a lui k, cure satisjacc inegalitatea k
q 1'1 (i, (fl"ll.
~----- i!X'" - x ' 'I 50 E ,
l-q 1, ,0
sau dacd XW):::: /1 ~ atunci:
('(I;~ in care
r- /1 l
, I £(1 ,-- q) I
It = i In ------- Ilnll
" I 'Iip!\ ' A I'
L H La J
(4,8.12)
Exempluljl. Revenim la sistcmnl exarninat In excmplulj? din paragraful curent:
san
{ (, f)' F o ()-'J;: '2 o 2'"
x 1.= J'I.' J.\.~.! - J, ,_'x, T, ,\ _
x: :::' - O,01.x·1 + O,U4X3 + J
!... Xi:::: ().5.~;+O,Slx)-U.51.
Sa se determine numarul de itcrarii k aJ procedeului (4.R.4: nCCC,;)1 pentru obtincrea solutiei sisternului In studiu ell exactitatea E :::: 0,0001.
Capitolul IV. REZOLV AREA NUMERIC'\' A SISTEMELOR DE ECUATII ALGEBRICE LINIARE
k-lrl €(1-q)/l l_ [I 0,0001.'0-0,56)/1 (()S6)l = 19 - n IIpl12 iiq J - n 3,535 n "- J - .
Raspuns: k =.: ] 9_
Daca sefoloseste estimarea aposteriori a erorii. atunci, conform inegalitatii (4.8.11), se va continua calculul sirului {X(k)} al aproximatiilor succesive paml cdnd se va veri/lea conditio
(4.8.13)
Observam en pentru q s; ~relatia (4.8.13) capata forma Ilx(/') - X(k--111Ie S; E,
sau dupa componentc
(4.8.14)
Metoda Iaeobi este cornoda pentru a fi programata la calculator, insa nccesitatea reducerii prealabile a sistemului de ecuatii la 0 forma specials cu verificare a conditiilor de convergenta, in cazul valorilor mari ale lui Il face dificila aplicarca ei practica. Tinand cont de faptul ca conditiilc de convergenta nu sunt necesareradica proccsuJ iterativ ar putea converge si la nesausfaccrea acestora), In practica, ca criteriu de oprire a procesului iterativ. Irecvent se folosestc conditia (4.8. J 4), In loc de (4.8.13), indiferent de valoarea q < 1, iar pcntru asigurarea precizici prescrise E , accasta se inlocuieste printr-o valoare mai mica, de exemplu, prin 0,1· E. Pentru a evita .ciclarec" progrumuluirin cazul daca procesul iterativ este divergent) sau un numar neacceptabil de iteratii (cand procesul converge foarte incet), din start se stabileste 0 limita a numarului de iteratii.
Mai mult, pcntru a cvita munca manuals pregatiroare in vederea reduccrii sistemului initial la forma standard, este rational de indus aceasta etapa a procesului de rezolvare in program, iar coeficientii necunoscutelor si termenii liberi ai sistemului de ecuatii de introdus In calculator conform reprezentarii (4.8.1). Respectarea conditiilor de convergenta nu se verifica, dar totusi este necesar de transforrnat sistemul In asa mod, incat coeficientii diagonali sa fie diferiti de zero, si inca mai binc, daca vor fi predorninanti dupa module macar 1'a1"1 de Iiecare din ceilalti coeficienti din ecuatiile respective.
In continuare se prezinta in limbajul Pascal procedura Iacobirconsiderata cornponenta a unitatii de program RezSeal). care rezolva sisteme de ecuatii liniare dupa metoda Iacobi Cll estimarc aposteriori a erorii, conform conditiei (4.8.]4).
{Rezolvarea sisternelor de ecuatii liniare prin metoda Jacobi} Procedure Jacobi (n, Nmax: Word; A:Matrice; Eps.Real; Var c.Word:
Var X'vector; Var DN:boolean ):
{ n-numarul de ecuatii; Nmax- numarul admisibil de pasi; A-matricea extinsa a sistcmului; Eps-precizia prescrisa de calcul; c-numarul de iteratii efectuatc:
III', -==X"",' -~V"",C""c=t ~"") I""U"",1 "",1",,1 C"",'C",,' l""ll""l (""i :'",,' C""u"",t e""I"",O"",r",,: ""D""N""'".,-l,,,,) 1",,' il,.,l*,l C""s"",tc"",' ,;"v""a",,1 (",,)"'=' r""C,U",,,,,l,,,,-l,,,,,Li,,,,C,,,,d,,,,· ~""h"",,' a"",~"",."",a""d""e""t""c""n=11""i t""1',,,,1 t"":"'",,,' O"",l"",li"",t i",,'-l==l_ cu precizia data in limita admisa de pasi }
()6
CapitolullV. REZOLVAREA NllMERICA A SISTEMELOR DE RCllATn ALGEBRICE LlNIARE
{Declararea variabilelor locale}
-
Var Y:Vector; i.j:Word; T,Max:Real;
Begin
For i:=1 to n do
Begin 1':= Al i.i];
For j:=l to n do Aii,j!:=-A[i,jjfT;
A] i.n+ 1] :=AI i.n+ 1 ]/T; AI i.i] :=0;
End;
For i:=l to n do X[i]:=A[i,n+l]; c:=o;
Repeat
For i:=1 to n do Regin
T:= A[i,n+l]:
For r= 1 to n do 1':=T +A[i.jj*X[j];
Yl i]:==T; End; c.ec+l ;
{Controlul apropierii}
I Max:=Abs(X[ 1]- Y[ 1 J);
I For j:=2 to n do
Begin T:=Abs(Xlj]-Y[j]); If T>Max Then Max:=T; End;
I x·-y· {Transferarea valorilor ]
i Until (~1a~<=Eps) or (c > Nmax):
i DN:= c-o-Nmax: "
It End; {lacobi} ===:lI
{Formarea matricei standard}
{Construirea aproximatiei initiale}
{Calculul unei noi aproximatii}
o varianta de aplicare a procedurii Jacobi este cea realizata prin programul P __ 4 __ 8_1 prezentat mai jos, Datelc de intrare pentru acest program se citese dintr i-un fisier text eLI .mnatoarea structura: prima linie a fisierului contine 2 numere de tip Word, separate prin -patiu, reprczentand respectiv, 11 -riumarul de ecuatii si Nmax -riumarul maximal admis de nasi: fiecare din urrnatoarele 11 linii coniine cate 11 + 1 nurnere reale, separate prin spatiu, constituind liniilc rnatricei extinse a sistemului, iar in linia n + 2 sc contine numarul real Eps-preeizia prescrisa.
{$M 65520,0,655360} {Setarea la maxim a dimensiunii segrnentului stivei}
Program P _4_8_1; {Aplicarea metodei Iacobi la rezolvare sistemelor de ecuatii liniare} Uses Crt, RezSEAL;
Var A:Matrice; X:Veetor: i,j, n, Nmax,c:Word; Eps,T,D:real; F:Text; Dn: boolean; St: string;
Begin ClrScr;
WriteLn(,Dati numele fisierului: '); ReadLn(St); Assign(F,St); Reset(F); ReadLn(F,n, Nmax); For i:=l to n do
For j:=l to 11+ I do
97
Capitolul IV. REZOL V AREA NUMERICA A SISTEMELOR DE ECUATII ALGEBRICE LlNIARE
LEnd~
Read(F,A[i,j]); ReadLn(F,Eps);
Close(F); T:=TimpuiCurent;
Iacobim, Nmax. A, Eps, c, X, DN): T:=T -TimputCurent: Writcl.n:
WriteLn(,Durata de executie;'. T:O: 11); WriteLn:
If DN Then WriteLn(,Solutia s-a determinat eu precizia data in '. c, , pasi:')
Else Writel.nr'Precizia prescrisa nu poate fi atinsa in "Nmax, ' pasi:'); For i:=l to n do
WriteLnCx[',i,']=', x[i] :0: 11); WriteLn:
Writel.nt'Abaterile la substituirea aproximatiilor in ecuatii:'):
Mentionam ca solutia exacta a sistemului considerat este: Xl = X2 == J;;] = 1.
Comparand numarul de pasi, obtinut In rezolvarea Exemplului , 4 (19 pasi) cu eel din ExemplulS (6 pasi), determinate pentru aceleasi date initiale, conchidern ca estimarea teoretica a numarului de iteratii este considerabil majorata fata de cea obtinuta practic,
illitolul IV. REZOLVAREA NUl\1ERIC.~ A SISTE1'v1ELOR DE ECUATII ALGEBRICE UNIARE
Exemplul , 6. Sa se rezolve prin metoda Iacobi cu exactitatea E = 0,001 urmatorul sistem:
R
f
I P 4 8 1
ezo vare. mnou a ost ap. icat programu
Fisierul de intrare: Jaeobi2.in Rezultatele afisate pe eeran:
3 20 Solutia S -3 determinat ell precizia
10 1 1 6 data prin 11 pasi:
3 -4 1 1 xl l l = 0.62504306684
1 -5 -8 3 x[2] := 0.12475778662 I
0.001 x[3] =-0.37508139414
Abaterile la substituirea aproximatiilor in ecuatii: I
D[ 11 = 0.0001 D[2] =0.0010 D[3] =0.0020 Mentionam ca. desi matricea coeficientilor necunoscutelor sistemului considerat nu satisface nici una din conditiile de convergenta (4.8.7) sau (4.8.8). procesul Iacobi totusi este convergent.
Complexitatea metodei Iacobi. In metoda lacobi se calculeaza termenii sirului {x ik , } cu formula X(k)= ax(k-l)+p, (k = 1,2, ... ). Pentru calcularea produsului ax(k-l)sunt necesare n2 operatii de inmultire si n2 operatii de adunare, iar pentru adunarea vectorului p mai sunt necesare n operatii de adunare. Deci complexitatea determinarii lui x (k) este O(n2).
Pentru determinarea solutiei cu precizia E, utilizand estimarea apriori a erorii, se calculeaza toti termenii sirului {X(k)} pana la valoarea k calculata cu ajutorul expresiei din formula (4.8.12), care in raport cu n este constanta. Astfel, daca numarul de iteratii necesar pentru a determina solutia cu precizia prescrisa este mai mic decat n, numarul total de operatii necesare pentru solutionare va fi mai mic decat n', pe cand complexitatea metodei Gauss este O(n3).
Intrebari ~i exercitii
1. Sa se reduca la forma cu matrice diagonal predominant a urmatoarele sisteme:
{3X' - (A-1)x2 + X3 = 2A + 3
6x, - 5X2 +(A+l)x3 =8A-3
2x, + (A-2)x2 + X3 = 3 A
(A = -5, -4, ... ,10).
2. Fie sistemul (4.8.3): X= ax + p, pentru care ambele norme llail 9' e =1,2 sunt subunitare, Utilizarea carei din aceste norme va fi mai adecvata la estimarea apriori a erorii conform formulei (4.8.12) ?
99
5:apitolul IV. REZOLV AREA NUMERIC,\ A SISTEMELOR DE ECUATII ALGEBRICE LlNIARE
Ii \'
3. Fie sistemul x = ax + p . Sa se elaboreze o functie care, i11 caw! unci norme ![ail e :
9 = 1 sau 2, va determina numarul de iteratii k necesare pentru obtincrca solutici sistemului considerat cu exactitatea prescrisa E prin metoda Jacobi.
Indicatie: De utilizat procedura elaborata conform exercitiului din paragraful anterior si formula (4.8.12).
4. Testati programul P _ 4_8_1. in acest scop ar putea fi folosite si rezultatele obtinute la realizarea subiectului 1. Solutiile exacte ale sistcmelor in cauza sunt: Xi = A. x, = I. x~ = 2. 5. Adaptati programul P _ 4_8_1 pentru utilizare cu generare aleatoare a coeficicntilor sistemului extins de ecuatii. Rulati acest program eu diverse valori ale lui n:::;: 100. Care sunt eoncluziile ?
6. Faceti 0 analiza cornparativa a metodelor Gauss si Iacobi, [inand con! de avantajele si dezavantajele fiecarei din aeeste metode.
4.9. =Metoda Gauss -Seidel
Fie sisternul de ecuatii liniare (4.8.1), ca ~i la metoda iteratiei simple. prin transforrnari de echivalenta a fost redus la forma (4.8.2). La rezolvarea sistemului (4.8.2) prin metoda Iacobi fiecare aproximatie noua se determina cornpletamente prin cornponentele vectorului obtinut 1a pasul precedent, deci este necesar de a pastra 111 memoria calculatorului toate componentele vectorului x (k-Jl (k > 1) atat timp cat se calculeaza vectorul x ck I. Metoda
Iacobi po ate fi modificata astfel. incat la pasul k sa fie folosite In calcu1ul cornponentei XiI;)
valorilc deja calculate la acelasi pas: x;k), xik) •... , .X;~i . Aceasta modificare a mctodei Jacobi se nurncste metoda Gauss -Seidel ( se rnai numeste metoda Seidel ), iar sirul iterativ devine:
(4.l).1)
(i = 1.2 .... ,n; k 21).
Sc dernonstreaza ca teorernele de convergenta, formulate in pA.R pcntru metoda Jacobi. raman In vigoare ~i pentru procesul iterativ (4.9.1). De obicei, metoda Seidel converge mai repede ea metoda Jacobi. In cazul general, dorneniile de convergenta ale accstor 2 metode iterative doar se intersecteaza. adica pot fi indicate asa matrice, inca: metoda Seidel va converge. iar metoda Jacobi va fi divergenra si reciproc.
Proccdura de rczolvare a sistemelor de ecuatii liniare prin metoda Seidel, prezcntata mai jos, se deosebeste de procedura Iacobi, prezentata in p.4.8, prin aceea ca valoarca calculata
X)kl se va atribui imediat variabilei eare a continut componenta X;k-lj:
{Rezolvarea sisternelor de ecuatii liniare prin metoda Seidel} Procedure Seidel (n, Nmax: Word; A:Tablou; Eps.Real; Val' c:Word; Val' X:veetor; Var DN:boolean );
{n-numarul de ecuatii; Nmax- numarul admisibil de pasi: A-matricea extinsa a sistemului; Eps-precizia prescrisa de calcul: c-numarul de ireratii efectuate:
100
Capitolul IV. REZOLVAREA NUMERICi\ A SISTEMELOR DE ECUATII ALGEBRICE LINIARE
{Transferarea valorilor ] {Calculul unci noi aproximatii }
X-vectorul necunoscutelor: DN-primeste valoarea True daca s-a determinat solutia cu precizia data in limita adrnisa de pasi}
Var YiVector; i.j.Word; T,Max:Real; {Declararea variabilelor locale}
Begin
I For i:= 1 to n do {Formarea matricei standard}
I Begin
T:= Ali,i);
For j:=1 to n do Ati.j I:=-AI i,j]/T; A[i,n+ 1]:=A[i.n+ 1]1T: A[ i.i 1:=0;
End;
For i:=l to n do XriJ:=Ali,n+ 1 J; cr=O;
Repeat Y:=X;
For i:=1 to n do Begin
T:= A[i,n+l];
For i= 1 to n do T:=T+A[i,j]*X!jl;
X[i]:=T; End; e:=c+l;
{Controlul apropierii } Max.e=Abs/X] 1]- Y[ 1 D; For j:=2 to n do
Begin T:=Abs(Xlj 1- Yfj]); If T>Max Then Max:=T: End;
Procedura Seidel, prezentata mai sus, precum si tipul Tahlou =Array! 1. ,50.1 .. 51] of Real, utilizat In cadrul ci, se considers declarare 111 unitatea de program RczScal.
Dupa cum deja s-a mentionat In p.4,8, reducerea .manuala a sistemului de ecuatii la 0 iorrna special a, urmata de verificarea conditiilor de convergenta, in cazul general este 0 activitate practica anevoioasa. Descrieru 0 procedura practica de transforuiare a sisternului initial (4.8.1), care garanteaza convergcnta procesului iterativ al metodei Gauss -Scidel ncntru sisternul (4.8.2)
Reprezentam sistcmul (4.8.1) In forma matriciala
Ar > b. (4.9.2)
.inde A este matricea coeficientilor necunoscutelor, b -vecrorul-coloana a termenilor Iiberi. v-vectorul -coloana a necunoscutelor. Inmultind din stanga ambelc pilqi ale sisternului -+.9.2) Ia transpusa matricei A. obtinem:
ATAt' = Alb.
Introducern notatiile: C = AT A: d = ATb. Sistemul modifieat acum are aspectul Cx=d.
(4.9.3)
101
Capitolul IV. REZOLVAREA NlD\1ERIC'\ A SISTEMELOR DE EClJATII ALGEBRJCE LINIARE
Un atare sistem este acceptat sa fie numit sistem normal. Sistemele normale se bucura de 0 serie de proprietati .Jntne", printre care in particular sunt urrnatoarele:
• matricea C a coeficientilor nccunoscutclor sisternului normal este simerricaradica cij = cp, ij = !+n);
• toate elementele diagonalei principale ale matricei C sunt pozitive.
Ultima proprietate pcrmite de redus "automat" sistemul normal (4.9.3) la forma standard:
11
Xi = Z:<Xijxj + Pi (i = 1,2, ... ,1l), j=l
.i~i
(4.9.4)
unde
Rationalitatea efectuarii transformarilor descrise se justifica prin urmatoarea propozitie:
Teorema Procesul iterativ Seidel pentru sistemul standard (4.9.4), echivalent sistemului normal (4.9.3), converge la solutia unicii a acestui sistem pentru orice aproxlmatie initiala.
Exemplui_l. Ilustram transformarile descrise anterior folosind urmatorul sistem de
ecuatii:
Pentru acest sistem:
A=n 1 l} h=[g} [1 2 1]
] AT: 1 1
1 -1 1 1 -1
Calculam:
C=AT A=(! 2 1 ) [1 1 lJ = (~ 4 2) [1 2 J1)[g)=[n
1 1 2 1 3 1 ; d = AT b = 1 1
1 -1 1 1 -1 2 131 1 in asa mod, sistemul normal, obtinut din sistemul considerat, are forma:
Pomind de la matricea extinsa A =(Alb) a sistemului initial, matricea extinsa C =(Cjd) a sistemului respectiv normalizat poate fi calculata direct, aplicand urmatoarea formula:
n
cu= Lakiakj (i = l+n; i= l+n+l);
k=!
(4.9.5)
102
CapitolullV. REZPLVAREA NUMERIC;';\ SISTEMJ':LOR DE ECUATH ALG~':BRICE LINIARE
Urmeaza prezcntarea In limbajul Pascal a procedurii Norrnalizare (considerate .omponenta a unitatii de program Rezxeal), care este destinate calculului matricci normale
C =(qd) conform formulei (4,9.5),
I Proce~~re Normalizarcm.Word: Var A, C:Tablou); i Var i.j,k: word;
o varianra de aplicare a procedurii Seidel, optionala hind normalizarea automata a -istcmul ccuaiii en ajutorul procedurii Normalizare, este cca rcalizaia prin prograruul F_4 __ 9_J prczcntat mai jus, Datele de intrare pcntru acest program Sf: cites; dintr-un Iisier text
ell acecasi structura ca cca utilizata pentru prcgramul P 1 :
Observatie. Teorcma din paragraful curent garanteaza convergenta procesului Seidel. dar IlU neaparar ~i o viteza mare de convergenta.
Intrebari si exercitii
1. Adaptati programul P _ 4_9_1 pentru utilizare cu generare aleatoare a sistemului extins de ecuatii;
2. Testati programul P _ 4_9_1, modifieat conform subiectului 1. eu diverse valori ale lui n S 50. In acest seop ar putea fi folosite:
1) rezultatele obtinute la rezolvarea subiectului 1 al paragrafului anterior;
2) variantele ell normaJizare automata. precum si fara normaJizare prealabila a matricelor sistcmelor.
Care sunt concluziile ?
3. Procedura Normalizare, folosind formula (4.9.5), construieste matricea extinsa
C =(qd). Realizati 0 modificare a acestci proceduri care ar simplifica unele ealcule datorita
simetriei matricei C = (cU)n'
4. Faceti 0 analiza cornparativa a metodelor Iacobi si Gauss -Seidel, tinand cont de avantajele ~i dezavantajele fiecarei din aceste metode.
104
Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
5.1. Formularea problemei integrarii numerice
Fie se cere de calculat integrala definita
b
1= jf(x)dx. a
Din cursul de "Analiza matematica" se stie ca daca f: [a,h ]--"R este 0 functie continua, atunci integral a (5.1.1) exists si pentru calcularea ei, in cazul cand se cunoaste o primitiva Ft.r) a Iunctiei f(x), poate fi utilizata formula lui Leibniz-Newton
b
1= jf(x)dx=F(b)--F(a). (5.1.2)
a
Insa. III majoritatea problemelor practice nu se reuseste exprimarea primitivei prin functii elementare cunoscute. In plus, deseori functia de sub integrala este definita in forma tabelara sau grafica si determinarea exacta a primitivei este imposibila. In consccinta, devine dar ca iniegrarea dupa formula (5.1.2) nu are aplicare larga In practica si foarte frecvent este necesar de recurs la metode de caleul aproximativ al integralei. Metodele aproximative constau in construirea aproximatiei primitivei, urmata de utilizarea formulei (5.1.2). Ele permit de aflat nemijlocit valoarea numerica a integralei, utilizand valorile cunoscute ale functiei de sub intcgrala in anumite puncte, numite noduri. Formulele, ce se utilizeaza pentru aprox imarea intcgralelor definite, se numescformule de cuadraturii (cuadraturi ).
in continuare vorn prezenta rnetode numerice de integrare aproximativa bazate pe principiul de mai sus, adica metode ce exprima integrala prin fonnule de forma
b 11
1= jf(\:)dx = LPif(xi)+Rn(f), (5.1.3)
a leO
(5.1.1)
II
unde Rn(f) = 1- LPif(xJ caracterizeaza eroarea formulei de aproximare a integralei,
i=O
nurnita si restul cuadraturii, iar Xi (i = 0-7-11) sunt nodurile formulei. In functie de modul de specificare a nodurilor Xi si a coeficientilor numerici Pi, pot fi obtinute diferite tipuri de cuadraturi de forma (5.1.3).
Atunci cand folosim 0 formula concreta de cuadratura, trebuie sa cunoastem estimatia
erorii absolute a ei, adica a valorii IRIl( f )1· Daca nodurile Xi se iau dintr-o diviziune echidistanta, adica din diviziunea
/111 =(a=xo<xl< ... <xn=b)
a intervalului [a,b] la care distanta dintre oricare doua noduri consecutive este aceeasi, h= Xi+l-xi=(b-a)/n (O:Si:Sn-l),
atunci problema estirnarii erorii poate fi reformulata astfel: dat fiind un E > 0, sa se determine
asa un 11 incat sa fie verificata relatia IRn(f)1 < E.
Fundamentarea conceptului formulelor de cuadratura, ce vor fi examinate i11 paragrafele urmatoare ale capitolului curent, se sprijina pe sensul geometric a1 integralei de forma (5.l.1), care pentru 0 functie f(x) pozitiva pe [a.b I, reprezinta aria subgraficului functiei, adica a
105
Capitn!ul y, CALClJU)L NUl\lERIC .AL INTEGRALELOR
.frapezului curbiliniu" T, margin it de graficul functiei, dreptele x = a, x::::: b si axa ahsciselortf-ig. 5.1.1):
1 y
o
a
Fig. 5.1.1
b
x
5.2. l\idoda drepumghiurilor
Fief: la,hl-·R 0 functie continua. iar !ill::::: (a =: x[)< X, < ... < Xli == b ) esre 0 diviziunc
echidistanta a intcrvalului [a.bl.
drcptunghiurilor cousta In aprox imarca funcrici sub intcgrala pc
l .cn-} printr-o constants de forma f(ci). c.e [Xi, Xii! I. Prin nnnarc.
a I conxidcrat sc iiUCJlU dupa cum urmcaza:
1
'"
I r ( )'
~ J \ x. a.'t'
.t-
... '1.
X . !
formula dreptunglriurilor de stdnea b
_. r t'
J ~~ l. .r J'
a
formula dreptunghiurilor de dreapta b
1"" Jf(.{ idx a
formula dreptunghiurilor medii
b
~ i {'_
{~ __ " i-y
. ,,,,,- J-' \.-
(1
In
h = i+j Xi) ~iiniiltirncaf (ei)
rn SL1DU integrala, corespunzatoare lui llu' capctele
,->0 ..... •
i.ecarur
5.2
n ;
h Lf(xi +h!2) :=-c )\ilnCfJ. i-i:
( 5.2
valorile Sn(j), Dni f ). lVI,,( f) reprczinta
(figurilc .1, 5.2.2, 5.2.3), adica
lui /;1, sunr justificat« in sensul te prin surncle cuadraturi ale metodei dreptunghiurilor.
D () I 1',,1 .. ((1
1l, I ~ Ie. v /
o a cx,
o
Capitolul V. CALCULU!. NUMERIC AL INTEGRALELOR
y =j(X)
I I
Xi Xi. I Xn- xn=h X I
Fig. 5_.2_._1 -
y
x
a =Xo
xn=b
Xi-I
Fig.5.2.2
y y =j(x)
o
a =Xo
X
Xi+l
Fig.5.2.3
Xn-l
xn=b
]07
Capitoiul V. CALCULUL NUMERIC AL INTEGRALELOR
Estimarea erorii in metoda dreptunghiurilor
Teorema. Dacii f: r a, b J---l-R este 0 functie derivabilii, cu derivatii continuii si tV! = max I f(l)(x)j, atunci
xE[a.b]
Ii R (f),«b-ai·M (b-a).M,
n I 4 (5.2.4)
I kn k
unde k = 2, pentru formulele (5.2.1), (5.2.2) si k = 4 -pentru (5.2.3).
Sa calculam integrala cu 0 precizie.e. In virtutea teoremei de mai sus, aceasta inseamna ca vom impune ca eroarea comisa, estimata conform relatiei ( 5.2.4 ), sa nu depaseasca E. Deci se impune inegalitatea
(b-a i· MJ(k'll) '$ E,
de unde rezulta ca cea mai mica valoare a lui n, care sarisface aceasta relatie, este
n = [(b -a)2M] + 1 kE
( 5.2.5 )
In continuare este prezentata in lirnbajul Pascal unitatea de program CNID, in care sunt incluse procedurile Dreptunghi,n si Dreptunghi __ Eps, destinate calculului integralei definite de forma (5.1.1) prin varianta solicitata a metodei dreptunghiurilor. In cazul procedurii Dreptunghfn, fiind dar numarul n al punetelor de diviziune, la iesire valoarea calculata Intg a integra lei se insoteste de eroarea ei, evaluata conform formulei ( 5.2.4), iar 111 cazul procedurii DreptunghiEps, fiind data precizia Eps, valoarea Intg se insoteste de numarul punctelor de diviziune a intervalului de integrate, determinat apriori dupa formula (5.2.5).
Unit CNID:
I
{*********************************************************************} I {Notatii comunc pentru parametrii subprogramelor: I a.b] =intervalul de integrare; II M -majoranta modulului derivatei de ordinul respectiv al functiei frx): n -numarul de II
divizari ale intervalului ; f -numelc funetiei de sub integrala; Eps =precizia de calcul; I
Intg -valoarea integralei } I
{*********************************************************************} I
II
{CaJculul numeric al integralelor definite}
Procedure Drcptunghi_Eps(a,b,M,Eps: Real; start.Word; f:Fune; Var Intg:Real; Var n:Word); {Parametrul start arc aceeasi semnificatie ea si in Dreptunghi ji}
{start -variabila ee specifics varianta formulei dreptunghiurilor: start = 0, pentru formula dreptunghiurilor de stanga; start = 1 -rnedii ; start =2 -de dreapta]
Implementation
108
Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
{**********************************************************************} i Procedure Dreptunghi ji:
Var i,k:Word; h.x.Real; {Dcclararea variabilelor locale, auxiliare}
II Begin
I h:=(b-a)/n; x:=a + start*hl2; Intg:=O; For i:=l to n do
Begin
Intg.e lutg+ftx): x:=x+h;
End;
II If start=I then k:=4 else k:=2;
~ Intg:=Intg*h; Eps:=Sqr(b-a)*M/(n*k);
~ End: f Dreptunghi_n }
[
~
~ Procedure Dreptunghi_Eps;
Ii Var i.k.Word; h.x.Real; {Declararea variabilelor locale, auxiliare]
ji Begin
! If start= 1 then k:=4 else k:=2;
n:=trunc(sqr(b-a)*M/(k*Eps))+ 1; h:=(b-a)/n; x:=a + start*hJ2; Intg:=O; For i:=l to n do
Begin
Intg.e lntg+Itx): x:=x+h; I
End;
Intg:=Intg*h: I
End; { Drepl~nghi_Eps } :'::~JII
{**********************************************************************J I
~_£=E~_;_~"~~~~~~~=~~ -- . -- -. _ _-- - ~
Exemplu: Functia .t(x) =e 2. xEt-I,I] fiind continua, adrnite primitive. Totusi prirnitivele acestci Iunctii nu pot fi ex primate prin functii element are, dcci nu putem calcula exact valoarea intcgralei
1 x2
fe--T dx .
-1
In acest caz, aproximarea nurnerica a integralei devine 0 necesitatc, x2
f(2)(X) = ( x2 -1) e -T, rezulta ca valoarea maxima a
1 marimii I .t(1) (x) I pe [- L IJ sc atinge in x = -1 sau x = 1. Astfel obtinern M = e -"2 . Deci
:)cntru calculul aprox imativ aJ iniegralei in studiu putem aplica formula dreptunghiurilor, estimand eroarea dupa formula (5.2.4).
( 5.2.6 )
lntrucat
x2
.t(i)(x) = -xe-'T~i
a) Calculul integralei ( 5.2.6 ) pentru n = 100 s -a realizat prin programul atasat P _5_2_1:
109
r Progra=m P __ 5~~2~J :====-{-, i7,a~e;=7~1-(;ct~Cd;pt~hiuri !~=;Jii;d __ d~at __ N} II Uses Crt.Cnid;
I: Var
Ii :1 h lr to r: . I'v' ··j'IJ ""I'
ii < .... , d/:O,l~PS, .. l,U,''''::''.,
Ii 11 : , .Word
!I _ • .t, t' ..... 1 ,
!I Function [(x.Reat ):R:':<11; FHl'; {Far-directiva de compilare} Ii Begin j"::::i'Xp(,y *X/I) End:
!i-- 1 -- ;....~ ~.' '" .. - /
II Procedure Sene; II I) ""I'."
II :"'4 •
II 1~' l .
Ii K.:-::: j , (l :C::: 1 :
!!'While d >Ep>. do [Dcterrninarea nurnarului de zecimalc afisaie if} rezultate ]
Ii r " kj. End
I! Begin J Inctk); l~n :
Ii 'r.,: 'itcl '111-)'" O'k 1 L-,..,.··.' /! '1")'\Vt-;',,1 'I-
Ii. d; I (,'o! \. I L,~.'" ',- I, l~i':-" l f+. r-r- , u.c: _1..
! Dreptunghi __ rua, b, M, n, 0, E, Intg, Eps); Scrie;
I WriterMedii: '):
I Dreptunghijua, b. M, n, 1. f. Intg, Eps); Scrie;
,! \Vrite('De dreapta '):
II Dreptunghi ji/a, b, M, n, 2, f. Intg, Eps); Scrie;
ii Writel.n:
II
II llJ:n~:
WriteLn;
-.,
Ii
Ii
,I
II
II
II Ii II
11
Ii
I, il
Ii ;j
"
Ii
!!
II
II
II
I,
II
Ii
ii
II II
Ii
I'
ii
II !l ;1 II I.
I!
II II
II II
.~,.~~~="~~==~=~=-]
ReadLn;
Rezultatele (executiei programului P __ S_2 __ 1) pentru n=-"100:
Varianta: Valoarea integralei: Precizia:
De sranga: 1.71 0.012
Medii: 1.711 0.0062
De dreapta: 1.71 0.012
b) Sa sc calculeze integrala (5.2,6) eu precizia data. de exemplu, E = 0,001. Programul P _5_2_2, prezentat mai jos, realizeaza aceleasi 3 variante aJe metodei dreptungiurilor, de data aceasta cu evaluarea apriori a lui n, conform forrnulei (5.2.5), ceea ce asigura atingerea exactitatii impuse E.
C<lpilolul \. CALClJUc;L :'."l'MERlC AL 11\TEGI<ALELOR
" While d »Ep- do {Deterrninarea nurnarului de zccimale afisate in rezultate}
ii Begin d::::.d/1O: Incrk): End:
~ Writcl nt In: wn·!< -! ~"'1 (il' Writel..n
II ,1 \.I.._- ~l"_ -·'b·'~· '" .. ~ ",I. •• .r t , ~ ....... !1,
Ii End:
!i Begin
ClrScr:
:1:=-,·1: b:= 1: Ep:,:=()JXl1: M:=exp( -112):
Writcl.nt 'Rczultatcie pcnuu , Eps.O' l l):
Numarul de diviz iuni: ~): Wntel,n:
\\-rtlcL.n( 'Varian.a
.\
.I
Dr. .. ~pttu~ghi< [~IY~ (u, h. . Ep-, l. f. ]ntg n): Scrie:
Writ: ... ~( 'j).~ drcapia: ):
Drcp: 1_ Eps (a, [1. rVl. Ep:;. 2.
Writcl 1';:
Variants Dc Medii:
De dream a:
!:
i -/' !"'1
L d 1_
1.7112
t214
~)C)7
1.7112
Revcnim l~! problema calculului integrale: de forma {5 1 1;.
.uuctic continua impreuna en ruimcle doua dLC
" f : ia,h ]- ... R este o
e: pe ia.h I. tar
Pcntn:
-cnsului
... II). Conform
.X·, I
r, ::: fl' \ :r it/X.
J x· . j--j
(53 1)
.rapczului
ern cor.sidcra CJ integral»
:) 3.1) estc
j 11
Capitolul V. CALCULUI. NUMERIC AI. INTEGRALELOR
(5.3.2)
unde h = Xi _ Xi _! •
In ipoteza forrnulata la inceputul paragrafului curent, eroarea aproximative (5.3.2) are aspectul
. _ h'/(2) . .-
Ri(/) _-- (11). 11.E !Xi-IoX;!.
12 i' I
Ri(/) a egalitiitii
(5.3.3)
Demonstrarea acestei afirmatii dcpascste cadrul obicctivelor propuse in aceasta lucrare, de aeea nu va Ii expusa.
Drept valoare aprox imativa a integralei pe intrcg intervalul la,b] putem lua suma ariilor
trapczelor T; (i = l,n), care se va nota prin 1:1 (/). Deci, pentru 0 diviziune echidistanra ~II eu pasul Iz = (b-a)/n :;;i punctele Xi = a +ih (0 <::= i -:-~ n), vom avea:
ce poarta denumirea de formula generalizatii a trapezelor (sau formula trapezelor ).
f(x;)
y =/(x)
y
Xi-I Xi
Fig.5.3.1
xll=b
x
Pentru estimarea erorii RIlCI) a formulei generalizate a trapezelor se poate aplica urrnatorul rezultat:
Teorema, Dacii functia f: [a,b J-+R admite derivate continue piini: La ordinul doi inclusiv pe intervalul [a,b], atunci pentru RIl( I) are loc inegalitatea
I R (I) I < __ ~~a).lM2 = S!!_ -a)~_J12.
n 12n2 12 ( 5.3.5 )
unde h = (b - a)/n, M2 = max I f( 2 lex) I.
xE[a.bl
112
Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
Dernonstrarea acestei teorerne se poate realiza folosind formula (5.3.3).
Estimarea erorii, dupa cum vedern din (5.3.5), depinde de diviziunea 1l.n a intervalului
I a, b], rnai exact de numarul Il de parti in care acesta se imparte. Daca nc prop un em sa calculam cu ajutorul formulei (5.3.4) integral a definita I cu 0 precizie data e , atunci acest numar n se poate detennina apriori, reiesind din inegalitatea
(b-a)3M,
- .~ <E,
12112 -
de unde rezulta:
n = [(b -a) /(b -a)l\12l+ 1
~ 12£ I
..J
( 5.3.6 )
Remarca_l. in Iormulele (5.2.4), (5.3.5), destinate aprecierii erorilor respectiv a
rnetodelor dreptunghiurilor si trapezelor, figureaza marimile M respectiv M2, care in aplicatiile practice pot fi inlocuite prin majorante ale lor. Dar, la calculul integralei cu anumita exactitate e. aceste majorante trebuie sa fie cat mai apropiate de valorile respective M si M2. Luand In calitate de rnajorante rnarimi mult mai mari ca M respectiv M2, volumul calculelor poate creste esential (deoarecc numarul de diviziuni n creste) si eroarea de caIeul poate deveni predominanta,
Remarca_2. Observam ca eroarea formulei dreptunghiurilor, calculati.i conform formulei (5.2.4), este direct proportionala cu h, iar cea a formulei trapeze I or, estimata reiesind din
(5.3.5), este direct proportional a ell h". Aceasta inseamna ca, aplicand aceeasi diviziune a intervalului de integrare pentru calculul integralei prin formula trapezelor, eroarea va fi mai mica dec at In cazul formulei dreptunghiurilor, daca neglijarn influenta erorii de caIeul.
Mai jos prezentam procedura Trapez_n_Eps (considerata component a a unitatii de program eNID), destinata caIeulului integralei definite prin metoda trapezelor, utilizand formula ( 5.3.4). Aceasta procedura are 2 alternative: 1) fiind dat numarul n al punctelor de diviziune, la iesire valoarea calculata Intg a integralei se insoteste de eroarea ei, evaluata conform formulei (5.3.5); 2) fiind data precizia Eps, valoarea Intg se insoteste de nurnarul punctelor de diviziune a intervalului de integrare, determinat a riori du a formula (5.3.6).
II {CaIeulul numeric al integralelor definite prin metoda trapezelor}
{**********************************************************************} { Notatii pentru parametrii procedurii: [a.b] -intervalul de integrarc;
M =majoranta modulului derivatei de ordinul doi a1 functiei ftx): n =numarul de divizari ale intervalului ; f -numele functiei de sub integral a; Eps -precizia de calcul; Intg -valoarea integralei; start -variabila ce specifica altemativa de aplicare a metodei: start = 'n', pentru cazul cand se da n; start = 'Eps' -se da Eps}
{**********************************************************************} II Procedure Trapez_n_Eps(a,b,M :Real ; Var n:Word; f:Func;
I Var Intg, Eps:Rcal; Start:string);
I Var i:Word; h,x:Real; {Dec1ararea variabilelor locale, auxiliare}
Begin
, If start = 'n' then Eps:=(b-a)*sqr(b-a)*M/(l2*n*n)
else n.etruncub-ar=s rt«b-a)*M/(12*E s»)+ 1;
II ~
Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
h:=(b-a)/n; x:=a + h; Intg.et); For i:=l to n-1 do
Exemplu. Pentru a putea face 0 comparaiie intre metoda dreptunghiurilor ~l cea a trapeze lor, prezentarn exemplul de calcul al aceleiasi integrale ( 5,2.6 ):
-,
J x ....
fe2dx -1
prin metoda trapezelor. In realizarea accstui scop, este necesar sa determinam valoarea M2 =max I.t 2 )(x) I sau 0 majoranta a aeesteia.
xE [a,b]
x2
r.. (",) ') ._". A
In cazul nostru a == --1, b == 1, f"(x) =: (x" -1) e 2 .Tntrucat cercetarea la maxim <1
funcriei if (2)(x) i estc dificila, putem folosi majoranta 1, obtinuta ca produs al maximelor modulelor factorilor.
Programul 1"_5._3 __ 1. prezentat in continuare, realizeaza calculul integralei in studiu, utilizand ambele alternative ale procedurii Trapezjr Eps: 1) n := 100; 2) Eps = 0,001:
Trapez_n_Eps(a, b, M, n, f, Intg, Eps.Eps'); Serie; ReadLn;
End.
l
Rezultatele (executiei programului P _5_3_1) sunt urmatoarele:
1) pentru n = 100: Valoarea integralei = 1.7112; Precizia = 0.00015;
2) pentru Eps=O.OOl: Valoarea integralei = 1.7107; Numarul de diviziuni =26.
Concluzii. Comparand rezultatele obtinute eu ajutorul programului P _5_3_1, ell cele returnate de programele P _5_2_1 si P _5_2_2, conchidem:
a) pentru aceeasi diviziune a intervalului de integrare, metoda trapezelor asigura 0 preeizie
mai inalta a valorii integralei;
b) pentru aceeasi precizie, metoda trapeze lor necesita muIt mai putine calcule dedit cea a dreptunghiurilor.
( Explicatia, vez.i mai sus in Remarea_2 ).
5.4. "Metoda lui Simpson
Fie f: [a,bj-,>R 0 functie continua impreuna eu derivatele ei pana la ordinul patru inclusiv pe intervalul [a,b 1. In acest paragraf ne propunem sa construim 0 formula de calcul aproximativ al integralei mai precisa de cat cea a trapezelor, construita anterior. In acest scop vom aproxima graficul functiei de sub integrala pe intervalul la,b] cu un are de parabola, nu cu un segment de dreapta, cum s-a procedat in cazul formulei trapezelor. Anume, consideram
punctele Me (a, f (a)), M.( a; b ,J ( a ; b )). M 2 (b, f (b)) si determinam parabola
y = ax 2 + J3x + 'Y , ce trece prin aceste trei puncte (Fig. 5.4.1).
y=f(x)
a (a +b)/2 b x
Fig. 5.4.1
Coeficientii, a,~, 't se obtin la rezolvarea urmatorului sistem de ecuatii liniare:
aa2 + ~a + 'Y f(a)
a(a;b)' + {a;b) + 'Y f( a +b '1 (5.4.1)
" 2 )
ab2 + ~b + 'Y feb)
115 Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
Determinantul ~ al matricei acestui sistem este asa-numitul tip Vandermonde, anume:
a 11
( '( ) 3
a+b 11=(b-a)lb-a~!!_J a+b_a =(b-a) *0
21 2 2 ~ 4
b 1
In asa fel sistemul (5.4.1) poseda solutio unica, anume
Y=~X2+_:\2X+~3
~ ~ ~ ,
unde ~i este obtinut din ~ prin inlocuirea coloanei i cu coloana
[ a+bj ]T
f(a),f(-2-),f(b)_ , pentru i =1.2,3.
(5.4.2)
Integrand in limitele de la a la b functia (5.4.2), dupa transformarile respective obtinern relatia
hf b-a[. (a+b) ]
f(x)dx ~ -6- f(a)+4f -2- + feb) ,
a
(5.4.3)
numitaformula de cuadraturii Simpson.
in ipoteza formulata la inceputul paragrafului curent eroarea RS a egalitiitii aproximative (5.4.3) are aspectul
(b -a ,\5 f(4)(~) RS=- 2-) 90 .
unde I; este un punct oareeare dill intervalul [a.b].
(5.4.4)
Ca si in cazul formulelor precedente, divizam intervalul [a,b J In Il parti egale de lungimea Il = (b - a) III . Obtinem punctele de diviziune Xi = a + ill, i = 0,1,2, ... ,11.
Aplicam formula (S.4.3) pcntru fiecare subinterval dublu [xi'l'xi~lJ(accst fapt impune conditia Il =2m) si sumam dupa i de la 1 la m, In rezultat primim:
Pentru estimarea erorii RSg a formulei generalizate Simpson se poate aplica urmatorul rezultat:
116
Capitolul V. CALCULUL NUMERIC AL INTEGRALELOR
Teorema. Dacii functia f(x) admite derivate continui pana la ordinul palm inclusiv pe intervalul [a,b], atunei eroarea RSg a formulei de cuadraturii (5.4.5)
satisface urmatoarea inegalitate
IRS I:::: (b-a»)lV1. = b-'!!_Jz4lV.f
g 4 LI LI, (5.4.6)
180n 180
unde M, este majoranta modulului derivatei f.!;)(x) pe intervalul [a,b L h = (b -avn.
Demonstrarea acestei teoreme se poate realiza folosind formula (5.4.4)
Daca ne propunem sa calculam eu ajutorul formulei (5.4.5) integral a definita I cu 0 precizie data E, at unci numarul de diviziuni n, conform relatiei (5.4.6), trebuic sa satisfaca
inegalitatea
(b-a)SlV~< d d l~ - .. ~ 1 ~ lui
----.,- .14 _ E, e un e rezu ta ea cea mal rrnca va oare para a UI n care 0
lSOn"
satisface este
n =z +0,
( 5.4.7 )
unde
z=r(b-al4(b-a)M41] rar O::::l,dacaz este impar si O::::2,dacaz este par,
L \ 18(£)'
Remarca. Observant ca eroarea formulei Simpson, calculata prin (5.4.6), este direct proportional a cu Jz4, jar eea a forrnulei trapezelor, calculate prin (5.3.4), este direct proportionala eu h.": Aceasta inseamna ca, aplicand aceeasi diviziune a intervalului de integrare pentru calculul integralei prin formula Simpson, eroarea va fi considerabil mai mica dedit prin cea a trapezelor.
Mai jos prczentam procedura Simpson_n __ Eps (considerata componenta a unitatii de program eNID), destinata calculului integralei definite prin metoda Simpson, utilizand formula ( 5.4.5). Aceasta procedura arc 2 alternative: 1) fiind dat numarul n al punctelor de diviziune, la iesire valoarea calculate Intg a integralei se insoteste de eroarea ei, evaluate conform formulei (5.4.6); 2) Iiind data precizia Eps, valoarea Intg se insoteste de numarul punctelor de diviziune a intervalului de integrare, determinat apriori dupa formula (5.4.7).
[Calculul nun~~ric al integralelor definite prin metoda Simpson} , -- ~ {**********************************************************************} ~
{Notatii. pentru parametri.i proced~r~i: l a,~] =intervalul ,de il~teg:'are; I
Mv-rnajoranta modulului derivatei ClC ordinul patru al functiei t(x): n -numarul de divizari ale intervalului ; f =numcle functiei de sub integrala: Eps -precizia de calcul; Intg -valoarca intcgralei; start -variabila ce specifica alternativa de aplicare a metodei: start:::; 'n, pentru cazul cand se da n; start = 'Eps' -se da Eps}
Var l.k.z.Word; h, x.Real; {Declararea variabilelor locale, auxiliare]
Begin
If start = 'n ' then Eps:=(b-a)*sqr(sqr~a))*Mj(180*sqr(n*n)) ======= =~
117
.(:apitolul V. CALCULUL NUMERIC AL JNTEGRALELOR
r
i I
else Begin z:= tnmc(b-a)*sqrt(sqrt«b-a)*M/(l80*Eps»»; If Odd(z) then rr =z+ 1 else n:=z+2;
End;
h:=.(b-a)!n; x:=a + h; Intg:=f(a) + f (b); k:::=4; FOi' i:=1 to n-I do
Begin
lntg.elntg-ik=ftx); x:=x+h: k:= 6-k;
~ End;
! Intg:=h*Intg/3;
~ End; { Simpson __ n_.Eps }
L====="= - "==
Elaborarea unui program, dupa analogie eu P __ S_3_1. pentru aplicarea procedurii Simpson __ nEps, ramane in sarcina utilizatorului.
5.5. 'Principiul lui Runge
In multe cazuri estimarea erorii cuadraturii utilizate este 0 problema foarte difici la, dictata de necesitatea determinarii modului derivatei de ordinul stabilit al functici de sub integrala, Atunci este rezonabil de apelat la asa numitul principiu Runge, bazat pe aplicarea repetata a formulei respective de cuadratura, eu pasul h injumatatit.
Esenta si formalizarea acestei reguli 0 prezentarn in continuare.
Mai intai mentionam ca pentru termenii de rest ai cuadraturilor construite in paragrafele anterioare poate fi stabiliia 0 forma generalizata a lor:
n, = chmjk\ ~). (5.5.1)
(m?1, ~ E [a,b] -dntervalului de integrare ),
unde C este 0 constants, iar m ~i k sunt numere intrcgi. Marimile C, In si k depind de formula concreta de cuadraiura. In particular, pentru formulele dreptunghiurilor In= k = 1, in formula generalizata a trapezelor In= k=2, iar pentru formula generalizata a lui Simpson m= k=4.
in eontinuare vom eonsidera ea derivata respectiva a functiei f(x) are 0 variatie mica pe
intervaluI [a, b] si 0 yom inlocui prin constanta Mk = max If k (x )1.
[apJ
Fie Ih si Ih/2 sunt valorile aproximative ale integralei
b
1= ff(X)dX, a
obtinute prin formula aleasa de cuadratura respectiv eu pasul h si pasul h12. Acum, tinand cont de (5.5.1), putem scrie:
(5.5.2)
~l
(5.5.3)
Scazand (5.5.3) din (5.5.2), obtinem
118
~apitolul \. CALCULtiL NUMERIC AL INTEGRALELOR
.. = (·~/lmM,'l- J._) = Chflll\1k_(211i_l)
Ihl2 - AI! • k\ 2m 2m - ,
ce implica, dupa trecerea la valorile absolute, egalitatea
IIl!n -lill
Rh/2 =' . . (5.5.4)
r: -1
Conform relatiei (5.5.4), aplicarea repetata a cuadraturii alese, injumatatind de fiecare
data pasul precedent de integrate, se VZl intrerupe cand va fi satisfacuta inegaliiatea II I I
i 1112 -- It I ; ,----- S: E.
2111 --1 -
uncle E este precizia impusa de calcul.
5.6. "Calculul primitivelor
Fie 1: [a,b ]---> R este 0 functic continua, iar F este una din prirnitivele ci. Atunci, pentru orice x din intervalul [a,b l, baza forrnulei lui Leibniz- Newton. avem:
.X
F(x) - F(a)::.:: ff(z)dz
.,
a
sau
.r
Ftr) =. F(a) + jf(ZkIZ. a
Deoarcce primitiva unci functii este unica pana in 0 CLllE!(mUi aditiva, rezulta ca x
F(x)::.:: ff(z)dz. (5.6.1)
a
este acea primitiva a functiei f care are proprieratea !~(a) =: O.
Rezulta ca printr-o metoda numerics putern determina valoarca aproximativa a primitivei F(x) in orice punct din intervalul [a,bj fara sa cunoastem cxpresiu analities a acesteia. Desigur, accst mod de determinare, punctuala, a unci primitive a !lHIC(ICi difera fundamental de eel analitic, 'in care prin anumite procedee se determine forma explicita a unci primitive.
Este elm' ca. pcntru determinarea numerics <1 unci putern folosi careva din
forrnuleie de cuadratura studiate anterior. Adaptarea oricaruia din programcle precedente, pentru calculul primirivei. sc face tinand cont de faprul Ia pasul i, valoarea variabilei Intg este, de rapt. suma integral a corespunzatoare integralei pc intervalul [a,xd. Utilizatorul rurnizeaza capetele intervalului ia,bj. numarul de noduri echidistante urilizatare la tabelarea prirnitivei, majoranta M, ~i precizia de calcul ;J inregralei pC' intervaleie fa, .r.]. In final programul afiseaza tabelul solicitat.
,
Capitolu) V. CALCULUL NUMERIC AL INTEGRALELOR
Intrebari si exercitii la capitolul V
1. Sa se dernonstreze ca In cazul formulei de cuadrarura a dreptunghiurilor medii valoarea obtinuta coincide eu 0 suma integrala Reimann a functiei f(x) corespunzatoare unei anumite diviziuni a segrnentului [a,b]. Putem oare afirma acelasi lucru si pentru formula trapezelor?
2. Adaptati programul P _5_2_1 pentru ealculul aproximativ a] integralei definite J
I=f dx-;_, 1 +x '
()
folosind formula drepiunghiurilor de stanga pentru 0 diviziune echidistanta ~1l(n::::20) a intervalului [0,1]. Comparati valoarea obtinuta cu valoarea exacta a integralci.
3. Estimati eroarea care se comite la calculul aproximativ al integralei din punctul precedent, daca se aplica urmatoarea formula:
J = If(0)+2/(0.1)+4f(0.2)+ ... +2/(0.9)+/(1)1120.
4. Deterrninati diviziunea cu nurnarul minimal de subsegrnente pentru a calcula aproximativ integral a
r--
-,/1t
1= fSinx2dx o
cu ajutorul formulci generalizate a trapezelor, ce ar permite atingerea exactitatii E= 1 0-4. *5. Pentru integrala
J
I = Ix 2 .f (x )dx
sa se construiasca 0 formula de cuadratura de forma
J = C:/C-I) + C2/(O) + ClIO),
unde C1, C2, C3 se cer a fi determinate astfel, incfit J sa coincida cu valoarea exacts I a integralei atunci, candf(x) este polinom de grad maximal posibil.
"6. Evaluati numarul minimal n de divizari ale intervalului [1,2], ce ar perrnire calculul aproximativ al integralei
2
1= flnxdx
J
cu ajutorul formulei generalizate a lui Simpson cu 0 eroare ce nu depaseste E = 10-5.
"7. Explicati care este diferenta intre aplicarea principiului lui Runge pentru atingerea
unei exactitati E la calcuIuI aproximativ al integralei dupa formula de cuadratura a trapezelor si aplicarea nernijlocita a formulei (5.3.5) la atingerea acestei exactitati?
*S. Se considers functia f: [a,b]~R lex) :3x2. Compuneti un program care va folosi metoda trapezelor pentru a tabela pe intervalul la,b 1 acea primitiva F(x) a functiei in srudiu, care are proprietatca F(a) = O. Utilizatorul furnizeaza capetele intervalului [a,b], nurnarul de noduri echidistante. utilizatate la tabelarea primitivei, majoranta M. precum ~i precizia de calcul al integralei pe intervale1e [zz, xd.
120
Anexa l. Unitatea de program REAT (Rezolvarea ecuatiilor algebrice ~i transcendente)
Type Funce'Functiontx.Reall.real: [Declarare de tip} II
Function Bisectra.b.eps.real; f:Func; afis.boolean; Var nc.n.bytej.real:
{n-numarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale;
f-numele functiei din ecuatia f(x)=O; afis-confirmare pentru afisarea aproximatiilor succesive anterioare celei finale}
Function Secantera.b.m.eps.real; f.Func; afis.boolean.Var nc.n.bytej.real; {n-nurnarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale; f-numele functiei din ecuatia f(x)=O; afis-confirrnare pentru afisarea aproxirnatiilor succesive anterioare celei finale}
Function Coardeta.b.m 1 ,m2,eps:rcal; f,f2: Fune; afis: boolean; V ar nc,n: byte ):real; [rt-nurnarul de ireratii; nc-nurnarul de zecirnale la afisarea valorilor reale; f-numele functiei din ecuatia f(x)=O; f2-numele derivatei a dou a a functiei ftx): afis-confirmare pentru afisarea aproximatiilor succesive anterioare celei finale}
Function Newton(a,b,ml ,m2,eps:real; f.f l ,f2:Func; afis.boolean.Var nc.n.bytej.real; { n-numarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale;
f-numele functiei din ecuatia f(x)=O; f2-numele derivatei a doua a functiei ftx); afis-confirmare pentru afisarea aproximatiilor succesive anterioare celei finale}
Function Mixta( a.b.eps.real; f,fI,f2:FuJ1c; afis: boolean; Val' nc,n: byte):real;
{ n-numarul de iteratii; nc-numarul de zecimale la afisarea valorilor reale; f-numele functiei din ecuatia f(x)=O; f2-numele derivatei a doua a functiei f(x); afis-confirmare pentru afisarea aproximatiilor succesive anterioare cclei finale }
{Generarea matrieei eli elemente intregi din intervalul [u, vl } Procedure Gen jnatricem.m.byte; u.v.Intcger.Var A:Matriee); {n.m-dimensiunile matricei; A-identificatorul matricei dreptunghiulare}
{Rezolvarea sistemelor de ecuatii liniare prin metoda Gauss} Procedure Gauss(n:byte; AtMatrice; Var X:Veetor; Var Da:Boolean);
{Rezolvarea sisternelor de ecuatii liniare prin metoda Iacobi] Procedure Iacobi(n,Nmax:Word; A:Matrice; Eps:ReaJ; Var c:Word; Var X:vector; Var DN:boolean);
{ n-numarul de ecuatii; Nmax- numaruladmis de pasi; A-matricea extinsa a sistemului; Eps-precizia prescrisa de calcul; e-numarul de iteratii efeetuate; X-veetorul neeunoscutelor; DN -primeste valoarea True daea s-a determinat solutia eu preeizia data in limita admisa de pasi }
{Rezolvarea sistemelor de ecuatii liniare prin metoda Seidel} Procedure Seidel(n,Nmax:Word; A:Tablou; Eps:Real; Var c:Word; Var X:veetor; Var DN:boolcan);
{n-numarul de eeuatii; Nmax- numaruladmis de pasi; A-matricea extinsa a sistemului; Eps-precizia prescrisa de calcul: e-numarul de iteratii efectuate; X-vectorul neeunoscutelor; DN -primeste valoarea True daea s-a determinat solutia eu prceizia data in limita admisa de pasi}
{Normalizarea sistemului de eeuatii}
Procedure Normalizare(n:Word; Var A,C:Tablou); {n-numarul de ecuatii; A-matricea extinsa a sistemului initial; C- matrieea extinsa a sistemului normalizat}
Anexa 3. Unitatea de program CNID (Calculul numeric al integralelor definite)
Unit CNID;
{ Notatii comune pentru parametrii subprogramelor: [a,b [-intervalul de integrare; Mvmajoranra modulului derivatei de ordinul k al functiei f(x); n-numarul de divizari ale intervalului]; f-numele funetiei de sub integrala; Eps-precizia de calcul; Intg-valoarea ntegralei }
Interface {**********************************************************************} Type Func == Functiomx.Realj.Real; {Declarare tip functie}
Procedure Dreptunghi __ n(a.b.M'Real: n,start:Word; f:func; Var Intg,Eps:Real); {start- variabila ce spccifica varianta formuJei dreptunghiurilor:
start=O, pentru formula dreptunghiurilor de stanga; start = I-medii; start =2-de dreapta} Procedure Dreptunghi_Eps(a,b,M,Eps:Real; start:Word; f:func; Var Intg:Real; Var n:Word);
Procedure Trapez ji Epsra.b.M'Real; Var n:Word; f:func; Var Intg,Eps:Real; Start:String);
Procedure Simpson_I1_Eps(a,b,M:Real; Var n:Word; f:func; Var Intg,Eps:Real; Start:String);