Mădălina Roxana Buneci. Metode Numerice - aspecte teoretice şi practice
|
|
- Πράξις Ζαφειρόπουλος
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Mădălia Roxaa Bueci Metode Numerice - aspecte teoretice şi practice Editura Academica Brâcuşi Târgu-Jiu, 009
2 Mădălia Roxaa Bueci ISBN
3 Metode Numerice CUPRINS Prefaţă...7 I. Noţiui itroductive...9 I.. Elemete de teoria erorilor...9 I.. Codiţioarea umerică. Factor de codiţioare... I.3. Stabilitatea algoritmilor...4 I.4. Complexitatea algoritmilor...5 II. Aproximarea umerelor reale...7 II.. Reprezetarea umerelor îtregi îtr-o bază... II.. Reprezetarea umerelor reale îtr-o bază...9 III. Reprezetarea iformaţiei î sistemele de calcul...9 III.. Reprezetarea iteră a umerelor îtregi...9 III... Reprezetarea iteră a umerelor îtregi fără sem (pozitive)...9 III... Reprezetarea iteră a umerelor îtregi (cu sem)...30 III.. Reprezetarea iteră a umerelor reale...35 III... Forma ormalizată...35 III... Reprezetarea î virgulă mobilă...36 III..3. Stadardul IEEE III..4. Aritmetica î virgulă mobilă...45 IV. Rezolvarea sistemelor liiare...53 IV.. Elemete de aaliză matriceală...53 IV.. Metode directe de rezolvare a sistemelor liiare...6 IV... Metoda de elimiare Gauss...6 IV... Rezolvarea sistemelor liiare pri metoda de elimiare Gauss
4 Mădălia Roxaa Bueci IV..3. Calculul determiatului uei matrice...70 IV..4. Calculul iversei uei matrice...7 IV.3. Factorul de codiţioare al uei matrice...74 IV.4. Metode iterative de rezolvare a sistemelor liiare...80 IV.4.. Geeralităţi...80 IV.4.. Metoda Jacobi...83 IV.4.3. Metoda Gauss-Seidel...87 V. Rezolvarea ecuaţiilor şi sistemelor eliiare...9 V.. Rezolvarea ecuaţiilor eliiare...9 V... Metoda bisecţiei (metoda îjumătăţirii itervalului)...93 V... Metoda coardei...96 V..3. Metoda tagetei...04 V.. Rezolvarea sistemelor eliiare...4 V... Metoda puctului fix...6 V... Metoda Newto cazul m-dimesioal...7 VI. Aproximarea fucţiilor...39 VI.. Polioame de iterpolare...39 VI... Defiiţie. Eroarea de iterpolare...4 VI... Eroarea de iterpolare î cazul odurilor echidistate...4 VI..3. Eroarea de iterpolare î cazul odurilor Cebîşev...43 VI..4. Poliomul Lagrage de iterpolare...44 VI..5. Poliomul Newto de iterpolare de speţa I (ascedet)...6 VI..6. Poliomul Newto de iterpolare de speţa a II-a (descedet)...66 VI..7. Poliomul Newto de iterpolare cu difereţe divizate...7 VI.. Metoda celor mai mici pătrate...75 VI... Caracterizarea elemetelor de cea mai buă aproximare pe subspaţii Hilbert...75 VI... Aproximarea î medie pri metoda celor mai mici pătrate...78 VI..3. Limitări ale metodei celor mai mici pătrate
5 Metode Numerice VII. Derivarea umerică...89 VII.. Formule de derivare aproximativă folosid dezvoltări î serie Taylor...89 VII.. Extrapolare Richardso...05 VII.3. Metode de derivare umerică folosid iterpolarea...06 VIII. Itegrarea umerică...09 VIII.. Formula geerală de cuadratură umerică. Formula de cuadratură Newto-Cotes...09 VIII.. Formula dreptughiurilor... VIII.3. Formula trapezelor...8 VIII.4. Formula lui Simso...3 VIII.5. Algoritmul lui Romberg...4 VIII.6. Cuadratura Gauss...7 VIII.7. Formule petru calculul aproximativ al uei itegrale duble...30 Aexa: Iiţiere î Maple...35 A.. Structura iteră. Categorii de comezi MAPLE...35 A.. Operatori, costate şi fucţii predefiite î MAPLE. Expresii...38 A.3. Numere, şiruri şi idetificatori...43 A.4. Comezi de calcul î MAPLE...48 A.5. Reprezetări grafice î MAPLE...5 A.6. Structuri de date î MAPLE...56 A.6. Expresii şi fucţii...56 A.6.. Liste...6 A.6.3. Mulţimi...6 A.6.4. Tablouri...64 A.7. Elemete de programare î MAPLE...69 A.7. Atribuirea. Decizia. Structuri repetitive...69 A.7.. Proceduri î MAPLE...74 Bibliografie...79 Idex...8 5
6 Mădălia Roxaa Bueci 6
7 Metode Numerice PREFAŢĂ Aaliza umerică are o istorie lugă şi bogată: Arhimede, Newto sau Gauss, spre exemplu, avâd cotribuţii semificative î acest domeiu. Îsă metodele umerice modere, aşa cum le folosim astăzi, sut caracterizate de siergia ditre calculatoarele electroice programabile, aaliza matematică, precum şi oportuitatea şi ecesitatea de a rezolva probleme complexe di diverse domeii cum ar fi igieria, medicia, ecoomia sau ştiiţele sociale. Deşi a existat îtotdeaua o strâsă iteracţiue ître matematică, pe de o parte şi ştiiţe şi tehologie, pe de altă parte, această iteracţiue s-a itesificat î ultimele deceii. Creşterea utilizării metodelor umerice a fost cauzată u umai de creşterea performaţei calculatoarelor, ci şi de îmbuătăţirea algoritmilor. Cu toate că există produse software performate petru rezolvarea multor probleme matematice îtâlite î practică, cuoaşterea şi îţelegerea metodelor umerice rămâ eseţiale petru utilizarea iteligetă a produselor software respective. Această carte reprezită o itroducere î studiul metodelor umerice. Î cele opt capitole ale acestei lucrări sut prezetate oţiui şi rezultate fudametale ce ţi de aproximarea umerelor reale, reprezetarea iformaţiei î sistemele de calcul şi aritmetica î virgula mobilă, rezolvarea sistemelor liiare (pri metode directe şi iterative), rezolvarea ecuaţiilor şi sistemelor eliiare, aproximarea fucţiilor (pri polioame de iterpolare şi metoda celor mai mici pătrate), derivarea şi itegrarea umerică. Sut descrise cele mai utilizate metode umerice, aduse la o formă algoritmică. Î fiecare caz î parte sut prezetate proceduri î MAPLE şi se fac comparaţii ître datele de ieşire ale procedurilor respective şi rezultatele afişate de comezile MAPLE destiate rezolvării aceloraşi probleme. Î multe situaţii, petru a evideţia erorile de rotujire, se compară rezultatele obţiute utilizâd aritmetica virgulei mobile cu rezultatele obţiute folosid calculul simbolic. 7
8 Mădălia Roxaa Bueci Cartea de faţă corespude programei aalitice a cursului de Metode Numerice (de la Igieria Sistemelor, Igieria Eergetică şi Igierie Idustrială liceţă). Î afară de destiaţia ei directă de maual petru studeţii facultăţilor tehice, cartea poate servi, petru cei iteresaţi, ca puct de plecare î studiul mai aprofudat al metodelor umerice. Numerical Methods - theoretical ad practical aspects Author: Mădălia Roxaa Bueci Abstract. This book is a itroductio to the study of umerical methods. I the eight chapters of this book are preseted fudametal cocepts ad results related to approximatig of real umbers, computig i floatig poit arithmetic, solvig liear systems (by direct ad iterative methods), solvig equatios ad oliear systems, approximatig fuctios (polyomial iterpolatio ad the least squares method), approximatig derivatives ad quadrature rules. Theoretical as well as practical aspects are emphasized. The algorithms are implemeted i MAPLE. These lecture otes were developed for a fourtee-week course the author has taught for first year studets at System Egieerig, Power Egieerig ad Idustrial Egieerig. 8
9 Metode Numerice I. Noţiui itroductive Metodele umerice reprezită tehici pri care problemele matematice sut reformulate astfel îcât să fie rezolvate umai pri operaţii aritmetice. Pri trecerea de la ifiit la fiit, difereţial la algebric, eliiar la liiar problemele complicate sut îlocuite de probleme mai simple care au aceeaşi sau aproape aceeaşi soluţie. Astfel soluţiile obţiute pri aplicarea metodelor umerice reprezită doar aproximaţii ale soluţiilor problemelor origiale, şi deci implică erori. I.. Elemete de teoria erorilor Sursele erorilor şi clasificarea lor Se pot distige trei tipuri de erori î cazul aplicării de metode umerice petru rezolvarea uei probleme: Erori proveite di simplificarea modelului fizic, petru a fi descris îtru model matematic; erori di măsurătorile iiţiale sau erori di calcule aterioare. Aceste tipuri de erori se umesc erori ierete. Erori datorate metodei utilizate-de exemplu, truchierea uei serii ifiite (mai precis aproximarea sumei uei serii pritr-o sumă parţială), sau cosiderarea uui terme cu u rag suficiet de mare petru a aproxima limita uui şir. Aceste erori sut umite erori de metodă sau erori de truchiere. Erori datorate reprezetării datelor şi efectuării calculelor îtr-o aritmetică cu precizie limitată (de exemplu aritmetica virgulei mobile). Aceste erori se umesc erori de rotujire. 9
10 Mădălia Roxaa Bueci Erorile ierete sut aterioare aplicării metodei umerice, iar erorile de truchiere şi de rotujire apar î timpul calculului umeric. Erori absolute şi erori relative Eroarea absolută = valoare aproximativă - valoare exactă Eroarea relativă = eroare absolută valoare exactă Di aceste defiiţii se obţie: Valoare aproximativă = (valoare exactă )( + eroare relativă) Eroarea absolută u ţie seama de ordiul de mărime al valorilor comparate. De exemplu, o eroare î cetimetri este mai importată dacă lugimea calculată este de 00 cm, decât dacă este de 00 km. De aceea, eroarea relativă se raportează la valoarea reală. Adesea eroarea relativă se exprimă î procete: eroare absolută. 00 % valoare exactă De obicei valoarea exactă u este cuoscută. De aceea ici eroarea (absolută sau relativă) u poate fi calculată, şi doar se estimează valorile limită ale acesteia. Se utilizează majoraţi petru modulul erorii (sau orma erorii, dacă se lucrează îtr-u spaţiu ormat). Erori ale datelor şi erori de calcul Cosiderăm următoarea problemă tipică: calculul valorii uei fucţii f:r R petru u argumet dat. Fie: x = valoarea de itrare exactă x* = valoare de itrare aproximativă f(x) = rezultatul dorit f* = fucţia aproximativă de calcul Eroarea totală este dată de: f*(x*) - f(x) = (f*(x*) - f(x*)) - (f(x*) - f(x)) Deci 0
11 Metode Numerice ude, Eroare totală = eroare de calcul + eroare propagată a datelor, Eroare de calcul = f*(x*) - f(x*) Eroare a datelor = x* - x. Algoritmul u are ici u efect asupra erorii propagate a datelor. Erori de truchiere şi erori de rotujire Eroare de truchiere = difereţa ditre rezultatul exact (petru datele de itrare curete) şi rezultatul furizat de u algoritm dat utilizâd aritmetica exactă. Eroare de rotujire = difereţa ditre rezultatul produs de u algoritm dat utilizâd aritmetica exactă şi rezultatul produs de acelaşi algoritm aritmetică cu precizie limitată (de exemplu aritmetica virgulei mobile). utilizâd o Eroarea de calcul este suma ditre eroarea de truchiere şi eroarea de rotujire, dar de obicei ua ditre acestea predomiă. De exemplu, dacă aproximăm derivata îtr-u puct pri f f ( x) ( x + h ) f ( x ) h eroarea de truchiere este domiată de M, ude M = f ( t) h sup petru t îtr-o veciătate a lui x (acesta rezultă aplicâd formula lui Taylor de ordiul doi î x). Dacă ε domiă eroarea cu care se reprezită valorile lui f, atuci eroarea de rotujire î formula de aproximare cosiderată este mărgiită de h ε. Deci eroarea h ε totală este mărgiită de E(h) = M +. Studiem variaţia acestei fucţii. h M Avem E ( h) = -ε h şi deci ( h) ε ε E = 0 <=> h =. Î plus, M E >0, M deci fucţia are puct de miim î h = M ε. Ca urmare, eroarea totală este miimă petru h M ε. Petru valori mai mici ale lui h eroarea totală creşte di
12 Mădălia Roxaa Bueci cauza creşterii erorii de rotujire, iar petru valori mai mari ale lui h eroarea totală creşte di cauza creşterii erorii de truchiere. Erori forward şi erori backward Să presupuem că dorim să calculăm y = f(x), ude f : R R, dar obţiem o valoare aproximativă y*. Eroare forward absolută = y = y* - y Eroare forward relativă = y y * y =. y y Deseori eroarea y este dificil de estimat. Ideea aalizei erorilor di puct de vedere a erorilor backward este următoarea: soluţia aproximativă y* este cosiderată soluţia exactă a uei probleme cu datele iiţiale modificate, mai precis se cosideră y* = f(x*), ude x* este o perturbaţie a lui x. Eroare backward absolută = x = x* - x, ude f(x) = y şi f(x*) = y*. Eroare backward relativă = x x * x =. x x Soluţia aproximativă y* se cosideră "buă" dacă este soluţie exactă petru o problemă cu datele "uşor" perturbate. este De exemplu, dacă aproximăm y = y* - y = iar eroarea forward relativă este aproximativ.6 %. 5 pri y* =., eroarea forward absolută Petru a calcula eroarea backward, observăm că =.. Eroarea backward absolută este x = x* - x = , iar eroarea backward relativă este aproximativ 3 %.
13 Metode Numerice I.. Codiţioarea umerică. Factor de codiţioare. Problema se umeşte bie codiţioată dacă variaţiile relative ale soluţiei au acelaşi ordi de mărime cu variaţiile relative ale datelor de itrare ce le cauzează. Problema este rău codiţioată dacă modificările relative care au loc î soluţie pot fi mult mai mari decât cele ale datelor de itrare. Factorul de codiţioare (relativ) se defieşte pri: cod = variatia relativă a solutiei variatia relativă a datelor de itrare Să reveim la calculul y = f(x), ude f : R R. Să presupuem că se obţie valoarea aproximativă y*. Fie x* cu proprietatea că f(x*) = y*. Avem cod = f ( x *) f ( x) f ( x) = x * x x y y. x x Problema este rău codiţioată, dacă factorul de codiţioare cod >>. Factorul de codiţioare acţioează ca u "factor de amplificare" legâd eroarea forward de eroarea backward: eroarea relativă forward = cod eroarea relativă backward De obicei factorul de codiţioare u este cuoscut exact şi poate varia î fucţie de datele de itrare. De aceea se utilizează o estimaţie margie superioară petru cod. Deci eroarea relativă forward < cod eroarea relativă backward. Cosiderăm u exemplu de estimare petru factorul de codiţioare. Să presupuem că se evaluează fucţia difereţiabilă f petru data de itrare x şi se obţie valoarea aproximativă y* corespuzâd valorii x* = x + x, (mai precis y* = f(x*)). Eroarea absolută forward este f(x + x) - f(x) f ( x) x 3
14 Mădălia Roxaa Bueci iar eroarea relativă forward este Factorul de codiţioare este cod f ( x + x) f ( x) f ( x ) f ( x) f ( x) f ( x) f ( x) x x x x x f ( x) =. f ( x) Factorul de codiţioare absolut se defieşte ca raportul ditre variaţia soluţiei şi variaţia datelor de itrare. Factorul de codiţioare absolut acţioează ca u "factor de amplificare" legâd eroarea absolută forward de eroarea absolută backward. I.3. Stabilitatea algoritmilor Noţiuea referitoare la algoritmi aaloagă codiţioării umerice a problemelor este stabilitatea. Ituitiv vorbid, stabilitatea umerică a uui algoritm îseamă ca acesta este cât mai puţi sesibil la perturbaţiile di timpul calculului (erorile de rotujire sau la alte icertitudii umerice care pot apărea î procesul de calcul). Se spue că u algoritm de rezolvare a uei probleme este stabil dacă rezultatul produs este soluţia exactă a aceleaşi probleme cu datele "uşor" perturbate. Î cazul algoritmilor stabili efectul erorii de calcul u este mai puteric decât efectul erorii (mici) a datelor de itrare. U algoritm istabil poate amplifica mult perturbaţiile date de erorile de calcul. Acurateţea metodelor Acurateţea se referă la apropierea soluţiei calculate de soluţia exactă a problemei. Stabilitatea algoritmului u garatează acurateţea. Aceasta depide î egală măsură de bua codiţioare a problemei şi de stabilitatea algoritmului. 4
15 Metode Numerice Iacurateţea poate rezulta di aplicarea uui algoritm stabil uei probleme rău codiţioate, ca şi di aplicarea uui algoritm istabil uei probleme bie codiţioate. Aplicarea (cu ajutorul calculatorului) uui algoritm stabil uei probleme bie codiţioată garatează obţierea soluţiei cu o precizie buă, î sesul că eroarea relativă a soluţiei calculate faţă de soluţia exactă este de ordiul de mărime al erorilor de reprezetare a datelor î calculator. I.4. Complexitatea algoritmilor Î evaluarea complexităţii uui algoritm se ţie cot de două aspecte timpul ecesar execuţiei algoritmului (dat de umărul de operaţii elemetare) spaţiul de memorie ecesitat de algoritm Î geeral u este posibil să obţiem simulta u timp de execuţie mai scurt precum şi u ecesar de spaţiu de memorare mai mic. Progresele tehologice di ultima vreme impu drept criteriu primordial criteriul timp. Fie umărul de date de itrare petru u aumit algoritm (evetual cosiderăm egal cu umărul de locaţii de memorie ecesare petru memorarea datelor iiţiale). Fie T S () timpul cerut de algoritm petru u aumit set de date de itrare S. Vom ota τ() timpul cerut de algoritm î cazul cel mai defavorabil, i.e.: τ() = sup {T S () : S este u set de date de itrare de dimesiue } Î geeral u este posibil să determiăm o formulă petru τ(). Î acelaşi timp e iteresează comportarea lui τ() petru valori mari ale lui. Î acest ses itroducem următoarele otaţii: τ() = O(f()) dacă C > 0, 0 N cu τ() C f() 0 Iterpretare: τ are o creştere mai letă decât f ( ) ( ) τ τ() = o(f()) dacă lim f = 0 Iterpretare: τ are o creştere strict mai letă decât f τ() = θ (f()) dacă C, C > 0, 0 N cu C f() τ() C f() 0 5
16 Mădălia Roxaa Bueci Iterpretare: τ are o creştere la fel de letă ca f τ() ~ f() dacă ( ) ( ) τ lim = f Iterpretare: τ are o creştere la fel de letă ca f τ() = Ω(f()) dacă f() = O(τ() Iterpretare: f are o creştere mai letă decât τ O şi o se folosesc petru a stabili margiile superioare ale timpului de execuţie, iar Ω petru limita iferioară a timpului de execuţie. U algoritm se umeşte algoritm poliomial dacă τ() = O(P()), ude τ este timpul cerut de algoritm, iar P este u poliom. 6
17 Metode Numerice II. Aproximarea umerelor reale II.. Reprezetarea umerelor îtregi îtr-o bază Se umeşte bază u umăr atural b N, b. Se umeşte sistem de umeraţie o mulţime de b simboluri disticte, corespuzătoare mulţimii primelor b umere aturale: 0,,, b-. Notăm S b = {c i : 0 i b- } mulţimea acestor simboluri, umite cifre î baza b. De exemplu: S = {0, } S 6 = {0,,, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F} ude caracterele A, B, C, D, E, F corespud umerelor aturale 0,,, 3, 4, 5. Î cele ce urmează fixăm o bază b şi otăm B = {0,,, b- } şi B k = B petru orice k N. Fie mulţimea A = B k= 0 k îzestrată cu ordiea lexicografică. Reamitim că această relaţie de ordie se defieşte î felul următor: (α, α -,, α 0 ) < (β, β -,, β 0 ) def <=> există k {0,,, } astfel îcât α k < β k şi α i = β i petru i = k +,. Cosiderăm fucţia f : A {0,,, b + - } defiită pri f (α, α -,, α 0 ) = α b + α - b α b + α b + α 0. Demostrăm că fucţia f este bijectivă. Arătăm petru îceput că f este strict crescătoare, deci este ijectivă. Apoi, ţiâd cot că mulţimile {0,,, b + -} şi A sut mulţimi fiite cu acelaşi cardial (umăr de elemete) va rezulta că de fapt f este o bijecţie. Fixăm două elemete di A, α=(α, α -,, α 0 ) şi β = (β, β -, 7
18 Mădălia Roxaa Bueci, β 0 ), cu α < β. Deoarece α < β, rezultă că există k {0,,, } astfel îcât α i = β i petru i = k +, şi α k < β k (de ude rezultă că α k β k - ). Avem f (α 0, α,, α ) = α b + α - b α k+ b k+ + α k b k +α k- b k- + + α b + α 0 = β b + β - b β k+ b k+ + α k b k + α k- b k- + + α b + α 0 β b + β - b β k+ b k+ + (β k -)b k +(b -)b k- + + (b-) = β b + β - b β k+ b k+ +(β k -)b k +(b -)(b k- + + b +) = β b + β - b β k+ b k+ + β k b k - b k + (b -) b k b = β b + β - b β k+ b k+ + β k b k - < β b + β - b β k+ b k+ + β k b k f (β) Î coseciţă, α < β implică f (α) < f (β), deci f este strict crescătoare. Folosid bijectivitatea fucţiei f demostrăm următoarea teoremă: Teorema.. Fie b o bază (adică b N, b ). Orice umăr atural eul x poate fi scris î mod uic sub forma x = α b + α - b α b + α b + α 0, cu α 0. şi α 0, α,., α {0,,, b- }. Demostraţie. Coform pricipiului multiplicativ al lui Arhimede, petru umăr atural eul x există u umăr atural astfel îcât: b x < b +. De aici rezultă că există u sigur umăr atural astfel îcât x {0,,, b + - } - {0,,, b - }. Deoarece x {0,,, b + - } şi f : A {0,,, b + - } este bijectivă, există u uic elemet α = (α, α -,, α 0 ) î A astfel îcât x = f (α) sau echivalet x = α b + α - b α b + α b + α 0. Dacă α ar fi ul, atuci x = α - b α b + α b + α 0 (b -)b (b -)b + (b -)b + (b -) = (b -) (b - + b + b + ) 8
19 Metode Numerice = (b -) b b < b, ceea ce cotrazice alegerea lui. Deci α 0. Dacă ar exista două reprezetări x = α b + α - b α b + α b + α 0, cu α 0. = β m b m + β m- b m- + + β b + β b + β 0, cu β m 0. cu α 0, α,., α, β 0, β,., β m {0,,, b- }, atuci b x < b + şi b m x < b m+ şi î coseciţă, = m. Deoarece f este ijectivă şi f (α, α -,, α 0 ) = f (β, β -, β 0 ), avem (α, α -,, α 0 ) = (β, β -, β 0 ), şi ca urmare reprezetarea x lui este uică. Plecâd de la observaţia următoare x = α b + α - b α b + α b + α 0 = ( ( (α b + α - )b + + α )b + α )b + α 0 deducem faptul că reprezetarea sub forma di teorema a uui umăr atural eul x se poate face pri împărţiri succesive la b şi reţierea resturilor de la sfârşit spre îceput: x = bq 0 + α 0, 0 α 0 < b, q 0 0 q 0 = bq + α, 0 α < b, q 0 q - = b q + α, 0 α < b, q = 0 Scrierea lui x sub forma di teorema se umeşte reprezetarea lui x î baza b. Trecerea uui umăr ditr-o bază î alta se umeşte coversie. Coveim să scriem bază î care este reprezetat u umăr ca idice. De exemplu umărul 47 0 se scrie î baza astfel: 9
20 Mădălia Roxaa Bueci 47 = = = 5 + sau 5 = = = Deci 47 0 = 0. Coversia de la baza b la baza 0 se face pri îsumarea puterilor lui b îmulţite cu cifrele di baza b corespuzătoare. De exemplu, umărul 7 8 şi A8 6 se scriu î baza 0 astfel: 7 8 = = 87 0 A8 6 = A = = Coversia uui umăr îtreg ditr-o bază b îtr-o bază b se face pri itermediul bazei 0. Î cazul particular, î care baza b care este o putere a lui b sau ivers, coversia se poate face şi direct. Fie b = b k, cu k. Coversia de la baza b = b k la baza b corespude dezvoltării fiecărei cifre di reprezetare î echivaletul ei î baza b utilizâd k cifre (adăugâd evetual zerouri î faţă). De exemplu, 7 8 = 0000 = 00, deoarece 8 = 3 şi 8 = 00, 8 = 00, 7 8 = 4E 6 = 0000 = 000, deoarece 6 = 4 şi 4 6 = 000, E 6 = 0. Coversia de la baza b la baza b = b k se realizează îlocuid de la dreapta la stâga grupele de k cifre di baza b pri cifra î baza b corespuzătoare. Dacă umărul de cifre u este multiplu de k se completează cofiguraţia la stâga cu zerouri. De exemplu, 0 0 = = A7 6. A 7 0
21 Metode Numerice II.. Reprezetarea umerelor reale îtr-o bază Petru scrierea uui umăr real şi pozitiv î baza b cosiderăm mulţimea C = N* B cu B k = {0,,, b- }, şi fucţia F : C (0, ) defiită pri k k α Seria b F(α 0, α,, α, ) = α 0 + = este covergetă, petru că 0 α b. α (b-) b şi b b este covergetă (fiid o serie geometrică cu raţia b pozitivă şi subuitară). Deci F este corect defiită. Teorema.. Fie b o bază şi F : C [0, ) fucţia defiită mai sus. Atuci. F este surjectivă v. Petru orice umăr real x > 0 care u este de forma cu v N şi b N * există u uic α C astfel îcât F(α) = x. v 3. Dacă umărul real x > 0 este de forma cu v N şi N *, atuci b există două elemete α, β C cu α β astfel îcât F(α) = F(β) = x. Î plus, dacă γ C are proprietatea că F(γ) = x, atuci γ = α sau γ = β. Demostraţie. Î cele ce urmează otăm cu [y] partea îtreagă a umărului real y, adică cel mai mare umăr îtreg mai mic sau egal cu y.. Cosiderăm x (0, ) şi costruim α C astfel îcât F(α) = x. Petru orice N, otăm q = [xb ]. Di defiiţia părţii îtregi rezultă q xb < q +, sau echivalet q b x < q b + b q, ceea ce implică 0 x - b < şi lim b x. Pe de altă parte, îmulţid iegalitatea q xb < q + cu b şi ţiâd cot că [xb + ] = q +, obţiem q b =
22 Mădălia Roxaa Bueci bq q + < bq + b 0 q + - bq < b Luăm α 0 = [x] şi α = q - b q - petru orice. Evidet α 0 N şi 0 α b-. Demostrăm că F(α 0, α,, α, ) = x. Petru aceasta este suficiet să demostrăm că α = 0 b = x. Cosiderăm o sumă parţială a acestei serii: s = k= 0 α b k k = α q 0 + k= k bq b k k q = α 0 + k= b k k q b k k q q = α q 0 = b b b. Di lim q = x, rezultă că lim s = x. b v. Fie x > 0 u umăr real care u este de forma cu v N şi N *. b Presupuem pri absurd că î afara elemetului α C costruit aterior mai există β C astfel îcât F(β)= x, sau echivalet = β 0 b = x. Dacă otăm t = k= 0 parţială de ordi a acestei serii, atuci t x şi x = = 0 β b β b k k β = b k= 0 suma k k + k= + β b k k β b k= 0 k k + (b-) k= + b b k = t + (b-) + b b = t +. Deci b t x t +. b Dar x u poate fi egal cu t + N *. Î coseciţă t x < t + că t b N, rezultă că [xb ] = t b q. Ca urmare t = b v petru că x u este de forma cu v N şi b b şi t b xb < t b +. Ţiâd cot şi de faptul b = k= 0 α b k k suma parţială a α seriei b 0. Seriile α b 0 geerali egali şi deci α = β. β şi b 0 avâd sumele parţiale egale au termeii
23 Metode Numerice v 3. Fie x > 0 u umăr real de este de forma b cu v N şi N *. Fie 0 cel mai mic umăr atural cu proprietatea că există v 0 atural astfel îcât x = 0 0 Utilizâd relaţiile stabilite la puctul, obţiem q = [x b ] = x b 0 q b 0 0 = v b 0 0 = x. Deci α = (α 0, α,, α 0, 0,0, ). v 0. b 0 0 α k = v 0 şi k b = Demostrăm că α 0. Presupuâd pri absurd că α 0 = 0, ar rezulta că x = 0 0 α k k k= 0 b = w 0 0 b ceea ce ar cotrazice alegerea lui 0. Luâd obţiem β = (α 0, α,, α 0 -, b -, b -, ). k= 0 = 0 β b = 0 α b k= 0 k k - + b 0 b k k= 0 + b = x - b 0 + (b-) k k= 0 + b = x - + (b-) + b 0 b 0 b b = x. Deci F(β) = x şi α β. Î cotiuare presupuem că există γ C cu proprietatea că F(γ) = x. Fie u umăr atural cu proprietatea că există m > astfel îcât γ m < b-. Atuci avem i= + γ i i b < (b-) + i= Ţiâd cot de reprezetarea lui x sub forma x = = xb = b γ i i b + b γ = + b i= 0 i i i i = b i 0 b. γ i i b, obţiem = i b γ i + b γ i i = + b. i= 0 i 3
24 Mădălia Roxaa Bueci Numărul i b γ i este atural, iar b γ i i = + b [0, ). Deci b i= 0 raţioamet similar, obţiem că b k i= 0 i k i γ i aproape se obţie α 0 = [xb 0 ] = γ 0 α = [xb ] - b[xb 0 ] = γ 0 b + γ - bγ 0 => α = γ i= 0 i γ i = [xb ]. Cu u = [xb k ] petru orice k. Di aproape î α = [xb ] - b[xb - ] = Există două cazuri posibile γ N (i) < b-). i b γ i - b i= 0 i= 0 b i γ i = γ => α = γ Există u umăr atural N astfel îcât γ = b- oricare N+. (ii) Oricare ar fi N există N N+ astfel îcât γ N b- (sau echivalet, Presupuem că are loc cazul (i) şi cosiderăm N 0 cel mai mic umăr atural cu proprietatea idicată. Di cele demostrate mai sus rezultă că α i = γ i petru orice i N 0 - (deoarece γ N < (b-)). Demostrăm că γ = β. Avem 0 x = = 0 γ b N = 0 γ b k= 0 k k + = + b k k N0 b N 0 = k= 0 γ b k k + (b-) + k k= N0 b N 0 = k= 0 γ k k b + (b-) b b N 0 + b N = 0 γ k k k= 0 b + w N = 0 N. 0 b b şi deci 0 N 0. Presupuâd pri absurd că 0 < N 0, se obţie următoarea cotradicţie 0 x = k= 0 Utilizâd î cotiuarea egalitatea x = = α b k k < 0 α k k k= 0 b + γ k k k= 0 + b = γ = 0 b 0 γ b = = 0 = x α b, se obţie γ N = α 0 N -, şi 0 deci α=β. Dacă are loc cazul (ii), atuci evidet α = γ petru orice, şi deci γ = α. 4
25 Metode Numerice Defiiţie.3. Reprezetarea x = = 0 α b î baza b a umărului real x > 0 se umeşte periodică dacă există u umerele aturale N, p astfel îcât α t = α t+p+ petru orice t N. Î această situaţie se foloseşte următoarea otaţie x = α 0, α α α N- (α N α N+ α N+p ). Teoremă.4. Fie b o bază (adică b N, b ). U umăr real x > 0 este raţioal dacă şi umai dacă x admite o reprezetare periodică î baza b. Demostraţie. Presupuem că x admite reprezetarea periodică x = α 0, α α α N- (α N α N+ α N+p ). Atuci x = α = b = N N α = 0 b + + = 0 N = α = 0 b + + = N p α N b = 0 b p α N b ( p+ ) + ( ) ( ) +... p + p+ p b b b + + N = α = 0 b + + = N p α N p+ b, p+ b b de ude rezultă că x este u umăr raţioal. i Reciproc să cosiderăm u umăr raţioal x =, cu i şi j umere aturale, j j 0. Demostrăm că reprezetarea x = α = 0 b î baza b este periodică. Dacă x este de forma v cu v N e vom referi la acea reprezetare care are proprietatea că b oricare ar fi N există N N+ astfel îcât α N b-. Atuci avem α 0 = [x] şi α = [xb ] - b[xb - ],, şi aşa cum am observat î demostraţia teoremei Notăm Se observă că α 0 = [x] = [x 0 ] i= 0 b = [xb ] petru orice. i α i x 0 = x, x + = b(x - α ), 0. 5
26 Mădălia Roxaa Bueci α + α 0 b = [xb] => α = [(x-α 0 )b] = [x ] α + bα + b α 0 = [xb ] => α = [((x-α 0 )b - α )b] = [(x -α )b] = [x ] şi folosid u raţioamet pri iducţie obţie α = [x ] petru orice 0. Ţiem cot că x = j i şi otăm cu u 0 restul împărţirii lui i la j, şi cu u restul împărţirii lui bu - la j petru 0. Raţioâd pri iducţie obţiem că x = bu j petru orice. Deoarece u reprezită restul uei împărţiri la j, u {0,,, j- } ceea ce arată că există N şi p aturale astfel îcât u N = u N+p+. De aici rezultă x N = x N+p+ şi α N = α N+p+. Mai departe avem x N+ = b(x N - α N ) = b(x N+p+ - α N+p+ ) = x N+p+ şi deci α N+ = α N+p+. Folosid u raţioamet pri iducţie după t, se demostrează că α N+t = α N+p++t, t 0. Î coseciţă, reprezetarea lui x este periodică. Aşa cum am observat î demostraţia teoremei precedete, petru scrierea uui umăr real pozitiv x î baza b se procedează î felul următor. Se scrie x = [x] + {x}, 0 {x} <, ude pri [x] am otat partea îtreagă a lui x, iar pri {x} partea fracţioară a lui x. Coversia umărului real pozitiv x de la baza 0 la baza b se face separat petru partea îtreagă (care este u umăr îtreg) şi partea fracţioară. Coversia părţii fracţioare se face pri îmulţiri repetate cu b, după cum urmează: b {x} = x = [x ] +{x }= α + {x } b {x } = x = [x ] +{x }= α + {x } b {x - } = x = [x ] +{x }= α + {x } ceea ce îseamă că {x} se reprezită : {x} b = 0, α α α Î urma acestor îmulţiri repetate, pot apare trei situaţii: 6
27 Metode Numerice. {x }= 0, ceea ce determiă îcheierea algoritmului; î această situaţie {x} se α poate reprezeta exact pri 0, α α α = b k= k k (această situaţie corespude cazului x = v cu v N şi N * ). b. {x } 0, dar se observă o periodicitate, adică ua sau u grup de cifre care se repetă ( această situaţie corespude cazului x raţioal dar x orice v N şi m N * ). v m b petru 3. {x } 0, iar cifrele obţiute se succed fără a respecta vreo regulă ( această situaţie corespude cazului x iraţioal). Î această situaţie 0,α α α = k= α b k k reprezită doar o aproximaţie petru {x} î baza b. Exemplu : Să se reprezite 5,5 î baza. 5,5 = 5 + 0,5 Deci 5 0 = ,5 = 0,5 = 0 + 0,5 0,5 = 0,5 = 0 + 0,5 0 0,5 = = + 0 Deci 0,5 0 = 0,00. Î coseciţă 5,5 0 = 0,00. 7
28 Mădălia Roxaa Bueci 8
29 Metode Numerice III. Reprezetarea iformaţiei î sistemele de calcul III.. Reprezetarea iteră a umerelor îtregi III... Reprezetarea iteră a umerelor îtregi fără sem (pozitive) Reprezetarea î memoria uui calculator a umerelor îtregi depide de lugimea cuvâtului utilizat (umărul de biţi). Petru a reprezeta u umăr îtreg pozitiv pe k biţi se face coversia umărului respectiv la baza, iar cofiguraţia biară obţiută se completează la stâga cu zerouri pâă se obţi k cifre. Cel mai mare umăr îtreg reprezetabil pe k biţi este... = k- + k = k ori k = k Deci pe k biţi se pot reprezeta umerele îtregi cuprise ître 0 şi k, î total k umere. Exemple: k Domeiul de valori 8 biţi = B (byte) biţi = B biţi = 4 B Reprezetarea umărului 6 0 pe k = 8 biţi se face astfel: 6 = = 0 = 000 9
30 Mădălia Roxaa Bueci E (î hexazecimal) 3 E Î reprezetarea biară a umerelor, poderile cifrelor biare cresc de la dreapta la stâga, umerotarea lor corespuzâd puterilor crescătoare ale bazei de umeraţie. Astfel, prima cifră biară di dreapta reprezită poderea 0 şi este bitul cel mai puţi semificativ. Primul bit di stâga este bitul cel mai semificativ. Notăm cu relaţia de ordie lexicografică pe mulţimea şirurilor formate di 0 şi, de lugime k. Di puct de vedere al ordiii lexicografice, reprezetările umerelor îtregi fără sem satisfac: 0 k - Î coseciţă, relaţia de ordie lexicografică este compatibilă cu relaţia de ordie umerică aturală. III... Reprezetarea iteră a umerelor îtregi (cu sem) Vom prezeta trei metode de codificare a umerelor îtregi cu sem: cod direct (sem şi valoare absolută) cod ivers (complemet faţă de ) cod complemetar (complemet faţă de ) Să presupuem că se rezervă k biţi petru reprezetarea uui umăr îtreg. Pri toate cele metode umerele îtregi pozitive se codifică pri coversie î baza pe k- biţi şi completarea primului bit cu zero. Astfel, petru k = 6 reprezetarea iteră a umărului x = 7 0 = = este : (î hexazecimal)
31 Metode Numerice Mulţimea umerelor îtregi eegative reprezetabile pe k biţi (pri oricare di cele trei metode) este {0,,,..., k- -} (deoarece primul bit este rezervat, iar reprezetarea se face doar pe restul de k- biţi). Prezetăm mai departe modul î care se face codificarea umerelor îtregi egative pri fiecare di cele trei metode. Pri metoda sem şi valoare (cod direct) se codifică valoarea absolută a umărului îtreg egativ pe k- biţi şi se completează primul bit cu. Î coseciţă, mulţimea umerelor îtregi egative care se pot reprezeta pri această metodă este{- k- +, - k- +,..., 0}. Această metodă de reprezetare prezită uele icoveiete: zero are două reprezetări disticte (00 0 şi 0 0), ca +0 şi 0 tabelele de aduare şi îmulţire sut complicate datorită bitului de sem care trebuie tratat separat. Di puct de vedere al ordiii lexicografice avem: +0 k ( k- -) Deci relaţia de ordie lexicografică u este compatibilă cu relaţia aturală. de ordie Petru a obţie codul ivers:. se obţie reprezetarea valorii absolute a umărului îtreg egativ pe k biţi. î reprezetarea obţiută (la pasul ) se îlocuieşte fiecare bit 0 cu şi cu 0 Mulţimea umerelor îtregi cu sem care pot fi reprezetate pri această metodă este acelaşi ca petru metoda precedetă : {- k- +, - k- +,..., 0,,..., k- -}. Dacă otăm cu x complemetul faţă de al umărului x, atuci x + x =... = k - k 3
32 Mădălia Roxaa Bueci Î coseciţă, complemetul faţă de poate fi folosit pe post de opus faţă de operaţia de aduare. Di acest motiv operaţiile aritmetice relativ la această reprezetare sut avatajoase, deoarece operaţia de scădere se realizează pri aduarea complemetului faţă de. U dezavataj al acestei reprezetări este recuoaşterea a două zerouri ( şi 00..0). Di puct de vedere al ordiii lexicografice avem: +0 k- - -( k- -) -( k- -) -0 Deci relaţia de ordie lexicografică u este compatibilă cu relaţia aturală. de ordie Petru a obţie codul complemetar:. se obţie codul ivers pe k biţi. se aduă o uitate la valoarea obţiută (la pasul ) Zero admite o sigură reprezetare pri această metodă: ( ).Mulţimea k umerelor îtregi cu sem care pot fi reprezetate pri această metodă este {- k-, - k- +,..., 0,,..., k- -}. Dacă x este complemetul faţă de doi al lui x, atuci x + x =... + = k - + = k k Şi î cazul acestei reprezetări operaţiile aritmetice sut avatajoase, deoarece operaţia de scădere se realizează pri aduarea complemetului faţă de. Di puct de vedere al ordiii lexicografice avem: +0 k- - - k- -( k- -) -( k- -) - Deci relaţia de ordie lexicografică u este compatibilă cu relaţia aturală. de ordie De exemplu, petru k = 6, reprezetările petru x = -7 pri cele trei metode se obţi după cum urmează: 7 0 = =
33 Metode Numerice Cod direct (sem şi valoare absolută) (î hexazecimal) Cod ivers (complemet faţă de ) 0 0 FFB7 (î hexazecimal) F F B 7 Cod complemetar(complemet faţă de ) FFB8 (î hexazecimal) F F B 8 (deoarece 00 + = 0000 ) Următorul program î C pue î evideţă reprezetarea î memorie a lui 7 şi -7. Compilatorul folosit este Borlad C #iclude <stdio.h> #iclude <coio.h> #iclude <math.h> void mai(){ usiged char x=7; siged char y=-7; clrscr(); pritf("\%u-->%04x\%d-->%04x",x,x,y,y); getch(); } Programul afisează 33
34 Mădălia Roxaa Bueci 7 --> > FFB8 Observaţie: Se poate remarca faptul că primul bit di stâga (bitul cel mai semificativ) este îtotdeaua 0 petru umerele pozitive şi petru umerele egative şi aceasta petru fiecare di cele trei reprezetări. Acest bit se mai umeşte bit de sem. Î tabelul de mai jos sut reprezetate, pri cele trei metode, pe k = 6 biţi umere îtregi cu sem: valoare cod direct (sem şi cod idirect cod complemetar zecimală valoare absolută) (compl. faţă de ) (compl. faţă de ) 6 -= =7FFF 6 0 =7FFF 6 0 =7FFF =7FFE 6 0 0=7FFE 6 0 0=7FFE = = = = = = = =FFFF = = =FFFE 6 =FFFF =FFFE = = =FFFF = = = =
35 Metode Numerice III.. Reprezetarea iteră a umerelor reale III... Forma ormalizată Fie N şi b N, b. Se umeşte forma ormalizată î baza b a umărului real eul x, o reprezetare x = m b E, ude b = baza m = matisa E = expoetul cu 0, b m b < b m < (ceea ce îseamă că matisa este u umăr b subuitar cu prima cifră după virgulă î reprezetarea î bază b diferită de zero). Petru a scrie umărul sub formă ormalizată trebuie găsite matisa şi expoetul. Cosiderăm reprezetarea x = α = 0 b există N N+ astfel îcât care are proprietatea că ar fi N α b -. Reprezetăm umărul îtreg α N 0 = b β + b - β - + bβ + β 0 î baza b. Astfel scrierea lui x î baza b este dată de x b = ±β β - β β 0,α α α m Matisa se obţie deplasâd virgula î faţa primei cifre eule ce apare î scrierea umărului (î baza b). Expoetul se ia egal cu umărul de poziţii cu care s-a deplasat virgula precedat de semul + dacă deplasarea s-a făcut de la dreapta la stâga, şi de semul dacă deplasarea s-a făcut de la stâga la dreapta. Astfel dacă x este reprezetat î baza b sub forma x b = ±β β - β β 0,α α α m, cu β 0, atuci forma ormalizată este x b = ±0, β β - β β 0 α α α m b + dacă x este reprezetat î baza b sub forma x b = ±0, α α α m, cu α 0, atuci forma ormalizată este x b = ±0, α α α m b 0 35
36 Mădălia Roxaa Bueci dacă x este reprezetat î baza b sub forma x b = ±0,α α α i α i+ α m, cu α = α = = α i = 0 şi α i+ 0, atuci forma ormalizată este x b = ±0, α i+ α m b -i. Reprezetarea sub formă ormalizată a uui umăr real x este uică. III... Reprezetarea î virgulă mobilă Ua ditre cele mai răspâdite reprezetări iteră (î PC-uri) a umerelor reale este reprezetarea î virgulă mobilă. Reprezetarea î virgulă mobilă presupue existeţa uei baze b (îtotdeaua presupusă pară) şi a uei precizii p. U umăr î virgulă mobilă este u umăr de forma α α α ±(α p b b + + )b E, α p b k {0,,...b-} petru orice k = 0, p, E Z. Mai precis, deumirea de umăr î virgulă mobilă va fi utilizată petru umerele reale care se reprezită exact sub forma de mai sus. Î această reprezetare α 0, α,, α p- se umesc cifre semificative. Fiecărei reprezetări î virgulă mobilă i se asociază două umere îtregi, E mi şi E max, ce reprezită valorile limită permise petru expoetul E (E mi E E max ). Tabelul de mai jos exemplifică cei patru parametri (baza, precizia, valorile limită ale expoetului) ce caracterizează reprezetarea î virgulă mobilă î diverse sisteme Sistem baza b precizia p E mi E max IEEE sigle-precissio IEEE double-precissio Cray calculator HP maiframe IBM
37 Metode Numerice Reprezetarea î virgulă mobilă se umeşte ormalizată dacă se impue codiţia ca cifra cea mai semificativă α 0 să fie eulă. Reprezetarea ormalizată are următoarele avataje: reprezetarea fiecărui umăr este uică u de pierd cifre petru reprezetarea primele zerourilor de la dreapta virgulei î sistemele biare (corespuzătoare bazei b =) prima cifră poate să u mai fie stocată (deoarece este îtotdeaua ). Restricţia α 0 0, face imposibilă reprezetarea lui zero. O reprezetare aturală a lui zero este,0 b E mi. Numărul de umere î virgulă mobilă ormalizată este (b-)b p- (E max - E mi +). Cel mai mic umăr pozitiv ormalizat se otează UFL (uderflow level) şi este UFL = E mi b. Cel mai mare umăr ormalizat se otează OFL (overflow level) şi este OFL = (b- + = E max b + b b b ) E b max p b b b ( - p ). b Ca urmare u toate umerele reale sut reprezetabile exact. Numerele prea mari petru a fi reprezetate corespud uei depăşiri superioare de capacitate (overflow), iar umerele prea mici uei depăşiri iferioare de capacitate (uderflow). Petru a fi reprezetat u umăr real x este aproximat cu u umăr î virgulă mobilă pe care coveim să-l otăm fl(x). Aproximarea lui x pri fl(x) poartă umele de rotujire, iar eroarea itrodusă de eroare de rotujire. Există mai multe modalităţi petru rotujire: truchiere (rotujire pri tăiere): se reţi primele p cifre di reprezetarea ormalizată a lui x = ± (α 0 + α α α + p b b + + p b α α α fl(x) = ± (α p b b + + p b + )b E ; deci )b E. 37
38 Mădălia Roxaa Bueci rotujire la cel mai apropiat umăr î virgulă mobilă (rotujire la par): fl(x) este cel mai apropiat umăr î virgulă mobilă de x; î caz de egalitate (dacă există două umere î virgulă mobilă egal depărtate de x) se cosideră acel umăr î virgulă mobilă a cărui ultimă cifră este pară. Rotujirea la par determiă o acurateţe mai mare a reprezetării. Acurateţea sistemului î virgulă mobilă este caracterizată de aşa umita precizie a maşiii (sau epsilo maşiă), otată ε mach. Precizia a maşiii este defiită ca cel mai mic umăr pozitiv ε cu proprietatea că fl(.+ ε) >. Dacă regula de rotujire este truchierea atuci ε mach = b - p, iar dacă regula de rotujire este rotujirea la par atuci ε mach = b - p. Eroarea relativă maximă cu care fl(x) aproximează x este dată de fl ( x) x ε mach. x Deşi amâdouă sut "mici", precizia maşiii (ε mach ) şi cel mai mic umăr pozitiv ormalizat UFL (î reprezetare î virgulă mobilă fixată) u trebuie cofudate. De obicei E mi < -p şi deci ître ele există relaţia Fie x u umăr real aproximat de fl(x) =±(α < UFL < ε mach < OFL. α α α + p b b + + p Expoetul E poate lua atât valori pozitive cât şi valori egative. Cel mai adesea expoetul este decalat şi reprezetat ca u umăr îtreg pozitiv (fără sem). Aceasta deoarece ordiea lexicografică (stabilită ître şirurile de cifre di reprezetare) şi ordiea aturală sut compatibile î cazul umerelor îtregi fără sem. Î coseciţă, compararea expoeţilor (şi a umerelor reale b )b E. 38
39 Metode Numerice corespuzătoare) poate fi făcută eficiet. Astfel reprezetarea iteră a uui umăr α α α real x aproximat pri fl(x) = ± (α p b b + + )b E se face sub forma p b s ed α 0 α α p- ude s este semul lui x (se completează cu 0 dacă semul este + şi cu dacă semul este -) iar ed este expoetul obţiut pri aduarea uui decalaj D la expoetul E: ed = E + D. III..3. Stadardul IEEE-754 IEEE este acroim petru Istitute of Electrical ad Electroics Egieers, o orgaizaţie ce are drept pricipal scop elaborarea stadardelor petru produsele hardware şi software. Stadardul IEEE-754 se referă la aritmetica î virgulă mobilă î sistemele biare. Acest stadard precizează formatul de reprezetare î memorie î simplă şi dublă precizie a uui umăr real. Reprezetarea se face î virgulă mobilă ormalizată: α α α x fl(x) = ± ( + + p + + ) E, p = 4, 53. p Sut admise şi aşa umitele umere deormalizate ("deormalized floatig-poit umbers"): ± (0 + α α α + p + + p ) E, p = 4, 53, cu cel puţi ua ditre cifrele biare α, α,, α p- eule. Stadardul IEEE-754 defieşte două valori speciale petru situaţii excepţioale: If, pe post de "ifiit" ("ifiity"), petru rezultatul împărţirii uui umăr fiit la zero. NaN, pe post de "o-umăr" ("ot a umber"), petru rezultatul următoarelor operaţii 39
40 Mădălia Roxaa Bueci Aduare : If + (-If) Îmulţire: 0 If Împărţire: 0/0 sau If/If Calculul restul împărţirii uui umăr x la 0 sau a lui If la x Calculul rădăciii pătrate x petru x < 0. Scopul acestor valori este acela de a permite cotiuarea calculului. U umăr î virgulă mobilă ±(α 0 + coform IEEE-754 sub forma α α α + p + + p ) E se reprezită iter s ed α α p- ude petru s se rezervă u bit ce se completează cu 0 dacă umărul este pozitiv şi cu dacă umărul este egativ, iar petru expoetul decalat ed se rezervă k biţi (k=8, ). Decalajul cosiderat este D = k- -, deci ed = E + k- -, Pe k biţi se pot reprezeta ca umere îtregi fără sem k valori, de la 0 la k. Valorile 0 şi k sut rezervate petru umerele deormalizate şi petru valorile speciale If şi Na. Deci petru u umăr î virgulă mobilă ormalizată trebuie îdepliită codiţia ed k -. De aici rezultă că - k- + E k- -. De exemplu, pe k = 8 biţi se pot reprezeta umere îtregi fără sem de la 0 la 55. Decalajul cosiderat este 7 - = 7, deci expoetul E ia valori de la 6 la 7. Numărul de biţi rezervaţi petru expoet determiă itervalul de umere reale reprezetabile î calculator. Numărul de biţi rezervaţi petru matisă determiă precizia de reprezetare (gradul de detaliere) a umerelor. Reprezetarea ±(α 0 + α α α + p + + p ) E fiid ormalizată, există siguraţa că α 0 =, ceea ce permite omiterea sa (bit ascus) petru creşterea preciziei de reprezetare, dar complică prelucrarea iformaţiei. Formatele de reprezetare a umerelor î virgulă mobilă (coform stadardului IEEE 754) sut: simplă precizie (sigle-precissio) pe 3 de biţi: 40
41 Metode Numerice bit petru semul matisei 8 biţi petru expoetul decalat (E mi = -6, E max = 7) 3 biţi petru matisă (p = 4, α 0 = se omite) dublă precizie (double-precissio) pe 64 de biţi bit petru semul matisei biţi petru expoetul decalat (E mi = -0, E max = 03) 5 biţi petru matisă (p = 53, α 0 = se omite) Regula de rotujire este rotujirea la par. Deci petru simplă precizie, ε mach = (7 cifre zecimale semificative). dublă precizie, ε mach = (6 cifre zecimale semificative). Cosiderăm o reprezetare î memorie, î simplă precizie: s e 7 e 6 e 5 e 4 e 3 e e e 0 α α α 3 Fie ed = e 0 + e + e + + e 7 7 şi m = reprezetată se determiă după cum urmează: dacă 0 < ed < 55, atuci v = (-) s ( + m) ed - 7. α α + α Valoarea v dacă ed = 0, α k = 0 petru orice k=, 3şi s = 0, atuci v = 0. dacă ed = 0, α k = 0 petru orice k=, 3şi s =, atuci v = - 0. dacă ed = 0 şi există α k 0, atuci v = (-) s m - 6 ; v este o valoare deormalizată dacă ed = 55, α k = 0 petru orice k=, 3şi s = 0, atuci v = If. dacă ed = 55, α k = 0 petru orice k=, 3şi s =, atuci v = -If. dacă ed = 55 şi există α k 0, atuci v = NaN. Fie reprezetarea î memorie, î dublă precizie: s e 0 e 9 e 0 α α α 5 4
42 Mădălia Roxaa Bueci Fie ed = e 0 + e + e + + e 0 0 şi m = reprezetată se determiă după cum urmează: α α + α dacă 0 < ed < 047, atuci v = (-) s ( + m) ed Valoarea v dacă ed = 0, α k = 0 petru orice k=, 5 şi s = 0, atuci v = 0. dacă ed = 0, α k = 0 petru orice k=, 5 şi s =, atuci v = - 0. dacă ed = 0 şi există α k 0, atuci v = (-) s m - 0 ; v este o valoare deormalizată dacă ed = 047, α k = 0 petru orice k=, 5 şi s = 0, atuci v = If. dacă ed = 047, α k = 0 petru orice k=, 5 şi s =, atuci v = -If. Exemple: dacă ed = 047 şi există α k 0, atuci v = NaN. Să se reprezite î simplă precizie umerele: 8,5-7, 5 0,, x = 8,5 x = 8 + 0,5 8 = = = ,5 = 0,30 = 0 + 0,3 0,3 = 0,6 = 0 + 0,6 0,6 =, = + 0, 0, = 0,4 = 0 + 0,4 0,4 = 0,8 = 0 + 0,8 0,8 =,6 = + 0,6 x = 0000, Forma ormalizată: x = 0, =, ed = = 35, ed = m = [0] (am omis primul bit =, iar cei trei biţi di parateză sut utilizaţi petru rotujire la par) 4
43 Metode Numerice fl(x) =, Reprezetare î virgulă mobilă, simplă precizie, (cu bit ascus) petru 8,5: Deci reprezetării cu bit ascus a lui 8,5 îi corespude î hexazecimal. x = - 7, 5 x = 7 + 0,5 7 = = = 0 0,5 = - = 0,0 x = 0,0 Forma ormalizată: x = 0,00 5 =,00 4 ed = = 3, ed = Reprezetare î virgulă mobilă, simplă precizie (cu bit ascus) petru 7,5: C D A Deci reprezetării cu bit ascus a lui -7,5 îi corespude CDA0000 î hexazecimal. x = 0, 0, = 0, 0, = 0,4 0,4 = 0,8 0,8 =,6 = + 0,6 0,6 =, = + 0, 0, = 0,4 0, 0 = 0, x = 0, =, fl(x) =, (după cei 3 de biţi ai matisei urmează 0, şi deci rotujirea se face pri adăugarea uei uităţi). 43
44 Mădălia Roxaa Bueci ed = = 3 = , ed = 0 Reprezetare î virgulă mobilă, simplă precizie (cu bit ascus) petru 0,: D C C C C C D Deci reprezetării cu bit ascus a lui 0, îi corespude 3DCCCCCD î hexazecimal. x =,, = + 0, 0, = 0,4 0,4 = 0,8 0,8 =,6 = + 0,6 0,6 =, = + 0, 0, = 0,4 x =, x =, fl(x) =, (după cei 3 de biţi ai matisei urmează 00, deci rotujirea se face astfel îcât ultimul bit să aibă valoare pară). ed = = 7 = , ed = Reprezetare î virgulă mobilă, simplă precizie (cu bit ascus) petru,: F A Deci reprezetării cu bit ascus a lui, îi corespude 3F99999A î hexazecimal. Următorul program î C verifică reprezetările de mai sus. #iclude <stdio.h> #iclude <coio.h> void mai(){ log it *i; float f=8.5,f=-7.5, f3=0., f4=.; clrscr(); i=(log it*) &f; 44
45 Metode Numerice pritf("\numar i virgula mobila:%f\\tformat iter %08lX (hexazecimal)",f,*i); i=(log it*) &f; pritf("\numar i virgula mobila:%f\\tformat iter %08lX (hexazecimal)",f,*i); i=(log it*) &f3; pritf("\numar i virgula mobila:%f\\tformat iter %08lX (hexazecimal)",f3,*i); i=(log it*) &f4; pritf("\numar i virgula mobila:%f\\tformat iter %08lX (hexazecimal)",f4,*i); getch(); } Programul afişează Numar i virgula mobila: Format iter (hexazecimal) Numar i virgula mobila: Format iter CDA0000 (hexazecimal) Numar i virgula mobila: Format iter 3DCCCCCD (hexazecimal) Numar i virgula mobila: Format iter 3F99999A (hexazecimal) III..4. Aritmetica î virgulă mobilă Di secţiuea precedetă rezultă că u toate umerele reale pot fi reprezetate exact îtr-u sistem î virgulă mobilă. De asemeea î urma evaluării uei expresii ai cărei operazi sut reprezetabili rezultatul obţiut u este eapărat reprezetabil. Î mod ideal x flop y = fl(x op y) ude op este u operator biar (+, -, *, /), iar flop desemează corespodetul operatorului respectiv î aritmetica î virgulă mobilă. Sistemele ce satisfac 45
46 Mădălia Roxaa Bueci stadardul IEEE-754 atig acest ideal î situaţia î care x op y se găseşte î itervalul de umere reale reprezetabile [UFL, OFL]. Depăşirea superioară de capacitate (overflow) cauzează de obicei probleme mai serioase decât depăşirea iferioară de capacitate (uderflow), deoarece u există ici o aproximaţie buă petru u umăr real oarecare "mare". U umăr real foarte mic poate fi î mod rezoabil aproximat cu zero. Pe multe sisteme de calcul depăşirea superioară de capacitate este fatală, î timp ce î caz de depăşire iferioară de capacitate, umărul respectiv este asociat cu zero. Aumite legi ale aritmeticii reale u sut valabile îtr-u sistem î virgulă mobilă. Astfel aduarea şi îmulţirea î virgulă mobilă sut comutative, dar u asociative. De exemplu, dacă ε este u umăr pozitiv mai mic decât ε mach, dar mai mare decât ε mach /, atuci ( + ε) + ε =, iar + (ε + ε) >. Rezultatul uei operaţii î virgulă mobilă poate să fie semificativ diferit faţă de rezultatul aceleaşi operaţii î aritmetica exactă. Să cosiderăm umărul real x =. Se reprezită î baza, pri x = 0, =, Î simplă precizie este aproximat de fl(x) =, , ceea ce itroduce o eroarea de î biar sau aproximativ î zecimal. Programul î C de mai jos pue î evideţă cum se propagă această eroare pri îmulţire: #iclude <stdio.h> #iclude <coio.h> void mai(){ float f=./0,z=0; it i; clrscr(); for(i=;i<33;i*=){ pritf("\0.*0^%d-0^%d = %f ",i+,i,f*(z*0)-z); z=z*z; } 46
47 Metode Numerice getch(); } Programul afişează 0.*0^ - 0^ = *0^3-0^ = *0^5-0^4 = *0^9-0^8 = *0^7-0^6 = *0^33-0^3 = Membrul drept ar fi trebuit să fie 0, deoarece 0 i+ - 0 i =0. 0 Î cazul scăderii a două umere reale x şi y, poate apărea următorul feome (catastrophic cacellatio) ( fl( x) fl( y) ) fl( x y) fl( x y) ε mach, dacă fl(x) este egal (sau foarte apropiat de) fl(y). Î următorul program (î C) aproximăm si(x) pritr-o sumă parţială a seriei = 0 ( ) ( + ) x! Seria fiid alterată şi covergetă, o sumă parţială de ordi, aproximează suma + seriei (i.e. si(x)) cu o eroare absolută maximă de + x. Programul de mai jos ( + )! reprezită versiuea î C petru calculul sumei care aproximează si(x): #iclude<stdio.h> #iclude<coio.h> #iclude<math.h> void mai(){ float x,s,t,eps,x; it i,; clrscr(); pritf("x=");scaf("%f",&x); pritf("eroarea=");scaf("%f",&eps); t=x;s=0;i=; x=x*x; 47
48 Mădălia Roxaa Bueci while (fabs(t)>=eps){ s+=t;pritf("\%f",s); t=-t*(x/(4*i*i+*i)); i++; } pritf("\si(%f) = %f",x,s); pritf("\si(%f) = %f",x,si(x)); getch(); } Petru x= şi eroare 0-7 se obţie aproximaţia corectă a lui si(). Petru x = 40 şi eroare 0-7 se obţie aproximaţia a lui si(40)! Valoarea corectă este Acest rezultat se datorează feomeului de reducere (catastrophic cacellatio). Petru a evideţia difereţele ître cazurile î care se lucrează î aritmetica exactă şi cazurile î care se lucrează î aritmetica î virgulă mobilă prezetăm implemetarea calculul sumei de mai sus (care aproximează si(x)) î MAPLE. > sius:=proc(x,epsilo) > local t, x, i,s; > s:=0; i:=;t:=x;x:=x*x; > while evalf(abs(t))>=evalf(epsilo) do > s:=s+t; t:=-t*x/(4*i*i+*i);i:=i+ > od; > RETURN(s) > ed; Petru x= şi eroare 0-5 se obţie aproximaţia corectă a lui si(): > sius(, 0^(-5)); > evalf(sius(,0^(-5)));
49 Metode Numerice > evalf(si()); > sius(., 0^(-5)); > si(.); Atuci câd primul parametru al procedurii sius este îtreg (sau raţioal) toate calculele se execută simbolic, iar câd parametru este î virgulă mobilă calculele se execută î virgulă mobilă. Petru x = 30 şi eroare 0-5 se obţie: > evalf(sius(30,0^(-5))); > evalf(si(30)); > sius(30., 0^(-5)); > si(30.); Se observă că î cazul î care calculele se execută simbolic (parametru actual este dat ca umăr îtreg) şi evaluarea î virgulă mobilă se face doar asupra rezultatului, aproximaţia obţiută este petru care 4 zecimale (5 cu rotujire) coicid cu cea furizată de fucţia predefiită si. Îsă î situaţia î care parametru actual este î virgulă mobilă şi ca urmare calculele se execută î virgulă mobilă aproximaţia furizată este !!! Acest rezultat se datorează feomeului de reducere (catastrophic cacellatio). Următoarea procedură MAPLE evaluează valoarea uui poliom îtr-u puct. Parametru p reprezită lista coeficieţilor poliomului (p[i] este coeficietul lui x i ) iar x puctul î care se face evaluarea. > val:=proc(p,x) > local,i,v; > :=ops(p);v:=p[]; 49
50 Mădălia Roxaa Bueci > for i from - by - to do v:=x*v+p[i] > od; > RETURN(v) > ed; Astfel > val([,,], ); 9 calculează valoarea poliomului + X + X î X =. Să cosiderăm poliomul (X-) 8 = 8X + 8X 56X X 4 56X 5 + 8X 6-8X 7 + X 8 ). Reprezetarea grafică a acestui poliom pe itervalul [ 9999,] este: 0000 > plot((x-)^8, x=9999/0000..); Dacă parametrii procedurii val sut îtregi sau raţioali şi calculele se execută simbolic cu excepţia evaluării î virgulă mobilă a rezultatului se obţi următoarele valori ale poliomului petru x i = i 00000, i 0: > for i from 0 to 0 do evalf(val([,-8,8,-56,70,-56,8,-8,], 9999/0000+i/00000)) od;
51 Metode Numerice Aceeaşi procedură apelată cu aceeaşi parametrii, cu sigura excepţie că puctele î care se calculează valorile sut reprezetate î virgulă mobilă dă rezultatele: > for i from 0 to 0 do evalf(val([,-8,8,-56,70,-56,8,-8,], i/00000)) od; Erorile mari se datorează execuţiei calculelor î aritmetica virgulei mobile. Şi mai sugestiv este graficul de mai jos: > plot(val([,-8,8,-56,70,-56,8,-8,], x), x = ); 5
52 Mădălia Roxaa Bueci sau cel obţiut utilizâd u umăr mai mic de pucte: > plot(val([,-8,8,-56,70,-56,8,-8,], x), x = , umpoits=5); 5
53 Metode Numerice IV. Rezolvarea sistemelor liiare IV.. Elemete de aaliză matriceală Fie V u spaţiu vectorial (liiar) peste corpul K (K=R sau K=C). Reamitim o serie de defiiţii şi teoreme legate de spaţiile ormate şi spaţiile Hilbert. O ormă pe V este o fucţie p: V [0, ) care satisface următoarele codiţii:. p(x) = 0 dacă şi umai dacă x = 0.. p(x +y) p(x) + p(y) petru orice x şi y V. 3. p(λx) = λ p(x) petru orice λ K şi orice x V. Perechea (V, p) se umeşte spaţiu ormat. Î cele ce urmează vom ota p(x) = x petru orice x V şi vom spue că V este u spaţiu ormat î loc de (V, ), atuci câd orma se subîţelege. Pe orice spaţiu ormat se poate defii o metrică (distaţă) caoică d pri d(x, y) = x - y petru orice x, y V. Pri urmare oricărui spaţiu ormat i se pot asocia î mod caoic o structură metrică şi o structură topologică. Petru orice x 0 V şi orice r >0 vom ota cu B(x 0, r) bila di V cetrată î x 0 de rază r: B(x 0, r) = {x V: x - x 0 < r}. Petru orice spaţiu ormat V (îzestrat cu structura metrică şi structura topologică asociate î mod caoic) sut adevărate următoarele afirmaţii:. Şirul (x ) di V coverge la x V dacă şi umai dacă lim x - x = 0. Şirul (x ) di V este şir Cauchy (fudametal) dacă şi umai dacă petru orice ε>0 există ε N astfel îcât x - x m < ε petru orice m, ε. 3. : V [0, ) este o aplicaţie cotiuă 53
54 Mădălia Roxaa Bueci 4. Fucţiile (x, y) x + y [: V V V] şi (λ, x) λx [: K V V] sut cotiue (V V şi K V sut îzestrate cu topologia produs). O ormă se umeşte completă dacă metrica asociată ei este completă (i.e. dacă orice şir Cauchy este coverget). U spaţiu ormat se umeşte spaţiu Baach dacă orma cu care este îzestrat este completă. Normele p şi p defiite pe spaţiul vectorial V se umesc echivalete dacă topologiile asociate (î mod caoic) lor coicid. Petru a desema faptul că p şi p sut echivalete vom folosi otaţia p ~ p. Se poate arăta că ormele p şi p sut echivalete dacă şi umai dacă există M, m >0 astfel îcât m p (x) p (x) M p (x) petru orice x V. V se umeşte K algebră ormată dacă V este K algebră şi î plus este îzestrat cu o ormă ce satisface următoarele două proprietăţi:. (V, ) este spaţiu ormat. xy x y petru orice x, y V, O algebră ormată îzestrată cu o ormă completă se umeşte algebră Baach. Fie V şi W două spaţii vectoriale peste corpul K (K=R sau K=C). O aplicaţie f : V W se umeşte liiară dacă şi umai dacă f(λx + µy) = λf(x) + µf(y) petru orice λ, µ K şi x, y V. Dacă f : V W este o aplicaţie liiară, iar V şi W sut spaţii ormate, atuci următoarele afirmaţii sut echivalete:. f este cotiuă. f este cotiuă î origie 3. Există M > 0 cu proprietatea că f(x) M x petru orice x E. 4. sup f(x) <. x 5. sup f(x) <. x = Vom ota cu L(V, W) spaţiul aplicaţiilor liiare şi cotiue f : V W. Petru orice f L(V, W), avem sup f(x) = sup f(x) = if {M > 0 : f(x) M x petru orice x V }. x x = 54
55 Metode Numerice Dacă petru orice f L(V, W), defiim f = sup f(x), atuci (L(V, W), ) x devie u spaţiu ormat. Spaţiul L(V, W) este deumit spaţiul operatorilor liiari şi mărgiiţi defiiţi pe V cu valori î W, iar elemetele di L(V, W) se mai umesc operatori liiari mărgiiţi. Spaţiul operatorilor liiari şi mărgiiţi L(V, W) este spaţiu Baach dacă şi umai dacă W este spaţiu Baach. Dacă V este u spaţiu ormat iar pe spaţiul L(V, V) itroducem drept lege de "îmulţire" compuerea operatorilor, atuci L(V, V) devie o algebră ormată. Dacă V este u spaţiu ormat peste corpul K, atuci spaţiul ormat L(V, K) se umeşte dualul lui V şi se otează V'. Fie H u spaţiu vectorial peste corpul K (K=R sau K=C). Se umeşte produs scalar pe H o aplicaţie ϕ : H H K care are următoarele proprietăţi:. ϕ(x+y, z) = ϕ(x, z) + ϕ(y, z) petru orice x, y, z H.. ϕ(λx, y) = λϕ(x, y) petru orice λ K şi x H 3. ϕ(x, y) = ( y, x) ϕ petru orice x, y H. 4. ϕ(x,x) > 0 petru orice x 0. Vom ota ϕ(x,y) = <x, y> petru orice x, y H. Se spue că orma spaţiului ormat (H, ) provie dit-u produs scalar <, > dacă x = x, x petru orice x di H. U spaţiu pre-hilbert este u spaţiu ormat î care orma provie ditr-u produs scalar, iar u spaţiu Hilbert este u spaţiu prehilbert complet (cu ormă completă). Dacă H u spaţiu prehilbert, atuci:. Două elemete x şi y di H se umesc ortogoale dacă <x, y> =0.. Petru A H şi x H, x se spue ortogoal pe A şi se otează x A, dacă <x,y>=0 petru orice y A. 3. O familie (x i ) i de elemete ale lui H se umeşte sistem ortogoal sau familie ortogoală dacă <x i, x j > =0 petru orice i j. 4. U sistem ortogoal (x i ) i se umeşte ortoormal dacă x i = petru orice i. 5. Se umeşte bază ortoormală a spaţiului Hilbert H u sistem ortoormal maximal (î raport cu relaţia de icluziue). 55
56 Mădălia Roxaa Bueci Dacă H este u spaţiu Hilbert şi (x i ) i este u sistem ortoormal, atuci următoarele afirmaţii sut echivalete:. (x i ) i bază ortoormală. Dacă x H şi x x i petru orice i, atuci x = Dacă x H, atuci x = i x, x i x i. 4. Dacă x, y H, atuci <x, y> = i 5. Dacă x H, atuci x = i x, x x, y. x, x i. Orice două baze ortoormale ale uui spaţiu Hilbert au acelaşi cardial. Dimesiuea (hilbertiaă) a uui spaţiu Hilbert este cardialul uei baze ortoormale. Dacă F este u subspaţiu al spaţiului Hilbert H, atuci se otează cu F = {x, x F} complemetul ortogoal al lui F. Dacă F este u subspaţiu îchis, atuci H = F + F (orice elemet di H poate fi reprezetat î mod uic ca suma ditre u elemet di F şi uul di F ). Se umeşte adjuctul operatorului liiar şi mărgiit A L(H, H ) (ude H, H sut spaţii Hilbert) operatorul liiar şi mărgiit A* L(H, H )care satisface codiţia: <A(x), y > =<x, A*(y) > petru orice x H, y H. Orice operator liiar şi mărgiit admite u uic adjuct. Dacă H este u spaţiu Hilbert şi A L(H, H), atuci. A se umeşte autoadjuct (sau hermitia) dacă A = A*.. A se umeşte uitar dacă AA* = A*A =I. 3. A se umeşte pozitiv dacă A este autodjuct şi <A(x), x> 0 petru orice x H. Cosiderăm spaţiul vectorial V = K (K=R sau K=C), N*. Pe acest spaţiu Baach orice două orme sut echivalete. Vom ota cu,, următoarele orme uzuale pe K : i i 56
57 Metode Numerice x = max x j j x = x j j= x = j= x j / petru orice x = (x, x,, x ) K. Norma se umeşte ormă euclidiaă şi provie di produsul scalar caoic <x, y> = x j y j petru x = (x, x,, x ) şi y = (y, y,, y ) j= (dacă K = R, atuci <x, y> = x jy j ). j= Vom ota cu M m, (K) mulţimea matricelor cu m liii şi coloae. M m, (K) are o structură de spaţiu vectorial relativ la operaţiile: aduare: A = (a ij ) i,j,b=(b ij ) i,j,c=(c ij ) i,j M m, (K), C = A+B dacă şi umai dacă c ij = a ij + b ij petru orice i m şi j. îmulţire cu scalari: A = (a ij ) i,j, C=(c ij ) i,j M m, (K), λ K. C = λa dacă şi umai dacă c ij = λa ij petru orice i m şi j. Produsul AB a două matrice A = (a ij ) i,j M m, (K) şi B=(b ij ) i,j M,p (K) este o matrice C=(c ij ) i,j M m,p (K) petru care c ij = a k= ik b kj petru orice i m şi j p. Traspusa uei matrice A=(a ij ) i,j, este o matrice otată A t = ( a t i, j ) i,j, ale cărei elemete sut: a t i, j = a j,i petru orice i, j m. Cojugata uei matrice A=(a ij ) i,j, este o matrice otată A * = ( a * i, j ) i,j, ale cărei elemete sut: * a i, j = j, i a petru orice i, j m. Cojugata este caracterizată pri : <Ax, y> = <x, A * y> petru orice x K şi orice y K m. O matrice petru care m= se umeşte pătratică. Elemetul eutru la îmulţire î M, (K) este matricea uitate I : 57
58 Mădălia Roxaa Bueci O matrice A M, (K) este iversabilă dacă există B M, (K) astfel îcât AB=BA=I. Iversa uei matrice A se otează A -. Matricea A este iversabilă dacă şi umai dacă det(a) 0 - î acest caz se zice esigulară. Matricele petru care A=A t se umesc matrice simetrice, iar cele petru care A=A * se umesc matrice hermitiee (evidet, petru matrice cu coeficieţi reali cele două oţiui coicid). O matrice A se zice ortogoală dacă A - =A t şi uitară dacă A - =A *. Matricea A este diagoală dacă a ij =0 petru orice i j a 0 0 A = 0 a 0 = diag(a, a,, a ) 0 0 a tridiagoală dacă a ij =0 petru orice i,j cu i-j > a b A = c a b c a superior triughiulară dacă a i,j = 0 petru orice i > j. iferior triughiulară dacă a i,j = 0 petru orice i < j. superior Hesseberg dacă a i,j = 0 petru orice i > j+. iferior Hesseberg dacă a i,j = 0 petru orice i < j-. O matrice A M m, (K) poate fi tratată ca u vector di K m : (a, a,, a, a, a,, a,, a m, a m,, a m ). Datorită acestui fapt orma uei matrice poate fi itrodusă î mod similar cu orma uui vector di K m. Pe de altă parte, se ştie că există u izomorfism de spaţii 58
59 Metode Numerice liiare ître M m, (K) şi L(K, K m ). Fiecărei matrice A = (a i,j ) i,j i se asociază operatorul liiar S(A) defiit pri S(A)(x) = Ax = ( a ijx j ) i m petru orice x = (x, x,, x ) t K. j= Î cele ce urmează vom idetifica A cu S(A). Cele mai des utilizate orme de matrice sut ormele operatoriale: astfel petru o matrice A M m, (K), dacă pe K m se cosideră orma α, iar pe K se cosideră orma β, atuci se otează cu A αβ orma de aplicaţie liiară: sup Ax α = sup Ax α. x β x β = Î cazul î care α=β se utilizează otaţia A α = A αα şi se spue că A α este orma operatorială a lui A subordoată ormei vectoriale α. Fie A M, (C). Scalarul λ di C se umeşte valoare proprie petru A dacă există vectorul eul x C astfel îcât: Ax= λx Vectorul x se umeşte vector propriu asociat valorii proprii λ. Mulţimea valorilor proprii ale lui A formează spectrul lui A şi se otează cu σ(a). Raza spectrală a lui A se defieşte pri: ρ(a) = max λ σ( A) Normele operatoriale petru o matrice A M, (C) subordoată ormelor vectoriale,, sut respectiv: A = max i A = max j A = ρ ( A * A). a ij j= a ij i= Petru orice matrice A M, (C) şi orice orma operatorială A subordoată uei ormei vectoriale avem ρ(a) A. Deşi orma A este importată di puct de vedere teoretic (corespude distaţei euclidiee), î geeral, î aplicaţiile umerice λ 59
60 Mădălia Roxaa Bueci A u este coveabilă (fiid dificil de calculat). Î locul ei se foloseşte orma vectorială: A F = i, j= a ij care u este ormă operatorială subordoată ormei vectoriale deoarece I =. Ître cele două orme există relaţia: A A F. Dacă este o ormă operatorială pe M, (C), atuci umai dacă ρ(a) <. lim A k k =0 dacă şi Fie <, > produsul scalar caoic pe K (K = R sau C). O matrice A M, (K), K = R (respectiv, K = C) se umeşte pozitiv defiită dacă este simetrică (respectiv, hermitiaă) şi dacă <Ax, x> > 0 petru orice x 0 di K. egativ defiită dacă este simetrică (respectiv, hermitiaă)şi dacă <Ax, x> < 0 petru orice x 0 di K. pozitiv semidefiită dacă este simetrică (respectiv, hermitiaă)şi dacă <Ax, x> 0 petru orice x K. egativ semidefiită dacă este simetrică (respectiv, hermitiaă)şi dacă <Ax, x> 0 petru orice x K. Î cele ce urmează e vom cocetra asupra matricelor A M, (R) simetrice. Petru o astfel de matrice otăm determiaţii situaţi pe diagoala pricipală cu a a a k k = a a a k a k a k a kk (k =,, ) şi îi umim miori pricipali. 60
61 Metode Numerice O matrice A M, (R) este pozitiv defiită dacă şi umai dacă este simetrică şi miorii pricipali k (k {,, }) sut toţi pozitivi. O matrice A M, (R) este egativ defiită dacă şi umai dacăeste simetrică şi miorii pricipali k (k {,, }) respectă următoarea alteraţă a semelor: < 0, >0, 3 <0, 4 >0,..., (-) >0. IV.. Metode directe de rezolvare a sistemelor liiare Metodele de rezolvare a sistemelor liiare sut clasificate î. Metode directe. Metode iterative Metodele directe presupu obţierea soluţiilor exacte a sistemelor liiare după u umăr fiit de operaţii elemetare. O metodă directă este cu atât mai buă cu cît umărul de operaţii elemetare (aduare, îmulţire, împărţire şi rădăciă pătrată) ecesare este mai mic (umărul de operaţii executate iflueţează atât timpul de execuţie cât şi eroarea de rotujire). Cosiderăm sistemul cu ecuaţii şi ecuoscute. Ax = b, A M, (R) esigulară. Deoarece A este esigulară sistemul admite soluţie uică, ce poate fi determiată cu regula lui Cramer: x i = xi, i. Arătăm că aplicarea acestei metode este epractică (petru mare). Îtr-adevăr, aplicarea ei coduce la calculul a + determiaţi de ordiul. Dar calculul uui determiat de ordiul petru o matrice C = (c ij ) i,j, ţiâd cot de defiiţie: det(c) = ( ) ( ) cσ( ) c σ( )...cσ( ) σ S ε σ revie la a calcula o sumă de! termei (grupul S al permutărilor de ordiul coţie! elemete), fiecare terme fiid produsul a factori. Deci petru a aplica regula lui Cramer trebuie efectuate cel puţi N op () = (+)! =(+)! operaţii. 6
62 Mădălia Roxaa Bueci Deoarece!> e (petru ), rezultă că N op() > ( ) e. De exemplu, dacă se utilizează u sistem de calcul ce execută 0 9 operaţii pe secudă, atuci petru rezolvarea uui sistem cu ecuaţii şi ecuoscute timpii de execuţie sut prezetaţi î tabelul de mai jos Timp de execuţie = s = s = 5 = 0 = s = ore > 809 ai >0 ai = 30 >0 8 ai Metodele directe urmăresc trasformarea sistemului de rezolvat îtr-u sistem echivalet a cărui matrice este iferior triughiulară sau superior triughiulară, sistem ce se rezolvă foarte uşor. Prezetăm î cotiuare algoritmul lui Gauss de trasformarea matricei A îtr-o matrice superior triughiulară. IV... Metoda de elimiare Gauss Se cosideră o matrice A M,m (R). Elimiarea gaussiaă urmăreşte trasformarea matricei A îtr-o matrice superior triughiulară S (o matrice cu proprietatea că b ij = 0 petru orice i<j). Trecerea de la matricea A la matricea S se realizează pri trasformări elemetare. La baza metodei stă următorul procedeu: prima liie este folosită petru aularea coeficieţilor de pe prima coloaă di celelalte - liii. a doua liie este utilizată petru aularea coeficieţilor de pe a doua coloaă di ultimele - liii, ş.a.m.d. Trecerea de la u pas la altul se face aplicâd regula dreptughiului (pivotului). Petru a obţie stabilitatea umerică a algoritmului, se alege drept 6
63 Metode Numerice pivot de la pasul k elemetul maxim î modul di coloaa k subdiagoală a lui A, şi se permută liia k cu liia pe care se găseşte pivotul. Această strategie de permutare se umeşte pivotare parţială. Performaţe de stabilitate umerică relativ mai bue se obţi dacă se alege drept pivotul la pasul k elemetul maxim î modul di submatricea delimitată de ultimele -k liii, şi se permută coloaa k cu coloaa pivotului şi liia k cu liia pivotului. Această strategie de pivotare se umeşte pivotare completă. Prezetăm î cotiuare algoritmul de elimiare Gauss cu pivotare parţială. Trecerea de la matricea A la matricea superior triughiulară se realizează î mi paşi, ude mi = mi{,m}: A (0) A () A (mi), ude A (mi) are formă superior triughiulară, iar A (0) =A. Petru a se trece de la A (k) A (k+) : Se determiă pivotul de la pasul k; acesta este primul elemet de pe coloaa k cu proprietatea ( k a ) k,i ( k) ( k) a k,i =max{ a k,j, k j } Se permută liiile i cu k; ( k) Se aplică regula dreptughiului (pivotului) cu pivotul a elemetele de pe liia pivotului se împart la pivot: a (k+ ) k,i = ( k) ak,i, i=k,k+, m ( k) a k,k k,k. Astfel: elemetele subdiagoale de pe coloaa pivotului se îlocuiesc cu 0. ( k ) a + ik =0, i= k+, k+, elemetele di submatricea delimitată de ultimele -k liii şi de ultimele -k coloae se trasformă cu regula dreptughiului: 63
64 Mădălia Roxaa Bueci k j k i (k) a k,k (k) a i,k (k) a k,j (k) a i,j ( k a + ) = i,j (k) (k) (k) (k) i, j k,k k, j i,k (k) a k,k a a a a, k+ i, k+ j m. triughiulară: Î urma aplicării acestui algoritm se ajuge la următoarea matrice superior a ) (, a (, 3 ) a (, ) A (mi) = 0 ( ) a, 3 a ( ), a (, ) ( ), + a, ) a ( m a m + ( ), ( ) a,+ ( ), (dacă m ). Exemplu Pri aplicarea procedurii de elimiare gaussiaă cu pivotare parţială asupra matricei A de mai jos obţiem: a m 0 L L A = / / L L 3 / / 0 3/ -/ 0-7/ 3/ 0-7/ 3/ 0 3/ -/ 64
65 Metode Numerice / / / / 0-3/7 0-3/7 0 0 /7 0 0 Următoarea procedură MAPLE are drept parametru o matrice A, şi îtoarce matricea superior triughiulară obţiută pri aplicarea algoritmului de elimiare Gauss cu pivotare parţială asupra matricei A. Matricea a (locala procedurii) se iiţializează cu A, şi fiecare di matricele itermediare A (k) sut afişate. > elimpp:=proc(a) > local a,,m,mi,i,j,k,aux; > m:=rowdim(a);:=coldim(a); > if <=m the mi:= else mi:=m fi; > a:=matrix(m,); > for i to m do for j to do a[i,j]:=a[i,j] od od; > for k to mi do prit(a); > i:=k;aux:=abs(a[k,k]); > for j from k+ to m do > if abs(a[j,k])>aux the aux:=abs(a[j,k]);i:=j fi od; > if i>k the for j from k to do > aux:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=aux od; prit(a) fi; > if a[k,k]<>0 the > for j from k+ to do a[k,j]:=a[k,j]/a[k,k] od; > a[k,k]:=; > for i from k+ to m do > for j from k+ to do a[i,j]:=a[i,j]-a[k,j]*a[i,k] od od; > for j from k+ to m do a[j,k]:=0 od > fi od; > RETURN(evalm(a)) > ed; Exemple de utilizare a procedurii > A:=matrix(3,3,[,,0,,,,,-3,]); 65
66 Mădălia Roxaa Bueci 66 A := 0-3 > elimpp(a); > A:=matrix(3,,[3,,-,5,,0]); := A > elimpp(a);
67 Metode Numerice > A:=matrix(,3,[,-,,3,4,-]); := A > elimpp(a); IV... Rezolvarea sistemelor liiare pri metoda de elimiare Gauss Cosiderăm sistemul cu ecuaţii şi ecuoscute: Ax = b, A M, (R) esigulară
68 Mădălia Roxaa Bueci Petru rezolvarea acestui sistem vom aplica algoritmul de elimiare Gauss cu pivotarea parţială asupra matricei extise A = ( A b). Vom ota elemetele matricei A tot cu a i,j. Astfel a i,+ = b i petru orice i=,,... La primul pas algoritmul presupue elimiarea ecuoscutei x di ultimele - ecuaţii. La al doilea pas se elimiă ecuoscuta x di ultimele - ecuaţii, ş.a.m.d. Î cazul acestui algoritm petru fiecare k se efectuează +-k + (+-k)(k) = (+-k) operaţii elemetare (pri operaţie elemetară îţelegâd aici o operaţie î virgulă mobilă de forma ax + b, sau o împărţire). Deci algoritmul ecesită = j k= j= N op () = ( + k) = ( + )( + ) 6-3 operaţii elemetare. Deci N op () ~ (sau N op () O( 3 ) ). 3 Ca urmare a aplicării algoritmului se obţie sistemul echivalet: x + a (, ) x + a (, 3 ) x 3 + a (, ) x = a, ) ( + x + ( ) a, 3 x 3 + a (, ) x = ( ), a + x = ( ) a,+ Rezolvarea acestui sistem se poate face foarte uşor de la sfârşit spre îceput: x = ( ) x a,+ i = i,+ i, j j= i+ ( i) ( i a a ) x j Procedura rezsist de mai jos îtoarce soluţia uui sistem liiar cu ecuaţii şi ecuoscute. Parametri procedurii sut matricea sistemului şi vectorul termeilor liberi > with(lialg): > rezli:=proc(a,b) > local a,x,,i,j,k,aux; 68
69 Metode Numerice > :=rowdim(a); > a:=matrix(,+); > for i to do > for j to do a[i,j]:=a[i,j] od; > a[i,+]:=b[i] od; > for k to do i:=k;aux:=abs(a[k,k]); > for j from k+ to do > if abs(a[j,k])>aux the aux:=abs(a[j,k]);i:=j fi od; > if i>k the for j from k to + do > aux:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=aux od fi; > if a[k,k]=0 the prit(`matrice sigulara`);return(null) fi; > for j from k+ to + do a[k,j]:=a[k,j]/a[k,k] od; > for i from k+ to do > for j from k+ to + do a[i,j]:=a[i,j]-a[k,j]*a[i,k] > od od; > od; > x:=vector();x[]:=a[,+]; > for i from - by - to do x[i]:=a[i,+]; > for j from i+ to do x[i]:=x[i]-a[i,j]*x[j] od od; > RETURN(evalm(x)) > ed; Utilizăm procedura se mai sus petru rezolvarea sistemului x + x + x 3 = 3 x - x + x 3 = -x - x + 3x 3 = > a:=matrix(3,3,[,,,,-,,-,-,3]); a := > b:=vector(3,[3,,]); > rezli(a,b); > lisolve(a,b); b := [ 3,, ] [,, ] [,, ] 69
70 Mădălia Roxaa Bueci Comada MAPLE lisolve(a,b) di pachetul lialg îtoarce soluţia sistemului Ax = b. IV..3. Calculul determiatului uei matrice Petru calculul determiatului uei matrice A M, (R) se poate folosi metoda de elimiare Gauss, ţiâdu-se seama că determiatul uei matrice u se modifică dacă asupra matricei se efectuează trasformări elemetare. Determiatul este produsul elemetelor ( k) a k,k (îaite de împărţire). Dacă se foloseşte pivotare, trebuie avut î vedere faptul că pri permutarea a două liii semul determiatului se schimbă. Procedura determiat de mai jos are drept parametru matricea şi îtoarce determiatul. Petru trasformarea matricei A îtr-o matrice superior triughiulară se foloseşte algoritmul de elimiare Gauss cu pivotare parţială. >determiat:=proc(a) >local a,,i,j,k,d,aux; >:=rowdim(a); >a:=matrix(,); >for i to do >for j to do a[i,j]:=a[i,j] od od; >d:=; >for k to do i:=k;aux:=abs(a[k,k]); >for j from k+ to do >if abs(a[j,k])>aux the aux:=abs(a[j,k]);i:=j fi od; >if i>k the d:=-d; for j from k to do >aux:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=aux od fi; >if a[k,k]=0 the d:=0;return(d) fi; d:=d*a[k,k]; >for j from k+ to do a[k,j]:=a[k,j]/a[k,k] od; >for i from k+ to do >for j from k+ to do a[i,j]:=a[i,j]-a[k,j]*a[i,k] od od; >od; >RETURN(d) >ed; Exemplificăm utilizarea procedurii de mai sus > a:=matrix(3,3,[,,,,8,3,,,]); 70
71 Metode Numerice a := 8 3 > determiat(a); -48 > det(a); -48 Comada det(a) di pachetul lialg calculează determiatul matricei idicate drept parametru. IV..4. Calculul iversei uei matrice Fie A M, (R). Matricea A este iversabilă dacă şi umai dacă există o matrice B M, (R) astfel îcât A B=B A=I, ude I = Se ştie că A este iversabilă dacă şi umai dacă are determiatul eul. Notăm: e k = (0,,0,,0 0) t vectorul k al bazei caoice di R. Petru fiecare k (k=,,,) cosiderăm sistemul Ax=e k. Soluţia acestui sistem reprezită chiar coloaa k a matricei A -. Astfel petru aflarea lui A - este ecesar să rezolvăm sisteme de ecuaţii liiare Ax=e k, k=,,,. Aceste sisteme pot fi rezolvate utilizâd algoritmul de elimiare al lui Gauss. Petru a micşora volumul de calcul vom aplica algoritmul asupra matricei obţiute pri cocatearea la matricea A a coloaelor bazei caoice di R. Coeficieţii matricei sut A = (A e e e ) 7
72 Mădălia Roxaa Bueci a ij, dacă i, j ude a i,+k = δ ik, dacă i, k, i=k δ ik = 0, i k. Pri aplicarea algoritmului de elimiare Gauss cu pivotare parţială asupra lui A se obţie u şir de matrice A (0) A () ---- A (), ude A (0) = A, iar A () are următoarea formă superior triughiulară: a ) (, a (, 3 ) a (, ) A () = 0 ( ) a, 3 a (, ) a (, ) + a () a,, ( ) + ( ), a ( ) a,+ ( ), a Dacă B = A -, atuci coeficieţii lui B pot fi determiaţi cu formulele: b,k = a ( ),+ k, k b i,k = a ( i) (i) i,+ k - ai, j b j= i+ i, j, i -, k Procedura iversa de mai jos îtoarce iversa matricei idicată drept parametru. > iversa := proc(a) > local,a, b, i, j, k,aux; > :=rowdim(a); > b := matrix(, ); a := matrix(, *); > for i to do for j to do a[i, j] := A[i, j] od od; > for i to do for j to do a[i, j + ] := 0 od od; > for i to do a[i, i + ] := od; 7
73 Metode Numerice > for k to do > aux := abs(a[k, k]);i := k; > for j from k + to do > if aux < abs(a[j, k]) the aux := abs(a[j, k]); i := j fi > od; > for j from k to * do > aux := a[k, j]; a[k, j] := a[i, j]; a[i, j] := aux od; > if a[k, k] = 0 the prit(`matrice sigulara`); > RETURN(NULL) fi; > for j from k + to * do a[k, j] := a[k, j]/a[k, k] od; > for i from k + to do > for j from k + to * do > a[i, j] := a[i, j] - a[k, j]*a[i, k] od od; > od; > for i to do b[, i] := a[, i + ] od; > for k to do > for i from - by - to do > b[i, k] := a[i, + k]; > for j from i + to do > b[i, k] := b[i, k] - a[i, j]*b[j, k] od > od > od; > RETURN(evalm(b)) > ed; Calculul iversei matricei 3 se realizează cu ajutorul comezilor > a3:=matrix(3,3,[,,,,,3,,,]); a3 := 3 > iversa(a3); 73
74 Mădălia Roxaa Bueci Comada iverse di pachetul lialg calculează de asemeea iversa uei matrice. Î exemplul următor presupuem că o aplicăm asupra aceleaşi matrice a3. > iverse(a3); IV.3. Factorul de codiţioare al uei matrice Defiiţie. Factorul de codiţioare al uei matrice pătrate A M, (R) se defieşte pri cod(a) = A A - ude este o orma operatorială a matricei A (de exemplu, sau ). Pri coveţie cod(a) = dacă A este sigulară. Se poate observa că Ax Ax cod(a) = max mi x 0 x x 0 x Factor de codiţioare cod(a) mare îseamă A aproape sigulară. Factorul de codiţioare cod(a) are următoarele proprietăţi cod(a) cod(i ) = petru orice cod(αa) = cod(a) petru orice scalar α 0. 74
75 Metode Numerice cod(d) = max i mi α αi petru orice matrice diagoală i i D=diag(α, α,..., α ). Calcul valorii exacte a factorului de codiţioare al uei matrice A presupue calculul A -. Cum umărul de operaţii ecesare petru calculul ormei iversei lui A ( A - ) este mai mare decât cel petru rezolvarea uui sistem liiar Ax = b, de obicei î practică se foloseşte u estimator petru A -. Determiarea uei estimaţii petru A - pleacă de la observaţia că, dacă Ax = y, atuci şi mărgiea superioară a mulţimii x y A-, x, Ax = y y este A - şi se atige petru o aumită valoare y. Comada MAPLE cod(a) di pachetul lialg calculează factorul de codiţioare matricei A. Cosiderăm sistemul şi otăm cu x* soluţia exactă. Ax = b, cu A esigulară Să presupuem că î locul matricei A este furizată matricea A + E şi ca urmare se rezolvă sistemul a cărui soluţie o otăm cu ˆx. Atuci Atuci de ude (A+E) ˆx = Ax* E ˆx = A(x*- ˆx ). A - E ˆx =x*- ˆx (A+E) x = b, x*- ˆx = A - E ˆx A - E ˆx, 75
76 Mădălia Roxaa Bueci ˆx x * ˆx cod(a) E A. Deci factor de codiţioare mic şi variaţii relative mici ale coeficieţilor matricei implică variaţii relative mici ale soluţiei. Dacă factorul de codiţioare cod(a) este mare, atuci rezolvarea sistemului Ax = b este o problemă rău codiţioată. Să presupuem acum că î locul vectorului termeilor liberi b este dat vectorul ˆb şi ca urmare se rezolvă sistemul A x = ˆb, a cărui soluţie o otăm cu ˆx. Atuci A ˆx = ˆb - b + b A ˆx = ˆb - b + Ax* A(x*- ˆx ) = b- ˆb x*- ˆx = A - (b- ˆb ) Atuci x*- ˆx = A - (b- ˆb ) A - (b- ˆb ) = A - (b- ˆb ) Ax * b A - b bˆ b A x*, de ude ˆx x * x * cod(a) b bˆ b. Deci factor de codiţioare mic şi variaţii relative mici ale termeilor liberi implică variaţii relative mici ale soluţiei. Dacă gradul de acurateţe a datelor de itrare este compatibil cu precizia maşiii ε mach, atuci ˆx x * x * cod(a)ε mach. 76
77 Metode Numerice Î urma calculului soluţiei sistemului Ax = b se pot pierde pâă la log 0 (cod(a)) cifre zecimale semificative relativ la acurateţea datelor de itrare. Iterpretare geometrică: = : Ecuaţii uui sistem liiar a cărui matrice A M, (R) pot fi iterpretate ca ecuaţiile a două drepte î pla, iar soluţia sistemului drept coordoatele puctului de itersecţie a celor două drepte. Factor de codiţioare mare al matricei A îseamă că dreptele sut aproape paralele. problemă bie codiţioată problemă rău codiţioată Exemplu Cosiderăm sistemul Ax = b, ude A = şi b = 0 Cosiderăm următoarele comezi MAPLE: > with(lialg): > A:=matrix(,,[ ,887.,887.,885.78]); A := > A:=matrix(,,[888445/000,887/000,887/000, 88578/000]); A := > cod(a);
78 Mădălia Roxaa Bueci > b:=vector([,0]); > Digits:=6; > lisolve(a,b); > Digits:=5; > lisolve(a,b); > Digits:=0; > lisolve(a,b); > lisolve(a,b); b := [, 0 ] Digits := 6 [ , ] Digits := 5 [ , ] Digits := 0 [ , ] [ , ] Deşi matricele A şi A sut egale - difereţa este dată doar de reprezetarea coeficieţilor: simbolic (ca umere raţioale) î cazul lui A şi î virgulă mobilă î cazul lui A comezile lisolve(a,b) şi lisolve(a,b) îtorc rezultate diferite. Soluţia corectă a sistemului este cea obţiută î variata î care s-a lucrat simbolic: x = x = Rezultatul eroat furizat de comada lisolve(a,b) se datorează relei codiţioări a matricei A. Se observă că factorul de codiţioare este: Reveim la sistemul Ax = b, cu A esigulară otăm cu x* soluţia exactă şi cu ˆx soluţia aproximativă. Vectorul se umeşte reziduu. Avem r = b - A ˆx x*- ˆx = 0 r = 0, dar x*- ˆx şi r u sut mici simulta. Avem r = b - A ˆx = Ax* - A ˆx = A(x*- ˆx ) 78
79 Metode Numerice A - r = x* - ˆx x* - ˆx = A - r A - r =cod(a) = cod(a) A r = x* A x* r cod(a) x* Ax* r = = cod(a) x* r. b de ude rezultă x * xˆ x * cod(a) r b Ca urmare factor de codiţioare mic (problemă bie codiţioată) şi reziduu mic implică variaţii relative mici ale soluţiei. Exemplu Cosiderăm sistemul Ax = b, ude A =.00 şi b =.00 Evidet soluţia corectă a sistemului este x = x = Dacă se cosideră vectorul y y y = 0 se observă că b - Ay =
80 Mădălia Roxaa Bueci Deci y aparet verifică sistemul, deşi este diferit de x. Aceasta se datorează valorii factorului de codiţioare al lui A pe care-l putem determia folosid următoarele comezi MAPLE: > with(lialg): > A:=matrix(,,[,.00,,]); > cod(a); A := Arătăm î cotiuare că dacă reziduu este mare atuci variaţia relativă a coeficieţilor matricei de itrare A este mare. Să presupuem că ˆx este soluţia sistemului (A+E) x = b. Atuci de ude şi ca urmare (A+E) ˆx = b E ˆx = b -A ˆx E ˆx = r r = E ˆx E ˆx, r E A x ˆ A. Î coseciţă dacă a reziduu este mare atuci variaţia relativă a coeficieţilor matricei de itrare A este mare. Deci dacă algoritmul de rezolvare a sistemului este stabil atuci reziduul relativ este mic idiferet dacă problema este bie codiţioată sau u. IV.4. Metode iterative de rezolvare a sistemelor liiare IV.4.. Geeralităţi Metodele iterative costau î costrucţia uui şir (x k ) k coverget către soluţia exactă a sistemului. Oprirea procesului iterativ are loc la u idice m 80
81 Metode Numerice determiat pe parcursul calculului î fucţie de precizia impusă astfel îcât termeul x m să costituie o aproximaţie satisfăcătoare a soluţiei căutate. Se cosideră sistemul liiar şi desfacerea matricei A defiită pri Ax = b, A M, (R) esigulară A = N-P. cu N o matrice iversabilă. Fie x 0 u vector arbitrar di R. Costruim şirul (x k ) k folosid relaţia de recureţă: Nx k+ = P x k + b, k 0. Notăm e k = x* x k eroarea absolută cu care x k aproximează x*, soluţia exactă a sistemului Ax = b. Teoremă 4.. Fie sistemul liiar Ax = b cu A M, (R) esigulară şi fie A = N-P o desfacere a matricei A (N M, (R) matrice esigukară). Şirul (x k ) k defiit pri Nx k+ = P x k + b, k 0, x 0 dat coverge la soluţia exactă a sistemului Ax = b oricare ar fi x 0 dacă şi umai dacă ρ(n - P) < (ρ(n - P) reprezită raza spectrală a lui N - P, i.e. maximum modulelor valorilor proprii ale lui N - P). Demostraţie. Notăm G = N - P. Atuci e k+ = x* x k+ = x* - N - (P x k + b) = x* - N - P x k - N - b = x* - N - P x k - N - Ax* = x* - N - P x k - N - (N-P) x* = x* - N - P x k - x* + N - P x* = N - P (x* - x k ) = Ge k. Ca urmare e k+ = G e k = G G e k- =...= G k+ e 0, petru orice k 0. Î coseciţă, lim x k = x* petru orice terme iiţial x 0 dacă şi umai dacă k lim G k e 0 =0 petru k 8
82 Mădălia Roxaa Bueci orice e 0, sau echivalet dacă ρ(g) <. lim G k k =0. Este cuoscut că lim G k k =0 dacă şi umai Di demostraţia teoremei aterioare a rezultat că dacă G= N - P şi e k = x* x k, atuci e k = Ge k- = G k e 0 petru orice k 0. N se alege astfel îcât sistemul Nx k+ = P x k + b, k 0. a cărui soluţie este x k+ să se rezolve uşor de exemplu se alee N diagoală sau triughiulară Î cazul metodelor cocrete descrise î cotiuare se cosideră desfacerea stadard a matricei A = (a i,j ) i,j defiită pri: ude A = L + D + R a, D = diag(a,,a,,. a, ) = 0 a, a, L = a, a, a, a,3 a,- 0 0 a, a,3 a,- a, R = 0 0 a,3 a,- a,
83 Metode Numerice IV.4.. Metoda Jacobi Metoda Jacobi se caracterizează pri desfacerea N = D, P = - (L+R) a N - = 0 a a N - P = a a.. 0 -a, -a,3 -a,- -a, -a, 0 -a,3 -a,- -a, : a -a, -a, -a,3 -a,- 0 Dacă G = N - P, atuci coeficieţii matricei G = (g ij ) i,j sut: g i,j = 0, i = j a i, j, i j. a i,i Şirul (x k ) k defiit pri Nx k+ = P x k + b, k 0, x 0 dat coverge la soluţia exactă a sistemului Ax = b oricare ar fi x 0 dacă şi umai dacă ρ(g) <. Deoarece ρ(g) G, petru orice ormă operatorială a lui G, avem 83
84 Mădălia Roxaa Bueci ρ(g) mi( G, G ), şi ca urmare petru a asigura covergeţa şirului (x k ) k este suficiet ca mi( G, G )<. Calculăm G : G = max{ i= g i, j, j } = max{ i= i j a a i, j i, i, j } Calculăm G : G = max{ j= g i, j, i } = max{ j= j i a a i, j i, i, i }. Dacă G < sau G <, atuci ρ(g) <. Dar codiţia G < este echivaletă cu j= j i a a i, j i, i < petru orice i, i a i,i > i= i j a i, j petru orice i, i caz î care spuem că A este diagoal domiată. Deci dacă a i,i 0 petru orice i =,,,, şi dacă A este diagoal domiată atuci şirul obţiut pri metoda Jacobi coverge la soluţia exactă a sistemului Ax = b. Dacă e k = x*- x k este eroarea absolută cu care x k aproximează x*, soluţia exactă a sistemului Ax = b, atuci e k = G k e 0 petru orice k 0. Î coseciţă, petru orice orme compatibile e k G k e 0 G k e 0 G k e 0 Fie, = mi( G, G satisfăcătoare petru soluţia exactă a sistemului dacă ) şi fie ε > 0 dat. Vom cosidera x k este o aproximaţie (, ) k < ε. 84
85 Metode Numerice ceea ce este echivalet cu k ( ) l ε l, ( ) +. Şirul (x k ) k costruit pri metoda Jacobi este defiit pri Nx k+ = P x k + b, k 0, x 0 dat x k+ = N - P x k + N - b, k 0, x k+ = G x k + N - b, k 0, Deci petru orice i, i, k x i + k b = gi,jx j + i a j= i,i = k b gi,jx j - i j= ai,i j i = ai,j k b x j + i j= ai,i ai,i j i. Î coseciţă, şirul (x k ) k costruit pri metoda Jacobi este: x 0 dat k x i + = a i,i k (b i - ai,jx j ), i =,,,, k 0. j= j i Următoarea procedură Maple are drept parametri matricea sistemului, vectorul termeilor liberi, aproximaţia iiţială x 0 a soluţiei, şi eroarea epsilo. Procedura îtoarce aproximaţia x k (dată de metoda Jacobi) a soluţiei cu > with(lialg): k = > mjacobi:=proc(a,b,x0,epsilo) l l ( eps) ( ) > local,,i,x,x,k,i,j,p,suma; > :=vectdim(x0); > i:=0; > for i to do > suma:=0; > for j to i- do > suma:=suma+abs(a[i,j]) od; > for j from i+ to do > suma:=suma+abs(a[i,j]) od;, +. > if a[i,i]=0 the prit(`metoda u se aplica`); > RETURN(NULL) fi; 85
86 Mădălia Roxaa Bueci > suma:=suma/abs(a[i,i]); > if i<suma the i:=suma fi; > od; > :=0; > for j to do > suma:=0; > for i to j- do suma:=suma+abs(a[i,j]/a[i,i]) od; > for i from j+ to do suma:=suma+abs(a[i,j]/a[i,i]) od; > if <suma the :=suma fi; > od; > if i> the i:= fi; > if i>= the prit (`Metoda u se aplica`); RETURN fi; > k:=floor(l(epsilo)/l(i))+; > x:=vector(); x:=vector(); > for i to do x[i]:=x0[i] od; > for p to k do > for i to do > x[i]:=b[i]; > for j to i- do > x[i]:=x[i]-a[i,j]*x[j] od; > for j from i+ to do > x[i]:=x[i]-a[i,j]*x[j] od; > x[i]:=x[i]/a[i,i]; od; > for i to do x[i]:=x[i] od > od; > RETURN(evalm(x)) > ed; Utilizăm această procedură petru rezolvarea sistemului: 3 x + x + x 3 = 4 x + 5x + x 3 = - -x + x + 8x 3 = 4 > a:=matrix(3,3,[3,,,,5,,-,,8]); 3 a :=
87 Metode Numerice > b:=vector([4,-,4]); > lisolve(a,b); > x0:=vector(3,[0,0,0.]); > mjacobi (a,b,x0,0.00); > x:=vector(3,[0,,345]); > mjacobi (a,b,x,0^(-3)); b := [ 4, -, 4 ] [, -, ] x0 := [ 0, 0, 0. ] [ , , ] x := [ 0,, 345 ] ,, > map(evalf,mjacobi (a,b,x,0^(-3))); [ , , ] IV.4.3. Metoda Gauss-Seidel Metoda Gauss-Seidel corespude desfacerii N = L + D, P = -R. Şirul (x k ) k costruit pri metoda Gauss-Seidel este defiit pri Nx k+ = P x k + b, k 0, x 0 dat a, a, a, :... a, a, a,3 a,- a k x + k x + k x + = Px k + b Deci k x + = a, ((Px k ) + b ) = a, k ( P,j x j + b ) = j= a, k ( P,j x j + b ) = j= 87
88 Mădălia Roxaa Bueci = a, k ( a,jx j + b ) = j= a, (b - k a,jx j ) j= şi petru orice i, i, avem k x i + = = = = a a i,i a i,i i,i a i,i i ((Px k k+ ) i + b i - ai,jx j ) = ( j= a i k k+ Pi,jx j + b i - ai,jx j ) j= i+ j= i k k+ ai,jx j + b i - ai,jx j ) j= i+ j= ( ( b i - i k k+ ai,jx j - ai,jx j ) j= i+ j= i,i k ( Pi,j x j + b i - j= i k+ ai,jx j ) j= Î coseciţă, şirul (x k ) k costruit pri metoda Gauss-Seidel este: x 0 dat petru k 0, k x + = a, (b - k a,jx j ) j= k x i + = a i,i ( b i - k ai,jx j - j= i+ i j= a i,j x k+ j ), i =,3,, Ca şi î cazul metodei Jacobi dacă A este diagoal domiată atuci şirul obţiut pri metoda Gauss-Seidel coverge la soluţia exactă a sistemului Ax=b. De asemeea dacă A este o matrice simetrică şi are elemetele de pe diagoala pricipală pozitive, atuci metoda Gauss-Seidel coverge dacă şi umai dacă matricea A este pozitiv defiită. Procedura Maple de mai jos are drept parametri, matricea sistemului presupusă diagoal domiată, vectorul termeilor liberi, aproximaţia iiţială x 0 a soluţiei, şi eroarea epsilo. Procedura îtoarce aproximaţia x k (dată de metoda Gauss Seidel) a soluţiei cu k = l l ( epsilo) ( N P ) +. 88
89 Metode Numerice > with(lialg): > mgaussseidel := proc(a, b,x0, epsilo) > local, i, x, k, i, j, p, suma; > :=rowdim(a); > i := 0; > for i to do > suma := 0; > for j to i - do suma := suma + abs(a[i, j])od; > for j from i + to do suma := suma + abs(a[i, j]) > od; > if a[i, i] = 0 the > prit(`metoda u se aplica`); RETURN(NULL) fi; > suma := suma/abs(a[i, i]); > if i < suma the i := suma fi > od; > if <= i the > prit(`matricea u este diagoal domiata`); > RETURN (NULL) fi; > k := floor(l(epsilo)/l(i)) + ; > x := vector(); > for i to do x[i]:=x0[i] od; > for p to k do x[] := b[]; > for j from to do > x[] := x[] - a[, j]*x[j] od; > x[] := x[]/a[, ]; > for i from to do > x[i] := b[i]; > for j from i + to do > x[i] := x[i] - a[i, j]*x[j] od; > for j to i - do x[i] := x[i] - a[i, j]*x[j] od; > x[i] := x[i]/a[i, i] > od; > od; > RETURN(evalm(x)) > ed; Utilizăm această procedură petru rezolvarea sistemului: 89
90 Mădălia Roxaa Bueci 3 x + x + x 3 = 4 x + 5x + x 3 = - -x + x + 8x 3 = 4 > a:=matrix(3,3,[3,,,,5,,-,,8]); > lisolve(a,b); > x0:=vector(3,[0,0,0.]); > mgaussseidel(a,b,x0,0^(-3)); > x:=vector(3,[0,,345]); 3 a := 5-8 [, -, ] x0 := [ 0, 0, 0. ] [ , , ] > mgaussseidel (a,b,x,0^(-3)); x := [ 0,, 345 ] ,, > map(evalf,mgaussseidel(a,b,x,0^(-3))); [ , , ] Metoda Gauss-Seidel care implică modificarea uei ecuoscute la fiecare momet de timp este preferabilă metodei Jacobi care implică modificarea tuturor ecuoscutelor î acelaşi timp dacă se dispue de u calculator serie obişuit. Metoda Jacobi este preferabilă metodei Gauss Seidel c-se dispue de u calculator paralel. 90
91 Metode Numerice V. Rezolvarea ecuaţiilor şi sistemelor eliiare V. Rezolvarea ecuaţiilor eliiare Presupuem date a, b R, f: [a,b] R. Problema pe care o studiem este determiarea umerelor reale x [a,b] cu proprietatea că f(x) = 0. Numim u umăr real x* [a,b] cu proprietatea că f(x*) = 0, soluţie (sau rădăciă) a ecuaţiei f(x) = 0 sau zerou al fucţiei f pe itervalul [a,b]. Dacă f : [a,b] R, este o fucţie cotiuă cu proprietatea că f(a)f(b) < 0. Atuci există cel puţi o rădăciă x * (a,b) a ecuaţiei f(x) = 0. Rădăcia ecuaţiei f(x) = 0 u este eapărat uică. Presupuem că f : [a,b] R este o fucţie derivabilă, x* (a,b) o rădăciă a ecuaţiei f(x) = 0 şi ˆx = x* + h o aproximaţie a lui x*. Aplicâd formula lui Taylor rezultă că ude şi h 0 ( ) o h lim h =0. Ca urmare, f( ˆx ) = f(x*) + f (x*)h + o(h), f( ˆx ) - f(x*) - o(h) = f (x*)( ˆx -x*) ˆx -x* (f( ˆx ) - f(x*)). f (x*) Deci factorul de codiţioare absolut al problemei f(x) = 0 este ˆx este u umăr real cu proprietatea că f( ˆx ) ε atuci. Dacă ε > 0 şi f (x) 9
92 Mădălia Roxaa Bueci ˆx - x* ε. f (x*) (ude x* este o rădăciă a ecuaţiei f(x) = 0). Î geeral, ˆx -x* şi f( ˆx ) u sut simulta mici ( ˆx -x* este eroarea absolută cu care ˆx aproximează x*, iar f( ˆx ) idică reziduu corespuzător lui ˆx ). Dacă problema este bie codiţioată ( f (x*) mic), atuci reziduu mic implică eroare absolută ˆx -x* mică. problemă bie codiţioată problemă rău codiţioată Metodele iterative de rezolvare a uei ecuaţii f(x)=0 presupu costrucţia uui şir (x k ) k coverget către o rădăciă x * a ecuaţiei. Eroarea absolută cu care x k aproximează x * este e k = x* - x k. Se spue că şirul (x k ) k coverge cu rata r dacă există o costată C (0, ) astfel îcât e lim + k e k r k = C. Dacă r = şi 0 < C<, rata covergeţei se spue liiară r = şi C = 0 (sau r > ), rata covergeţei se spue superliiară r =, rata covergeţei se spue pătratică 9
93 Metode Numerice V... Metoda bisecţiei (metoda îjumătăţirii itervalului) Fie f : [a,b] R, o fucţie cotiuă cu proprietatea că Atuci există cel puţi o rădăciă x * f(a)f(b) < 0. (a,b) a ecuaţiei f(x)=0. Petru găsirea rădăciii se micşorează la fiecare pas itervalul î care fucţia îşi schimbă semul. Metoda bisecţiei presupue îjumătăţirea la fiecare pas a acestui iterval. Astfel se determiă mijlocul c = a + b al itervalului (a,b). dacă f(c)f(a)<0, atuci se cotiuă algoritmul cu itervalul [a,c] dacă f(c)f(b)<0, atuci se cotiuă algoritmul cu itervalul [c,b] dacă f(c) =0 s-a determiat o rădăciă a ecuaţiei f(x) = 0. Se costruieşte astfel u şir de itervale (I ), I = [a, b ], cu lugimea lui I egală cu jumătate di lugimea lui I -. Fiecare di aceste itervale coţie o soluţie a ecuaţiei f(x) = 0. Presupuem că se dă o precizie ε>0. Cosiderăm că c mijlocul itervalului I este o aproximaţie satisfăcătoare a soluţiei ecuaţiei f(x) = 0 dacă lugimea lui I este mai mică decât ε. Dacă otăm L = b - a lugimea itervalului I, avem L = L - =... = umai dacă Algoritm Date de itrare: L 0 = ( ) b-a < ε sau echivalet > l b a l f cotiuă, a, b cu f(a)f(b)<0 ε (precizie) Date de ieşire: b-a. Ca urmare L < ε dacă şi ε. c mijlocul itervalului I = [a, b ] cu a -b <ε (c este o aproximaţie a uei rădăcii x* (a,b) a ecuaţiei f(x) = 0 cu eroarea absolută x*-c < ε ). ( ) 93
94 ( ε) ( ) l b a max:= l +; petru j = 0,,..., max execută a + b c: = ; Mădălia Roxaa Bueci dacă f(c) = 0 atuci j : = max + altfel dacă f(c)f(a)<0 atuci b : = c; altfel a : = c; Rata covergeţei petru metoda bisecţiei este liiară (r =, C = ). Procedură MAPLE > bisectie:=proc(f,a,b,epsilo) > local c,a,b,max,j; > a:=a; b:=b; > max:=floor(l(abs(b-a)/epsilo)/l())+; > for j from 0 to max do > c:=(a+b)/; > if f(c)=0 the a:=c;b:=c;else > if evalf(f(c)*f(a))<0 the b:=c else a:=c fi fi > od; > c:=(a+b)/; > RETURN(c) > ed; Utilizăm această procedură petru determiarea rădăciilor reale ecuaţiei: x 8 3x-3 = 0. Reprezetăm grafic fucţia x->x 8 3x-3 petru a localiza rădăciile. > with(plots): > plot(x^8-3*x-3,x,color=black); 94
95 Metode Numerice > plot(x^8-3*x-3,x=-5..5,color=black); > plot(x^8-3*x-3,x=-..,color=black); > plot(x^8-3*x-3,x= ,color=black); 95
96 Mădălia Roxaa Bueci Se observă că ecuaţia are două rădăcii reale. Ua î itervalul (-.5, -0.5) şi alta î itervalul (,.5). > f:=(x-> x^8-3*x-3); > bisectie(f,,3/,0^(-3)); f := x x 8 3 x > evalf(bisectie(f,,3/,0^(-3))); > bisectie(f,,.5,0^(-3)); > bisectie(f,-.5,0,0^(-3)); > fsolve(f(x),x); , > evalf(bisectie(f,,3/,0^(-0))); > evalf(bisectie(f,,-3/,0^(-0))); Comada MAPLE fsolve(f(x), x) îtoarce rădăciile ecuaţiei f(x) = 0. V... Metoda coardei Fie f : [a,b] R, o fucţie cotiuă cu proprietatea că f(a)f(b) < 0. Rădăcia ecuaţiei f(x)=0 se caută ca şi î cazul metodei bisecţiei pri micşorarea la fiecare pas a itervalului î care fucţia îşi schimbă semul. Metoda coardei presupue următoarele: se determiă puctul c î care coarda AB itersectează axa Ox, ude A(a,f(a)) şi B(b,f(b)). dacă f(c)f(a)<0, atuci se cotiuă algoritmul cu itervalul [a,c] dacă f(c)f(b)<0, atuci se cotiuă algoritmul cu itervalul [c,b] 96
97 Metode Numerice dacă f(c) =0 s-a determiat o rădăciă a ecuaţiei f(x) = 0. a c c b Să determiăm coordoatele puctului C de itersecţie a dreptei AB cu axa Ox, ude A(a,f(a)) şi B(b,f(b)). Ox: y = 0 AB: x a = b a f y f ( a) ( b) f ( a) Dacă C(c,0) =AB Ox, atuci c = a - f b a f(a) ( b) f ( a) Teoremă 5.. Fie f : [a, b] R o fucţie de două ori derivabilă cu proprietăţile: f (x) 0, f (x) 0, oricare ar fi x [a, b] şi f(a)f(b) < 0. Atuci uica soluţie a ecuaţiei f(x) = 0 poate fi obţiută ca limită a şirului strict mooto di [a, b] defiit pri: x 0 = a, x = x - - f şi x 0 = b, x = x - - f f ( x ) ( x ) f ( b) f ( x ) ( x ) f ( a) (x - -b), dacă f(a)f (a)<0 (x - -a), dacă f(b)f (b)<0 Dacă m > 0, M > 0 sut astfel îcât m f (x) M şi dacă x* este uica soluţie a ecuaţiei f(x) = 0, atuci eroarea absolută cu care termeul x aproximează x* satisface iegalităţile: 97
98 Mădălia Roxaa Bueci x*-x f ( x ) m M m x*-x x x m Demostraţie. Deoarece f (x) 0 petru orice x [a, b], rezultă că f este fie strict pozitivă, fie strict egativă, deci f este strict mootoă. Ţiâd cot şi de faptul că f(a)f(b) < 0, rezultă că ecuaţia f(x) = 0 are o uică soluţie x*. Presupuem că f(a)f (a)< 0 şi că f(a)< 0 (îlocuid evetual f cu f). Deoarece f (x) 0 petru orice x [a, b] şi f (a)>0, rezultă că f este strict pozitivă. Di faptul că f este strict mootoă şi f(a) < 0 < f(b), rezultă că f este strict pozitivă. Dacă B este puctul de coordoate (b,f(b)) şi C - puctul de coordoate (x -, f(x - )), atuci x este abscisa puctului de itersecţie a coardei BC - cu axa Ox. Ca urmare f(x - ) < 0. Deoarece f este o fucţie Rolle pe itervalul [x -, b], coform teoremei lui Lagrage există d - ( x -, b) astfel îcât f(x - ) f(b) = f (d - )(x - b). Avem x = x - - f f ( x ) ( x ) f ( b) (x - -b) = x - - ( ) ( d ) f x f > x -. Deci şirul (x ) este crescător şi mărgiit (termeii şirului aparţi itervalului (a,x*)). Fie x limita şirului (x ). Trecâd la limită î x = x - - f obţiem x = x - f ( x ) (x ( x ) f ( b) - -b) f ( x ) ( ) f ( b) f x ( x -b), de ude rezultă f( x ) = 0. Deoarece x* este uica rădăciă a ecuaţiei f(x) = 0 di itervalul (a, b) rezultă că x* = x. Aalog se arată că dacă f(b)f (b)<0 şirul defiit pri x 0 = b, x = x - - f este strict descrescător către x*. f ( x ) (x ( x ) f ( a) - -a) 98
99 Metode Numerice Coform teoremei lui Lagrage petru orice x [a, b] există d x ître x şi x* astfel îcât f(x*) f(x) = (x* - x) f (d x ). Ca urmare, f(x ) = f(x*) f(x ) = x* - x f (d ), de ude rezultă că f ( x ) x* - x = f ( d ) Dacă presupuem că f(a)f (a)<0 şi x = x - - f atuci f x - f(x - ) = x şi ţiâd cot că f(x*) = 0, f(x*) - f(x - ) = - f(x - ) = f ( x ). m f ( x ) (x ( x ) f ( b) - -b) ( ) f ( b) b ( ) f ( b) f x x b (x x - ), (x x - ). Coform teoremei lui Lagrage există η (x -, x*) şi ζ (x -, b) astfel îcât: f(x*) f(x - ) = (x* - x - ) f (η ) f(x - ) f(b) = (x - - b) f (ζ ) Ţiâd cot de f x f(x*) - f(x - ) = x obţiem ( ) f ( b) b (x x - ). (x* - x - ) f (η ) = f (ζ ) (x x - ) şi deci (x* - x ) = (x* - x - ) + (x - - x ) = ( ) ( ) f ζ = ( f η - ) (x x - ), ( ) ( ) f ζ f η (x x - ) - (x x - ) 99
100 Mădălia Roxaa Bueci de ude x* - x = ( ζ ) ( η ) f ( η ) f f M x x - m x x -, deoarece m f >0. Similar se tratează cazul f(b)f (b)<0. Semificaţie geometrică. Fie f : [a, b] R o aplicaţie de două ori derivabilă cu f (x) 0, f (x) 0 oricare ar fi x [a, b], f(a)f(b)<0, şi fie x 0 = a, x = x - - f şi f x x 0 = b, x = x - - f x f ( x ) (x ( x ) f ( b) - -b), dacă f(a)f (a)<0 ( ) (x ( ) f ( a) - -a), dacă f(b)f (b)<0 Atuci şirul (x ) coverge la x* uica soluţie a ecuaţiei f(x) = 0. Cazul. f(a)f (a) < 0: petru orice, x reprezită abscisa puctului de itersecţie a axei Ox cu coarda BC - ude B(b,f(b)) şi C - (x -, f(x - )). Aşadar avem subcazurile. f > 0 (f strict crescătoare). f < 0 (f strict descrescătoare) x 0 = a x x b.. f > 0, f(a) < 0 00
101 Metode Numerice x 0 = a x x b.. f < 0, f(a) > 0 Cazul. f(b)f (b) < 0 (sau echivalet f(a)f (a) > 0) : petru orice, x reprezită abscisa puctului de itersecţie a axei Ox cu coarda AC - ude A(a,f(a)) şi C - (x -, f(x - )). Aşadar avem subcazurile.. f > 0 (f strict descrescătoare).. f < 0 (f strict crescătoare).3. a x x x 0 = b.. f > 0, f(b) < 0 0
102 Mădălia Roxaa Bueci a x x x 0 = b. f < 0, f(b) > 0 Algoritm Date de itrare: f de două ori derivabilă pe [a,b], cu f (x) 0, f (x) 0 petru orice x şi f(a)f(b)<0 ε (precizie) Date de ieşire: x N aproximaţie a uicei rădăcii x* (a,b) a ecuaţiei f(x) = 0, ude x 0 = a, x = x - - x 0 = b, x = x - - f f ( x ) (x ( x ) f ( b) - -b), dacă f(a)f (a)<0 f f ( x ) (x ( x ) f ( a) - -a), dacă f(b)f (b)<0 iar N este cel mai mic umăr atural cu proprietatea că x N x N- < ε 0
103 Metode Numerice dacă f(a) f (a) < 0 execută x: = b ; x: = a; cât timp x-x ε execută x: = x; x : = x - f x altfel f ( x) ( ) f ( b) (x-b), x: = a ; x: = b; cât timp x-x ε execută x: = x; x : = x - f ( x) ( ) f ( a) f x (x-a), x reprezită x N ude N este cel mai mic umăr atural cu proprietatea că x N x N- < ε. Procedură MAPLE > mcoarda:= proc(f,a,b,epsilo) > local x, x; > if evalf(f(a)*(d@@)(f)(a))<0 the > x:=b; x:=a; > while evalf(abs(x-x))>=epsilo do > x:=x; > x:= x-f(x)*(x-b)/(f(x)-f(b)) > od; > else > x:=a; x:=b; > while evalf(abs(x-x))>=epsilo do > x:=x; > x:= x-f(x)*(x-a)/(f(x)-f(a)) > od; > fi; > RETURN(x) > ed; 03
104 Mădălia Roxaa Bueci Aplicăm această procedură petru determiarea rădăciilor reale ale ecuaţiei: x 8 3x-3 = 0. Î secţiuea precedetă rădăciile au fost localizate î itervalele (-.5, -0.5) şi (,.5). > f:=(x-> x^8-3*x-3); > mcoarda(f,,.5,0^(-3)); > mcoarda(f,-.5,0,0^(-3)); > fsolve(f(x),x); > mcoarda(f,,.5,0^(-0)); > mcoarda(f,-.5,0,0^(-0)); f := x x 8 3 x , V..3. Metoda tagetei Metoda tagetei este utilizată petru determiarea uei rădăcii a ecuaţiei f(x) = 0. Presupuem că f este derivabilă şi că derivata u se aulează. Rădăcia ecuaţiei este determiată ca limita uui şir. Se pleacă de la u puct x 0 dat. Presupuâd că s-a costruit termeul x -, termeul x se determiă ca fiid abscisa itersecţiei ditre tageta la graficul fucţiei î x - şi axa Ox. x x - 04
105 Metode Numerice Ecuaţia tagetei î x - este: y f(x - ) = f (x - )(x x - ) Deci itersecţia cu axa Ox se află rezolvâd sistemul Î coseciţă, ( ) y- f(x ) = f (x ) x-x y = x = x - - ( ) ( x ) f x f. Covergeţa şirului este determiată de termeul iiţial x 0. Următoarea teoremă stabileşte codiţii suficiete petru covergeţa metodei tagetei. Teoremă 5.. (Metoda tagetei). Fie f : [a, b] R o aplicaţie de două ori derivabilă cu următoarele proprietăţi: f (x) 0, f (x) 0 oricare ar fi x [a, b] şi f(a)f(b)<0. Atuci uica soluţie x* a ecuaţiei f(x) = 0 este limita a şirului (x ) defiit pri: x = x - - ( ) ( x ) f x f, ude x 0 [a, b] este ales astfel îcât f(x 0 )f (x 0 ) > 0. Î plus, oricare ar fi eroarea absolută cu care termeul x aproximează x* verifică următoarele iegalităţi: x* - x f ( x ) m M m x* - x ( x x ) ude m = if f ( x) şi M = sup f ( x) x [a,b] x [a,b]. Demostraţie. Putem presupue f(a) < 0, evetual îlocuid f cu f. Deoarece f (x) 0 petru orice x [a, b], rezultă că f este fie strict pozitivă, fie 05
106 Mădălia Roxaa Bueci strict egativă, deci f este strict mootoă. Ţiâd cot şi de faptul că f(a) < 0 şi f(b) > 0, rezultă că f este strict crescătoare şi că f este strict pozitivă. Deoarece f(a)f(b)<0, rezultă că ecuaţia f(x) = 0 are o cel puţi soluţie x*, iar di faptul că f este strict crescătoare rezultă că soluţia este uică. Deoarece f (x) 0 petru orice x [a, b], f este fie strict pozitivă, fie strict egativă. Să presupuem f >0. Atuci f(x 0 ) > 0 şi deci x 0 > x*. Arătăm pri iducţie după că x > x* petru orice 0. Presupuem că x > x* şi demostrăm că x + > x*. Aplicâd formula lui Taylor rezultă că există ζ ître x şi x* astfel îcât x * x 0 = f(x*) = f(x ) + f (x ) + ( x * x )!! Di faptul că f (ζ ) > 0, rezultă că x * x 0 > f(x ) + f (x )! de ude x + = x - ( ) ( x ) f x f > x + x* - x = x*. f (ζ ) Ca urmare x > x* petru orice 0. Deoarece f este strict crescătoare, f(x ) > f(x*) = 0, şi î coseciţă, x + = x - ( ) ( x ) f x f < x petru orice 0. Aşadar şirul (x ) este strict descrescător şi mărgiit iferior, deci este coverget. Fie x limita şirului (x ). Avem x 0 > x x*. Trecâd la limită î f x x = x - - f x obţiem f x x = x - f x ( ) ( ) ( ) ( ) de ude rezultă f( x ) = 0. Deoarece x* este uica rădăciă a ecuaţiei f(x) = 0 di itervalul [a, b] rezultă că x* = x. Similar se tratează cazul f < 0., 06
107 Metode Numerice Coform teoremei lui Lagrage petru orice x [a,b] există d x ître x şi x* astfel îcât f(x*) f(x) = (x* - x) f (d x ). Ca urmare, f(x ) = f(x*) f(x ) = x* - x f (d ), de ude rezultă că f ( x ) x* - x = f ( d ) f ( x ). Aplicâd formula lui Taylor rezultă că există η ître x şi x - astfel îcât x f(x ) = f(x - ) + x f (x - ) + ( x x ) f (η )!! Ţiâd cot şi de faptul că x = x - - ( ) ( x ) f x f f x x - x - = - f obţiem f(x ) = f(x - ) - ( ) ( x ) f x f = ( x x ) f (η ).! Ca urmare x* - x f ( x ) = m m ( x x )! m sau echivalet ( ) ( x ), f (x - ) + ( x x ) f (η )! M f (η ) m (x x - ). Observaţie 5.3. Rata covergeţei petru metoda tagetei este pătratică. Îtr-adevăr, să presupuem că f : [a, b] R o aplicaţie de două ori derivabilă cu f (x) 0, f (x) 0 oricare ar fi x [a, b], f(a)f(b)<0, şi că x = x - - ( ) ( x ) f x f, ude x 0 [a, b] este ales astfel îcât f(x 0 )f (x 0 ) > 0. Di teorema aterioară rezultă că (x ) coverge la x* uica soluţie a ecuaţiei f(x) = 0. Aplicâd formula lui Taylor rezultă că există ζ ître x şi x* astfel îcât 07
108 Mădălia Roxaa Bueci de ude sau echivalet Aşadar x * x 0 = f(x*) = f(x ) +! x* - x = - x* - x + şi trecâd la limită obţiem ( ) ( x ) f x f ( ) ( x ) f x f x* - x + = - - = - f (x ) + ( x * x )! ( ) ( x ) f ζ f ( ) ( x ) f ζ f ( ) ( x ) f ζ f + (x*-x ), (x*-x ). (x*-x ), ( ) ( ) x * x f x * lim = x * x f x * ude m = if f ( x) şi M = sup f ( x) x [a,b] x [a,b]. M m f (ζ ), Semificaţie geometrică. Fie f : [a, b] R o aplicaţie de două ori derivabilă cu f (x) 0, f (x) 0 oricare ar fi x [a, b], f(a)f(b)<0, şi fie x = x - - ( ) ( x ) f x f, ude x 0 [a, b] este ales astfel îcât f(x 0 )f (x 0 ) > 0. Atuci şirul (x ) coverge la x* uica soluţie a ecuaţiei f(x) = 0. Petru orice, x reprezită abscisa puctului de itersecţie a axei Ox cu tageta la graficul lui f î puctul de coordoate (x -, f(x - )). Deoarece f şi f u se aulează pe [a, b], rezultă că sut fie strict pozitive fie strict egative. Aşadar avem Cazul. f > 0 (f strict covexă).. f > 0 (f strict crescătoare).. f < 0 (f strict descrescătoare) 08
109 Metode Numerice x x x 0.. f > 0, f > 0 x 0 x x.. f < 0, f > 0 Cazul. f < 0 (f strict cocavă).. f > 0 (f strict crescătoare).. f < 0 (f strict descrescătoare) 09
110 Mădălia Roxaa Bueci x 0 x x.. f > 0, f < 0 x x x 0.. f < 0, f < 0 Deci petru aplicarea metodei tagetei î rezolvarea ecuaţiei f(x) = 0 trebuie stabilite itervalele de mootoie şi itervalele de covexitate/cocavitate petru fucţia f. Dacă a şi b sut capetele uui astfel de iterval şi dacă f(a)f(b)<0, atuci se alege î itervalul [a, b] u puct x 0 astfel îcât f(x 0 )f (x 0 )>0. Şirul costruit ri 0
111 Metode Numerice metoda tagetei, avâd termeul iiţial x 0 coverge la uica rădăciă a ecuaţiei f(x) = 0, situată î itervalul [a, b]. Algoritm Date de itrare: f - î codiţiile.,.,. sau. x 0 - f(x 0 )f (x 0 )>0 ε >0 (precizia determiă codiţia de oprire a iteraţiilor) Date de ieşire: x N cu proprietatea că N este cel mai mic umăr atural petru care x N x N- < ε. ude (x ) este şirul corespuzător metodei tagetei (x N este cosiderat o aproximaţie satisfăcătoare a uicei soluţii a ecuaţiei f(x)=0) x := x0; f x : = x - f ( x) ( x) cât timp x x ε execută x := x; x : = x - ; f f ( x) ( x) ; Prezetăm î cotiuare o variată a acestui algoritm petru cazul î care f u verifică eapărat codiţiile suficiete de covergeţă. Itroducem ca dată suplimetară de itrare umărul maxim de termei di şir ce urmează a fi calculaţi (Nmax). Codiţia de oprire se trasformă x - x - < ε sau > Nmax x := x0; x : = x - : = ; f f ( x) ( x) ;
112 Mădălia Roxaa Bueci cât timp ( x x ε ) şi ( Nmax) execută x := x; x : = x - : = + ; f f ( x) ( x) ; Trebuie verificat la ieşirea di ciclu dacă f(x) 0. Dacă problema este bie codiţioată, aceasta codiţie va asigura acurateţea aproximaţiei. Proceduri MAPLE > mtageta:=proc(f,x0,epsilo) > local x,x,df; > df:=d(f);x:=x0;x:=x-f(x)/df(x); > while evalf((x-x)^)>=epsilo do > x:=x;x:=x-f(x)/df(x) > od; > RETURN(x) > ed; > mtagetan:=proc(f,x0,epsilo,nmax) > local x,x,,df; > df:=d(f);x:=x0;x:=x-f(x)/df(x);:=; > while (evalf((x-x)^)>=epsilo)ad (<=Nmax) do > x:=x;x:=x-f(x)/df(x) ;:=+; prit(evalf(x)) > od; > prit(`numar de termei calculati`, -); > RETURN(x) > ed; Exemple de utilizare a procedurilor > with(plots): > plot(exp(x)+*x+,x,color=black);
113 Metode Numerice > plot(exp(x)+*x+,x=-..,color=black); > f:=(x->exp(x)+*x+); > mtageta(f,0.,0^(-5)); f := x e x + x > fsolve(f(x),x); > plot(si(x)+x-,x,color=black); > f:=(x->si(x)+x-); > mtageta(f,.,0^(-8)); f := x si( x ) + x 3
114 Mădălia Roxaa Bueci > fsolve(f(x),x); > mtagetan(f,.,0^(-8),0); Numar de termei calculati, > xn:=mtagetan(f,-0.,0^(-8),0); Numar de termei calculati, 0 xn := > f(xn); V.. Rezolvarea sistemelor eliiare Presupuem date o mulţime G R şi o fucţie f = (f, f,..., f ): G R. Problema pe care o studiem este determiarea vectorilor -dimesioali x = (x, x,..., x ) t G 4
115 Metode Numerice cu proprietatea că f(x) = 0 sau echivalet f (x, x,..., x ) = 0 f (x, x,..., x ) = 0... f (x, x,..., x ) = 0 Numim soluţie a sistemului (de ecuaţii cu ecuoscute) f(x) = 0 pe G u vector x* G R cu proprietatea că f(x*) = 0,. Presupuem că G R este o mulţime deschisă, o ormă pe R care iduce o ormă pe L(R, R ) ) M, (R) otată tot, f = (f, f,..., f ) : G R este o fucţie difereţiabilă şi x* G o soluţie a sistemului f(x) = 0. De asemeea fie ˆx = x* + δh G (h R cu h =, δ R) o aproximaţie a lui x*. Notăm cu Jf(x) jacobiaul fucţiei f î puctul x, adică matricea f x i j ( x) i,j Aplicâd formula lui Taylor rezultă că f( ˆx ) = f(x*) + δjf(x*)h + o(δ), ude şi δ 0 ( δ) o lim =0. Ca urmare, δ f( ˆx ) - f(x*) - o(δ) = Jf(x*)( ˆx -x*) Jf(x*) - (f( ˆx ) - f(x*) - o(δ)) =( ˆx -x*) ˆx -x* Jf(x*) - f( ˆx ) - f(x*). Deci factorul de codiţioare absolut al problemei f(x) = 0 este Jf(x) -. Dacă ε > 0 şi ˆx este u umăr real cu proprietatea că f( ˆx ) ε atuci ˆx - x* ε Jf(x*) - (ude x* este o soluţie a sistemului f(x) = 0). Î geeral, ˆx -x* şi f( ˆx ) u sut simulta mici ( ˆx -x* este eroarea absolută cu care ˆx aproximează x*, iar f( ˆx ) idică reziduu corespuzător lui ˆx ). Dacă problema este bie codiţioată (adică. 5
116 Mădălia Roxaa Bueci dacă orma Jf(x*) - este mică), atuci reziduu mic implică faptul că eroarea absolută cu care ˆx aproximează x*, ˆx -x*, este mică. Metodele iterative de rezolvare a uui sistem de ecuaţii f(x)=0 presupu costrucţia uui şir (x k ) k coverget către o rădăciă x * a ecuaţiei. Eroare absolută cu care x k aproximează x * este e k = x* - x k. Se spue că şirul (x k ) k coverge cu rata r dacă există o costată C (0, ) astfel îcât k+ e lim k e k r = C. Dacă r = şi C<, rata covergeţei se spue liiară r= şi C = 0 (sau dacă r > ), rata covergeţei se spue superliiară r =, rata covergeţei se spue pătratică V... Metoda puctului fix Defiiţie 5.4. Fie (X,d) u spaţiu metric şi fie f: X X. Fucţia f se umeşte cotracţie dacă şi umai dacă există q (0,) astfel îcât d(f(x), f(y) q d(x,y) petru orice x,y X Defiiţie 5.5 Fie f: X X. Puctul α X se umeşte puct fix petru f dacă f(α) = α. Teoremă 5.6. (metoda puctului fix). Fie (X,d) u spaţiu metric complet şi fie f : X X o cotracţie. Atuci există şi este uic x* puct fix petru f. Puctul x* este limita uui şir costruit după cum urmează: x 0 X dat x = f(x - ),. Mai mult, dacă umărul q (0,) este astfel îcât d(f(x), f(y)) qd(x,y) petru orice x,y X, atuci petru orice avem 6
117 Metode Numerice. d(x*, x ). d(x*, x ) q q d(x, x - ) q q d(x, x 0 ) 3. d(x*, x ) qd(x*, x - ) Demostraţie. Deoarece f este cotracţie, rezultă că există q (0,) astfel îcât d(f(x), f(y)) qd(x,y) petru orice x,y X. Arătăm uicitatea puctului fix. Presupuem pri absurd că x* şi y* sut pucte fixe ale lui f şi că x* y*. Atuci f(x*) = x* şi f(y*) = y* şi avem d(x*, y*) = d(f(x*), f(y*)) q d(x*, y*) < d(x*, y*), ceea ce este o cotradicţie. Î coseciţă, puctul fix (dacă există) este uic. Arătăm că şirul (x ) este coverget şi limita lui este puct fix petru f. Petru orice k 0 şi orice 0, avem d(x +k, x +k- ) = d(f(x +k- ), f(x +k- )) q d(x +k-, x +k- )... q k- d(x +, x ). şi ţiâd cot de aceasta d(x +k, x ) d(x +k, x -k- ) + d(x +k-, x +k- ) d(x +, x ) q k- d(x +, x ) + q k- d(x +, x ) d(x +, x ) = (q k- + q k ) d(x +, x ) k q = q d(x +, x ). Deci d(x +k, x ) k q q d(x +, x ) (). Di faptul că d(x +, x ) = d(f(x ), f(x - )) q d(x, x - )... q d(x, x 0 ) şi di relaţia () rezultă d(x +k, x ) k q q d(x +, x ) k q q q d(x, x 0 ) q q d(x, x 0 ). Ca urmare d(x +k, x ) q q d(x, x 0 ) (). 7
118 Mădălia Roxaa Bueci Fie ε>0. Deoarece q (0,), lim q îcât q q < ε. Ţiâd cot de relaţia () obţiem d(x, x ) 0 = 0, şi de aici rezultă că există ε N astfel d(x +k, x ) < ε petru orice ε şi orice k 0. Deci (x ) este şir Cauchy şi deoarece X este spaţiu complet rezultă că (x ) este coverget. Notăm x* = lim x. Arătăm că x* este puct fix petru f. Fucţia f fiid cotracţie este fucţie cotiuă. Trecâd la limită cu î obţiem lim x de ude ţiâd cot că x* = adică x* este puct fix petru f. Di relaţia () rezultă x = f(x - ) = lim f (x ) = lim x = lim x x* = f(x*), f ( lim x ), rezultă d(x +k, x ) k q q k q d(x +, x ). q q d(x, x - ) şi trecâd la limită cu k, se obţie d(x*, x ) q q d(x, x - ). Î cotiuare folosid şi faptul că d(x, x - ) q - d(x, x 0 ) se obţie d(x*, x ) q q d(x, x 0 ). Petru a arăta ultima afirmaţia di teoremă ţiem seama de d(x*, x ) = d(f(x*), f(x - )) q d(x*, x - ). Corolar 5.7. Fie (E, ) u spaţiu Baach (î particular, E = R m ) şi S o submulţime îchisă a lui E. Fie f : S S o fucţie cu proprietatea că există u 8
119 Metode Numerice umăr q (0,) este astfel îcât f(x) - f(y) q x -y petru orice x,y S Atuci există şi este uic x* puct fix petru f şi petru orice x 0 E, şirul defiit recursiv pri coverge la x*. Mai mult, petru orice avem. x*- x. x*- x q q x - x - q q x - x 0 3. x*- x q x*- x - x = f(x - ), Demostraţie. Dacă (E, ) u spaţiu Baach şi S o submulţime îchisă a lui E atuci (S,d) (ude d(x,y) = x-y ) este spaţiu metric complet. Î coseciţă, afirmaţiile rezultă aplicâd direct teorema precedetă. este liiară. Algoritm: Observaţie 5.8. Î geeral, rata covergeţei petru metoda puctului fix Date de itrare: f (cotracţie) Date de ieşire: x0 (termeul iiţial al şirului) ε (precizia ce determiă codiţia de oprire: se calculează termeii şirului pâă la x N cu proprietatea x N -x N- < ε). x N (aproximaţie satisfăcătore (determiată de ε) petru puctul fix). x:=x0; x:=f(x); cât timp x x ε execută x:=x; x:=f(x); 9
120 Mădălia Roxaa Bueci La ieşire x este aproximaţie petru x*, puctul fix al lui f. Faptul că f este cotracţie asigură termiarea programului îtr-u umăr fiit de paşi. Petru a evita ciclarea î situaţia î care s-ar îcerca folosirea algoritmului petru o fucţie care u este cotracţie, se poate stabili de la îceput u umăr maxim de paşi ce urmează a fi executaţi. De asemeea se poate afişa la fiecare pas difereţa ditre termeii cosecutivi cureţi. (petru a observa că şirul u coverge dacă f u e cotracţie). Astfel se poate folosi următoarea variată a algoritmului: Date de itrare: f (cotracţie) x0 (termeul iiţial al şirului) ε (precizia) Nmax (umăr maxim de termei ai şirului ce urmează a fi calculaţi) Codiţia de oprire: se calculează termeii şirului pâă la x N cu proprietatea x N -x N- < ε sau N Nmax). Date de ieşire: x N (dacă f este cotracţie, x N este aproximaţie satisfăcătore - determiată de ε şi Nmax - petru puctul fix al lui f). x:=x0; x:=f(x); :=; cât timp ( x x ε) sau (<Nmax) execută x:=x; x:=f(x); :=+; Dacă f este cotracţie şi Nmax suficiet de mare, la ieşirea di ciclu, x este aproximaţie petru x*, puctul fix al lui f. 0
121 Metode Numerice Iterpretare geometrică: f: I I cotracţie, I R iterval îchis y = f(x) y = x x 0 x x 4 x 3 x Propoziţie 5.9. Fie a, b două umere reale cu a < b şi fie f: [a, b] [a,b] R o fucţie derivabilă cu proprietatea că sup f (x) <. Atuci f este cotracţie. x (a,b) Demostraţie. Notăm q = sup f (x). Avem q (0,). Fie x, y [a, b]. x (a,b) Aplicâd teorema lui Lagrage, rezultă că există ζ ître x şi y astfel îcât de ude obţiem f(x) f(y) = f (ζ) (x y), f(x) f(y) = f (ζ) x y q x y. Exemple. ) Să se rezolve (î mulţimea umerelor reale) ecuaţia următoare aplicâd metoda puctului fix x 3 x - = 0. Se poate arăta că ecuaţia x 3 x - = 0 are o sigură rădăciă reală, şi că această rădăciă este î itervalul (,). Ecuaţia se poate scrie: x 3 = x+ x = 3 x +
122 Mădălia Roxaa Bueci Fie f: [,] [,], defiită pri f(x) = 3 x +. Avem f (x) = 3 3 (x + ) şi deci sup f (x) = < x (,) Ca urmare f este cotracţie pe itervalul [,]. Deci soluţia ecuaţiei poate fi aflată ca limita şirului (x ), cu x = f(x - ) = 3 x +, x 0 [,]. ) Să se rezolve (î mulţimea umerelor reale) ecuaţia următoare aplicâd metoda puctului fix x cos(x) = 0 Notăm g(x) = x cos(x). Cum cos(x) [-, ], soluţiile ecuaţiei x cos(x) = 0 se găsesc î itervalul [-, ]. Deoarece g (x) = + si(x) > 0 petru x di itervalul [-, ], rezultă că g este strict crescătore pe [-, ] şi deci ecuaţia x cos(x) = 0 are cel mult o rădăciă. Cum g(0)g( π )<0, ecuaţia x cos(x) = 0 are exact o π π π rădăciă î itervalul [0, ]. Fie f: [0, ] [0, ], f(x) = ( x +cos(x)). Avem f (x) = ( si(x)) şi deci sup f (x) = < x (0, π ) π Ca urmare f este cotracţie pe itervalul [0, ]. Deci soluţia ecuaţiei poate fi aflată ca limita şirului (x ), cu x = f(x - ) = ( x π - +cos(x - )), x 0 [0, ]. Procedura MAPLE de mai jos implemetează metoda puctului fix petru o cotracţie pe u iterval îchis al lui R.
123 Metode Numerice > puctfix:=proc(f,x0, epsilo) > local x,x; > x:=x0; > x:=f(x); > while evalf(abs(x-x))>=epsilo do > x:=x; > x:=f(x) > od; > RETURN(x); > ed; Exemplificăm aplicarea procedurii petru cotracţiile f : [,] [,], defiită pri f (x) = 3 x +. f : [0, π ] [0, π ], f (x) = ( x +cos(x)) comparative cu aplicarea comezii fsolve. > f:=x->(x+)^(/3); > puctfix(f,.5,0^(-5)); > fsolve(f(x)=x,x); > f:=x->/*(x+cos(x)); > puctfix(f,.,0^(-5)); > fsolve(f(x)=x,x); f := x ( x + ) ( / 3 ) f := x + x cos( x ) Procedura de mai jos implemetează metoda puctului fix petru o cotracţie pe R m. > puctfixm:=proc(f,x0,epsilo,nmax) > local m,x, x,, orma,i; > m:=ops(x0); 3
124 Mădălia Roxaa Bueci > x:=x0; > x:=[seq(f[i](op(x)), i=..m)]; > :=; > orma:=0; > for i from to m do orma:=orma + abs(x[i]-x[i]) od; > while (evalf(orma) >= epsilo) ad ( < Nmax) do > x:=x; > x:=[seq(f[i](op(x)), i=..m)]; > :=+; > orma:=0; > for i from to m do orma:=orma + abs(x[i]-x[i]) od; > od; > RETURN(x) > ed; Propoziţie 5.0. Fie a, b două umere reale cu a < b şi fie f: [a, b] R o fucţie de clasă C (derivabilă cu derivata cotiuă) care admite u puct fix x*. Dacă f (x*) <, atuci există u iterval îchis I [a, b] astfel îcât x* I şi f I este cotracţie. Ca urmare şirul defiit pri x = f(x - ), coverge la x* petru orice terme iiţial x 0 I. Demostraţie. Deoarece f (x*) < şi f este cotiuă, rezultă că există ε>0 astfel îcât f (x) < petru orice x cu proprietatea că x-x* < ε. Luăm ε ε I = [x* -, x* + ]. Deoarece f este cotiuă, există ζ I astfel îcât sup f (x) = f (ζ) <. Dacă mai arătăm şi că f(i) I, rezultă că f I este cotracţie. Aplicâd formula lui Lagrage rezultă că petru orice x I există ζ x ître x şi x* astfel îcât f(x) - f(x*) = f (ζ x )(x-x*) f(x) - x* = f (ζ x )(x-x*) ε f(x) x* = f (ζ x )(x-x*) = f (ζ x ) x-x* < x-x*, x I de ude rezultă că f(x) [x* - ε, x* + ε ] = I. 4
125 Metode Numerice Observaţie 5.. Fie J R u iterval deschis şi f: J R o fucţie de clasă C care admite o rădăciă x* J cu proprietatea că f (x*) 0. Deoarece f este cotiuă şi f (x*) > 0, rezultă că există u iterval J 0 J astfel îcât x* J 0 şi petru orice x J 0 avem f (x) > 0 (sau echivalet f (x) 0). Cosiderăm fucţia g:j 0 R, defiită pri g(x) = x deci x* puct fix petru g. Cum f(x). Avem f (x) g(x*) = x* - f (x*) f(x*) = x*, rezultă că g (x) = - g (x*) = f (x) f (x)f (x) f (x)f (x) =, f (x) f (x) f ( x *) f ( x *) f ( x *) =0 <. Di propoziţia precedetă rezultă că există u iterval îchis I J 0 J astfel îcât x* I şi g I : I I este cotracţie. Ca urmare şirul defiit pri recureţă x = g(x - ), coverge la x* petru orice terme iiţial x 0 I. Di defiiţia lui g rezultă că x = x - f(x - ),, f (x ) adică şirul corespuzător metodei tagetei petru ecuaţia f(x) = 0. Propoziţie 5.. Fie o ormă pe R m, care iduce o ormă pe L(R m, R m ) M m,m (R) otată tot. Fie a R m, r>0, S = B( a,r ) = {x R m, x-a r}, şi f : S S o fucţie difereţiabilă pe S cu proprietatea că jacobiaul fucţiei f î puctul x, adică matricea sup Jf (x) <, ude Jf(x) este x S 5
126 Mădălia Roxaa Bueci Atuci f este cotracţie. Demostraţie. Notăm q = f x i j ( x) Aplicâd teorema creşterilor fiite, rezultă că f(x) f(y) θ [0,] i,j m. sup Jf (x). Avem q (0,). Fie x, y S. x S sup Jf (x + θ(y x)) x y sup Jf (x) x y q x y. x S Propoziţie 5.3. Fie o ormă pe R m, care iduce o ormă pe L(R m, R m ) M m,m (R) otată tot. Fie G R m o mulţime deschisă şi fie f: G R m o fucţie de clasă C care admite u puct fix x*. Dacă Jf (x*) <, atuci există r > 0 astfel îcât dacă otăm S = B( x*,r ) = {x R m, x-x* r} avem S G şi f S : S S este cotracţie. Ca urmare şirul defiit pri x =f(x - ), coverge la x* petru orice terme iiţial x 0 S. Demostraţie. Deoarece G este deschisă, Jf (x*) < şi Jf este cotiuă, rezultă că există ε>0 astfel îcât petru orice x cu proprietatea că x-x* < ε avem x G şi Jf(x) <. Luăm r = ε. Deoarece Jf este cotiuă şi S compactă, există ζ S astfel îcât sup Jf (x) = Jf (ζ) <. x S Dacă mai arătăm şi că f(s) S, rezultă că f S este cotracţie. Aplicâd formula lui Taylor rezultă că petru orice x S există ζ x = x* + θ x (x-x*) S astfel îcât f(x) = f(x*) + Jf(ζ x )(x-x*) f(x) = x* + Jf(ζ x )(x-x*) 6
127 Metode Numerice f(x) - x* = Jf(ζ x )(x-x*) f(x) x* = fζ x )(x-x*) Jfζ x ) x-x* < x-x* r de ude rezultă că f(x) B( x*,r ) = S V... Metoda Newto cazul m-dimesioal Metoda Newto (variata m - dimesioală, m>) este o geeralizare a metodei tagetei. Este o metodă iterativă de rezolvare a uor sisteme de m ecuaţii şi m ecuoscute: f(x) = 0, ude f : G R m, G R m. La fel ca î secţiuile precedete coveim să otăm cu x, x,, x, u şir de elemete di R m. Rezervăm idicii iferiori petru a desema compoetele uui elemet x = (x, x,,x m ) di R m. Dacă G este o mulţime deschisă şi f : G R m este o fucţie difereţiabilă pe G, idetificăm difereţiala de ordiul I a lui f î x, df(x), cu jacobiaul lui f î x, otat Jf(x): f x Jf(x) = i ( x) j i, j m Î cele ce urmează presupuem că matricea Jf(x) este iversabilă petru x G. Metoda Newto costă î aproximarea soluţiei ecuaţiei cosiderate cu x, ude x = x - Jf(x - ) - f(x - ) (*) iar aproximaţia iiţială x 0 G este suficiet de apropiată de soluţia sistemului. Observaţii. ) Presupuem că f este de clasă C şi sistemul f(x) = 0 admite o soluţie x* G cu proprietatea că Jf(x*) este matrice iversabilă (sau echivalet det(jf(x*)) 0). Atuci există o veciătate deschisă V G a lui x* astfel îcât petru orice x V să avem Jf(x) este iversabilă. Cosiderăm fucţia 7
128 Mădălia Roxaa Bueci Avem deci x* puct fix petru g. Cum g: V R m, defiită pri g(x) = x Jf(x) - f(x). g(x*) = x* - Jf(x*) - Jg (x*) = 0 <, f(x*) = x*, aplicâd propoziţia precedetă rezultă că există r > 0 astfel îcât astfel dacă otăm S = B ( x*,r) = {x R m, x-x* r} avem S V şi g S : S S este cotracţie. Ca urmare şirul defiit pri x = g(x - ), coverge la x* petru orice terme iiţial x 0 S. Di defiiţia lui g rezultă că x = x - Jf(x - ) - f(x - ),, adică şirul dat de relaţia (*) (corespuzător metodei lui Newto petru f(x) = 0 cu termeul iiţial x 0 S). sau echivalet ) Amplificâd relaţia (*) cu Jf(x - ) rezultă j= Jf(x - )(x - x - ) = f(x - ) (**) ( x ) ( x j x j ) fi ( = x ) m fi, i =,,, m x j Dacă se foloseşte relaţia (*) petru determiarea lui x este ecesar să se calculeze iversa matricei Jf(x - ). Dacă se foloseşte relaţia (**), este ecesar să se rezolve u sistem liiar cu m ecuaţii, şi ecuoscutele k k k x = x x, k =,, m. Rezolvarea acestui sistem ecesită u umăr mai mic de operaţii decât iversarea matricei Jf(x - ). Folosim relaţia (**) se îlocuieşte rezolvarea sistemului eliiar pri rezolvarea succesivă a uor sisteme liiare. 3) Ua di dificultăţile metodei este ecesitatea determiării derivatelor f i parţiale ( x) x j, compoetele matricei Jf(x) (dacă se utilizează u mediu de programare simbolică cum este MAPLE aceasta u e o dificultate majoră). O 8
129 Metode Numerice posibilitate de elimiare a acestei dificultăţi este aproximarea derivatelor parţiale pri difereţe fiite f i x j j ( x) ( f ( x + h e ) f ( x) ) = ( x) ude h ij sut parametri specifici discretizării cosiderate, iar h ij i e j =(0,..,0,,0 0) t sut vectorii bazei caoice. Î acest fel Jf(x) se îlocuieşte pri J(x) = ( ij (x)) i,j m Metoda obţiută î acest caz se umeşte metoda iterativă discretă a lui Newto: x = x - J(x - ) - f(x - ),. Metoda Newto este o metodă frecvet folosită deoarece este foarte rapid covergetă (rata covergeţei este pătratică). Dar ca şi î cazul metodei tagetei covergeţa metodei depide de alegerea aproximaţiei iiţiale. Aproximaţia iiţială trebuie luată cât mai aproape de soluţia problemei, evetual utilizâd o altă metodă de găsire a soluţiei. Î următoarele teoreme se presupue că s-a fixat o ormă pe R m, otată ij, iar pe spaţiile de operatori liiari L(R m, R m ), L(R m, L(R m, R m )) se cosideră ormele operatoriale iduse. Petru x R m şi r > 0, se otează B(x,r) mulţimea: { y R m, y x < r } şi cu B( x, r ) îchiderea acestei mulţimi, adică { y R m, y x r } Teoremă 5.4. (Metoda Newto). Fie G R m o mulţime deschisă, f : G R m o fucţie de clasă C, cu proprietatea că există M > 0 astfel ca d f ( x ) M petru orice x G. Presupuem că ecuaţia f(x) = 0 admite o soluţie x* astfel îcât Jf(x*) să fie iversabil. Atuci petru orice q (0, ) există r, µ > 0 astfel îcât Jf(x) este iversabil petru orice x B(x*,r), şirul (x ), defiit pri x = x - Jf(x - ) - f(x - ), i ij 9
130 Mădălia Roxaa Bueci rămâe î B(x*,r) oricare ar fi x 0 B(x*,r) şi coverge la x*. Î plus, au loc următoarele relaţii µ x x * q M ( ) M x x * f x x x µ µ. Parametrii procedurii mewto (de mai jos) sut fucţia f (se presupue că se rezolvă sistemul f(x) = 0) x0 = termeul iiţial di şirul defiit de (**) epsilo = precizia Nmax = umărul maxim de termei di şir ce vor fi calculaţi Se calculează termei, cu verificâd ( x x < epsilo) sau ( Nmax). Comada >subs(expr,expr); substituie subexpresia expr î expresia expr. Comada >jacobia(f(x,y,...), [x, y,...]); calculează jacobiaul lui f. Este o comadă ce apaţie pachetului lialg. Comada >orm(a, t); calculează orma t, ude t =,, ifiity a vectorului (sau matricei) a. Este de asemeea o comada ce aparţie pachetului lialg. Procedură MAPLE > mewto := proc(f, x0, epsilo, Nmax) > local m,x, x, dx, b, fx, fx,, i, j, ex, r; > m:=vectdim(x0);x := vector(m);x:=vector(m); > for i to m do x[i] := x0[i] od; > dx := vector(m); > b := vector(m); > fx := jacobia(f(seq(x[i],i=..m)), [seq(x[i],i=..m)]); > fx := matrix(m, m); > ex := seq(x[i] = x[i], i =.. m); > for i to m do 30
131 Metode Numerice > for j to m do fx[i, j] := evalf(subs(ex, fx[i, j])) od > od; > b := map(-evalf,f(seq(x[i],i=..m))); > dx := lisolve(fx, b, 'r'); > if r <> m the prit(`metoda u se aplica`); RETURN(NULL) fi; > for i to m do x[i] := x[i] + dx[i] od; > := ; > prit(x); > while epsilo <= orm(dx, ifiity)^ ad < Nmax do > for i to m do x[i] := x[i] od; > ex := seq(x[i] = x[i], i =.. m); > for i to m do > for j to m do fx[i, j] := evalf(subs(ex, fx[i, j])) > od > od; > b := map(-evalf, f(seq(x[i],i=..m))); > dx := lisolve(fx, b, 'r'); > if r <> m the prit(`metoda u se aplica`); RETURN fi; > for i to m do x[i] := x[i] + dx[i] od; > := + ; > prit(x) > od; > prit(`numar de pasi`, ); > b := vector(map(evalf, f(seq(x[i],i=..m)))); > prit(`valoarea fuctiei`, b); > RETURN(evalm(x)) > ed; Exemple de utilizare a procedurii mewto > with(lialg): > f:=(x,y)->[x^-y,x^3-5*y]; f := ( x, y ) [ x y, x 3 5 y ] > mewto(f,vector([0,0.]),0^(-5),9); [ , ] [ , ] [ , ] [ , ] 3
132 Mădălia Roxaa Bueci [ , ] [ , ] Numar de pasi, 6 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=0,y=0.}); > f:=(x,y)->[x^+y^-,x^3-y]; { x = , y = } f := ( x, y ) [ x + y, x 3 y ] > mewto(f,vector([0.9,0.5]),0^(-5),9); [ , ] [ , ] [ , ] Numar de pasi, 3 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=0.9,y=0.5}); { x = , y = } > mewto(f,vector([,]),0^(-5),9); [ , ] [ , ] [ , ] Numar de pasi, 3 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=,y=}); { x = , y = } > mewto(f,vector([-,]),0^(-5),0); [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] 3
133 Metode Numerice [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] Numar de pasi, 7 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=-,y=}); { x = , y = } > f:=(x,y,z)->[x+x^-*y*z-0.,y-y^+3*x*z+0., z+z^+*x*y-0.3]; f := ( x, y, z ) [ x + x y z 0., y y + 3 x z + 0., z + z + x y 0.3 ] > mewto(f,vector([0,0,0]),0^(-5),0); [ 0., -0., 0.3 ] [ , , ] [ , , ] [ , , ] Numar de pasi, 4 Valoarea fuctiei, [ , , ] [ , , ] > fsolve({f(x,y,z)[],f(x,y,z)[], f(x,y,z)[3]},{x=0,y=0,z=0}); { x = , y = , z = } Pritre dezavatajele metodei Newto prezetate mai îaite se află ecesitatea calculării la fiecare pas a iversei uei matrice, Jf(x ), sau evetual a rezolvării uui sistem de ecuaţii liiare (aşa cum remarcam mai îaite). U alt dezavataj este localizarea teoretică a procesului iterativ îtr-o veciătate a soluţiei 33
134 Mădălia Roxaa Bueci căutate. Metoda Newto simplificată îlătură primul icoveiet. Această variată a metodei costă î aproximarea soluţiei cu x, ude x 0, c G, şi metode. x = x - Jf(c) - f(x - ), (***) Următoarea teoremă stabileşte codiţii suficiete de covergeţă a acestei Teoremă 5.5 (Metoda Newto simplificată). Fie G R m o mulţime deschisă, f : G R m o fucţie de clasă C, cu proprietatea că există M > 0 astfel ca ( ) d f x M petru orice x G. Presupuem că ecuaţia f(x) = 0 admite o soluţie x* astfel îcât Jf(x*) să fie iversabil. Atuci petru orice q (0, ) există r, µ, L > 0 astfel îcât Jf(x) este iversabil petru orice c B(x*,r), şirul (x ), defiit pri x = x - Jf(c) - f(x - ), rămâe î B(x*,r) oricare ar fi x 0 B(x*,r) şi coverge la x*. Î plus, au loc următoarele relaţii 0 x x * q x x * ( ) L x x * f x x x µ µ +. Parametrii procedurii mewtosimplif (de mai jos) sut fucţia f (se presupue că se rezolvă sistemul f(x) = 0) x0 = termeul iiţial di şirul defiit de (***) c = puctul î care se evaluează iversa matricei jacobiee epsilo = precizia Nmax = umărul maxim de termei di şir ce vor fi calculaţi Se calculează termei, cu verificâd ( x x < epsilo) sau ( Nmax). Procedură MAPLE > mewtosimplif := proc(f, x0,c,epsilo, Nmax) > local m,x, x, dx, b, fx, fx,, i, j, ex, r; 34
135 Metode Numerice > m:=vectdim(x0);x := vector(m);x:=vector(m); > for i to m do x[i] := x0[i] od; > dx := vector(m); > b := vector(m); > fx := jacobia(f(seq(x[i],i=..m)), [seq(x[i],i=..m)]); > fx := matrix(m, m); > ex := seq(x[i] = c[i], i =.. m); > for i to m do > for j to m do fx[i, j] := evalf(subs(ex, fx[i, j])) od > od; > if det(fx)=0 the prit(`metoda u se aplica`); RETURN(NULL) fi; > fx:=iverse(fx); b := map(evalf,f(seq(x[i],i=..m))); > dx := evalm(fx&*b); > for i to m do x[i] := x[i] - dx[i] od; > := ; > prit(x); > while epsilo <= orm(dx, ifiity)^ ad < Nmax do > for i to m do x[i] := x[i] od; > b := map(evalf, f(seq(x[i],i=..m))); > dx := evalm(fx&*b); > for i to m do x[i] := x[i] - dx[i] od; > := + ; > prit(x) > od; > prit(`numar de pasi`, ); > ex := seq(x[i] = x[i], i =.. m); > b := vector(map(evalf, f(seq(x[i],i=..m)))); > prit(`valoarea fuctiei`, b); > RETURN(evalm(x)) > ed; Exemple de utilizare a procedurii mewtosimplif > with(lialg): > f:=(x,y)->[x^-y,x^3-5*y]; f := ( x, y ) [ x y, x 3 5 y ] > mewtosimplif(f,vector([6,0.]),vector([6,0.]),0^(-5),0); [ , ] 35
136 Mădălia Roxaa Bueci [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] Numar de pasi, 0 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=0,y=0.}); > f:=(x,y)->[x^+y^-,x^3-y]; { x = , y = } f := ( x, y ) [ x + y, x 3 y ] > mewtosimplif(f,vector([0.9,0.5]),vector([0.9,0.5]),0^(-5),9); [ , ] [ , ] [ , ] Numar de pasi, 3 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=0.9,y=0.5}); { x = , y = } > mewtosimplif(f,vector([,]),vector([,]),0^(-5),9); [ , ] [ , ] [ , ] [ , ] [ , ] Numar de pasi, 5 Valoarea fuctiei, [ , ] 36
137 Metode Numerice [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=,y=}); { x = , y = } > mewtosimplif(f,vector([-,]),vector([-,]),0^(-5),0); [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] [ , ] Numar de pasi, 9 Valoarea fuctiei, [ , ] [ , ] > fsolve({f(x,y)[],f(x,y)[]},{x=-,y=}); { y = , x = } > f:=(x,y,z)->[x+x^-*y*z-0.,y-y^+3*x*z+0., z+z^+*x*y-0.3]; f := ( x, y, z ) [ x + x y z 0., y y + 3 x z + 0., z + z + x y 0.3 ] > mewtosimplif(f,vector([0,0,0]),vector([0,0,0]),0^(-5),0); [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] [ , , ] 37
138 Mădălia Roxaa Bueci [ , , ] [ , , ] Numar de pasi, 4 Valoarea fuctiei, [ , , ] [ , , ] > fsolve({f(x,y,z)[],f(x,y,z)[], f(x,y,z)[3]},{x=0,y=0,z=0}); { z = , x = , y = } Metoda Newto Katorovici u localizează procesul iterativ îtr-o veciătate a soluţiei problemei. Metoda Newto Katorovici costă î aproximarea rădăciii ecuaţiei cosiderate cu x, ude x = x - Jf(x - ) - f(x - ),, (****) iar aproximaţia iiţială x 0 G satisface codiţiile di teorema următoare. Teoremă 5.6. (Metoda Newto-Katorovici). Fie G R m o mulţime deschisă, f : G R m o fucţie de clasă C, cu proprietatea că există M > 0 astfel ca ( ) d f x M petru orice x G. Presupuem că există x 0 G şi există a, b >0 astfel îcât: Jf(x 0 ) este iversabilă şi Jf(x 0 ) - a, Jf(x 0 ) - f(x 0 ) b, abm < defiit pri ( x, r) B 0 G, ude r = ( abm) am. Atuci f(x) = 0 are o uică soluţie x* î ( x, r) x = x - Jf(x - ) - f(x - ),, B 0, şirul (x ), este corect rămâe î B(x 0, r) şi coverge la x*. Î plus, are loc următoarea relaţie b x x *,. 38
139 Metode Numerice VI. Aproximarea fucţiilor Fie f : [a, b] R o fucţie. Se pue problema determiării uei fucţii F care să aproximeze fucţia f. O astfel de aproximaţie este ecesară î următoarele situaţii:. Câd u se cuoaşte expresia aalitică a lui f, ci doar valorile sale îtr-u umăr fiit de pucte x 0, x,, x di itervalul [a, b].. Câd expresia aalitică a lui f este prea complicată şi calculele efectuate cu ajutorul acesteia ar fi prea dificile. F trebuie să fie o fucţie simplă, uşor de evaluat, de difereţiat şi de itegrat. VI.. Polioame de iterpolare Î cele ce urmează aproximarea fucţiei f : [a, b] R se face cu u poliom. VI... Defiiţie. Eroarea de iterpolare. Defiiţie. Fie x 0, x,, x + pucte disticte două câte două di itervalul [a, b] (umite oduri), şi fie y i = f(x i ) petru orice i = 0,,. Se umeşte poliom de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0 =f(x 0 ), y = f(x ),, y =f(x ) u poliom P care îdeplieşte următoarele codiţii grad(p ) P (x i ) = y i, i = 0,,,. Poliomul determiat de codiţiile aterioare există şi este uic. Îtr-adevăr, deoarece grad(p ), există a, a -,...a 0 R astfel îcât P (X) = a X + a - X a X + a 0 Relaţiile P (x i ) = y i, i = 0,,, coduc la sistemul: 39
140 Mădălia Roxaa Bueci a 0 + a x 0 + a x a x 0 = y 0 a 0 + a x + a x + + a x = y (*) a 0 + a x + a x + + a x = y Determiatul acestui sistem este x 0 x 0 x 0 = x x x = ( x i x j ) 0 j< i x x x (fiid u determiat Vadermode). Deci 0, şi î coseciţă sistemul (*) este compatibil determiat, adică poliomul de iterpolare P este uic determiat. Coeficieţii poliomului de iterpolare pot fi determiaţi rezolvâd sistemul (*), dar dacă este mare, atuci volumul de calcul este mare. De aceea se utilizează diferite forme comode ale polioamelor care coduc la polioame de iterpolare Lagrage, Newto, etc. Teorema următoare stabileşte eroarea maximă cu care poliomul P aproximează fucţia f: Teoremă 6.. (eroarea de iterpolare). Fie f : [a, b] R o fucţie de clasă C +. Fie x 0, x,, x + pucte disticte două câte două di itervalul [a, b], şi y i = f(x i ) petru orice i=0,,. Fie P poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0 =f(x 0 ), y = f(x ),, y =f(x ). Atuci oricare ar fi x [a,b], există ζ x (a,b) astfel îcât f(x) P (x) = (+ ) f ( ζx )! ( + ) (x x 0 ) (x x ) (x x ). Î coseciţă, oricare ar fi x [a, b], avem: 40
141 Metode Numerice ( + ) ( t) sup f t f(x) P (x) [ a,b ] +! ( ) (x x 0 ) (x x ) (x x ). Demostraţie. Fie x [a, b]. Dacă x { x 0, x,, x }, atuci şi ca urmare f( x ) = P ( x ) ( x x 0 ) ( x x ) ( x x ) = 0, (+ ) f ( ζ)! f( x ) - P ( x ) = 0 = ( + ) ( x x 0 ) ( x x ) ( x x ) petru orice ζ (a,b). Presupuem că x { x 0, x,, x } şi cosiderăm fucţia g:[a, b] R, defiită pri g(x) = f(x) P (x) - c (x x 0 ) (x x ) (x x ), ude costata c va fi determiata astfel îcât g( x ) = 0 sau echivalet 0 = g( x ) = f( x ) P ( x ) - c( x x 0 ) ( x x ) ( x x ) c = f (x) P (x). (x x )(x x )...(x x ) 0 Deci g( x ) = 0 şi g(x i ) = 0 petru orice i =0,,...,. Aşadar g se aulează î + pucte disticte. Deoarece g este o fucţie Rolle, rezultă că derivata g se aulează î + pucte disticte di itervalul (a,b). Repetâd raţioametul cu g, rezultă că g se aulează î pucte disticte di (a, b). Raţioâd similar g (3) se aulează î - pucte disticte di (a, b), g (4) se aulează î - pucte disticte di (a, b), şi aşa mai departe. Se obţie că există ζ (a, b) astfel îcât x g (+) ( ζ ) = 0. x Pe de altă parte deoarece gradul lui P este cel mult, rezultă că P (+ ) (x) = 0 petru orice x [a, b] şi deoarece x (x x 0 ) (x x ) (x x ) este o fucţie poliomială de grad + cu coeficietul termeului de grad maxim, rezultă că a + derivată a sa este (+)!. Î coseciţă, petru orice x [a, b], avem 4
142 Mădălia Roxaa Bueci g (+) (x) = f (+) (x) - P (+ ) Î particular, petru x = ζ x se obţie (x) - c(+)! = f (+) (x) - c(+)!. de ude 0 = g (+) ( ζ ) = f (+) ( x ζ ) - c(+)!, x Cum pe de altă parte avem c = (+ ) f ( ζ ) x.! ( + ) Rezultă că c = f (x) P (x). (x x )(x x )...(x x ) 0 sau echivalet, f (x) P (x) (x x )(x x )...(x x ) 0 = (+ ) f ( ζ ) x,! ( + ) Î plus, f( x ) P ( x ) = (+ ) f ( ζ ) ( + ) x! (x x 0 ) (x x ) (x x ). f( x ) P ( x ) ( + ) ( t) sup f [ a,b] +! t ( ) (x x 0 ) (x x ) (x x ). VI... Eroarea de iterpolare î cazul odurilor echidistate Fie f : [a, b] R o fucţie şi fie x 0, x,, x + oduri echidistate di itervalul [a, b]: x i = a + ih, i = 0,,..., h = b a Fie P poliomul de asociat odurilor x 0, x,, x şi valorilor y 0 =f(x 0 ), y = f(x ),, y =f(x ). Atuci oricare ar fi x [a, b], avem: 4
143 Metode Numerice ( + ) ( t) sup f t f(x) P (x) [ a,b ] +! ( ) (x x 0 ) (x x ) (x x ). Petru orice x [a, b] există i astfel îcât x [x i, x i+ ] şi ca urmare (x x i ) (x x i+ ) h h = h 4. De asemeea se poate arăta că (x x j ) (j i + ) h petru i < j (x x j ) (i j ) h petru j+ < i şi ţiâd seama că (j+)!(-j)!! se obţie (x x 0 ) (x x ) (x x ) şi deci eroarea de iterpolare satisface: + h 4!, f(x) P (x) + h sup f 4( + ) t [ a,b] ( + ) ( t). VI..3. Eroarea de iterpolare î cazul odurilor Cebîşev Petru N dat, se umesc oduri Cebîşev (rădăcii ale poliomului Cebîşev de grad +) umerele reale: i + x i = cos π +, 0 i. Polioamele Cebîşev de prima speţă pot fi defiite recursiv pri : T 0 (x) =, T (x) = x, T + (x) = xt + (x) T (x), 0, sau pot fi defiite pri T (x) = cos( arccos(x)). Nodurile Cebîşev sut proiecţiile pe axa OX a uor pucte egal distaţate situate pe u semicerc: 43
144 Mădălia Roxaa Bueci Nodurile Cebîşev au proprietatea că (x x 0 ) (x x ) (x x ) petru orice x [-, ]. Se poate arăta că petru oricare alte oduri c i, i=0,...,. sup (x c 0 ) (x c ) (x c ) x [,]. Nodurile Cebîşev pot fi scalate şi traslatate petru a putea fi folosite pe u iterval oarecare [a, b]: x i = b a i + cos π + + b + a, 0 i. Astfel î cazul odurilor Cebîşev eroarea de iterpolare este f(x) P (x) + (b a) sup f + ( + )! t [ a,b] ( + ) ( t). VI... Poliomul Lagrage de iterpolare Fie f : [a, b] R o fucţie, fie x 0, x,, x + pucte disticte di itervalul [a, b], şi y i = f(x i ) petru orice i = 0,,. Se umesc polioame Lagrage cele + polioame l i, i =0,,... cu proprietăţile grad (l i ) = l i (x j ) = δ ij =, dacă i = j 0, dacă i j Petru orice i = 0,,..., deoarece l i are gradul şi admite drept rădăcii pe x 0, x,..., x i-, x i+,..., x, rezultă că l i (X) = A i (X x 0 ) (X x ) (X x i- ) (X x i+ )... (X x ). 44
145 Metode Numerice Cum l i (x i ) =, rezultă şi ca urmare l i (x) = A i = ( x x )( x x )... ( x x )( x x )... ( x x ) i 0 i i i i i+ i ( x x0 )( x x )...( x xi )( x x i+ )...( x x ) ( x x )( x x )...( x x )( x x )...( x x ) i 0 i i i i i+ i Forma Lagrage a poliomului de iterpolare este: L (x) = y 0 l 0 (x) + y l (x) + + y l (x) Se observă uşor că L (x i ) = y 0 l 0 (x i ) + y l (x i ) + + y l (x i ) = y i l i (x i ) = y i petru orice i = 0,,, şi că grad(l ). Aşadar L este poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0, y,, y. Î coseciţă, poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0, y,, y poate fi scris sub forma L (x) = umită formă Lagrage. ( x x0 )( x x )...( x xi )( x x i+ )...( x x ) ( )( ) ( )( ) ( ) yi i= 0 x i x 0 x i x... x i x i x i x i+... x i x, Algoritm petru determiarea poliomului Lagrage Date de itrare: Date de ieşire: x listă ce coţie cele + pucte disticte di itervalul [a, b] x 0 x x y lista ce coţie valorile fucţiei î puctele x 0, x,..., x y 0 y y y i = f(x i ), i = 0,,, a puctul î care se evaluaeză poliomul. v - valoarea poliomului î x v : =0; 45
146 Mădălia Roxaa Bueci petru i = 0,, executa t : =y i ; petru j = 0,i -, executa t: = t * (a x j )/ (x i x j ) petru j = i +,, executa t: = t * (a x j )/ (x i x j ) v : = v + t; Procedură MAPLE petru calculul valorii poliomului Lagrage > PLagrage:=proc(x,y,a) > local,v,t,i,j; > :=ops(x);v:=0; > for i from 0 to - do > t:=y[i+]; > for j from 0 to i- do > t:=t*(a-x[j+])/(x[i+]-x[j+]) od; > for j from i+ to - do > t:=t*(a-x[j+])/(x[i+]-x[j+]) od; > v:=v+t; > od; > RETURN(v) > ed; Exemple > PLagrage([,-,3],[,-5,-],); > PLagrage([,-,3],[,-5,-],-); > expad(plagrage([,-,3],[,-5,-],x)); X X 4 46
147 Metode Numerice Cosiderăm fucţia f : R R defiită pri f (x) = xcos(x) şi odurile x 0 =0, x = π, x = 4 π şi x3 = π. Vom aplica procedura PLagrage petru a determia 3 3 poliomul de iterpolare P 3 asociat odurilor x 0 =0, x = π, x = 4 π şi x3 = π şi 3 3 valorilor y 0 = f (x 0 ), y = f (x ), y = f (x ), y 3 = f (x 3 ). De asemeea vom reprezeta grafic fucţia f şi poliomul asociat pe itervalul [0, π], şi apoi pe itervalul [-π,3π]. > f:=x->x*cos(x); > x:=[seq(*pi/3*i,i=0..3)]; > y:=[seq(f(*pi/3*i),i=0..3)]; > expad(plagrage(x,y,x)); > with(plots): f := x x cos( x ) x := 0, π 4 π,, π 3 3 y := 0, π,, 3 π π 3 7 X 3 7 X + X 6 π 8 π > plot([f(a),plagrage(x,y,a)],a=0..*pi); > plot([f(a),plagrage(x,y,a)],a=-pi..3*pi); 47
148 Mădălia Roxaa Bueci Cosiderăm fucţia f : R R defiită pri f (x) = cos(x) + si(x). Se poate observa uşor că f (k) (x) petru orice x R şi orice k N. Vom cosidera itervalul [0,π] şi odurile echidistate corespuzătoare lui = 3. Eroarea de iterpolare este domiată de > f:=x->si(x)+cos(x); > x:=[seq(*pi/3*i,i=0..3)]; 4 h 6, ude h = π 3 > y:=[seq(f(*pi/3*i),i=0..3)]; > expad(plagrage(x,y,x)); f := x si( x ) + cos( x ) x := 0, π 4 π,, π y :=,,, 3 7 X 7 X 7 X X 3 7 X π 8 π 6 π 3 6 π 8 π > plot({f(a),plagrage(x,y,a)},a=0..*pi); 48
149 Metode Numerice Cosiderăm fucţia f 3 : R R defiită pri f 3 (x) = + x. Vom reprezeta grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor echidistate, respectiv odurilor Cebîşev petru = 3 pe itervalul [-, ]: > f3:=x->/(+x^); > x4:=[seq(-+*i/3,i=0..3)]; f3 := x + x x4 := -, -,, 3 3 > y4:=[seq(evalf(f3(-+*i/3)),i=0..3)]; y4 := [ , , , ] > plot([f3(a),plagrage(x4,y4,a)],a=-..); > x5:=[seq(evalf(cos((*i+)/(*3+)*pi)),i=0..3)]; 49
150 Mădălia Roxaa Bueci x5 := [ , , , ] > y5:=[seq(evalf(f3(cos((*i+)/(*3+)*pi))),i=0..3)]; y5 := [ , , , ] > plot([f3(a),plagrage(x5,y5,a)],a=-..); > plot([f3(a),plagrage(x4,y4,a),plagrage(x5,y5,a)],a=-..); Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor echidistate, petru = 3, 6, 9 pe itervalul [-5, 5]: > x_3:=[seq([seq(-5+0*i/(3*j),i=0..3*j)],j=..3)]; x_3 := -5, -5 5,,,, , -0-5,,,,, , ,,,,,,,, > y_3:=[seq([seq(evalf(f3(-5+0*i/(3*j))),i=0..3*j)],j=..3)]; 50
151 Metode Numerice y_3 := [ [ , , , ], [ , , ,., , , ], [ , , , , , , , , , ] ] > plot([f3(a),seq(plagrage(x_3[j],y_3[j],a), j=..3)],a=-5..5); Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor Cebîşev petru = 3, 6, 9 pe itervalul [-5, 5]: > x_c3:= [seq([seq(evalf(5*cos((*i+)/(6*j+)*pi)),i=0..3*j)],j=..3)]; x_c3 := [ [ ,.93476, , ], [ , , , 0., , , ], [ , , , , , , , , , ] ] > y_c3:= [seq([seq(evalf(f3(5*cos((*i+)/(6*j+)*pi))),i=0..3*j)],j=..3)]; y_c3 := [ [ , , , ], [ , , ,., , , ], [ , , , , , , , , , ] ] > plot([f3(a),seq(plagrage(x_c3[j],y_c3[j],a), j=..3)],a=-5..5); 5
152 Mădălia Roxaa Bueci Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor echidistate, respectiv odurilor Cebîşev petru = 9 pe itervalul [-5, 5]: > plot([f3(a),plagrage(x_3[3],y_3[3],a), PLagrage(x_c3[3],y_c3[3],a)],a=-5..5); Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor echidistate, petru = 5, 0, 5 pe itervalul [-5, 5]: > x_5:=[seq([seq(-5+0*i/(5*j),i=0..5*j)],j=..3)]; 5
153 Metode Numerice x_5 := [ -5, -3, -,, 3, 5 ], [ -5, -4, -3, -, -, 0,,, 3, 4, 5 ], -5, -3 -,,,,,,,,,,,,,, > y_5:=[seq([seq(evalf(f3(-5+0*i/(5*j))),i=0..5*j)],j=..3)]; y_5 := [ [ , , , , , ], [ , , , , ,., , , , , ], [ , , , , , , , , , , , , , , , ] ] > plot([f3(a),seq(plagrage(x_5[j],y_5[j],a), j=..3)],a=-5..5); Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor Cebîşev petru = 5, 0, 5 pe itervalul [-5, 5]: > x_c5:= [seq([seq(evalf(5*cos((*i+)/(0*j+)*pi)),i=0..5*j)], j=..3)]; 53
154 Mădălia Roxaa Bueci x_c5 := [ [ , , , , , ], [ , , , , , 0., , , , , ], [ , , , , , , , , , , , , , , , ] ] >y_c5:= [seq([seq(evalf(f3(5*cos((*i+)/(0*j+)*pi))),i=0..5*j)], j=..3)]; y_c5 := [ [ , , , , , ], [ , , , , ,., , , , , ], [ , , , , , , , , , , , , , , , ] ] > plot([f3(a),seq(plagrage(x_c5[j],y_c5[j],a), j=..3)],a=-5..5); Reprezetăm grafic fucţia şi polioamele de iterpolare corespuzătoare odurilor echidistate, respectiv odurilor Cebîşev petru = 5 pe itervalul [-5, 5]: >plot([f3(a),plagrage(x_5[3],y_5[3],a), PLagrage(x_c5[3],y_c5[3], a)], a=-5..5); 54
155 Metode Numerice ( ) ( ) Fie f : [a, b] R şi u şir de diviziui = ( x, x,, 0 ( x ) ) ale itervalului [a, b], 0. Petru fiecare se costruieşte poliomul de iterpolare P ( ) ( ) asociat odurilor x 0, x,, ( ) ( ) ( ) x şi valorilor f ( x ) 0, f ( x ),, ( f ) ( x ). Se pue problema covergeţei puctuale sau uiforme a lui P la f. Î geeral, P u coverge la f, îsă dacă f este o fucţie îtreagă reală şirul de polioame P coverge uiform la f. Î cele ce urmează vom cosidera trei fucţii f, f 3 : R R, defiite mai sus precum şi f 4 : R R respectiv f 4 (x) = x. > f4:=x->abs(x); f4 := abs Vom vizualiza comportarea polioamelor de iterpolare (sub forma Lagrage) L 0, L,...,L asociate uor oduri ( ) ( ) x, x,, ( f ) ( x ) (cu exemplificări petru f {f, f, f 3 }). 0 ( x ) ( ) ( ) şi valorilor f x, f x ( ) 0 ( ),, 55
156 Mădălia Roxaa Bueci Procedura grafic_polioame de mai jos reprezită grafic + polioamele de iterpolare L 0, L,..., L. Parametrul tip al procedurii determiă ce fel de oduri se vor folosi ( + oduri echidistate dacă tip = şi + oduri Cebîşev altfel). Ceilalţi parametri ai procedurii sut fucţia f (care se aproximează pri polioame de iterpolare), capetele itervalului [a, b] şi care idică umărul de oduri (+). > grafic_polioame:=proc(f,a,b,tip,) > local x,y,titlu,legeda; > if tip= the x:=[seq(oduri_echidistate(a,b,j),j=0..)] > else x:=[seq(oduri_cebisev(a,b,j),j=0..)] fi; > y:=[seq(map(f,x[j]),j=..+)]; > titlu:=cat(f,`:=x->`,covert(f(x),strig),`; x0, x,..., x`, > covert(,strig),` oduri `); > if tip= the titlu:=cat(titlu, `echidistate `) > else titlu:=cat(titlu, `Cebisev `) fi; > titlu:=cat(titlu, `i itervalul [`, covert(a,strig), `, `,covert(b,strig),`]`);titlu:=cat(titlu,`\y0=`,f,`(x0), y=`, f,`(x),..., y`,covert(,strig),`=`,f,`(x`,covert(,strig), `)`); > titlu:=cat(titlu, `\L i = poliomul de iterpolare asociat odurilor x0, x,...,x `,covert(i,strig),` si valorilor y0, y,...,y`,covert(i,strig), `, i =0..`,covert(,strig)); > legeda:=f,seq(cat(`l `,covert(j,strig)),j=0..); > plot([f(t),seq(poliom_lagrage(x[j],y[j],t),j=..+)], > t=a..b,labels=[x,y],color=[color(rgb,,0,0),seq(color(rgb,(- > floor(log[5](j))/(floor(log[5]())+))*irem(irem(j,7)+,),(- > floor(log[5](j))/(floor(log[5]())+))*irem(iquo(irem(j,7)+,), ),(-floor(log[5](j))/(floor(log[5]())+))*irem(iquo(irem(j,7)+, 4),)),j=..+)],thickess=[,seq(,j=0..)],leged=[legeda], title=titlu,xtickmarks=map(evalf,x[]),ytickmarks=map(evalf,y[]) ); > ed; Aplicăm procedura petru fucţia f pe itervalele [0, π], [-π, 3π], fucţia f 3 pe itervalul [-3, 3] şi fucţia f 4 pe itervalul [-, ]. Î toate cazurile = 0 şi se cosideră două variate: oduri echidistate şi oduri Cebîşev. > grafic_polioame(f,0,*pi,,0); 56
157 Metode Numerice > grafic_polioame(f,0,*pi,,0); > grafic_polioame(f,-pi,3*pi,,0); 57
158 Mădălia Roxaa Bueci > grafic_polioame(f,-pi,3*pi,,0); > grafic_polioame(f3,-3,3,,0); 58
159 Metode Numerice > grafic_polioame(f3,-3,3,,0); > grafic_polioame(f4,-,,,0); 59
160 Mădălia Roxaa Bueci > grafic_polioame(f4,-,,,0); 60
161 Metode Numerice VI..5. Poliomul Newto de iterpolare de speţa I (ascedet) Fie f : [a, b] R o fucţie, fie x 0, x,, x + pucte disticte di itervalul [a, b], şi y i = f(x i ) petru orice i = 0,,. Puctele x 0, x,, x se presupu echidistate, adică x i = x 0 + ih, i = 0,,, h 0 fiid pasul reţelei. Se costruiesc iterativ polioamele P i, i= 0,,..., astfel îcât petru fiecare i, P i să fie poliomul de iterpolare asociat odurilor x 0, x,, x i şi valorilor y 0, y,, y i. Costrucţia se face după cum urmează P 0 (x) = y 0 P i+ (x) = P i (x) + c i+ (x-x 0 )(x-x )...(x-x i ), i =0,,..., -, ude c i+ se determiă di codiţia P i+ (x i+ ) = y i+. Ca urmare poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0,y,, y poate fi scris sub forma P (x) = c 0 + c (x-x 0 ) + c (x-x 0 )(x-x ) c (x-x 0 )(x-x )...(x-x - ) Petru exprimarea coeficieţilor c 0, c,, c este ecesară cuoaşterea oţiuilor de putere geeralizată şi difereţă fiită. Fie f : [a, b] R o fucţie, şi fie reţeaua cu odurile echidistate x 0, x,, x, avâd pasul h > 0. Produsul x [] = x(x-h) (x-(-)h) se umeşte putere geeralizată a lui x. Dacă h ar fi 0, atuci puterea geeralizată ar coicide cu puterea obişuită. Expresia f(x) = f(x+h) - f(x) se umeşte difereţă fiită (la dreapta) de ordiul îtâi. Difereţele fiite de ordi superior se defiesc cu ajutorul relaţiei: f(x) = ( - f(x)) Se verifică cu uşuriţă relaţiile (f+g) = (f) + (g) (cf) = c (f) (m+) (f) = m ( f). 6
162 Mădălia Roxaa Bueci Petru aplicaţii, calculul difereţelor fiite este comod dacă se costruieşte tabelul triughiular următor: f(x 0 ) f(x ) f(x ) f(x 3 ) f(x -3 ) f(x - ) f(x - ) f(x ) f(x 0 ) f(x ) f(x ) f(x -3 ) f(x - ) f(x - ) f(x 0 ) f(x ) f(x -3 ) f(x - ) 3 f(x 0 ) 3 f(x -3 ) f(x 0 ) Astfel f (x 0) = f (x ) f (x 0) f (x ) = f (x ) f (x ) 0 0 = f (x ) f (x ) (f (x ) f (x )) 0 = f (x ) f (x ) + f (x ) f (x ) = f (x ) f (x ) = f (x ) 3f (x ) + 3f (x ) + f (x ) 3 0 Se poate demostra uşor pri iducţie că i ( ) ( ) ( ( ) ) f x = C f x + i h i= 0 dar î aplicaţii se va folosi tabelul diagoal de mai sus. Petru determiarea uui coeficietul c i al poliomului de iterpolare P se utilizează difereţa fiită de ordiul i a lui P î x 0. Ţiâd cot de se obţie P i+ (x) = P i (x) + c i+ (x-x 0 )(x-x )...(x-x i ), i =0,,..., -, şi se poate arătă iductiv că y c i+ = i+ P i(x i+ ). i+ (i + )!h i c i+ = i+ f (x 0), i = 0,,..., -. i+ (i + )!h 6
163 Metode Numerice Aşadar 3 f (x 0) f (x 0) f (x 0) ( ) [ ] ( ) [ ] ( ) [ 3 ] P (x) = f (x ) + x x + x x + x x !h!h 3!h f (x 0) ( ) [ x x ] 0!h Expresia poliomului de iterpolare de mai sus poartă deumirea de poliom Newto de speţa I (sau ascedet ). Expresia poliomului Newto se poate pue sub o formă mai comodă petru aplicaţii, dacă se face schimbarea de variabilă x x t = 0 h şi se ţie seama că i =... i ( x x ) [ ] ( x x ) ( x x h) ( x x h) ( x x (i )h ) h h h h h ( )( ) ( ) = t t t... t i + petru orice i =,,,. Se obţie P (x) = P (x + th) f (x ) f (x ) f (x ) = f (x 0) + t + t(t ) + t(t )(t ) +!! 3! f (x 0) t(t )...(t + )! Dacă se efectuează calculele î aritmetica virgulei mobile, aproximarea fucţiei f pri poliomul Newto ascedet este avatajoasă petru valorile x di veciătatea lui x 0, eroarea fiid mică petru t î modul mic. Algoritm petru determiarea poliomului Newto ascedet Date de itrare: x0- primul puct di reţea h pasul reţelei y lista ce coţie valorile fucţiei î puctele reţelei. y 0 y y y i = f(x i ) =f(x0 + ih), i = 0,,, x puctul î care se evaluează poliomul. 63
164 Mădălia Roxaa Bueci Date de ieşire: px - valoarea poliomului î x px : =y 0 ; t : = (x-x0)/h; u: = ; petru i =,, executa petru j =0,-i, executa y j := y j+ y j ; u :=u*(t-i+)/i; px:=px+u*y 0 ; Procedură MAPLE petru calculul valorii poliomului Newto de speţa I (ascedet) > PNewto := proc(x0, h, y, x) > local t, u, yl, i, j,, px; > :=ops(y); > yl := [seq(y[i],i=..)]; > px := yl[]; > t := (x - x0)/h; > u := ; > for i from to - do > for j from 0 to --i do > yl[j + ] := yl[j + ] - yl[j+] > od; > u := u*(t i + )/i; > px := px + u*yl[] od; > RETURN(px) > ed; > f:=x->x*cos(x); > x:=[seq(*pi/3*i,i=0..3)]; f := x x cos( x ) x := 0, π 4 π,, π 3 3 > y:=[seq(f(*pi/3*i),i=0..3)]; y := 0, π,, 3 π π 3 64
165 Metode Numerice > PNewto(0,*Pi/3,y,X); X + 3 X 3 X π 4 > sort(expad(pnewto(0,*pi/3,y,x))); 3 X π > with(plots): 7 X 3 7 X + X 6 π 8 π > plot([f(a),pnewto(0,*pi/3,y,a)],a=0..*pi); > plot([f(a),pnewto(0,*pi/3,y,a)],a=-pi..3*pi); 65
166 Mădălia Roxaa Bueci VI..6. Poliomul Newto de iterpolare de speţa II (descedet) Fie f : [a, b] R o fucţie, fie x 0, x,, x + pucte disticte di itervalul [a, b], şi y i = f(x i ) petru orice i = 0,,. Puctele x 0, x,, x se presupu echidistate, adică x i = x 0 + ih, i = 0,,, h fiid pasul reţelei. Se costruiesc iterativ polioamele P i, i= 0,,..., astfel îcât petru fiecare i, P i să fie poliomul de iterpolare asociat odurilor x, x -,, x - i+ şi valorilor y, y -,, y -i+. Costrucţia se face după cum urmează P 0 (x) = y P i+ (x) = P i (x) + c i+ (x-x )(x-x - )...(x-x -i+ ), i =0,,..., -, ude c i+ se determiă di codiţia P i+ (x -i ) = y -i. Ca urmare poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0,y,, y poate fi scris sub forma P (x) = c 0 + c (x-x ) + c (x-x )(x-x - ) c (x-x )(x-x - )...(x-x ) 66
167 Metode Numerice Petru exprimarea coeficieţilor c 0, c,, c este ecesară cuoaşterea oţiuii de difereţă fiită la stâga. Expresia f(x) = f(x) - f(x-h) se umeşte difereţă fiită (la stâga) de ordiul îtâi. Difereţele fiite la stâga de ordi superior se defiesc cu ajutorul relaţiei: f(x) = ( - f(x)) Se observă că f(x) = f(x-h). Î aplicaţii, petru calculul difereţelor fiite la stâga se utilizează tabelul triughiular următor: f(x 0 ) f(x ) f(x ) f(x 3 ) f(x -3 ) f(x - ) f(x - ) f(x ) f(x ) f(x ) f(x 3 ) f(x - ) f(x - ) f(x ) f(x ) f(x 3 ) f(x - ) f(x ) 3 f(x 3 ) 3 f(x ) f(x ) Petru determiarea uui coeficiet c i al poliomului de iterpolare P se utilizează difereţa fiită de ordiul i a lui P î x. Se obţie: 3 f (x 0) f (x ) f (x ) 3 ( ) [ ] ( ) [ ] ( ) [ 3 ] P (x) = f (x ) + x x + x x + x x +!h!h 3!h f (x ) x x!h ( ) [ ] Expresia poliomului de iterpolare de mai sus poartă deumirea de poliom Newto de speţa II (sau descedet ). Expresia poliomului Newto descedet se poate pue sub o formă mai comodă petru aplicaţii, dacă se face schimbarea de variabilă x x t = h Se obţie 67
168 Mădălia Roxaa Bueci P (x) = P (x + th) 3 f (x ) f (x ) f (x ) = f (x ) + t + t(t + ) + t(t + )(t + ) +!! 3! f (x ) t(t + )...(t + )! Dacă se efectuează calculele î aritmetica virgulei mobile, aproximarea fucţiei f pri poliomul Newto descedet este avatajoasă petru valorile x di veciătatea lui x, eroarea fiid mică petru t î modul mic. Algoritm petru determiarea poliomului Newto descedet Date de itrare: x- ultimul puct di reţea h pasul reţelei y lista ce coţie valorile fucţiei î puctele reţelei. y 0 y y y i = f(x i ) =f(x0 + ih), i = 0,,, x puctul î care se evaluează poliomul. Date de ieşire: px - valoarea poliomului î x px : =y ; t : = (x-x)/h; u: = ; petru i =,, executa petru j =,i, executa y j := y j y j- ; u :=u*(t+i-)/i; px:=px+u*y ; Procedură MAPLE petru calculul valorii poliomului Newto de speţa I (ascedet) > PNewto := proc(x, h, y, x) > local t, u, yl, i, j,, px; > :=ops(y); > yl := [seq(y[i],i=..)]; > px := yl[]; > t := (x - x)/h; 68
169 Metode Numerice > u := ; > for i from to - do > for j from - by - to i do > yl[j+] := yl[j+] - yl[j] > od; > u := u*(t + i - )/i; > px := px + u*yl[] od; > RETURN(px) > ed; Exemple > f:=x->x*cos(x); > x:=[seq(*pi/3*i,i=0..3)]; f := x x cos( x ) x := 0, π 4 π,, π 3 3 > y:=[seq(f(*pi/3*i),i=0..3)]; y := 0, π,, 3 π π 3 > PNewto(*Pi,*Pi/3,y,X); 9 ( X π) 3 ( X π ) 6 π 4 X + π ( X π ) 3 ( X π ) + π 3 ( X π ) π + 4 > sort(expad(pnewto(*pi,*pi/3,y,x))); + > with(plots): 7 X 3 7 X + X 6 π 8 π > plot([f(a),pewto(*pi,*pi/3,y,a)],a=0..*pi); 69
170 Mădălia Roxaa Bueci > plot([f(a),pnewto(*pi,*pi/3,y,a)],a=-pi..3*pi); 70
171 Metode Numerice VI..7. Poliomul Newto cu difereţe divizate Fie f : [a, b] R o fucţie, fie x 0, x,, x + pucte disticte (u eapărat echidistate) di itervalul [a, b], şi y i = f(x i ) petru orice i = 0,,. Se costruiesc iterativ polioamele P i, i= 0,,..., astfel îcât petru fiecare i, P i să fie poliomul de iterpolare asociat odurilor x 0, x,, x i şi valorilor y 0, y,, y i. Costrucţia se face după cum urmează P 0 (x) = y 0 P i+ (x) = P i (x) + c i+ (x-x 0 )(x-x )...(x-x i ), i =0,,..., -, ude c i+ se determiă di codiţia P i+ (x i+ ) = y i+. Ca urmare poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0,y,, y poate fi scris sub forma P (x) = c 0 + c (x-x 0 ) + c (x-x 0 )(x-x ) c (x-x 0 )(x-x )...(x-x - ) Petru exprimarea coeficieţilor c 0, c,, c este ecesară cuoaşterea oţiuii de difereţă divizată. Expresia f (x j) f (x i) f (x i, x j) =, i j x x se umeşte difereţă divizată de ordiul îtâi. Difereţele divizate de ordi se defiesc cu ajutorul difereţelor divizate de ordiul îtâi: f (x j, x k ) f (x i, x j) f (x i, x j, x k ) = x x Cuoscâd difereţele divizate de ordiul m, difereţele divizate de ordiul m+ se defiesc pri: f (x i, x i,..., x i m ) f (x i, x i,..., x i m ) f (x i, x i, x i,..., x i m ) = x x j k i i i+ m i Î coseciţă, poliomul de iterpolare asociat odurilor x 0, x,, x şi valorilor y 0,y,, y poate fi scris sub forma P (x) = f (x ) + f (x, x )(x x ) + f (x, x, x )(x x )(x x ) f (x, x,..., x )(x x )(x x )...(x x ) 0 0 7
172 Mădălia Roxaa Bueci Petru aplicaţii, calculul difereţelor divizate este comod dacă se costruieşte tabelul triughiular următor: f(x 0 ) f(x ) f(x ) f(x 3 ) f(x - ) f(x - ) f(x ) f(x 0,x ) f(x,x ) f(x,x 3 ) f(x -,x - ) f(x -,x ) f(x 0,x,x ) f(x, x,x 3 ) f(x -,x -,x ) f(x 0,x,...,x ) Algoritm petru determiarea poliomului Newto cu difereţe divizate Date de itrare: x listă ce coţie cele + pucte disticte di itervalul [a, b] x 0 x x y lista ce coţie valorile fucţiei î puctele x 0, x,..., x y 0 y y y i = f(x i ), i = 0,,, a puctul î care se evaluaeză poliomul. Date de ieşire: v - valoarea poliomului î a v : =y 0 ; u:= ; petru i = 0,-, executa petru j = 0,-i-, executa y j := (y j+ y j )/(x j+i+ x j ); u :=u*(a-x i ); v:=v+u*y 0 ; Procedură MAPLE petru calculul valorii poliomului Lagrage > PNewtod := proc(x, y, a) > local t, u, y,i, j,, v; > :=ops(y); 7
173 Metode Numerice > y := [seq(y[i],i=..)]; > v := y[]; > u := ; > for i from 0 to - do > for j from 0 to --i do > y[j+]:=(y[j+]-y[j+])/(x[j+i+]-x[j+]) ; > od; > u := u*(a-x[i+]); v := v + u*y[]; > od; > RETURN(v) > ed; Exemple > f:=x->x*cos(x); > x:=[seq(*pi/3*i,i=0..3)]; f := x x cos( x ) x := 0, π 4 π,, π 3 3 > y:=[seq(f(*pi/3*i),i=0..3)]; > PNewtod(x,y,X); X + y := 0, π,, 3 π π 3 7 X X > sort(expad(pnewtod(x,y,x))); π 3 X 6 π 4 π 3 > with(plots): 7 X 3 7 X + X 6 π 8 π > plot([f(a),pnewtod(x,y,a)],a=0..*pi); 73
174 Mădălia Roxaa Bueci > plot([f(a),pnewtod(x,y,a)],a=-pi..3*pi); 74
175 Metode Numerice VI.. Metoda celor mai mici pătrate Fie f : [a, b] R o fucţie şi fie x 0, x,, x + pucte disticte di itervalul [a, b] petru care se cuosc valorile fucţiei y i = f(x i ) petru orice i = 0,,. Aproximarea fucţiei f pritr-u poliom de iterpolare u este idicată î următoarele situaţii: câd este u umăr foarte mare, ceea ce determiă u volum mare de calcul petru determiarea coeficieţilor de iterpolare câd valorile y i = f(x i ) u sut exacte. Î aceste situaţii se poate folosi aproximarea fucţiei pri metoda celor mai mici pătrate. VI... Caracterizarea elemetelor de cea mai buă aproximare pe subspaţii Hilbert. Defiiţie. Fie (S, d) u spaţiu metric şi X o submulţime a sa. Fie x 0 u elemet al lui S. Se umeşte elemet de cea mai buă aproximare a lui x 0 pe X u elemet p 0 X astfel îcât d(p 0, x 0 ) = if d(x, x 0 ) x X Reamitim că orice spaţiu pre-hilbert H (spaţiu vectorial real sau complex îzestrat cu u produs scalar <, >) este î particular u spaţiu metric (distaţa d este defiită pri d(x,y) = x y = x y, x y petru orice x, y H). Î acest caz dacă X o submulţime a lui H şi x 0 H, atuci u elemet p 0 X este elemet de cea mai buă aproximare petru x 0 pe X dacă p x = if x x = if x x, x x x X x X
176 Mădălia Roxaa Bueci Teoremă 6.. Fie H u spaţiu pre-hilbert (real sau complex), H 0 u subspaţiu vectorial al său şi x 0 H. Dacă există u elemet de cea mai buă aproximare a lui x 0 pe H 0, atuci acesta este uic. Demostraţie. Presupuem pri absurd că există p p elemete de cea mai buă aproximare a lui x 0 pe H 0. Deoarece H 0 este subspaţiu vectorial al lui H, rezultă că p = p + p H 0. Avem p-x 0 = p + p -x 0 = 4 p x 0 + p x 0 < < 4 p x 0 + p x p x 0 (p x 0 ) = ( p x 0 + p x 0 ) p x 0. Deci p H 0 şi p-x 0 < p x 0, cotradicţie cu faptul că p este elemet de cea mai buă aproximare a lui x 0 pe H 0. Rezultă că presupuerea este falsă, şi î coseciţă elemetul de cea mai buă aproximare este uic. Teoremă 6.3. Fie H u spaţiu pre-hilbert, H 0 u subspaţiu liiar al lui H şi x 0 H. U elemet p 0 H 0 este elemet de cea mai buă aproximare a lui x 0 pe H 0 dacă şi umai dacă p 0 -x 0 H 0 (sau echivalet, < p 0 -x 0, x> = 0 petru orice x H 0 ). Demostraţie. Presupuem că p 0 -x 0 H 0 şi demostrăm că p 0 H 0 este elemet de cea mai buă aproximare a lui x 0 pe H 0. Dacă p 0 = x 0, atuci este evidet că p 0 este elemet de cea mai buă aproximare a lui x 0 pe H 0. Presupuem că p 0 x 0. Deoarece < p 0 -x 0, x> = 0 petru orice x H 0, atuci î particular, <p 0 -x 0, p 0 > = 0 şi ca urmare < p 0 -x 0, p 0 - x> = 0 petru orice x H 0. Petru u x H 0 oarecare, avem p 0 -x 0 = < p 0 -x 0, p 0 -x 0 > = < p 0 -x 0, p 0 - x + x - x 0 > = < p 0 -x 0, p 0 - x> + < p 0 -x 0, x- x 0 > = < p 0 -x 0, x- x 0 > = < p 0 -x 0, x- x 0 > p 0 -x 0 x- x 0. Deci p 0 -x 0 p 0 -x 0 x- x 0 petru orice x H 0. Împărţid iegalitatea cu 76
177 Metode Numerice p 0 -x 0 > 0, obţiem p 0 -x 0 x- x 0 petru orice x H 0, adică p 0 X este elemet de cea mai buă aproximare a lui x 0 pe H 0. Presupuem că p 0 H 0 este elemet de cea mai buă aproximare a lui x 0 pe H 0 şi demostrăm că <p 0 -x 0, x> = 0 petru orice x H 0. Presupuem pri absurd că există y 0 H 0 astfel îcât <p 0 -x 0, y 0 > 0. Scriid <p 0 -x 0, y 0 > = r (cosθ + isiθ)= re iθ cu r>0 şi θ [0, π], rezultă că îlocuid y 0 cu e iθ y 0 H 0, putem presupue că există y 0 H 0 astfel îcât <p 0 -x 0, y 0 > > 0. Petru orice λ > 0, avem p 0 - λy 0 H 0, deoarece H 0 este subspaţiu vectorial. Î plus avem p 0 - λy 0 x 0 = < p 0 - λy 0 x 0, p 0 - λy 0 x 0 > = < (p 0 x 0 ) - λy 0, (p 0 x 0 ) - λy 0 > = p 0 x 0 - λ<y 0, p 0 -x 0 > -λ< p 0 -x 0, y 0 > + λ y 0 = p 0 x 0 + λ(λ y 0 < p 0 -x 0, y 0 >) Î coseciţă petru orice scalar λ cu proprietatea că 0 < λ < p x, y y 0 avem p 0 - λy 0 x 0 < p 0 x 0 şi p 0 - λy 0 H 0. Am obţiut astfel o cotradicţie cu faptul că p 0 este elemet de cea mai buă aproximare a lui x 0 pe H 0. Î coseciţă, presupuerea este falsă şi deci <p 0 -x 0, x> = 0 petru orice x H 0. 77
178 Mădălia Roxaa Bueci VI... Aproximarea î medie pri metoda celor mai mici pătrate Cosiderăm mulţimea fucţiilor defiite pe itervalul [a, b], F : = {f : [a, b] R } şi + pucte disticte x 0, x,, x di itervalul [a, b]. Spuem că fucţiile f şi g di această mulţime sut egale aproape peste tot (şi vor fi idetificate) dacă f(x i ) = g(x i ) petru orice i = 0,,,. Mai precis, f ~ g f(x i ) = g(x i ) petru orice i = 0,,,, defieşte o relaţie de echivaleţă pe F. Notăm [f] = {g: f ~ g} = { g : [a, b] R, f(x i ) = g(x i ) petru orice i = 0,,, } clasa de echivaleţă a lui f. Notăm cu cu H mulţimea claselor de echivaleţă relativ la relaţia de echivaleţă de mai sus. H poate fi îzestrat cu o operaţie de grup abelia după cum urmează: [f] + [g] : = [h], ude h : [a, b] R, h(x) = f(x) + g(x) petru orice x [a, b]. Arătăm că defiiţia u depide de reprezetaţi. Fie f ~ f, g ~ g şi petru i=, fie h i :[a,b] R, h i (x) = f i (x) + g i (x) petru orice x [a, b]. Avem h (x j ) = f (x j ) + g (x j ) = f (x j ) + g (x j ) = h (x j ) petru orice j = 0,,,. Ca urmare h ~ h, adică [h ] = [h ]. Evidet operaţia defiită mai sus este asociativă şi comutativă. Dacă otăm o: [a, b] R, o(x) = 0 petru orice x [a, b], atuci [o] este elemet eutru. Petru orice [h], [-h] este simetricul faţă de +, ude -h: [a, b] R, (-h)(x) = -h(x) petru orice x [a, b]. De asemeea H poate fi îzestrat cu o operaţie exteră de îmulţire cu scalari reali după cum urmează: α[f]: = [h], ude h : [a, b] R, h(x) = αf(x) petru orice x [a, b]. Este uşor de observat că defiiţia u depide de reprezetaţi. H îzestrat cu cele două operaţii defiite mai sus devie spaţiu vectorial. Fie p o fucţie cu următoarele proprietăţi: p(x i ) > 0 p ( ) =. i= 0 x i 78
179 Metode Numerice Dacă f ~ f şi g ~ g atuci p( xi ) f ( xi ) g ( xi ) = p( xi ) f ( xi ) g ( xi ). i= 0 Itroducem următorul produs scalar pe H p i= 0 <[f], [g]> = ( x ) f ( x ) g( x ) Fucţia p(x) este o fucţie podere itrodusă î ipoteza că aproximările f(x i ) sut diferite ca ordi de mărime. Relativ la produsul scalar itrodus, orma lui [f] este defiită pri i= 0 [f ] = ( x ) f ( x ) i= 0 p. Î cele ce urmează coveim să desemăm o clasă de echivaleţă [f] pritru reprezetat al ei f. Fie ϕ 0, ϕ, ϕ m u sistem de m+ fucţii liiar idepedete defiite pe [a,b], cu m. Coveim să umim spaţiul geerat de ele spaţiul polioamelor geeralizate şi să-l otăm H m. Deci u poliom geeralizat F H m este de forma m F(x) = ϕ ( x) i= 0 i i i i c. Aproximarea î medie pri metoda celor mai mici pătrate a uui elemet f H presupue determiarea elemetului de cea mai buă aproximare F 0 a lui f pe H m. Coform defiiţiei elemetul F 0 de cea mai buă aproximare a lui f pe H m trebuie să satisfacă codiţia i= 0 p ( x )( f ( x ) F ( x )) = if p( x i )( f ( x i ) F( x i )) i i 0 i F H m i= 0 Determiarea coeficieţilor c j ai poliomului geeralizat F 0 cu ajutorul acestei relaţii este dificilă. Se foloseşte caraterizarea elemetului de cea mai buă aproximare dată î secţiuea precedetă. Mai precis F 0 H m este elemet de cea mai buă aproximare a lui f pe H m dacă şi umai dacă <f F 0, ϕ> = 0 petru orice ϕ H m. Deoarece {ϕ 0, ϕ,..., ϕ m } este o bază a lui H m, petru ca F 0 H m să fie elemet de cea mai buă aproximare a lui f pe H m este suficiet ca <f F 0, ϕ j > = 0 petru orice j = 0,, m, i i i 79
180 Mădălia Roxaa Bueci ceea ce revie la <f, ϕ j > = c 0 <ϕ 0, ϕ j > + c <ϕ, ϕ j > + + c m <ϕ m, ϕ j >, j = 0,,,m. Notăm a ij = <ϕ i, ϕ j > = p( x ) ϕ ( x ) ϕ ( x ) k= 0 b j = <f, ϕ j > = ( x ) f ( x ) ( x ) k p k k ϕ j k= 0 Petru determiarea coeficieţilor c j ai poliomului geeralizat F 0 se rezolvă sistemul c 0 a 00 + c a c m a m0 = b 0 c 0 a 0 + c a + + c m a m = b i k j k k c 0 a 0m + c a m + + c m a mm = b m Determiatul acestui sistem fiid u determiat Gramm (elemetele sale sut produse scalare) este diferit de zero, deoarece sistemul de fucţii ϕ 0, ϕ, ϕ m este u sistem liiar idepedet. Dacă ϕ j (x) = x j, j =0,,, m, m, şi p +, atuci iar sistemul aterior devie F 0 (x) = m i cix. i= 0 m m c 0 (+) + c x i + + c m x i = f ( x i ) m i= 0 m i= 0 m i= 0 m+ c 0 x i + c x i + + c m x i = x if ( x i ) i= 0 m i= 0 m i= 0 m i= 0 m c 0 m x i + c m+ x i + + c m i= 0 m i= 0 m i= 0 m x = x f ( x ) m i m i= 0 i i Acest sistem este umit sistemul ormal al lui Gauss. 80
181 Metode Numerice Parametrii procedurii patrate_mici de mai jos sut: x - lista celor + pucte: x 0, x,, x y - lista ce coţie valorile fucţiei f î ce + pucte: x 0, x,, x (y 0 = f(x 0 ), y =f(x ),.,y =f(x )) ϕ lista fucţiilor liiar idepedete ϕ 0, ϕ, ϕ m p poderea (lista) Procedura îtoarce o lista ce coţie coeficieţii poliomului geeralizat ce aproximează f. > patrate_mici:=proc(x,y,p,phi) > local,m,i,k,j,a,b,c,ep,ei; > :=ops(x)-; > m:=ops(phi)-; > b:=vector(m+); > a:=matrix(m+,m+); > for i from 0 to m do > b[i+]:=0;for k from 0 to do > b[i+]:=b[i+]+y[k+]*phi[i+](x[k+])*p[k+] > od > od; > for i from 0 to m do > for j from i to m do > a[i+,j+]:=0; > for k from 0 to do > a[i+,j+]:=a[i+,j+]+p[k+]*phi[i+](x[k+])*phi[j+](x[k+]) > od; > a[j+,i+]:=a[i+,j+] > od; > od; > c:=vector(m+); > c:=lisolve(a,b,'r'); > if r<m+ the prit(`sistemul de fuctii u este liiar idepedet`); RETURN(NULL) fi; > prit(`factorul de coditioare`,evalf(cod(a))); > ep:=0; > for i from 0 to do ei:=y[i+]; > for j from 0 to m do 8
182 Mădălia Roxaa Bueci > ei:=ei-phi[j+](x[i+])*c[j+] > od; > ei:=ei^*p[i+]; ep:=ep+ei > od; > prit(`suma patratelor erorilor (poderate)`,evalf(ep)); > RETURN([seq(c[i],i=..m+)]) > ed; Î exemplele ce urmează vom folosi şi procedurile dese_pucte, baza_ormal, evalueaza şi dese. Procedura dese_pucte reprezită grafic cele + pucte date iiţial: (x 0, y 0 ), (x, y ),..., (x, y ). Procedura baza_ormal primeşte drept parametru u umăr atural m şi costruieşte lista fucţiilor ϕ 0, ϕ, ϕ m ude ϕ j (x) = x j petru orice x şi orice j=0..m. Procedura evalueaza primeşte drept parametri lista fucţiilor liiar idepedete ϕ 0, ϕ, ϕ m, lista coeficieţilor poliomului geeralizat ce aproximează f şi u puct a. Procedura returează valoarea poliomului geeralizat î a. Procedura dese reprezită grafic î acelaşi sistem de axe de coordoate poliomul geeralizat ce aproximează fucţia şi cele + pucte date iiţial. Puctele sut reprezetate pri elipse. Parametrii procedurii sut fucţia determiată de poliomul geeralizat, lista x ce coţie puctele x 0, x,, x, şi şi lista y ce coţie valorile fucţiei. Îaite de a folosi aceste proceduri trebuie îcărcate pachetele lialg, plots şi plottools. > dese_pucte:=proc(x,y) > local, d; > :=ops(x); > d:=poitplot([seq([x[i],y[i]],i=..)],symbol=circle, labels=[x,y],color=color(rgb,0,0,0),thickess=5);display(d) > ed; > baza_ormal:=proc(,t) > RETURN([uapply(,t),seq(uapply(t^j,t),j=..)]) > ed; > evalueaza:=proc(phi,c,a) > local i,m,fx; > m:=ops(phi);fx:=0; > for i from to m do 8
183 Metode Numerice > fx:=fx+phi[i](a)*c[i] od; > RETURN(fx) > ed; > dese:=proc(f,x,y) > local,i,d,d,d3,x,x; > :=ops(x); > x:=mi(seq(x[i],i=..));x:=max(seq(x[i],i=..)); > d:=poitplot([seq([x[i],y[i]],i=..)],symbol=circle, color=black,thickess=5); > d:=plot(f(t),t=x..x,labels=[x,y],xtickmarks=map(evalf,x), ytickmarks=map(evalf,y)); > d3:=d,d; > display(d3); > ed; Exemple > x:=[,,3,4,5,6]; x := [,, 3, 4, 5, 6 ] > y:=[0.9,0.98,.0,.04,.0,.]; y := [ 0.9, 0.98,.0,.04,.0,. ] > p:=[seq(/6,i=..6)]; p :=,,,,, > dese_pucte(x,y); 83
184 Mădălia Roxaa Bueci > phi:=baza_ormal(,x); φ := [, x x ] > c:=patrate_mici(x,y,p,phi); Factorul de coditioare, Suma patratelor erorilor (poderate), > evalueaza(phi,c,x); c := [ , ] x > dese((t->evalueaza(phi,c,t)),x,y); > phi:=baza_ormal(,x); φ := [, x x, x x ] > c:=patrate_mici(x,y,p,phi); 84
185 Metode Numerice Factorul de coditioare, Suma patratelor erorilor (poderate), c := [ , , ] > evalueaza(phi,c,x); x x > dese((t->evalueaza(phi,c,t)),x,y); > phi3:=baza_ormal(3,x); φ3 := [, x x, x x, x x 3 ] > c3:=patrate_mici(x,y,p,phi3); Factorul de coditioare, Suma patratelor erorilor (poderate), c3 := [ , , , ] > evalueaza(phi3,c3,x); x x x 3 > dese((t->evalueaza(phi3,c3,t)),x,y); 85
186 Mădălia Roxaa Bueci VI..3. Limitări ale metodei celor mai mici pătrate Petru determiarea coeficieţilor c j ai poliomului geeralizat F 0 se rezolvă sistemul Ax = b, cu A = X t X iar b = X t Y, ude p(x 0) ϕ 0 (x 0 ) p(x 0) ϕ (x 0 )... p(x 0) ϕ m (x ) X = p(x ) ϕ 0 (x ) p(x ) ϕ (x )... p(x ) ϕ m (x ) p(x ) ϕ 0 (x ) p(x ) ϕ (x )... p(x ) ϕ m (x ) Iar 86
187 Metode Numerice p(x 0) f(x 0 ) Y = p(x ) f(x ) p(x ) f(x ) Dacă fucţiile ϕ 0, ϕ, ϕ m sut liiar idepedete, atuci rag(x) = m+ şi matricea A este pozitiv defiită. Ca urmare există şi este uică o matrice iferior triughiulară L cu elemetele de pe diagoala pricipală pozitive astfel îcât A = LL t (matricea L se umeşte factor Cholesky). Rezolvarea sistemului Ax=b revie la rezolvarea a două sisteme cu matrice triughiulare: Lz =b, L t x=z. O variată mai letă (volum de calcul mai mare), dar umeric mai stabilă, de rezolvare a sistemului Ax = b este dată de descompuerea QR a matricei A, adică de reprezetarea matricei A sub forma A = QR ude Q este o matrice ortogoală (Q t Q = I m+ ) iar R o matrice superior triughiulară. Atuci rezolvarea sistemului Ax=b este echivaletă cu rezolvarea sistemului Rx =Q t b. Dacă A=X t X u este bie codiţioată, atuci gradul de acurateţe al soluţiei furizate de metoda celor mai mici pătrate poate fi foarte scăzut. 87
188 Mădălia Roxaa Bueci 88
189 Metode Numerice VII. Derivarea umerică Se recurge la aproximarea derivatei uei fucţii f sau a derivatelor ei de ordi superior atuci câd expresia lui f este prea complicată sau câd u se cuoaşte expresia aalitică a fucţiei f (f este dată pri itermediul uui tabel de valori). VII.. Formule de derivare aproximativă folosid dezvoltări î serie Taylor Fie f : [a, b] R, derivabilă. Presupuem că se dau + pucte disticte î itervalul [a, b], x 0, x,., x, î care se cuosc valorile fucţiei f. Prezetăm o tehică de găsire a uor formule de aproximare petru valorile derivatelor de orice ordi ale fucţiei f. Această tehică are la bază formula lui Taylor. Reamitim această formulă. Fie I u iterval de umere reale, a I şi f : I R o fucţie de ori derivabilă î a. Poliomul Taylor de ordi ataşat lui f î puctul a este fucţia poliomială T a, : I R, defiită pri: T a, (x) = f(a) + f ' ( a) (x-a) +! f" ( a)! (x-a) f + ( ) ( a) (x-a).! Restul formulei Taylor de ordi ataşat fucţiei f î puctul a este fucţia R a, : I R defiită pri R a, (x) = f(x) - T a, (x). Egalitatea f(x) = T a, (x) + R a, (x) valabilă petru orice x I se umeşte formulă Taylor de ordi ataşată fucţiei f î puctul a. Se demostrează că lim x a R a,x = 0. Dacă f este de clasă C +, atuci ( x a) 89
190 Mădălia Roxaa Bueci există u strict cupris ître a şi x (sau echivalet există θ (0, ) astfel îcât u = a+ θ(x a)) cu proprietatea că R a, (x) = ( + ) ( u) (x - a) +. f ( + )! Ne propuem să aproximăm valorile derivatelor de ordiul îtâi şi doi ale fucţiei f î puctul x i [a, b] câd sut cuoscute valorile fucţiei î puctele x i-, x i, x i+ care u sut eapărat echidistate, adică: x i- = x i h, x i+ = x i + αh. dar că α variază îtr-u iterval fixat. Presupuem că f este de 3 ori derivabilă şi scriem formula lui Taylor de ordiul petru f î x i : f (x i) f (x i) f (w x ) 3 f (x) = f (x i) + (x x i) + (x x i) + (x x i).!! 3! cu w x stric cupris ître x şi x i. Îlocuim î această formulă x = x i-, respectiv x = x i+ şi obţiem relaţiile: f (x i) f (x i)h f (u) 3 f (x i ) = f (x i) + ( h) + + ( h) (7.)!! 3! f (x i) f (x i) f (v) 3 3 f (x i+ ) = f (x i) + α h + h α + α h (7.)!! 3! cu u strict cupris ître x i- şi x i şi v strict cupris ître x i şi x i+. Scăzâd di a doua relaţie prima relaţie îmulţită cu α obţiem: f (v) f (u) f (x ) f x f (x ) h h f (x 3! 3! i) = hα α + ( )( ) i+ + i α α i + α + α ( ) Putem aproxima valoarea derivatei fucţiei f î x i pri: cu eroarea: ( )( ) i+ + i α α i f (x ) f x f (x ) f (x i) hα α + ( ) α f (v) α f (u) ε = + h α + 3! α + 3! 90
191 Metode Numerice care este de ordiul lui h (O(h )). Aduâd la a doua relaţie prima îmulţită cu α obţiem: f (v) f (u) f (x i+ ) + ( + α ) f (x i) + α f (x i ) + α h αh 3! 3! f (x i) = h α α + ( ) Putem astfel aproxima valoarea derivatei de ordiul doi al lui f î x i pri cu eroarea ε = de ordiul lui h: O(h). ( i+ ( + α ) i + α i ) h α( α + ) f (x ) f (x ) f (x ) f (x ) i h f (v) f (u) α α ( ) Dacă odurile sut echidistate (adică dacă α = ) se obţi următoarele formule de aproximare: f (x i ) f (x i ) f (x i) + h f (x i ) f (x i) f (x i ) f (x i) + +. h Î cazul odurilor echidistate vom arătă că eroare de aproximare a derivatei de ordiul doi pri formula de mai sus este de ordiul O(h ). Folosid formula lui Taylor de ordiul 3 petru f î x i, obţiem: ( 4 f (x ) i ) f (x i )h f (x i ) 3 f (u) 4 f (x i ) = f (x i ) + ( h) + + ( h) + h (7.3)!! 3! 4! ( 4 f (x ) i ) f (x i ) f (x i ) 3 f (v) 4 f (x i+ ) = f (x i ) + h + h + h + h (7.4)!! 3! 4! cu u strict cupris ître x i- şi x i şi v strict cupris ître x i şi x i+. Aduâd cele două relaţii rezultă: ( 4) ( 4 f (v) f ) (u) f (x i+ ) + f (x i ) + f (x i ) + h + h f (x 4! 4! i ) = h 4 4 astfel aproxima valoarea derivatei de ordiul doi al lui f î x i pri. 9
192 Mădălia Roxaa Bueci f (x i ) f (x i) f (x i ) f (x i) + + h cu eroarea ( 4) ( 4 f (v) f ) (u) ε = + h 4! 4! de ordiul lui h : O(h ). Ne propuem acum să aproximăm valorile derivatelor de ordiul îtâi şi doi ale fucţiei f î puctul x i [a, b] câd sut cuoscute valorile fucţiei î puctele x i, x i+, x i+ care u sut eapărat echidistate, adică: x i = x i+ h, x i+ = x i+ + αh. cu α Presupuem că f este de 3 ori derivabilă şi scriem formula lui Taylor de ordiul ataşată lui f î x i : f (x i) f (x i) f (w x ) 3 f (x) = f (x i) + (x x i) + (x x i) + (x x i).!! 3! cu w x stric cupris ître x şi x i. Îlocuim î această formulă x = x i+, respectiv x = x i+ şi obţiem relaţiile: f (x i) f (x i)h f (u) 3 f (x i+ ) = f (x i) + h + + h (7.5)!! 3! f (x i) f (x i) f (v) 3 3 f (x i+ ) = f (x i) + ( α + )h + h ( α + ) + ( α + ) h (7.6)!! 3! cu u strict cupris ître x i şi x i+ şi v strict cupris ître x i şi x i+. Scăzâd di relaţia (7.5) relaţia (7.6) îmulţită cu (+α) obţiem: ( )( ) i+ + i α + α + α i+ f (x ) f x ( ) f (x ) f (x i ) = + hα α + ( ) f (v) f (u) ( α + ) h + h ( + α) + 3! 3! hα α ( ) Putem aproxima valoarea derivatei fucţiei f î x i pri: 9
193 Metode Numerice ( ) ( ) ( ) i+ i+ i f (x ) ( + α) f (x ) α + α f x f (x i ) hα α + cu eroarea: f (v) ( α + ) f (u) ( α + ) ε = h 3! α 3! α Aduâd la relaţia (7.6) relaţia (7.5) îmulţită cu -(+α) obţiem: f (x i+ ) + αf (x i ) ( α + )f (x i ) f + (x i ) = h α ( α + ) f (v) f (u) ( α + ) h + ( α + )h + 3! 3! h α ( α + ) Putem astfel aproxima valoarea derivatei de ordiul doi al lui f î x i pri f (x i+ ) ( α + )f (x i+ ) + αf (x i ) f (x i ) h α α + ( ). cu eroarea f (v) ( α + ) f (u) ε = + h 3! α 3! α Dacă odurile sut echidistate (adică dacă α = ) se obţi următoarele formule de aproximare: ( ) f (x i+ ) + 4f xi+ 3f (x i ) f (x i ) h cu eroare de ordiul O(h ) f (x i+ ) f (x i+ ) + f (x i ) f (x i ). h cu eroare de ordiul O(h). Similar e propuem să aproximăm valorile derivatelor de ordiul îtâi şi doi ale fucţiei f î puctul x i [a, b] câd sut cuoscute valorile fucţiei î puctele 93
194 Mădălia Roxaa Bueci x i-, x i-, x i care u sut eapărat echidistate, adică: x i = x i- + h, x i- = x i- αh Presupuem că f este de 3 ori derivabilă şi scriem formula lui Taylor de ordiul petru f î x i : f (x i) f (x i)h f (u) 3 f (x i ) = f (x i) h + h (7.7)!! 3! f (x i) f (x i) f (v) 3 3 f (x i ) = f (x i) ( α + )h + h ( α + ) ( α + ) h (7.8)!! 3! cu u strict cupris ître x i şi x i+ şi v strict cupris ître x i şi x i+. Scăzâd di relaţia (7.8) relaţia (7.7) îmulţită cu (+α) obţiem: ( )( ) i + i α + α + α i f (x ) f x ( ) f (x ) f (x i ) = + hα α + ( ) f (u) f (v) h ( + α ) + ( α + ) h + 3! 3! hα α ( ) Putem aproxima valoarea derivatei fucţiei f î x i pri: f (x ) i ( ) ( ) i i i α + α f x ( + α ) f (x ) + f (x ) ( ) hα α + cu eroarea: f (u) ( α + ) f (v) ( α + ) ε = + 3! α 3! α h Aduâd la relaţia (7.8) relaţia (7.7) îmulţită cu -(+α) obţiem: f (x i ) + αf (x i ) ( α + )f (x i ) f (x i ) = h α ( α + ) f (v) f (u) ( α + ) h + ( α + )h + 3! 3! h α ( α + ) Putem astfel aproxima valoarea derivatei de ordiul doi al lui f î x i pri. 94
195 Metode Numerice αf (x i) ( α + )f (x i ) f (x i ) f (x i) + h α α + ( ) cu eroarea f (u) f (v) ( α + ) ε = 3! α 3! α Dacă odurile sut echidistate (adică dacă α = ) se obţi următoarele formule de aproximare: cu eroare de ordiul O(h ), şi 3f (x ) 4f (x ) + f x f (x i ) h h ( ) i i i f (x i ) f (x i ) + f (x i ) f (x i ). h cu eroare de ordiul O(h). Folosid acest tip de tehici, se poate obţie o mare varietate de formule aproximative petru valorile derivatelor de orice ordi î x i. Prezetăm mai jos câteva astfel de formule petru cazul odurilor echidistate. Formulă de aproximare a derivatei pri difereţe fiite cetrale Eroare f (x i ) f (x i ) f (x i) + O(h ) h f (x i+ ) + 8f (x i+ ) 8f (x i ) + f (x i ) O(h 4 ) f (x i ) h f (x i ) f (x i) f (x i ) f (x i) + + O(h ) h f (x i+ ) + 6f (x i+ ) 30f (x i ) + 6f (x i ) f (x i ) O(h 4 ) f (x i ) h f (x i+ ) f (x i+ ) + f (x i ) f (x i ) O(h ) f (x i ) 3 h f (x i+ 3) + 8f (x i+ ) 3f (x i+ ) + 3f (x i ) 8f (x i ) + f (x i 3) O(h 4 ) f (x i ) 3 8h 95
196 Mădălia Roxaa Bueci Formulă de aproximare a derivatei pri difereţe fiite progresive f (x i+ ) f (x i ) f (x i ) h ( ) f (x i+ ) + 4f xi+ 3f (x i ) f (x i ) h f (x i+ ) f (x i+ ) + f (x i ) f (x i ) h f (x i+ 3) + 4f (x i+ ) 5f (x i+ ) + f (x i ) f (x i ) h f (x i+ 3) 3f (x i+ ) + 3f (x i+ ) f (x i ) f (x i ) 3 h 3f (x i+ 4 ) + 4f (x i+ 3) 4f (x i+ ) + 8f (x i+ ) 5f (x i ) f (x i ) 3 h Eroare O(h) O(h ) O(h) O(h ) O(h) O(h ) Formulă de aproximare a derivatei pri difereţe fiite regresive f (x i ) f (x i ) f (x i ) h 3f (x ) 4f (x ) + f x f (x i ) h ( ) i i i f (x i ) f (x i ) + f (x i ) f (x i ) h f (x i ) 5f (x i ) + 4f (x i ) f (x i 3) f (x i ) h f (x i ) 3f (x i ) + 3f (x i ) f (x i 3) f (x i ) 3 h 5f (x i ) 8f (x i ) + 4f (x i ) 4f (x i 3) + 3f (x i 4 ) f (x i ) 3 h Eroare O(h) O(h ) O(h) O(h ) O(h) O(h ) 96
197 Metode Numerice Procedură MAPLE petru determiarea valorilor aproximative ale derivatei de ordiul Procedura d admite drept parametri lista x ce coţie puctele x, x,., x şi lista y ce coţie valorile y = f(x ), y = f(x ),., y = f(x ). Procedura îtoarce lista aproximaţiilor derivatei de ordiul I a lui f î puctele x, x 3,..., x -. > d:=proc(x,y) > local df,h,alpha,i,; > :=ops(x);df:=[seq(,i=..-)]; > for i from to - do > h:=x[i]-x[i-]; > alpha:=(x[i+]-x[i])/h; > df[i-]:=(y[i+]+y[i]*(alpha^-)-alpha^*y[i-])/ (h*alpha*(alpha+)) > od; > RETURN(df); > ed; Procedură MAPLE petru determiarea valorilor aproximative ale derivatei de ordiul Procedura d admite drept parametri lista x ce coţie puctele x, x,., x şi lista y ce coţie valorile y = f(x ), y = f(x ),., y = f(x ). Procedura îtoarce lista aproximaţiilor derivatei de ordiul al II-lea a lui f î puctele x, x 3,..., x -. > d:=proc(x,y) > local df,h,alpha,i,; > :=ops(x);df:=[seq(,i=..-)]; > for i from to - do h:=x[i]-x[i-]; > alpha:=(x[i+]-x[i])/h; > df[i-]:=*(y[i+]-(alpha+)*y[i]+alpha*y[i- ])/(h^*alpha*(alpha+)) > od; > RETURN(df); > ed; Exemple > x:=[seq(-+*i/5,i=0..5)]; 97
198 > f:=t->l(+t^); Mădălia Roxaa Bueci x := -, -3-3,,,, f := t l ( + t ) > y:=[seq(evalf(f(-+*i/5)),i=0..5)]; y := [ , , , , , ] > d(x,y); > d(x,y); [ , , , ] [ , , , ] > z:=[seq(d(f)(-+*i/5),i=..4)]; z := ,,, > z:=[seq((d@@)(f)(-+*i/5),i=..4)]; > map(evalf,d(x,y)); z := ,,, [ , , , ] > map(evalf,z); [ , , , ] > map(evalf,d(x,y)); > map(evalf,z); [ , , , ] [ , , , ] Cazul odurilor echidistate: Procedură MAPLE petru determiarea valorilor aproximative ale derivatei de ordiul utilizâd o formula de aproximare pri difereţe fiite cetrale Procedura de admite drept parametri pasul h al discretizării şi lista y ce coţie valorile y = f(x ), y = f(x ),., y = f(x ) (x i = x i + (i-)h). Procedura returează lista aproximaţiilor derivatei de ordiul I a lui f î puctele x, x 3,..., x -. > de:=proc(h,y) > local df,i,; 98
199 Metode Numerice > :=ops(y);df:=[seq(,i=..-)]; > for i from to - do > df[i-]:=(y[i+]-y[i-])/(*h) > od; > RETURN(df); > ed; Procedură MAPLE petru determiarea valorilor aproximative ale derivatei de ordiul utilizâd o formula de aproximare pri difereţe fiite cetrale Procedura de admite drept parametri drept parametri pasul h al discretizării şi lista y ce coţie valorile y = f(x ), y = f(x ),., y = f(x ) (x i = x i + (i-)h). Procedura îtoarce lista aproximaţiilor derivatei de ordiul al II-lea a lui f î puctele x, x 3,..., x -. > de:=proc(h,y) > local df,i,; > :=ops(y);df:=[seq(,i=..-)]; > for i from to - do > df[i-]:=(y[i+]-*y[i]+y[i-])/(h*h) > od; > RETURN(df); > ed; Exemple > x:=[seq(+*i/5,i=0..5)]; > f:=t->/(+t^); x :=, 7 9 3,,,, f := t + t > y:=[seq(evalf(f(+*i/5)),i=0..5)]; y := [ , , , , , ] > de(/5,y); [ , , , ] > de(/5,y); 99
200 Mădălia Roxaa Bueci [ , , , ] > z3:=[seq(d(f)(+*i/5),i=..4)]; z3 := ,,, > z4:=[seq((d@@)(f)(+*i/5),i=..4)]; > map(evalf,de(/5,y)); z4 := ,,, [ , , , ] > map(evalf,z3); [ , , , ] > map(evalf,de(/5,y)); [ , , , ] > map(evalf,z4); > with(plots): [ , , , ] > plot([d(f),t->de(/5,[f(t-/5),f(t),f(t+/5)])[]],..3); 00
201 Metode Numerice > > plot([d(f),t->de(0^(-8),[f(t-0^(-8)),f(t),f(t+0^(- 8))])[]],..3); 0
202 Mădălia Roxaa Bueci > 4))])[]],..3); Ceea ce vedem î ultimele două grafice se datorează aritmeticii virgulei mobile. Aşa cum am arătat î primul capitol eroarea de calcul este suma ditre eroarea de truchiere şi eroarea de rotujire, dar de obicei ua ditre acestea predomiă. De obicei există o valoare optimală a pasului de discretizare h. Petru valori mai mici ale lui h eroarea totală creşte di cauza creşterii erorii de rotujire, iar petru valori mai mari ale lui h eroarea totală creşte di cauza creşterii erorii de truchiere. Petru a evideţia acest aspect cosiderăm procedurile eroare (respectiv eroare) de mai jos care returează eroarea cu care este aproximată derivata de ordiul (respectiv ) a fucţiei f î puctul x câd se aplică o formulă de aproximare pri difereţe fiite cetrale (odurile sut x-h,x,x+h). Î exemple ce urmează se poate face comparaţie ître situaţia î care calculul se execută simbolic (şi doar rezultatele sut afişate î virgulă mobilă) şi situaţia î care calculul se execută î virgulă mobilă. > eroare:=proc(f,x,h) > RETURN(D(f)(x)-de(h,[f(x-h),f(x),f(x+h)])[]) > ed; 0
203 Metode Numerice > map(evalf,[seq(eroare(f,3/,0^(-i)),i=..6)]); [ , , , , , ] > [seq(eroare(f,.5,0^(-i)),i=..6)]; [ , , , , , ] > plot(h->abs(eroare(f,.5,h)), 0^(-6)..0^(-)); > plot(h->abs(eroare(f,.5,h)), 0^(-6)..0^(-),umpoits=); > eroare:=proc(f,x,h) > RETURN((D@@)(f)(x)-de(h,[f(x-h),f(x),f(x+h)])[]) > ed; 03
204 Mădălia Roxaa Bueci > map(evalf,[seq(eroare(f,3/,0^(-i)),i=..5)]); [ , , , , ] > [seq(eroare(f,.5,0^(-i)),i=..5)]; [ , , , , ] > plot(h->abs(eroare(f,.5,h)), 0^(-4)../3); > plot(h->abs(eroare(f,.5,h)), 0^(-4)../3,umpoits=); 04
205 Metode Numerice VII.. Extrapolare Richardso Să presupuem că dorim să calculăm o catitate L şi că avem ϕ(h) = L + k akh. k= Atuci ϕ(h) reprezită o aproximaţie petru L cu eroare de ordiul O(h ). Î cele ce urmează vom arăta cum să obţiem o aproximaţie petru care eroarea să fie de de ordiul O(h (+) ), cu dat. Notăm h D(,0) = ϕ şi defiim D(,m) = m ( ) ( ) 4 D, m D, m m 4, m. Se poate arăta utilizâd iducţia că Teorema 7.9 (Extrapolare Richardso). Cu otaţiile de mai sus există costatele a k,m astfel îcât D(,m) = L + k h ak,m. k= m+ Ca o coseciţă a teoremei precedete rezultă că D(,m) = L + O(h (+) ). Cu alte cuvite D(,) este o aproximaţie a lui L cu eroare de ordiul O(h (+) ). Petru calculul recursiv al valorilor D(,m) se poate folosi tabelul triughiular: D(0,0) D(,0) D(,) D(,0) D(,) D(,) D(,0) D(,) D(,) D(,) 05
206 Mădălia Roxaa Bueci h Prima coloaă a acestui tabel poate fi calculată direct cu defiiţia: D(,0) = ϕ. Î cazul elemetelor de pe celelalte coloae se observă că fiecare ditre ele depide de elemetul di stâga de pe aceeaşi liie şi de pe liia de deasupra di stâga. Să exemplificăm aplicarea acestui procedeu petru îmbuătăţirea formulei de aproximare a derivatei de ordiul : Dacă f este aalitică avem: f (x + h) f (x h) f (x) ϕ ( h) =. h ϕ(h) = f (x) + ( k+ f ) k x h. k! ( ) ( ) k= + Deci putem aplica extrapolare Richardso.Vom aproxima f (x) cu D(,). Dar Ca urmare D(,) = h 4ϕ ϕ h 3 ( ) ordiul O(h 4 ), ude ( h) ( ) ( ) 4D,0 D 0,0 3 = h 4ϕ ϕ h 3 ( ) reprezită o aproximaţie a lui f (x) cu eroare de f (x + h) f (x h) ϕ =. h. VII.3. Metode de derivare umerică folosid iterpolarea Fie f : [a, b] R o fucţie, fie x 0, x,, x + pucte disticte di itervalul [a, b], şi y i = f(x i ) petru orice i = 0,,. Aproximăm f (k) pri derivata de ordiul k a poliomului de iterpolare asociat lui f şi x 0, x,, x. Să presupuem că = 4 şi că puctele x 0, x, x, x 3, x 4 sut echidistate şi să costruim poliomul Newto ascedet. 06
207 Metode Numerice P (x) = P (x + th) f (x ) f (x ) f (x ) = f (x 0) + t + t(t ) + t(t )(t ) +!! 3! 4 f (x 0) t(t )(t )(t 3) + 4! f (x ) f (x ) f (x ) = f (x 0) + t + (t t) + (t 3t + t) +!! 3! 4 f (x 0) (t 4 6t 3 t 6t) + + 4! Notăm g(t) = P 4 (x 0 +th). Avem Pe de altă parte iar Î coseciţă avem: g (t) = P 4 (x 0 +th)h g (t) = P 4 (x 0 +th)h f (x ) f (x ) g ( t) = f (x 0) + (t ) + (3t 6t + ) f (x 0) (4t 3 8t t 6) (t ) 3 (3t 6t + ) = f (x 0) + f (x 0) + f (x 0) (t 9t + t 3) + f (x 0) f (x ) f (x ) g ( t) = + (6t 6) f (x 0) (6t 8t ) (6t 8t + ) = f (x 0) + f (x 0) ( t ) + f (x 0). f (x)= f (x 0 +ht) h ( (t ) 3 (3t 6t + ) f (x 0) + f (x 0) + f (x 0)
208 Mădălia Roxaa Bueci f (x) = f (x 0 +ht) 3 4 (t 9t + t 3) + f (x 0) ) h ( ( ) f (x ) f (x ) t f (x 0 ) (6t 8t + ) + + ). 08
209 Metode Numerice VIII. Itegrarea umerică VIII.. Formula geerală de cuadratură umerică. Formula de cuadratură Newto-Cotes. Fie f : [a, b] R o fucţie cotiuă. Ne puem problema să calculăm valoarea aproximativă a itegralei b a f (x) ρ(x)dx, ude ρ : [a, b] R este o fucţie cotiuă strict pozitivă umită podere. Cosiderăm x 0, x,, x + pucte disticte di itervalul [a, b], şi otăm y i = f(x i ) petru orice i = 0,,. O formulă de cuadratură presupue aproximarea itegralei pritr-o combiaţie liiară de valori ale fucţiei f î puctele x 0, x,, x, i.e b f (x) ρ(x)dx A 0 f(x 0 ) + A f(x ) A f(x ). a Fie L poliomul Lagrage asociat lui f şi puctelor cosiderate: L (x) = f ( x ) l ( x) b a f (x) ρ(x)dx ( )( ) ( )( ) ( ) x x i i = 0 x x... x xi x x i+... x x yi. i= 0 i= 0 ( x i x 0 )( x i x )... ( x i x i )( x i x i+ )... ( x i x ) Îlocuid f pri L, obţiem formula de aproximare b a b f (x) ρ(x)dx L (x) ρ(x)dx b b b a ( ) ( ) ( ) ( ) f (x) ρ(x)dx ρ (x) f x l x dx = f x ρ(x)l x dx i i i i a a i= 0 i= 0 a 09
210 Mădălia Roxaa Bueci b Deci otăm dacă A i = ( )... + A f(x ). a ρ(x)l x dx, atuci i b f (x) ρ(x)dx A 0 f(x 0 ) + A f(x ) + Î cele ce urmează e propuem să calculăm eroarea cu b b L (x) ρ(x)dx aproximeză a a avem x i = b L (x) ρ(x)dx = a f (x) ρ(x)dx a. Reprezetâd puctele sub forma a + b b a + t i, t i [-, ], i {0,,..., }, b ( x x )( ) ( )( ) ( ) = 0 x x... x xi x x i+... x x ρ( ) ( i ) a ( x x )( x x )...( x x )( x x )...( x x ) x f x dx i= 0 i 0 i i i i i+ i b ( x x )( ) ( )( ) ( ) = 0 x x... x xi x x i+... x x ( i ) ρ( ) a ( x x )( x x )...( x x )( x x )...( x x ) i= 0 f x x dx Facem schimbarea de variabilă şi obţiem b L (x) ρ(x)dx = a i 0 i i i i i+ i i i= 0 x = a + b b + a t b a a + b b a (t t 0) (t t i )(t t i ) (t t ) f (x ) ( t) + dt ρ + (t t ) (t t )(t t ) (t t ) Formula i i= 0 b a i 0 i i i i+ i f (x) ρ(x)dx b a a + b b a (t t 0) (t t i )(t t i ) (t t ) f (x ) ( t) + dt. ρ + (t t ) (t t )(t t ) (t t ) se umeşte formula geerală de cuadratură. i 0 i i i i+ i care 0
211 Metode Numerice Presupuem că f este de clasă C +. Petru a evalua restul formulei ţiem seama că eroarea cu care poliomul de iterpolare aproximează fucţia este dată de ude M = f(x) L (x) M (x x 0 )(x x ) (x x ), ( + )! sup f( +) (x) x [a,b] R (f) = b b b f (x) ρ(x)dx ρ (x)l (x)dx = (f (x) L (x)) ρ(x)dx a a a b R (f) = (f (x) L (x)) ρ(x)dx a b a f (x) L (x) ρ(x)dx Procedâd ca mai îaite obţiem restul formulei geerale de cuadratură: ude M = R (f) ( M + )! sup f( +) (x). x [a,b] + ρ + 0, b a a + b b a t (t t )(t t ) (t t )dt Presupuem că ρ, puctele sut echidistate şi că x 0 = a, x = b. Deci x i = a + b a i, i = 0,,,,. Aproximâd sub itegrală fucţia cu poliomul de iterpolare Lagrage şi făcâd schimbarea de variabilă obţiem x = a + b a t, ude b a ( ) ( ) b a f (x) ρ(x)dx ( b a) Hi f ( xi ) = ( b a) Hi f a + i ( ) ( ) ( ) ( ) ( ) i i= 0 i= 0 ( ) ( )( ) ( ) Hi = t t... t i + t i... t dt i!i! 0 = i t t... t ( ) ( ) i!i! 0 t i dt
212 Mădălia Roxaa Bueci Numerele ( ) H se umesc coeficieţii Newto - Cotes ˆ iar formula se aproximare se i umeşte formula Newto - Cotes ˆ. Au loc relaţiile i= 0 H ( ) = şi i ( ) ( ) H =, i = 0,,,. i H i Dacă f este o aplicaţie de clasă C + are loc următoarea formulă de evaluare a restului: b a ( ) b a f (x) ρ(x)dx ( b a) Hi f a + i i= 0 b a t(t )(t ) (t )dt! ( + ) + 0 sup f( +) (x). x [a,b] De reţiut că există fucţii cotiue petru care şirul ( ) ( b a) Hi f ( xi ) u coverge către ( ) i= 0 b a f x dx. VIII.. Formula dreptughiurilor Fie f : [a, b] R o fucţie de clasă C. Aplicăm formula geerală de cuadratură petru ρ, =0, x 0 = a + b (deci t 0 = 0). Obţiem b a a + b f (x)dx (b-a) f cu o eroare ( b a ) 4 ( ) sup f ' x [ a,b] x. Cosiderăm o diviziue (x 0, x,., x ) a itervalului [a, b] cu pucte echidistate (x i = a + x i+ ] formula de aproximare b a i, i = 0,,,,.) şi aplicăm pe fiecare subiterval [xi,
213 Metode Numerice x f ( x) dx (x i+ -x i ) i + x f i+ x i + x i b x a = x i= 0 i f x dx, obţiem următoarea formulă de i Ţiâd cot că f ( x) dx + ( ) cuadratură umită formula dreptughiurilor: Restul (eroarea) este dat de: b f (x)dx b a a xi + xi+ f. i= 0 b b a xi + x f i ( x) dx f + a = i= 0 x i+ = ( ) b a xi + x f x dx f i+ xi i= 0 i= 0 x b a xi + x f x dx f i+ x i i= 0 i+ = ( ) x b a xi + x f x dx f i+ xi i= 0 i+ ( ) x xi + x f x dx x i x i xi f + + i i= 0 i+ = ( ) ( ) i= 0 ( x x ) x [a, b] i+ 4 sup f (x) i sup f (x) x [x,x ] i i+ ( ) i= 0 x i+ x 4 i = = sup f (x) x [a, b] sup f (x) x [a, b] ( ) i= 0 b a 4 ( b a) 4 3
214 Mădălia Roxaa Bueci Ca urmare restul (eroarea) î formula dreptughiurilor este b f i i ( x) dx f + ( ) a b a x + x i= 0 b a 4 ( ) sup f ' x [ a,b] x Iterpretarea geometrică a formulei dreptughiurilor Fie D i dreptughiul cu o dimesiue dată itervalul [x i, x i+] ] şi cu cealaltă x dimesiue dată de i + x f i+ x f + x i i+ x i x i+ Atuci aria dreptughiului D i este x (x i+ -x i ) i + x f i+ = b a xi + x f i+, şi deci formula dreptughiurilor presupue aproximarea dreptughiurilor D i, i = 0,, -. b f (x)dx pri suma ariilor a Proceduri MAPLE petru calculul valorii aproximative a uei itegrale defiite folosid formula dreptughiurilor: Procedura dreptughiuri are drept parametri fucţia care se itegrează, limitele de itegrare, şi umărul de subitervale di diviziue. Procedura îtoarce valoarea aproximativă a itegralei obţiută aplicâd formula dreptughiurilor. Procedura dreptughiuri este similară, cu sigura deosebire că î locul umărului 4
215 Metode Numerice de subitervale se itroduce u umăr pozitiv eps ce reprezită eroarea maximă. > dreptughiuri:=proc(f,a,b,) > local i,iab,h,h0; > iab:=0;h:=(b-a)/;h0:=a+/*h; > for i from 0 to - do > iab:=iab+evalf(f(h0+i*h)) > od; > iab:=iab*h; > RETURN(evalf(iab)) > ed; > dreptughiuri:=proc(f,a,b,eps) > local i,iab,h,h0,;:=floor(/4*(b-a)^/eps)+; > prit(`numar de pasi`,); h:=(b-a)/;iab:=0;h0:=a+/*h; > for i from 0 to - do > iab:=iab+evalf(f(h0+i*h)) > od; > iab:=iab*h; > RETURN(evalf(iab)) > ed; Exemple > f:=(x->x^7*l(x)+x*cos(x)); > evalf(it(f(x),x=..3)); > dreptughiuri(f,,3,5); > dreptughiuri(f,,3,50); > dreptughiuri(f,,3,500); > dreptughiuri(f,,3,0.0); f := x x 7 l( x ) + x cos( x ) Numar de pasi,
216 Mădălia Roxaa Bueci > dreptughiuri(f,,3,0.00); > dreptughiuri(f,,3,0.000); > g:=(x->exp(-x^)); > evalf(it(g(x),x=-..)); Numar de pasi, Numar de pasi, g := x e ( x ) > dreptughiuri(g,-,,5); > dreptughiuri(g,-,,0); > dreptughiuri(g,-,,500); > dreptughiuri(g,-,,0.0); > dreptughiuri(g,-,,0.00); > dreptughiuri(g,-,,0.000); > with(studet): Numar de pasi, Numar de pasi, Numar de pasi, > middlesum(g(x),x=-..,5); 5 4 i = 0 4/ 5 + > evalf(middlesum(g(x),x=-..,5)); > middlebox(g(x),x=-..,5); e i
217 Metode Numerice > middlesum(g(x),x=-..,0); 5 9 i = 0 e 9/ 0 + > evalf(middlesum(g(x),x=-..,0)); > middlebox(g(x),x=-..,0); i 5 Comada middlesum(g(x), x=a..b,) di pachetul studet îtoarce aproximaţia b itegralei g(x)dx a obţiută pri aplicarea formulei dreptughiurilor utilizâd subitervale. Comada middlebox(g(x), x=a..b,) reprezită grafic dreptughiurile utilizate î formulei dreptughiurilor. 7
218 Mădălia Roxaa Bueci VIII.3. Formula trapezelor Fie f : [a, b] R o fucţie de clasă C. Aplicăm formula geerală de cuadratură petru ρ, =, x 0 = a, x =b (deci t 0 = - şi t =). Obţiem Deci b a b a f (x)dx b a (t ) (t + ) f (a) dt + f (b) dt ( ) ( + ) = = b a (t ) (t + ) f (a) + f (b) 4 4 = b a f (x)dx b a (f(a) +f(b)). Eroarea este b a (f(a) +f(b)). f (x)dx - b a (f(a) +f(b)) sup f " x! x [ a,b] ( ) = sup f " x! x [ a,b] = = ( ) sup f " x [ a,b] x sup f " x [ a,b] x Deci ( ) b ( b a) 3 8 ( b a) 3 8 ( b a) 3 f (x)dx - b a a ( ) t dt =! sup x [ a,b ] t dt = sup 0 x a,b. ( ) f " x [ ] ( b a) 3 8 ( ) f " x ( b a) 3 (f(a) +f(b)) ( b a) 3 8 x (t )(t + )dt = ( b a) 3 t 8 0 t ( ) sup f " x. [ a,b] t dt 8
219 Metode Numerice Cosiderăm o diviziue (x 0, x,., x ) a itervalului [a, b] cu pucte echidistate (x i = a + b a i, i = 0,,,,.) şi aplicăm pe fiecare subiterval [xi, x i+ ] formula de aproximare x f ( x) dx i+ xi ( f(x i ) + f(x i+ )) x i + x i b x a = x i= 0 i f x dx, obţiem următoarea formulă de i Ţiâd cot că f ( x) dx + ( ) cuadratură umită formula trapezelor: Restul (eroarea) este dat de: b f (x)dx b a f a a ( ) + f ( b) ( ) + f ( b) + b f a b a f ( x) dx + f ( xi ) a = i= f ( xi ). i= i+ = ( ) ( ) + f ( b) x x b a f a f x dx + i i= 0 i= ( ) f x xi+ = f ( x) dx i+ i ( f ( x ) + f ( x )) x = = i i 0 i 0 x xi xi xi i= 0 x x i i+ i+ = f ( x) dx + ( f ( x ) + f ( x )) x xi xi xi i= 0 i i+ i+ f ( x) dx + ( f ( x ) + f ( x )) i= 0 ( x x ) i+ sup f (x) x [a, b] i 3 sup f (x) x [x,x ] i i+ ( ) 3 i= 0 x i+ x i i i+ i 9
220 Mădălia Roxaa Bueci = sup f (x) x [a, b] ( ) 3 i= 0 b a 3 ( b a )3 ( ) sup f " x [ a,b] x Ca urmare restul (eroarea) î formula trapezelor este. b f ( a) f ( b b a + ) f ( x) dx + f ( xi ) ( b a )3 a i= ( ) sup f " x [ a,b] x Iterpretarea geometrică a formulei trapezelor Fie T i trapezul dreptughic cu îălţimea egală cu lugimea itervalului [x i, x i+] ] şi cu bazele f(x i ) şi f(x i+ ). f(x i+ ) f(x i ) x i x i+ Atuci aria trapezului T i este x x i+ i ( f(x i ) + f(x i+ )) = b a ( f(xi ) + f(x i+ )), b şi deci formula trapezelor arată că ( ) a f x dx se poate aproxima pri suma ariilor trapezelor T i, i = 0,, -. Proceduri MAPLE petru calculul valorii aproximative a uei itegrale defiite folosid formula trapezelor: Procedura trapeze are drept parametri fucţia care se itegrează, limitele de itegrare, şi umărul de subitervale di diviziue. Procedura îtoarce 0
221 Metode Numerice valoarea aproximativă a itegralei obţiută aplicâd formula trapezelor. Procedura trapeze este similară, cu sigura deosebire că î locul umărului de subitervale se itroduce u umăr pozitiv eps ce reprezită eroarea maximă. > trapeze:=proc(f,a,b,) > local i,iab,h; > iab:=0;h:=(b-a)/;; > for i from to - do > iab:=iab+evalf(f(a+i*h)) > od; > iab:=iab+(f(a)+f(b))/;iab:=iab*h; > RETURN(evalf(iab)) > ed; > trapeze:=proc(f,a,b,eps) > local i,iab,h,;:=floor(abs((b-a)^3/(*eps))^(/))+; > prit(`numar de pasi`,); h:=(b-a)/;iab:=0; > for i from to - do > iab:=iab+evalf(f(a+i*h)) > od; > iab:=iab+(f(a)+f(b))/;iab:=iab*h; > RETURN(evalf(iab)) > ed; Exemple > f:=(x->x^7*l(x)+x*cos(x)); > evalf(it(f(x),x=..3)); > trapeze(f,,3,5); > trapeze(f,,3,50); > trapeze(f,,3,500); > trapeze(f,,3,0.0); f := x x 7 l( x ) + x cos( x )
222 Mădălia Roxaa Bueci > trapeze(f,,3,0.00); > trapeze(f,,3,0.000); > g:=(x->exp(-x^)); Numar de pasi, Numar de pasi, Numar de pasi, > evalf(it(g(x),x=0..)); > trapeze(g,0,,5); > trapeze(g,0,,50); > trapeze(g,0,,500); > trapeze(g,0,,0.0); > trapeze(g,0,,0.00); > trapeze(g,0,,0.000); > trapeze(g,0,,0^(-8)); > with(studet): > trapezoid(g(x),x=-..,5); g := x e ( x ) Numar de pasi, Numar de pasi, Numar de pasi, Numar de pasi, e (- ) i = + e i 5
223 Metode Numerice > evalf(trapezoid(g(x),x=-..,5)); > trapezoid(g(x),x=-..,0); + 5 e (- ) i = > evalf(trapezoid(g(x),x=-..,0)); e i 5 Comada trapezoid(g(x), x=a..b,) di pachetul studet îtoarce aproximaţia b itegralei g(x)dx a subitervale. obţiută pri aplicarea formulei trapezelor utilizâd VIII.4. Formula lui Simpso Fie f : [a, b] R o fucţie de clasă C 4. Aplicăm formula geerală de cuadratură petru ρ, =, x 0 = a, x = a + b, x =b (deci t 0 = - şi t = 0, t =). Obţiem b ( ) b a a f x dx (f(a) +4 a b ( ) 6 f + + f(b)) Cosiderăm o diviziue (x 0, x,., x ) a itervalului [a, b] cu pucte echidistate (x i = a + b a i, i = 0,,,,.) şi aplicăm pe fiecare subiterval [x i, x i+ ] cu i par formula de aproximare x f ( x) dx i+ xi ( f(x i ) +4f(x i+ ) + f(x i+ )) 6 x i + x i b x = i a x i= 0 i ipar f x dx, obţiem următoarea formulă de Ţiâd cot că f ( x) dx + ( ) cuadratură umită formula lui Simpso: 3
224 Mădălia Roxaa Bueci b ( ) b a a f x dx 6 Se poate arăta că restul (eroarea) este dat de: f a f b f x 4 f x ( ) + ( ) + ( ) + ( ) i i i= i=. b a b a f x dx f a f b f x 4 f x 6 ( ) ( ) + ( ) + ( ) + ( ) i i i= i= ( b a) ( 4 ) ( ) sup f x [ a,b] x. VIII.5. Algoritmul lui Romberg Fie f : [a, b] R o fucţie de clasă C. Cosiderăm o diviziue (x 0, x,., x ) a itervalului [a, b] cu pucte echidistate (x i = a + Aplicâd formula trapezelor: b a i, i = 0.. ). b a f (x)dx b a f ( a) + f ( b) + f ( xi ). i= Dacă otăm ϕ() = b a f ( a) + f ( b) + b aproximează ( ) a f x dx este dată de b i= ( ) f x ( ) ϕ ( ) ( ) a f x dx i b a h, atuci eroarea cu care ϕ() ( ) sup f " x [ a,b] x ude h = b a. Deci eroarea este de ordiul O( h ). Se poate arăta că 4
225 Metode Numerice ϕ() = b f (x)dx + a h + a 4 h + a 6 h + a 8 h +... a ude petru orice i a i depide doar de f (i). Pe de altă parte şi ca urmare ϕ(+) = = b f (x)dx + a a b a ( ) ( ) 4ϕ + ϕ 3 h a 4 h + + a 6 h + + a 8 h f (x)dx + 4 a h + 6 a 4 4 h + 64 a 6 6 h + b = a 56 a 8 8 h +... f (x)dx - 4 a 4 4 h a 6 6 h - 64 a 8 8 h +... Î cazul acestei formule de aproximare eroarea de truchiere este de ordiul O( h ). Ca şi î cazul extrapolării Richardso formula poate fi îbuătăţită succesiv. Petru aceasta otăm şi defiim triughiular: I(,m) = m I (,0) = ϕ() ( ) ( ) 4 I, m I, m m 4, m. Petru calculul recursiv al valorilor I(,m) se poate folosi tabelul I(0,0) I(,0) I(,) I(,0) I(,) I(,) 4 I(,0) I(,) I(,) I(,) Prima coloaă a acestui tabel poate fi calculată direct cu defiiţia: I(,0) =ϕ(). Î cazul elemetelor de pe celelalte coloae se observă că fiecare ditre ele depide de elemetul di stâga de pe aceeaşi liie şi de pe liia de deasupra di stâga. 5
226 Mădălia Roxaa Bueci Î situaţia î care h 0 = b-a >, alegem k astfel îcât b a k să fie suficiet de mic (de exemplu mai mic decât ) şi facem calculul recursiv al valorilor I(k+l,m) folosid tabelul triughiular: I(k,0) I(k+,0) I(k+,0) I(k+,) I(k+,) I(k+,) I(k+,0) I(k+,) I(k+,) I(k+,) Î fial se ţie seama că I(k++j,) este o aproximaţie buă a De obicei este mic ( = sau = 3). b f (x)dx câd j. Îcheiem acestă sectiue prezetâd o modalitate mai eficietă de calcul a lui I(,0) = ϕ(). Se observă că a I(+,0) = ϕ(+) = b a ( ) ( ) + f a f b f a + ih i= ( ) + = b a = b a f ( a) + f ( b) f ( a) + f ( b) i= ( ) ( ) + f a + (i )h + f a + (i)h = I(,0) + h + f ( a + (i )h ) + + ( ) ( ) + f a + ih + f a + (i )h + i= i= +. i= Astfel utilizâd această formulă recursivă calculul lui I(+,0) ecesită doar evaluri ale lui f î loc de + + câte ar ecesita dacă s-ar aplica defiiţia. 6
227 Metode Numerice VIII.6. Cuadratura Gauss Fie f : [a, b] R o fucţie cotiuă şi ρ : [a, b] R o podere. Presupuem că odurilor x 0, x,, x [a, b] sut date. Formula geerală de cuadratură petru calcului lui b f (x) ρ(x)dx dă itegrala poliomului de iterpolare asociat odurilor a x 0, x,, x şi valorilor f(x 0 ), f(x ),..., f(x ): b b b ( ) ( ) ( ) ( ) ( ) f (x) ρ(x)dx ρ (x) f x l x dx = f x ρ (x)l x dx = A f x i i i i i i a a i= 0 i= 0 a i= 0 b ude A i = ( ) ρ(x)li x dx petru orice i. Dacă u se impue ici o codiţie asupra a odurilor x 0, x,, x formula de cuadratură b f (x) ρ(x)dx A 0 f(x 0 ) + A f(x ) A f(x ) a este exactă petru orice poliom de grad. Există îsă posibilitatea alegerii a + oduri astfel îcât formula de cuadratură să fie exactă petru orice polioam de grad +. Gauss a arătat că cele + oduri trebuie să fie rădăcile uui poliom q de grad + cu proprietatea că b k q(x)x ρ(x)dx = 0 petru orice 0 k. a Să presupuem că poliomul q are proprietatea de mai sus şi să arătăm că formula de cuadratură petru care odurile sut rădăciile lui q este exactă petru orice poliom f de grad +. Efectuâd împărţirea lui f la q rezultă că există polioamele p şi r de grade astfel îcât Petru orice i fie b A i = ( ) a ρ(x)l x dx i f(x) = p(x)q(x) + r(x). 7
228 Mădălia Roxaa Bueci = ( x x )( x x )...( x x )( x x + )...( x x ) ρ ( )( ) ( )( ) ( ) ( ) x x x x... x x x x... x x b 0 i i a i 0 i i i i i+ i x dx Formula geerală de cuadratură fiid exactă petru orice poliom de grad avem b f (x) ρ(x)dx = ( ) ( ) ( ) a Pe de altă parte avem b b ( ) a p x q x + r x ρ(x)dx = p( x) q ( x ) ρ(x)dx + r ( x ) a b = r ( x ) a ρ(x)dx = A r ( x ) i= 0 i i b a ρ(x)dx Aif ( xi ) = Ai ( p( xi ) q ( xi ) + r ( xi )) = Air ( xi ) i= 0 i= 0. i= 0 deoarece x i este rădăciă a lui q petru orice i. Î coseciţă, b f (x) ρ(x)dx = Aif ( xi ). a i= 0 Teorema 8. (cuadratura Gauss) Fie ρ : [a, b] R o podere. Fie {x i } i cele + oduri ale poliomului q + de grad + cu prorietatea că 0 petru orice 0 k. Petru orice i fie b A i = ( ) a ρ(x)l x dx i b k q + (x)x ρ(x)dx = a b ( x x )( ) ( )( ) ( ) = 0 x x... x xi x x i+... x x ρ( x) a ( x x )( x x )...( x x )( x x )...( x x ) dx. i 0 i i i i i+ i Atuci formula de cuadratură 8
229 Metode Numerice b f (x) ρ(x)dx A 0 f(x 0 ) + A f(x ) A f(x ) a este exactă petru orice poliom de grad +. Restul (eroarea) este dat de b a i= 0 ( + ) ( ξ) ( + )! b f i ( i ) + a petru u aumit ξ (a, b). ( ) ( ) f (x) ρ(x)dx A f x q x ρ x dx Particularizăm î cotiuare poderea ρ. Dacă ρ(x) = pe itevalul [a,b], atuci poliomele q care satisfac codiţiile di teorema precedetă sut polioamele Legedre L. Expresia acestor polioame este dată de! d! dx L (x) = ( x a) ( x b) ( ) Restul (eroarea) formulei de cuadratură î situaţia î care se folosesc (! ) ( b a ) f ( ) ( ξ) ca oduri rădăciile lui L este dat de 3 ( )! ( + ) Dacă ρ(x) = x pe itervalul (-,), atuci poliomele q care satisfac codiţiile di teorema precedetă sut polioamele Cebîşev de speţa I T. Polioamele Cebîşev de prima speţă pot fi defiite recursiv pri : T 0 (x) =, T (x) = x, T + (x) = xt + (x) T (x), 0, sau pot fi defiite pri T (x) = cos( arccos(x)). Rădăciile poliomului Cebîşev de grad + sut: π Î acest caz A i = + i + x i = cos π +, 0 i. petru orice i = 0,...,. 9
230 Mădălia Roxaa Bueci 3. Dacă ρ(x) = x pe itervalul [-, ], atuci poliomele q care satisfac codiţiile di teorema precedetă sut polioamele Cebîşev de speţa a II-a U. Polioamele Cebîşev de prima speţă pot fi defiite recursiv pri : U 0 (x) =, U (x) = x, U + (x) = xu + (x) U (x), 0, sau pot fi defiite pri U (x) = poliomului Cebîşev U + de grad + sut: i + x i = cos π +, 0 i. (( + ) ) si ( arccos x) si arccos x i Î acest caz A i = π si + π petru orice i = 0,..., Rădăciile 4. Dacă ρ(x) =(-x) α (+x) β (α, β> -) pe itervalul (-,), atuci poliomele q care satisfac codiţiile di teorema precedetă sut polioamele Jacobi. Itervalul [a, b] poate fi trasformat î itervalul [-, ] cu ajutorul schimbării de variabilă t = b a b + a x -. VIII.7. Formule petru calculul aproximativ al uei itegrale duble Fie ϕ, ϕ : [a, b] R două fucţii de clsă C şi fie D = {(x,y) R a x b, ϕ (x) y ϕ (x) }. Atuci D este u domeiu simplu. Cosiderăm o fucţie cotiuă f : D R. Ne puem problema aproximării itegralei ( ) putem trece la itegrale iterate: f ( x, y) dxdy = ( ) D b a ϕ ϕ f x, y dxdy. D fiid u domeiu simplu D ( x) f x, y dy dx ( x) = ( ) b a F x dx 30
231 Metode Numerice ude F(x) = ( ) ϕ ϕ ( x) f x, y dy. Cosiderăm o reţea de oduri (x i, y j ), i = 0,,, şi ( x) b j = 0,,, m. Aplicâd itegralei ( ) ude D ( ) a F x dx o formulă de cuadratură se obţie: f x, y dxdy AiF( xi ) ( x ) ( x ) i= 0 ϕ f x i, y dy. ϕ i F(x i ) = i ( ) Aplicâd şi acestei ultime itegrale o formulă de cuadratură: rezultă formula de aproximare m i F(x i ) Bijf ( x i, y j) j= 0 f ( x, y) dxdy AiBijf ( x i, y j) D m i. i= 0 j= 0 Să cosiderăm cazul î care D este u dreptughi: şi reţeaua este formată di puctele D = {(x,y) R a x b, c y d }. x i = a + ih, i = 0,,,, h = b a y i = c + jk, j = 0,,, m, k = d c m Y d y i+ y i c a x i x i+ b X 3
232 Mădălia Roxaa Bueci Vom obţie valoarea aproximativă a itegralei fucţiei f pe dreptughiul de vârfuri (x i, y i ), (x i, y i+ ), (x i+, y i ) şi (x i+, y i+ ) pri aplicarea repetată a formulei trapezelor: = x i + y j + I ij = ( ) x i y j f x, y dy dx + ( ) k x x = i+ i+ ( j) + ( j+ ) x i f x, y dx f x, y dx x i ( ) + ( + ) x k i f x, y x j f x, y j dx i ( ) k h f ( x, i y j) + f ( x, i+ y j) + f ( x i, y j+ ) + f ( x i+, y j+ ) Astfel valoarea aproximativă a itegralei D ( ) f x, y dxdy = ( ) m m kh Iij f ( x, i y j) + f ( x, i+ y j) + f ( x i, y j+ ) + f ( x i+, y j+ ) i= 0 j= 0 i= 0 j= 0 4. Presupuem că x i = a + ih, i = 0,,,, h = b a y i = c + jk, j = 0,,, m, k = d c m Dacă petru calculul itegralei I ij cu i şi j pare se aplică formula Simpso repetată se obţie x i + y j + I ij = ( ) x i y j f x, y dy dx ( ) x i + ( ) ( ) ( ) j + j + + j + k f x, y 4f x, y f x, y dx x i 6 f x, y dx 4 f x, y dx f x, y dx k x = i x x + ( ) i + j ( j ) i ( j+ ) 3 x x x i i i 3
233 Metode Numerice ( i j ) ( i+ j) ( i j+ ) ( i+ j+ ) ( i+ j) ( i+ j+ ) ( i+ j+ ) ( i+ j+ ) ( i+ j+ ) hk (f x, y + f x, y + f x, y + f x, y + 9 Notăm ( ) + 4 f x, y + f x y + f x, y + f x, y + + 6f x, y ) ( ) ( + ) ( + ) ( + + ) ( i+ j) ( i+ j+ ) ( i+ j+ ) ( i+ j+ ) ( i+ j+ ) hk F ij = (f x i, y j + f x i, y j + f x i, y j + f x i, y j + 9 Atuci ( ) + 4 f x, y + f x y + f x, y + f x, y + + 6f x, y ) D ( ) f x, y dxdy = m m Ii, j Fi, j i= 0 j= 0 i= 0 j= 0 Procedura dtrapeze are drept parametri fucţia care se itegrează, limitele de itegrare, şi umerele şi m care determiă puctele di reţea. Procedura returează valoarea aproximativă a itegralei duble obţiută pri aplicarea repetată a formulei trapezelor. > dtrapeze := proc(f, a, b, c, d,, m) > local i, j, iabcd, h, k; > iabcd := 0; > h := (b - a)/; > k := (d - c)/m; > for i from 0 to - do for j from 0 to m - do iabcd := > iabcd + f(a + i*h, c + j*k)+ f(a + i*h, c + (j + )*k) + f(a + (i + )*h, c + j*k) + f(a + (i + )*h, c + (j + )*k) > od > od; > iabcd := /4*iabcd*h*k; > RETURN(evalf(iabcd)) > ed; Exemple > f:=((x,y)->x^7*l(x+y)+x*y*cos(x)); 33
234 Mădălia Roxaa Bueci f := ( x, y ) x 7 l ( x + y ) + x y cos( x ) > evalf(it(it(f(x,y),y=..3),x=..3)); > evalf(dtrapeze(f,,3,,3,5,0)); > dtrapeze(f,.,3.,.,3.,5,0);
235 Metode Numerice Aexa : Iiţiere î Maple A. Structura iteră. Categorii de comezi MAPLE. MAPLE este u mediu de programare petru calcule umerice şi simbolice. Calculul simbolic este calculul cu variabile şi costate care respectă regulile algebrice, ale aalizei şi ale altor ramuri ale matematicii. MAPLE-ul permite maipularea formulelor care utilizează simboluri, ecuoscute şi operaţii formale, î comparaţie cu limbajele de programare tradiţioale care utilizează doar date umerice, caractere şi şiruri de caractere. Se îcadrează î aceeaşi clasă de produse software ca şi Mathematica, MathCAD, MATLAB şi TKSolver. MAPLE are trei compoete de bază: ucleul (kerel), biblioteca stadard (library) şi iterfaţă cu utilizatorul (iterface). Nucleul este scris î C şi realizează cea mai mare parte a calculelor făcute de sistem. Biblioteca stadard este automat îcărcată î memorie la deschidere uei sesiui MAPLE. Î afara acestei biblioteci există o bibliotecă extisă cu rutie destiate rezolvării uor probleme mai complicate, ca de exemplu, rezolvarea sistemelor de ecuaţii, probleme de statistică sau algebră liiară. Această bibliotecă u este îcărcată automat î memorie, ci trebuie accesată, atuci câd este ecesar. Iterfaţa cu utilizatorul este scrisă î C. Iterfaţa petru sistemul de operare Widows este bazată pe ferestre. O foaie (formular) de programare MAPLE (fişier MAPLE, fişier cu extesia.mws) existetă poate fi îcărcată selectâd Ope di meiul File, iar o foaie ouă de programare MAPLE poate fi creată selectâd New di meiul File. Salvarea foii de programare MAPLE se realizează selectâd Save sau Save as (petru salvarea sub u alt ume) di meiul File. Foia de programare se poate salva sub forma uui fişier text sau latex dacă se selectează Export as di meiu File. Îcheierea sesiuii MAPLE se face selectâd Exit di meiul File, sau pri clic pe butoul de îchidere X. 35
236 Mădălia Roxaa Bueci Foile de programare MAPLE costau î cici tipuri de zoe: text, iput (itrare), ouput (ieşire), D graphics (grafică D), 3D graphics (grafică 3D), şi aimatio (aimaţie). Î zoa text se itroduce textul ecesar documetării. Zoa iput este zoa î care se itroduc comezile MAPLE şi este recuoscută după promptul > prezet î margiea di stâga. Îtiderea zoei iput sau a zoei text este arătată pritr-o bară verticală î partea stâgă. Comutarea ître cele două zoe se poate face cu ajutorul tastei fucţioale F5 sau di bara de meiu. Zoa output este geerată automat la furizarea răspusului. Colecţia de butoae şi iformaţia afişată î bara de cotext (sub bara de istrumete) depid de coţiutul curet defiit tipul de zoă î care se găseşte cursorul. Iformaţia despre foia de programare curetă este afişată î bara de stare, î partea de jos a ecraului. MAPLE este u mediu iterpretat. Explicăm î cotiuare ce îseamă aceasta. Petru ca u program (idiferet de limbajul î care este scris) să poată fi executat de calculator este ecesar să fi tradus î limbaj maşiă. Există trei modalităţi pricipale petru a obţie această traducere: iterpretarea, asamblarea şi compilarea. Programele asamblate şi cele compilate sut traduse î limbaj maşiă îaite ca să fie utilizate. Iterpretarea este u tip special de traducere, î care programul este tradus î istrucţiui î limbaj maşiă di mers, adică î timpul execuţiei sale. Mai precis, programul care trebuie iterpretat (să-l umim P) este preluat de u program de iterpretare (iterpretorul I). Câd se utilizează programul P, calculatorul rulează de fapt iterpretorul I, iar iterpretorul I execută paşii programului P. Iterpretorul verifică textul programului P şi îdeplieşte istrucţiuile acestuia pas cu pas. Iterpretarea este flexibilă deoarece u program iterpretat poate fi adaptat, schimbat sau revizuit di mers. Sigur, iterpretarea are şi dezavataje asupra cărora u isistăm aici (de exemplu, programele iterpretate u pot fi executate dacă u există şi u iterpretor corespuzător). Fiid u mediu iterpretat MAPLE permite realizare de rutie iteractive. Apariţia promptului > î fereastra MAPLE semifică faptul că se poate itroduce o comadă. Fiecare comadă (cu excepţia comezii?) trebuie îcheiată cu puct şi virgulă (;) sau două pucte (:). Omiterea acestora geerează o eroare de sitaxă. Rectificarea se face tipărid ; sau : pe o liie ouă. Fiecare comada este executată 36
237 Metode Numerice după apăsarea tastei ENTER. Dacă s-a utilizat : petru îcheierea comezii, comada este executată fără a se afişa rezultatele, iar î cazul utilizării ; se afişează şi rezultatele. MAPLE dispue de peste 000 de fucţii predefiite şi comezi. Fiecare comadă este itrodusă, î zoa iput, î felul următor: > ume_comada(param,param,...); Numele comezilor a fost ales astfel îcât pe de o parte să fie apropiat de fucţioalitatea comezii şi pe de altă parte să fie cât mai scurt posibil. MAPLE este u mediu case-sesitive (se face disticţie ître literele mari şi literele mici). Cele mai multe comezi îcep cu literă mică şi au î corespodeţă o aceeaşi comadă care îcepe cu literă mare. Aceasta di urmă poartă deumirea de comadă iertă şi rolul ei este doar de afişare matematică a uei expresii. Cele mai multe comezi MAPLE ecesită o listă de parametri la itrare. Această listă poate coţie de exemplu, umere, expresii, mulţimi, etc., sau poate să u coţiă ici u parametru. Idiferet de umărul de parametri specificaţi, ei trebuie icluşi ître parateze rotude (). Toate comezile au umăr miim de parametri de tip precizat, de cele mai multe ori îtr-o ordie precizată. Multe comezi pot fi utilizate cu u umăr de parametri mai mare strict decât acest umăr miim de parametri. Aceşti extra parametri reprezită de obicei opţiui de cotrol al fucţioării comezii respective. Comezile MAPLE pot fi folosite ca parametri. Acestea sut evaluate şi rezultatele lor sut iserate î lista de parametri. Comezile MAPLE se pot clasifica î trei categorii:. Comezi care se îcarcă automat la deschiderea uei sesiui MAPLE. Acestea pot fi apelate direct aşa cum s-a precizat mai sus.. Comezi di biblioteca extisă. Îaite de a le folosi acestea trebuie mai îtâi îcărcate î memorie cu ajutorul comezii readlib sub forma > readlib(ume_comada); 3. Comezi care aparţi uor pachete specializate. Există două modalităţi de utilizare a acestor comezi: pri specificarea pachetului sub forma: > ume_pachet[ume_comada](param,param,...); 37
238 Mădălia Roxaa Bueci cu ajutorul comezii with. U apel de forma > with(ume_pachet); are ca urmare îcărcarea î memorie şi afişarea î zoa ouput a tuturor comezilor di pachet. Pâă la îcheierea sesiuii MAPLE acestea pot fi utilizate ca şi cele di prima categorie. Di cele de mai sus rezultă că u este îtotdeaua suficiet să se cuoască umele uei comezii. Ueori ea trebuie îcărcată di bibliotecă sau ditr-u pachet. Dacă u s-a făcut acest lucru şi s-a itrodus comada, MAPLE u geerează u mesaj de eroare, ci afişează î zoa output, comada itrodusă î zoa iput. Î acest caz trebuie verificat dacă este scrisă corect comada (iclusiv dacă literele mari şi mici se potrivesc), sau trebuie îcărcată î memorie. Iformaţii asupra modului corect de itroducere a uei comezi se pot obţie cu ajutorul comezii help. Există mai mute modalităţi de utilizare a acestei comezi. Este recomadabilă, următoarea formă: >? ume_comada O comadă de forma: >? afişează iformaţii geerale despre structura help-ului. Altă variată presupue u apel de forma > help(`ume_comada`); De remarcat faptul că umele comezii este iclus ître apostrofuri îtoarse (backquotes). A.. Operatori, costate şi fucţii predefiite î MAPLE. Expresii. O expresie este o combiaţie validă de operatori şi variabile, costate, şi apeluri de fucţii. Operaţie Operator Exemple Aduare + x+y 38
239 Metode Numerice Scădere - x-y Opus - -x Îmulţire * x*y Împărţire / x/y Ridicare la putere (x y ) ** sau ^ x**y sau x^y Tabelul precedet coţie operatorii aritmetici de bază di MAPLE. Precedeţa operatorilor este aceeaşi ca î majoritatea limbajelor de programare. Mai îtâi sut evaluate expresiile di parateze. Î lista următoare prioritatea cade de sus î jos:. (operator uar). **, ^ 3. *, / 4. +, -(scădere) De remarcat faptul că expoeţierea succesivă u e validă. Astfel MAPLE u poate evalua x^y^z. O expresie de acest fel trebuie itrodusă sub forma x^(y^z). Ori de câte ori există ambiguităţi trebuie utilizate ( ). Următorul tabel prezită fucţiile de bază di MAPLE ce pot itervei î expresiile aritmetice. Notaţie MAPLE Semificaţie abs(x) x (modulul) iquo(x,y) partea îtreagă a împărţirii x/y irem(x,y) restul împărţirii lui x la y truc(x) cel mai mare umăr îtreg x, dacă x 0, sau cel mai mic umăr îtreg x, dacă x < 0 frac(x) x-truc(x) roud(x) rotujeşte pe x la cel mai apropiat îtreg floor(x) cel mai mare umăr îtreg x ceil(x) cel mai mic umăr îtreg x 39
240 Mădălia Roxaa Bueci sqrt(x) sau x^(/) exp(x) l(x) sau log(x) si(x) cos(x) ta(x) e x x lx (logaritm atural) six cosx tgx Facem câteva remarci asupra fucţiilor irem şi iqou (deoarece u respectă îtocmai teorema împărţirii cu rest). Astfel dacă m şi sut două umere îtregi, este eul şi r este umărul îtreg returat de irem, atuci este satisfăcută relaţia: m = *q + r, abs(r) < abs() şi m*r 0. Dacă m şi u sut amâdouă umere îtregi, atuci irem rămâe eevaluată. Ambele fucţii pot fi utilizate şi cu câte trei parametri. Dacă al treilea parametru este prezet î fucţia irem, atuci lui i se asigează câtul, iar î cazul fucţiei iquo i se asigează restul împărţirii. Exemple: > irem(9,4,'q'); > q; 7 > iquo(9,4,'r'); 7 > r; > irem(-9,4); - > irem(9,-4); > irem(-9,-4); - > iquo(-9,4); -7 > iquo(9,-4); 40
241 Metode Numerice -7 > iquo(-9,-4); 7 Fucţiile rem şi quo se aplică polioamelor şi reprezită aaloagele fucţiilor irem şi iquo. Acestea cer obligatoriu al treilea parametru ce idică edetermiata î raport cu care se cosideră poliomul. Opţioal admit al patrulea parametru, cu acelaşi rol ca parametru 3 di fucţiile irem şi iquo. Asfel dacă a şi b sut două polioame, b este eul, r restul returat de rem şi q este câtul returat de quo, atuci este satisfăcută relaţia: Exemple: a = b*q + r, grad(r) < grad() > rem(x^5+*x+, x^+x+, x, 'q'); > q; > quo(x^5+*x+, x^+x+, x); > quo(x^5+*y+z, x^+x+, x,'r'); > r; x x 3 x + x 3 x + x 3 x + y + z x Fucţia factorial(k) calculează k! (k factorial, k). Acelaşi efect î are şi k!, după cum rezultă di exemplele de mai jos: > factorial(4); > 4!; > 6!; > factorial(factorial(3))=3!!; = 70 Tabelul de mai jos coţie câteva costate MAPLE: Costată Notaţia matematică 4
242 Mădălia Roxaa Bueci Pi ifiity gamma true false π costata lui Euler adevăr, î cazul evaluării booleee fals, î cazul evaluării booleee Numărul complex i (i = -) este desemat î MAPLE pri I. De reţiut că pi (scris cu literă mică) se referă la litera grecească π. Tipul booleea î MAPLE are două valori: true şi false. Expresiile booleee (logice) pot fi formate cu ajutorul operatorilor de comparaţie şi operatorilor logici. Următoarele două tabele coţi aceşti operatori. Operator Simbol Exemple egal = x=y diferit <> x<>y mai mare > x>y mai mare egal >= x>=y mai mic < x<y mai mic egal <= x<=y Operator Simbol Exemple Negaţie (o) uar ot ot x Cojucţie (şi) ad x ad y disjucţie (sau) or x or y Ordiea de efectuare a operaţiilor este: ot, ad, or. Î MAPLE există expresii similare cu expresiile di C formate cu operatorul virgulă. Astfel o secveţă de expresii î MAPLE este u şir de expresii separate ître ele pri virgulă. Cele mai multe fucţii di MAPLE cer la itrare o secveţă de expresii, şi îtorc u rezultat ce coţie o secveţă de istrucţiui. Cel mai simplu mod de a crea o secveţă de istrucţiui este: >,,3,4,5; 4
243 Metode Numerice > a=,b=a+,c+;,, 3, 4, 5 a =, b = a +, c + Alterativ, există alte două moduri de a crea secveţe de istrucţiui î MAPLE: cu ajutorul operatorului $ sau cu ajutorul comezii seq. Următoarele exemple sut edificatoare: > a$5; a, a, a, a, a > $..7; > i^$i=..4; > seq(i!,i=..4);, 3, 4, 5, 6, 7, 4, 9, 6,, 6, 4 > seq(i!!,i=..4);,, 70, Secveţă vidă este desemată pri NULL. A.3. Numere, şiruri şi idetificatori. Costatele umerice di MAPLE sut de trei tipuri: îtregi raţioale î virgulă mobilă Costatele îtregi sut şiruri de cifre zecimale (0..9) evetual precedate de u sem (+,-) reprezetâd u umăr îtreg. Numărul maxim de cifre permise este depedet de sistem, dar î geeral este mai mare de Nu poate fi aflat cu ajutorul comezii kerelopts(maxdigits). Exemple de costate îtregi: > 0; 0 43
244 Mădălia Roxaa Bueci > 3; > -6789; > ; Costatele raţioale utilizează operatorul de împărţire / petru a separa umărătorul de umitor. Astfel m/ cu m şi costate îtregi reprezită umărul m raţioal. Exemple de costate raţioale: > /3; > 6/7; > 4/6; > 4/; > -39/3; Se observă că MAPLE face automat simplificarea fracţiilor. Reprezetarea uei costate î virgulă mobilă coţie î geeral câmpurile următoare: partea îtreagă puctul zecimal partea fracţioară e sau E şi u expoet cu sem (opţioal); 44
245 Metode Numerice Se poate omite partea îtreagă sau partea fracţioară, dar u amâdouă. De asemeea, se poate omite puctul zecimal sau litera e(e) şi expoetul, dar u amâdouă. Exemple de costate î virgulă mobilă: >.3;.3 > e-9; >.34; > 3E56; >.; Costate î virgulă mobilă pot fi obţiute şi cu comada Float. Această comadă are forma Float(matisa,expoet); şi îtoarce matisa*0 ^expoet. > Float(3,56); Expresiile aritmetice cu operazi costate îtregi sau raţioale sut evaluate exact î MAPLE (rezultatul este o costată raţioală sau o costată îtreagă). Exemple: > /3+4/5; 7 5 > /3+8; > /3+/3;
246 Mădălia Roxaa Bueci Î cazul î care expresia coţie costate î virgulă mobilă, atuci costatele îtregi şi cele raţioale (care apar evetual î expresie) sut covertite î virgulă mobilă (sut aproximate cu costate î virgulă mobilă). Rezultatul expresiei este î acest caz o costată î virgulă mobilă. Exemple: > /3.+4/5; >./3+8; > /3+/3.; > e-; Orice umăr real eul x poate fi scris sub formă ormalizată, î baza 0: x = ±m 0 p cu 0, m<, (m = matisa). Î calcule se reţi de obicei u umăr fiit de cifre zecimale ale matisei. Numărul de cifre care se reţi se umeşte umăr de cifre semificative. Numărul de cifre semificative poate fi cotrolat î MAPLE cu ajutorul variabilei globale Digits. Valoarea implicită petru petru digits este 0. Exemple: >./7; > Digits:=0; Digits := 0 >./7; Deci MAPLE poate lucra î virgulă mobilă cu o precizie teoretic ifiită. Petru a determia evaluarea uei expresii î virgulă mobilă (chiar dacă toţi operazii di expresie sut îtregi sau raţioali) se poate folosi comada evalf. evalf(expresie) determiă evaluarea expresiei la o valoare î virgulă mobilă, cu umărul de cifre semificative stabilit de variabila Digits. 46
247 Metode Numerice evalf(expresie,) determiă evaluarea expresiei la o valoare î virgulă mobilă, utilizâd de cifre semificative (valoarea variabilei Digits u este afectată). Exemple: > evalf(/7); > evalf(/7,0); > evalf(pi); > evalf(pi,30); Există o îtreagă familie de fucţii de evaluare umerică şi algebrică a expresiilor: eval evaluează î îtregime o expresie evala evaluează algebric o expresie evalf evaluează umeric o expresie evalb evaluează boolea o expresie evalm evaluează matriceal o expresie evalc evaluează î mulţimea umerelor complexe o expresie Î MAPLE u şir de caractere (strig) costă ditr-o succesiue de caractere cuprise ître apostrofuri îtoarse (backquote) (`) sau ître ghilimele ( ). Operatorul de cocateare petru şirurile de caractere î MAPLE este (de asemeea se poate utiliza comada cat). Exemple: > `Acesta este u strig i MAPLE`; Acesta este u strig i MAPLE > `+=?`; +=? > `acesta este` ` u strig`; acesta este u strig U idetificator î MAPLE este u şir de caractere alfabetice (A-Z, a-z), cifre (0-9) şi caracterul _ (liiuţa de subliiere, uderlie), şir î care primul 47
248 Mădălia Roxaa Bueci caracter este u caracter alfabetic (A-Z, a-z). Lugimea maximă a uui idetificator este depedetă de sistem. MAPLE este case-sesitive, ceea ce îsemă că idetificatorul ume este diferit de idetificatorul Nume. MAPLE coţie u umăr de idetificatori predefiiţi (idetificatori rezervaţi). O listă a acestora poate fi obţiută cu comada >?iiame sau > help(`iiame`); A.4. Comezi de calcul î MAPLE Tabelul de mai jos coţie comezile di MAPLE petru difereţiere, itegrare şi îsumare. Notaţie MAPLE Semificaţie diff(f(x),x) derivată parţială Notaţie matematică f x it(f(x),x) itegrală idefiită f ( x) sum(f(),) it(f(x),x=a..b) suma seriei itegrală defiită sum(f(k),k=a..b) sumă de la a la b dx = b f ( ) ( ) a f x dx b k= a f ( k) limit(f(x), x=a) limita fucţiei f î a; lim f ( x) x a Diff, It, Sum, Limit reprezită comezile ierte corespuzătoare. Comada limit admite u al treilea parametru opţioal (dacă acesta este left se calculează limita la stâga, dacă este right se calculează limita la dreapta 48
249 Metode Numerice Exemple: > diff(si(x),x); > diff(cox(x),y); cos( x ) 0 > diff(x*si(cos(x)),x); si ( cos( x) ) x cos ( cos( x ) ) si( x ) > diff(l(x),x); > Diff(l(x),x); x d l( x ) dx > Diff(l(x),x) = diff(l(x),x); d l( x) dx > Diff(si(x)*ta(y),x,y)= diff(si(x)*ta(y),x,y); = y x ( si( x ) ta( y ) ) cos( x ) ( + ta( y) ) = x > it( si(x), x ); > It( si(x), x ); > it( si(x), x=0..pi ); cos( x ) si( x ) dx > It( x^*l(x), x=..3 )=it( x^*l(x), x=..3 ); 3 x l( x ) dx = 9 l( 3 ) > It( It(exp(-x^-y^), x=0..ifiity ), y=0..ifiity) =it(it( exp(-x^-y^), x=0..ifiity ), y=0..ifiity);
250 Mădălia Roxaa Bueci 0 e ( ) 0 x y dx dy = π 4 > sum(k^,k=..4); > Sum(k^,k=..4); 30 4 k k = > Sum(k^,k=..)=sum(k^,k=..); k = k ( + ) 3 ( + ) = > sum(/k^,k=..ifiity); π 6 > Sum(/k!,k=0..ifiity)=sum(/k!,k=0..ifiity); k = 0 k! = e > limit(si(x)/x, x=0); > Limit(si(x)/x, x=0); lim x 0 si( x ) x > Limit(si(x)/x, x=0)=limit(si(x)/x, x=0); lim x 0 si( x ) x = > Limit((cos(*x)-)/x^, x=0)=limit((cos(*x)-)/x^, x=0); lim x 0 cos( x ) = - x > Limit(exp(x), x=ifiity)=limit(exp(x), x=ifiity); lim e x x = > Limit(exp(x), x=-ifiity)=limit(exp(x), x=-ifiity); lim x ( ) e x = 0 50
251 Metode Numerice > Limit(/x, x=0)=limit(/x, x=0); lim x 0 x = udefied > Limit(/x, x=0, left)=limit(/x, x=0, left); lim x 0- x = > Limit(/x, x=0, right)=limit(/x, x=0, right); lim x 0+ x = Prezetăm î cotiuare câteva exemple cu comezile expad, factor şi simplify. Pricipalul rol al comezii expad este aplicarea distributivităţii produsului faţă de aduare. Comada factor se aplică petru descompuerea î factori ireductibili a polioamelor de mai multe variabile. Iar comada simplify aplică regulile de simplificare îtr-o expresie. > expad((x^-y^)^*(x^+y^)^); > factor(x^6-y^6); X 8 X 4 Y 4 + Y 8 ( X Y ) ( X + Y ) ( X + X Y + Y ) ( X X Y + Y ) > simplify((x^6-y^6)/(x^+x*y+y^)); X 4 Y X 3 + Y 3 X Y 4 A.5. Reprezetări grafice î MAPLE Comezile destiate reprezetărilor grafice sut icluse î pachetul plots. Numele pachetului trebuie să preceadă fiecare comadă. Altă variată presupue îcărcarea îtregului pachet î memorie cu ajutorul comezii with: > with(plots); 5
252 Mădălia Roxaa Bueci [ aimate, aimate3d, aimatecurve, arrow, chagecoords, complexplot, complexplot3d, coformal, coformal3d, cotourplot, cotourplot3d, coordplot, coordplot3d, cyliderplot, desityplot, display, display3d, fieldplot, fieldplot3d, gradplot, gradplot3d, graphplot3d, implicitplot, implicitplot3d, iequal, iteractive, listcotplot, listcotplot3d, listdesityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, odeplot, pareto, plotcompare, poitplot, poitplot3d, polarplot, polygoplot, polygoplot3d, polyhedra_supported, polyhedraplot, replot, rootlocus, semilogplot, setoptios, setoptios3d, spacecurve, sparsematrixplot, sphereplot, surfdata, textplot, textplot3d, tubeplot] Prezetăm câteva exemple cu comezile plot, plot3d şi aimate3d. Plot este destiată reprezetărilor grafice î pla şi poate fi folosită sub mai multe forme. Prezetăm de fiecare dată umărul miim de parametri ceruţi. Notaţie MAPLE plot(f(x),x = a..b) plot([f(x),g(x), ],x = a..b) Curba/Curbele reprezetate y = f(x), x [a,b] plot([f(t),g(t),t = a..b]) x = f ( t) y = g( t) y = f(x),y = g(x), x [a,b] t [ a, b] Reprezetarea grafică se face coform cu opţiuile (de stil, culoare, axe, coordoate, rezoluţie ) idicate î comadă sau î raport cu cele implicite. Uele di aceste opţiui se pot stabili şi di meiul cotextual: se itroduce comada de reprezetare grafică a curbei, iar apoi se selectează di bara de cotext, sau pri clic cu butoul drept al mouse-ului pe grafic, opţiuile dorite. Implicit se folosesc coordoatele carteziee. Dacă se doreşte utilizarea altor coordoate, acestea trebuie specificate, pri itroducerea î lista de opţiui sub forma coords = ume_coordoate. O opţiue de forma discot=true, determiă apelul comezii Discot petru determiarea puctelor de discotiuitate a fucţiei ce se reprezită grafic. Exemple: > plot(si(x)*l(x), x=pi..8*pi, color=black); 5
253 Metode Numerice > plot([si(x),cos(x)],x=0..*pi,title=`sius si cosius`); >plot([si(t),cos(t),t=0..*pi],title=`cerc`,color=black); > plot(si(*t),t=0..*pi,coords=polar, color=black); 53
254 Mădălia Roxaa Bueci >plot(si(x)/x, x=-3*pi..3*pi,discot=true,color=black); Comada plot3d este destiată reprezetării grafice a suprafeţelor î spaţiu tridimesioal. Ca şi î cazul comezii plot reprezetarea grafică se face coform cu opţiuile idicate î comadă sau î raport cu cele implicite. Uele di aceste opţiui se pot stabili şi di meiul cotextual. Comada plot3d poate fi folosită sub mai multe forme. Prezetăm de fiecare dată umărul miim de parametri ceruţi. Notaţie MAPLE plot3d(f(x,y),x = a..b,y=c..d) plot({f(x,y),g(x,y)},x = a..b,y=c..d) plot([f(u,v),g(u,v),h(u,v)],u=a..b,v=c.. d) Suprafaţa/Suprafe ţele reprezetate z = f(x,y), (x,y) [a,b] [c,d] z = f(x,y),z=g(x,y) (x,y) [a,b] [c,d] x = f y = g z = h ( u, v) ( u, v) ( u, v) 54
255 Metode Numerice Exemple >plot3d(cos(x)*si(y),x=-*pi..*pi,y=-*pi..*pi); >plot3d([v*cos(u),v*si(u),v*l(u)],u=pi..4*pi,v=0..); Comezile aimate şi aimate3d sut destiate aimaţiei î pla şi spaţiu. Comada aimate3d(f(x,y,t),x=a..b,y=b..c,t=t..t) creează aimaţie cu ajutorul cadrelor obţiute pri reprezetarea grafică a suprafeţelor z t = f(x,y,t), (x,y) [a,b] [c,d] petru valori ale lui t î itervalul [t,t]. Numărul de cadre poate fi stabilit cu ajutorul opţiuii frames (implicit sut 8). Exemplu: >aimate3d(cos(x)*si(t*y),x=-pi..pi,y=-pi..pi,t=..); 55
6 n=1. cos 2n. 6 n=1. n=1. este CONV (fiind seria armonică pentru α = 6 > 1), rezultă
Semiar 5 Serii cu termei oarecare Probleme rezolvate Problema 5 Să se determie atura seriei cos 5 cos Soluţie 5 Şirul a 5 este cu termei oarecare Studiem absolut covergeţa seriei Petru că cos a 5 5 5 şi
Διαβάστε περισσότεραIII. Reprezentarea informaţiei în sistemele de calcul
Metode Numerice Curs 3 III. Reprezentarea informaţiei în sistemele de calcul III.1. Reprezentarea internă a numerelor întregi III. 1.1. Reprezentarea internă a numerelor întregi fără semn (pozitive) Reprezentarea
Διαβάστε περισσότεραSEMINARUL 3. Cap. II Serii de numere reale. asociat seriei. (3n 5)(3n 2) + 1. (3n 2)(3n+1) (3n 2) (3n + 1) = a
Capitolul II: Serii de umere reale. Lect. dr. Lucia Maticiuc Facultatea de Hidrotehică, Geodezie şi Igieria Mediului Matematici Superioare, Semestrul I, Lector dr. Lucia MATICIUC SEMINARUL 3. Cap. II Serii
Διαβάστε περισσότεραInegalitati. I. Monotonia functiilor
Iegalitati I acest compartimet vor fi prezetate diverse metode de demostrare a iegalitatilor, utilizad metodele propuse vor fi demostrate atat iegalitati clasice precum si iegalitati propuse la diferite
Διαβάστε περισσότεραTEMA 9: FUNCȚII DE MAI MULTE VARIABILE. Obiective:
TEMA 9: FUNCȚII DE MAI MULTE VARIABILE 77 TEMA 9: FUNCȚII DE MAI MULTE VARIABILE Obiective: Deiirea pricipalelor proprietăţi matematice ale ucţiilor de mai multe variabile Aalia ucţiilor de utilitate şi
Διαβάστε περισσότεραFormula lui Taylor. 25 februarie 2017
Formula lui Taylor Radu Trîmbiţaş 25 februarie 217 1 Formula lui Taylor I iterval, f : I R o fucţie derivabilă de ori î puctul a I Poliomul lui Taylor de gradul, ataşat fucţiei f î puctul a: (T f)(x) =
Διαβάστε περισσότεραNoţiuni introductive
Metode Numerice Noţiuni introductive Erori. Condiţionare numerică. Stabilitatea algoritmilor. Complexitatea algoritmilor. Metodele numerice reprezintă tehnici prin care problemele matematice sunt reformulate
Διαβάστε περισσότεραCOMBINATORICĂ. Mulţimile ordonate care se formează cu n elemente din n elemente date se numesc permutări. Pn Proprietăţi
OMBINATORIĂ Mulţimile ordoate care se formează cu elemete di elemete date se umesc permutări. P =! Proprietăţi 0! = ( ) ( ) ( ) ( ) ( ) ( )! =!! =!! =! +... Submulţimile ordoate care se formează cu elemete
Διαβάστε περισσότερα7. ECUAŢII ŞI SISTEME DE ECUAŢII DIFERENŢIALE
7. ECUAŢII ŞI SISTEME DE ECUAŢII DIFERENŢIALE 7. NOŢIUNI GENERALE. TEOREMA DE EXISTENŢĂ ŞI UNICITATE Pri ecuaţia difereţială de ordiul îtâi îţelegem o ecuaţie de forma: F,, = () ude F este o fucţie reală
Διαβάστε περισσότεραa) (3p) Sa se calculeze XY A. b) (4p) Sa se calculeze determinantul si rangul matricei A. c) (3p) Sa se calculeze A.
Bac Variata Proil: mate-izica, iormatica, metrologie Subiectul I (3 p) Se cosidera matricele: X =, Y = ( ) si A= a) (3p) Sa se calculeze XY A b) (4p) Sa se calculeze determiatul si ragul matricei A c)
Διαβάστε περισσότεραMinisterul Educaţiei Naționale Centrul Naţional de Evaluare şi Examinare
Miisterul Educaţiei Națioale Cetrul Naţioal de Evaluare şi Eamiare Eameul de bacalaureat aţioal 08 Proba E c) Matematică M_mate-ifo Clasa a XI-a Toate subiectele sut obligatorii Se acordă 0 pucte di oficiu
Διαβάστε περισσότεραCURS III, IV. Capitolul II: Serii de numere reale. a n sau cu a n. Deci lungimea segmentului este suma lungimilor sub-segmentelor obţinute, adică
Capitolul II: Serii de umere reale Lect. dr. Lucia Maticiuc Facultatea de Hidrotehică, Geodezie şi Igieria Mediului Matematici Superioare, Semestrul I, Lector dr. Lucia MATICIUC CURS III, IV Capitolul
Διαβάστε περισσότεραOlimpiada Naţională de Matematică Etapa locală Clasa a IX-a M 1
Calea 13 Septembrie, r 09, Sector 5, 0507, București Tel: +40 (0)1 317 36 50 Fax: +40 (0)1 317 36 54 Olimpiada Naţioală de Matematică Etapa locală -00016 Clasa a IX-a M 1 Fie 1 abc,,, 6 şi ab c 1 Să se
Διαβάστε περισσότεραCapitole fundamentale de algebra si analiza matematica 2012 Analiza matematica
Capitole fudametale de algebra si aaliza matematica 01 Aaliza matematica MULTIPLE CHOICE 1. Se cosidera fuctia. Atuci derivata mixta de ordi data de este egala cu. Derivata partiala de ordi a lui i raport
Διαβάστε περισσότεραI. Noţiuni introductive
Metode Numerice Curs 1 I. Noţiuni introductive Metodele numerice reprezintă tehnici prin care problemele matematice sunt reformulate astfel încât să fie rezolvate numai prin operaţii aritmetice. Prin trecerea
Διαβάστε περισσότεραPENTRU CERCURILE DE ELEVI
122 Petru cercurile de elevi PENTRU CERCURILE DE ELEVI Petru N, otăm: POLINOAME CICLOTOMICE Marcel Ţea 1) U = x C x = 1} = cos 2kπ + i si 2kπ } k = 0, 1. Mulţimea U se umeşte mulţimea rădăciilor de ordi
Διαβάστε περισσότεραLaborator 4 Interpolare numerica. Polinoame ortogonale
Laborator 4 Iterpolare umerica. Polioame ortogoale Resposabil: Aa Io ( aa.io4@gmail.com) Obiective: I urma parcurgerii acestui laborator studetul va fi capabil sa iteleaga si sa utilizeze diferite metode
Διαβάστε περισσότεραStatisticǎ - curs 2. 1 Parametrii şi statistici ai tendinţei centrale 2. 2 Parametrii şi statistici ai dispersiei 5
Statisticǎ - curs Cupris Parametrii şi statistici ai tediţei cetrale Parametrii şi statistici ai dispersiei 5 3 Parametrii şi statistici factoriali ai variaţei 8 4 Parametrii şi statistici ale poziţiei
Διαβάστε περισσότεραCurs 4 Serii de numere reale
Curs 4 Serii de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Criteriul rădăcinii sau Criteriul lui Cauchy Teoremă (Criteriul rădăcinii) Fie x n o serie cu termeni
Διαβάστε περισσότεραAnaliza matematica Specializarea Matematica vara 2010/ iarna 2011
Aaliza matematica Specializarea Matematica vara 010/ iara 011 MULTIPLE HOIE 1 Se cosidera fuctia Atuci derivata mita de ordi data de este egala cu 1 y Derivata partiala de ordi a lui i raport cu variabila
Διαβάστε περισσότεραIII.2.2. Reprezentarea în virgulă mobilă
III... Reprezentarea în virgulă mobilă Una dintre cele mai răspândite reprezentări internă (în PC-uri) a numerelor reale este reprezentarea în virgulă mobilă. Reprezentarea în virgulă mobilă presupune
Διαβάστε περισσότερα4. Ecuaţii diferenţiale de ordin superior
4.. Ecuaţii liiare 4. Ecuaţii difereţiale de ordi superior O problemã iportatã este rezolvarea ecuaţiilor difereţiale de ordi mai mare ca. Sut puţie ecuaţiile petru care se poate preciza forma aaliticã
Διαβάστε περισσότεραMetode iterative pentru probleme neliniare - contractii
Metode iterative pentru probleme neliniare - contractii Problemele neliniare sunt in general rezolvate prin metode iterative si analiza convergentei acestor metode este o problema importanta. 1 Contractii
Διαβάστε περισσότερα1. ŞIRURI ŞI SERII DE NUMERE REALE
ŞIRURI ŞI SERII DE NUMERE REALE Noţiui teoretice şi rezultate fudametale Şiruri de umere reale Presupuem cuoscute oţiuile de bază despre mulţimea N a umerelor aturale, mulţimea Z a umerelor îtregi, mulţimea
Διαβάστε περισσότερα3. Serii de puteri. Serii Taylor. Aplicaţii.
Fucţiile f ( ) cos t = sut de clasă C pe R cu α si derivatelor satisface codiţiile: α f ' ( ) si = şi seria ' ( ), α α f R cu = b α ' coverge petru α > f este (ormal covergetă) absolut şi uiform covergetă
Διαβάστε περισσότεραsistemelor de algebrice liniarel
Uivesitatea Tehică a Moldovei Facultatea de Eergetică Catedra Electroeergetica Soluţioarea sistemelor de ecuaţii algebrice liiarel lect.uiv. Victor Gropa «Programarea si Utilizarea Calculatoarelor I» Cupris
Διαβάστε περισσότεραSUBGRUPURI CLASICE. 1. SUBGRUPURI recapitulare
SUBGRUPURI CLASICE. SUBGRUPURI recapitulare Defiiţia. Fie (G, u rup şi H o parte evidă a sa. H este subrup al lui G dacă:. H este parte stabilă a lui G;. H îzestrată cu operaţia idusă este rup. Teorema.
Διαβάστε περισσότεραLucrarea de laborator nr. 2
Metode Numerice Lucrarea de laborator nr. I. Scopul lucrării Reprezentarea numerelor reale în calculator. Erori de rotunjire. II. III. Conţinutul lucrării. Reprezentarea numerelor reale sub formă normalizată..
Διαβάστε περισσότεραCurs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate.
Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie p, q N. Fie funcţia f : D R p R q. Avem următoarele
Διαβάστε περισσότερα6.1. DERIVATE ŞI DIFERENŢIALE PENTRU FUNCŢII REALE DE O VARIABILĂ REALĂ. APLICAŢII
7 7 Modulul 6 APLICAŢII DIFERENŢIABILE Subiecte : Derivate şi difereţiale petru fucţii reale de o variabilă reală Formula lui Taylor şi Mac-Lauri petru fucţii de o variabilă reală Serii Taylor 3 Derivate
Διαβάστε περισσότερα( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
5..8 Ecuaţia difereţială Riccati Ecuaţia difereţială de ordiul îtâi de forma: d q( ) p( ) r( ) d + + (4) r sut fucţii cotiue pe u iterval, cuoscute, iar fucţia ude q( ), p ( ) şi ( ) este ecuoscuta se
Διαβάστε περισσότερα5.1. ŞIRURI DE FUNCŢII
Modulul 5 ŞIRURI ŞI SERII DE FUNCŢII Subiecte :. Şiruri de fucţii.. Serii de fucţii. 3. Serii de puteri. Evaluare :. Covergeţa puctuală şi covergeţa uiformă la şiruri şi serii de fucţii.. Teorema lui Abel.
Διαβάστε περισσότεραPartea întreagă, partea fracţionară a unui număr real
Cocursul Gazeta Matematică și ViitoriOlimpiciro Ediția a IV-a 0-0 Partea îtreagă, partea fracţioară a uui umăr real ABSTRACT: Materialul coţie câteva proprietăţi şi rezultate legate de partea îtreagă şi
Διαβάστε περισσότεραSala: 2103 Decembrie 2014 CURS 10: ALGEBRĂ
Sala: 203 Decembrie 204 Cof. uiv. dr.: Dragoş-Pătru Covei CURS 0: ALGEBRĂ Specializarea: C.E., I.E., S.P.E. Nota: Acest curs u a fost supus uui proces riguros de recezare petru a fi oficial publicat. distribuit
Διαβάστε περισσότεραPROBLEME CU PARTEA ÎNTREAGĂ ŞI
PROBLEME CU PARTEA ÎNTREAGĂ ŞI PARTEA FRACŢIONARĂ. Să se rezolve ecuaţia {x} {008 x} =.. Fie r R astfel ca r 9 ] 00 Determiaţi 00r]. r 0 ] r ]... r 9 ] = 546. 00 00 00 Cocurs AIME (SUA), 99. Câte ditre
Διαβάστε περισσότερα3.1. DEFINIŢII. PROPRIETĂŢI
Modulul 3 SERII NUMERICE Subiecte :. Criterii de covergeţă petşru serii cu termei oarecare. Serii alterate 3. Criterii de covergeţă petru serii cu termei poziţivi Evaluare. Criterii de covergeţă petru
Διαβάστε περισσότεραCLASA a V-a CONCURSUL INTERJUDEŢEAN DE MATEMATICĂ ŞI INFORMATICĂ MARIAN ŢARINĂ EDIŢIA A IV-A MAI I. Să se determine abcd cu proprietatea
EDIŢIA A IV-A 4 6 MAI 004 CLASA a V-a I. Să se determie abcd cu proprietatea abcd - abc - ab -a = 004 Gheorghe Loboţ II Comparaţi umerele A B ude A = 00 00 004 004 şi B = 00 004 004 00. Vasile Şerdea III.
Διαβάστε περισσότεραCAPITOLUL III FUNCŢII CONTINUE
CAPITOLUL III FUNCŢII CONTINUE. Fucţii de o variabilă reală Fucţiile defiite pe mulţimi abstracte X, Y cu f : X Y au î geeral puţie proprietăţi şi di acest motiv, puţie aplicaţii î rezolvarea uor probleme
Διαβάστε περισσότεραPolinoame Fibonacci, polinoame ciclotomice
Polioame Fiboacci, polioame ciclotomice Loredaa STRUGARIU, Cipria STRUGARIU 1 Deoarece şirul lui Fiboacci este cuoscut elevilor îcă dicl.aix-a,iarrădăciile de ordiul ale uităţii şi polioamele ciclotomice
Διαβάστε περισσότεραConcursul Naţional Al. Myller Ediţia a VI - a Iaşi, 2008
Cocursul Naţioal Al. Myller CLASA a VII-a Numerele reale disticte x, yz, au proprietatea că Să se arate că x+ y+ z = 0. 3 3 3 x x= y y= z z. a) Să se arate că, ditre cici umere aturale oarecare, se pot
Διαβάστε περισσότεραSERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0
SERII NUMERICE Definiţia 3.1. Fie ( ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0 şirul definit prin: s n0 = 0, s n0 +1 = 0 + 0 +1, s n0 +2 = 0 + 0 +1 + 0 +2,.......................................
Διαβάστε περισσότεραFunctii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1
Functii definitie proprietati grafic functii elementare A. Definitii proprietatile functiilor. Fiind date doua multimi X si Y spunem ca am definit o functie (aplicatie) pe X cu valori in Y daca fiecarui
Διαβάστε περισσότεραREZOLVAREA NUMERICĂ A ECUAŢIILOR ŞI SISTEMELOR DE ECUAŢII ALGEBRICE NELINIARE
REZOLVAREA NUMERICĂ A ECUAŢIILOR ŞI SISTEMELOR DE ECUAŢII ALGEBRICE NELINIARE Forma geerală a ecuaţiei: cu : I R R Î particular poliom / adus la o ormă poliomială dar şi ecuaţiile trascedete Rezolvarea
Διαβάστε περισσότεραŞIRURI ŞI SERII DE FUNCŢII
Capitolul 8 ŞIRURI ŞI SERII DE FUNCŢII 8. Şiruri de fucţii Fie D R, D = şi fie f 0, f, f 2,... fucţii reale defiite pe mulţimea D. Şirul f 0, f, f 2,... se umeşte şir de fucţii şi se otează cu ( f ) 0.
Διαβάστε περισσότεραîn care suma termenilor din fiecare grup este 0, poate conduce la ideea că valoarea acestei sume este 0. De asemenea, gruparea în modul
Capitolul 3 SERII NUMERICE Date fiid umerele reale x 0, x,..., x, î umăr fiit, suma lor x 0 + x +... + x se poate calcula fără dificultate, după regulile uzuale. Extiderea oţiuii de sumă petru mulţimi
Διαβάστε περισσότεραMetode de interpolare bazate pe diferenţe divizate
Metode de interpolare bazate pe diferenţe divizate Radu Trîmbiţaş 4 octombrie 2005 1 Forma Newton a polinomului de interpolare Lagrange Algoritmul nostru se bazează pe forma Newton a polinomului de interpolare
Διαβάστε περισσότεραAsupra unei inegalităţi date la barajul OBMJ 2006
Asupra unei inegalităţi date la barajul OBMJ 006 Mircea Lascu şi Cezar Lupu La cel de-al cincilea baraj de Juniori din data de 0 mai 006 a fost dată următoarea inegalitate: Fie x, y, z trei numere reale
Διαβάστε περισσότεραFunctii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor
Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor. Fiind date doua multimi si spunem ca am definit o functie (aplicatie) pe cu valori in daca fiecarui element
Διαβάστε περισσότεραIII. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă.
III. Serii absolut convergente. Serii semiconvergente. Definiţie. O serie a n se numeşte: i) absolut convergentă dacă seria modulelor a n este convergentă; ii) semiconvergentă dacă este convergentă iar
Διαβάστε περισσότεραCAPITOLUL IV CALCULUL DIFERENŢIAL PENTRU FUNCŢII REALE DE O VARIABILA REALĂ
CAPITOLUL IV CALCULUL DIFEENŢIAL PENTU FUNCŢII EALE DE O VAIABILA EALĂ Fucţii derivabile Fucţii difereţiabile Derivata şi difereţiala sut duă ccepte fudametale ale matematicii, care reprezită siteză pe
Διαβάστε περισσότερα(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a.
Definiţie Spunem că: i) funcţia f are derivată parţială în punctul a în raport cu variabila i dacă funcţia de o variabilă ( ) are derivată în punctul a în sens obişnuit (ca funcţie reală de o variabilă
Διαβάστε περισσότεραBAREM DE CORECTARE CLASA A IX A
ETAPA JUDEŢEANĂ - martie 0 Filiera tehologica : profil tehic BAREM DE CORECTARE CLASA A IX A a) Daţi exemplu de o ecuaţie de gradul al doilea avâd coeficieţi raţioali care admite ca rădăciă umărul x= +
Διαβάστε περισσότερα5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE.
5 Eerciţii reolvate 5 UNCŢII IMPLICITE EXTREME CONDIŢIONATE Eerciţiul 5 Să se determine şi dacă () este o funcţie definită implicit de ecuaţia ( + ) ( + ) + Soluţie ie ( ) ( + ) ( + ) + ( )R Evident este
Διαβάστε περισσότεραSeria MATEMATICĂ ANALIZĂ MATEMATICĂ Calcul diferenţial
Seria MATEMATICĂ ANALIZĂ MATEMATICĂ Calcul difereţial MATHEMATICAL ANALYSIS Differetial calculus The preset book is the first part of the cours of Mathematical Aalysis give by the author for may years
Διαβάστε περισσότεραSeminar 3. Serii. Probleme rezolvate. 1 n . 7. Problema 3.2. Să se studieze natura seriei n 1. Soluţie 3.1. Avem inegalitatea. u n = 1 n 7. = v n.
Semir 3 Serii Probleme rezolvte Problem 3 Să se studieze tur seriei Soluţie 3 Avem ieglitte = ) u = ) ) = v, Seri = v este covergetă fiid o serie geometrică cu rţi q = < Pe bz criteriului de comprţie cu
Διαβάστε περισσότεραCAPITOLUL I CAPITOL INTRODUCTIV
CAPITOLUL I CAPITOL INTRODUCTIV Prezetarea uor elemete de bază di teoria mulţimilor, teoria relaţiilor biare, fucţii, sisteme de umere ş. a. presupue cuoscute elemete de logică matematică la ivelul maualelor
Διαβάστε περισσότεραCurs 1 Şiruri de numere reale
Bibliografie G. Chiorescu, Analiză matematică. Teorie şi probleme. Calcul diferenţial, Editura PIM, Iaşi, 2006. R. Luca-Tudorache, Analiză matematică, Editura Tehnopress, Iaşi, 2005. M. Nicolescu, N. Roşculeţ,
Διαβάστε περισσότερα1. Operaţii cu numere reale Funcţii Ecuaţii şi inecuaţii de gradul întâi Numere complexe Progresii...
Cupris 1. Operaţii cu umere reale... 1 1.1. Radicali, puteri... 1 1.1.1. Puteri... 1 1.1.. Radicali... 1 1.. Idetităţi... 1.3. Iegalităţi... 3. Fucţii... 6.1. Noţiuea de fucţii... 6.. Fucţii ijective,
Διαβάστε περισσότεραREZOLVAREA NUMERICĂ A ECUAŢIILOR ŞI SISTEMELOR DE ECUAŢII DIFERENŢIALE ORDINARE
REZOLVAREA NUMERICĂ A ECUAŢIILOR ŞI SISTEMELOR DE ECUAŢII DIFERENŢIALE ORDINARE. Aspecte itroductive Studiul comportametului diamic al sistemelor fizice modele matematice sub forma ecuaţiilor sau sistemelor
Διαβάστε περισσότεραExamenul de bacalaureat nańional 2013 Proba E. c) Matematică M_mate-info. log 2 = log x. 6 j. DeterminaŃi lungimea segmentului [ AC ].
Miisterul EducaŃiei, Cercetării, Tieretului şi Sportului Cetrul NaŃioal de Evaluare şi Eamiare Eameul de bacalaureat ańioal 0 Proba E c) Matematică M_mate-ifo Filiera teoretică, profilul real, specializarea
Διαβάστε περισσότεραTema: şiruri de funcţii
Tem: şiruri de fucţii. Clculţi limit (simplă) şirului de fucţii f : [ 0,], f ( ) R Avem lim f ( 0) = ir petru 0, vem lim f ( ) Î cocluzie, dcă otăm f: [ 0, ], f ( ) =, = 0 =, 0 + + = +, tuci lim f f =..
Διαβάστε περισσότεραSunt variabile aleatoare care iau o infinitate numărabilă de valori. Diagrama unei variabile aleatoare discrete are forma... f. ,... pn.
86 ECUAŢII 55 Vriile letore discrete Sut vriile letore cre iu o ifiitte umărilă de vlori Digrm uei vriile letore discrete re form f, p p p ude p = = Distriuţi Poisso Are digrm 0 e e e e!!! Se costtă că
Διαβάστε περισσότεραV.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile
Metode de Optimizare Curs V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile Propoziţie 7. (Fritz-John). Fie X o submulţime deschisă a lui R n, f:x R o funcţie de clasă C şi ϕ = (ϕ,ϕ
Διαβάστε περισσότεραSisteme diferenţiale liniare de ordinul 1
1 Metoda eliminării 2 Cazul valorilor proprii reale Cazul valorilor proprii nereale 3 Catedra de Matematică 2011 Forma generală a unui sistem liniar Considerăm sistemul y 1 (x) = a 11y 1 (x) + a 12 y 2
Διαβάστε περισσότεραIV. Rezolvarea sistemelor liniare
IV. Rezolvarea sistemelor liiare IV.. Elemete de aaliză matriceală Fie V u spaţiu vectorial (liiar peste corpul K (K=R sau K=C. Reamitim o serie de defiiţii şi teoreme legate de spaţiile ormate şi spaţiile
Διαβάστε περισσότεραMARCAREA REZISTOARELOR
1.2. MARCAREA REZISTOARELOR 1.2.1 MARCARE DIRECTĂ PRIN COD ALFANUMERIC. Acest cod este format din una sau mai multe cifre şi o literă. Litera poate fi plasată după grupul de cifre (situaţie în care valoarea
Διαβάστε περισσότεραAnaliza bivariata a datelor
Aaliza bivariata a datelor Aaliza bivariata a datelor! Presupue masurarea gradului de asoiere a doua variabile sub aspetul: Diretiei (aturii) Itesitatii Semifiatiei statistie Variabilele omiale Tabele
Διαβάστε περισσότεραCONCURSUL INTERJUDEŢEAN DE MATEMATICĂ ŞI INFORMATICĂ MARIAN ŢARINĂ Ediţia a XI-a, 6 7 MAI CLASA a IV-a
Ediţia a XI-a, 6 7 MAI 011 CLASA a IV-a SUBIECTUL Aflaţi difereţa ditre umerele aturale [( 4 a : ) :1 5] 4 6 = 4 [( b 7 ): 5 8] 8 5 = 7 a şi b ştiid că ele verifică egalităţile: Gheorghe Loboţ Suma a două
Διαβάστε περισσότεραVarianta 1
Filiera vocaţioală, profilul militar, specializarea matematică-iformatică Toate subiectele sut obligatorii Timpul efectiv de lucru este de ore Se acordă pucte di oficiu La toate subiectele se cer rezolvări
Διαβάστε περισσότεραVarianta 1 - rezolvari mate MT1
Variata - rezolvari mate MT Soluţii a + a + a + ; + 5 + 9 + + a + ; ; a + a ; a,, ;, y >, y + ; f :,,, f submulţimi cu trei elemete C 5 m + + m 6 cos ; m ± 6+ cos cos a Calcul direct b Se demostrează pri
Διαβάστε περισσότεραCAPITOLUL 4 SPAŢII VECTORIALE EUCLIDIENE/UNITARE Produs scalar. Spaţii euclidiene şi spaţii unitare-definiţie
Spaţii vectoriale euclidiee/uitare CAPITOLUL 4 SPAŢII VECTORIALE EUCLIDIENE/UNITARE 4.. Produs scalar. Spaţii euclidiee şi spaţii uitare-defiiţie Defiiţia 4... Fie V u spaţiu vectorial peste corpul K (K=R
Διαβάστε περισσότεραVarianta 1. SUBIECTUL I (30p) Varianta 001 5p 1. Să se determine numărul natural x din egalitatea x = p
Filiera vocaţioală, profilul militar, specializarea matematică-iformatică Toate subiectele sut obligatorii Timpul efectiv de lucru este de ore Se acordă pucte di oficiu La toate subiectele se cer rezolvări
Διαβάστε περισσότεραAnaliza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro
Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM Seminar S ANALA ÎN CUENT CONTNUU A SCHEMELO ELECTONCE S. ntroducere Pentru a analiza în curent continuu o schemă electronică,
Διαβάστε περισσότεραEXAMENE ŞI CONCURSURI
8 Examee şi Cocursuri EXAMENE ŞI CONCURSURI A IV-A EDIŢIE A CONCURSULUI FACULTĂŢII DE MATEMATICĂ ŞI INFORMATICĂ A UNIVERSITĂŢII,,OVIDIUS DIN CONSTANŢA prezetare de Laureţiu Hometcovshi ) şi Diaa Savi )
Διαβάστε περισσότεραOLIMPIADA DE MATEMATICĂ FAZA LOCALĂ CLASA a V-a
CLASA a V-a 1. Îtr-o familie de 4 persoae, suma vârstelor acestora este de 97 de ai. Băiatul s-a ăscut câd tatăl avea 3 de ai, iar fata s-a ăscut câd mama avea de ai şi fratele său 4 ai.puteţi găsi ce
Διαβάστε περισσότεραSpaţii topologice. Spaţii metrice. Spaţii normate. Spaţii Hilbert
Metode de Optimizare Noţiui recapitulative de Aaliză Matematică şi Algebră Liiară Spaţii topologice. Spaţii metrice. Spaţii ormate. Spaţii Hilbert Reamitim o serie de defiiţii şi teoreme legate de spaţiile
Διαβάστε περισσότεραCapitolul 2 ŞIRURI DE NUMERE REALE. 2.1 Proprietăţi generale Moduri de definire a unui şir. (x n ) n 0 : x n =
Capitolul 2 ŞIRURI DE NUMERE REALE 2. Proprietăţi geerale Fie A = o mulţime dată. Se umeşte şir de elemete di A o fucţie f : N A. Dacă A = R, şirul respectiv se va umi şir de umere reale, şir umeric sau,
Διαβάστε περισσότεραlim = dacă se aplică teorema lui 3. Derivate de ordin superior. Aplicaţii.
5 Petru limita determiată: 2 + lim = dacă se aplică terema lui LHspital: 2 + 2 lim = lim = rezultatul este icrect. 3. Derivate de rdi superir. Aplicaţii. Fie A R mulţime care îşi cţie puctele de acumulare
Διαβάστε περισσότεραSubiecte Clasa a VII-a
lasa a VII Lumina Math Intrebari Subiecte lasa a VII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate
Διαβάστε περισσότεραa n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea
Serii Laurent Definitie. Se numeste serie Laurent o serie de forma Seria n= (z z 0 ) n regulata (tayloriana) = (z z n= 0 ) + n se numeste partea principala iar seria se numeste partea Sa presupunem ca,
Διαβάστε περισσότερα1. ŞIRURI ŞI SERII DE NUMERE REALE
. ŞIRURI ŞI SERII DE NUMERE REALE. Eerciţii rezolvte Eerciţiul Stbiliţi dcă următorele şiruri sut fudmetle: ), N 5 b) + + + +, N * c) + + +, N * cos(!) d), N ( ) e), N Soluţii p p ) +p - < şi mjortul este
Διαβάστε περισσότεραCurs 2 Şiruri de numere reale
Curs 2 Şiruri de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Convergenţă şi mărginire Teoremă Orice şir convergent este mărginit. Demonstraţie Fie (x n ) n 0 un
Διαβάστε περισσότεραClasa a IX-a. 1. Rezolvaţi în R ecuaţiile: (3p) b) x x x Se consideră mulţimile A = { }, (2p) a) Determinaţi elementele mulţimii A
1 Rezolvaţi î R ecuaţiile: (4p) a) x 1 5 = 8 (3p) b) Clasa a IX-a x 1 x x 1 + + + =, N x x x Se cosideră mulţimile A = { }, A = { 3,5}, A { 7, 9,11}, 1 1 3 = (p) a) Determiaţi elemetele mulţimii A 6 (3p)
Διαβάστε περισσότεραCursul 7. Spaţii euclidiene. Produs scalar. Procedeul de ortogonalizare Gram-Schmidt. Baze ortonormate
Lector uv dr Crsta Nartea Cursul 7 Spaţ eucldee Produs scalar Procedeul de ortogoalzare Gram-Schmdt Baze ortoormate Produs scalar Spaţ eucldee Defţ Exemple Defţa Fe E u spaţu vectoral real Se umeşte produs
Διαβάστε περισσότεραAlgebră 1. Disciplină obligatorie; Anul I, Sem. 1, ore săptămânal, învăţământ de zi: 2 curs, 2 seminar, total ore semestru 56; 6 credite; examen.
Uiversitate Spiru Haret Facultatea de Matematica-Iformatica Algebră 1 Discipliă obligatorie; Aul I, Sem 1, ore săptămâal, îvăţămât de zi: curs, semiar, total ore semestru 56; 6 credite; exame I CONŢINUTUL
Διαβάστε περισσότεραCurs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi"
Curs 14 Funcţii implicite Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie F : D R 2 R o funcţie de două variabile şi fie ecuaţia F (x, y) = 0. (1) Problemă În ce condiţii ecuaţia
Διαβάστε περισσότεραŞIRURI DE VARIABILE ALEATOARE. PROBLEME ASIMPTOTICE
8. ŞIRURI DE VARIABILE ALEATOARE. PROBLEME ASIMPTOTICE 8.. Şiruri de variabile aleatoare Î teoria probabilităţilor şi î aplicaţiile ei o problemă importată o costituie studiul şirurilor de variabile aleatoare,
Διαβάστε περισσότεραSubiecte Clasa a VIII-a
Subiecte lasa a VIII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul
Διαβάστε περισσότερα2.1. DEFINIŢIE. EXEMPLE
Modulul SPAŢII METRICE Subiecte :. Spaţii metrice. Defiiţii, exemple.. Mulţimi deschise, mulţimi îchise î spaţii metrice. Mulţimi compacte. 3. Spaţii metrice complete. Pricipiul cotracţiei. Evaluare:.Răspusuri
Διαβάστε περισσότεραPENTRU CERCURILE DE ELEVI
G.-F. Şerba, Aplicaţii la teorema lui Frobeius despre matrice 7 PENTRU CERCURILE DE ELEVI APLICAŢII LA TEOREMA LUI FROBENIUS DESPRE MATRICE George-Flori Şerba 1) Î această lecţie vom prezeta rezolvarea
Διαβάστε περισσότερα1.3. Erori în calculele numerice
Prof.dr.ing. Universitatea "Politehnica" Bucureşti, Facultatea de Inginerie Electrică, Departamentul de Electrotehnică Suport didactic pentru disciplina Metode numerice, 2017-2018 1/41 Cuprins Caracterizarea
Διαβάστε περισσότεραR R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale.
5p Determinați primul termen al progresiei geometrice ( b n ) n, știind că b 5 = 48 și b 8 = 84 5p Se consideră funcția f : intersecție a graficului funcției f cu aa O R R, f ( ) = 7+ 6 Determinați distanța
Διαβάστε περισσότεραT R A I A N. Numere complexe în formă algebrică z a. Fie z, z a bi, Se numeşte partea reală a numărului complex z :
Numere complexe î formă algebrcă a b Fe, a b, ab,,, Se umeşte partea reală a umărulu complex : Re a Se umeşte coefcetul părţ magare a umărulu complex : Se umeşte modulul umărulu complex : Im b, ş evdet
Διαβάστε περισσότεραPlanul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare
1 Planul în spaţiu Ecuaţia generală Plane paralele Unghi diedru 2 Ecuaţia generală Plane paralele Unghi diedru Fie reperul R(O, i, j, k ) în spaţiu. Numim normala a unui plan, un vector perpendicular pe
Διαβάστε περισσότεραCurs 12. Intervale de încredere Intervale de încredere pentru medie în cazul σ cunoscut
Curs Itervale de îcredere Am văzut cum poate fi estimat u parametru folosid datele furizate de u eşatio Parametrul di populaţie u este, î geeral, egal cu statistica calculată cu ajutorul eşatioului Ne
Διαβάστε περισσότεραCONCURSUL NAŢIONAL DE MATEMATICĂ APLICATĂ "ADOLF HAIMOVICI"
INSPECTORATUL ŞCOLAR JUDEŢEAN IAŞI CONCURSUL NAŢIONAL DE MATEMATICĂ APLICATĂ "ADOLF HAIMOVICI" ETAPA NAŢIONALĂ aprilie FACULTATEA CONSTRUCŢII DE MAŞINI ŞI MANAGEMENT INDUSTRIAL Filiera tehologică: profilul
Διαβάστε περισσότεραAnaliză I Curs 1. Curs 1., a n. dacă ε, ( )N ( ε ) a.î. n x n ε ; ε sunt numere reale şi deci (a n. şi fie
Aaliză I Curs Curs Şiruri de umere: D : Fie u şir de umere (a ), a. Spuem că dacă ( )M 0, a.î. a M. (a ) este mărgiit D : Spuem că (a ) coverge către l dacă ( )V (l), ( )N (V ) şi N (V ) a V. D 3 : a l
Διαβάστε περισσότεραANALIZĂ MATEMATICĂ Noţiuni teoretice şi probleme rezolvate. Mircea Olteanu
@ ANALIZĂ MATEMATICĂ Noţiui teoretice şi probleme rezolvate Mircea Olteau Cupris Serii de umere 7. Noţiui teoretice......................... 7. Serii cu termei pozitivi..................... 5.3 Serii
Διαβάστε περισσότεραDISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE
DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE ABSTRACT. Materialul prezintă o modalitate de a afla distanţa dintre două drepte necoplanare folosind volumul tetraedrului. Lecţia se adresează clasei a VIII-a Data:
Διαβάστε περισσότεραMETODE NUMERICE. Note de curs
MARILENA POPA ROMULUS MILITARU METODE NUMERICE Note de curs . REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAŢII LINIARE Itroducere. Rezolvarea sistemelor algebrice liiare şi operaţiile de calcul matriceal (evaluarea
Διαβάστε περισσότερα