ADRIAN CHISĂLIŢĂ ANA. Biblioteca de Analiză numerică surse Fortran 90. Manual de utilizare

Size: px
Start display at page:

Download "ADRIAN CHISĂLIŢĂ ANA. Biblioteca de Analiză numerică surse Fortran 90. Manual de utilizare"

Transcription

1 ADRIAN CHISĂLIŢĂ ANA Bbloteca de Aalză umercă surse Fortra 90 Maual de utlzare Uverstatea Tehcă d Cluj-Napoca Cluj-Napoca, 202

2 2 Notă copyrght Versue ANA (o-le): Marte 202 Edţe Maual de utlzare (o-le): Marte 202 ANA se găseşte la următorul URL: ftp.utcluj.ro/pub/users/chsalta/ana/ (Maualul se găseşte î folderul ANA/DOC/) Copyrght Adra Chsălţă Dreptur de utlzare a bblotec ANA. Î scop educaţoal: - Utlzarea este lberă. - Utlzatorul are dreptul la o cope a Bblotec ş Maualulu, petru uz persoal. - Utlzatorul poate modfca rutele după voe, î scop persoal. Referrea la rutele modfcate se va face cu ctarea surse orgale. Prevederle de ma sus echvalează cu lceţa educaţoală. 2. Î scop comercal: - Utlzarea î scopur comercale, sau îcorporarea de rute îtr-u produs comercal, este legală fără obţerea ue lceţe comercale. - Reproducerea î orce formă (tpărtă/electrocă) a Bblotec sau Maualulu, este terzsă. - Alte preveder ale Leg dreptulu de autor sut aplcable. Reproducerea uor părţ d ANA sau Maual, cu ttlu de eemplu sau ctare, î orce formă (tpărtă/electrocă), este permsă uma cu meţoarea copyrght-ulu. Maualul de utlzare Tetul Maualulu de utlzare se supue prevederlor Leg dreptulu de autor.

3 3 Autorul garatează coţutul bblotec ANA, uma petru utlzarea î scop educaţoal. Autorul îş declă resposabltatea petru orce cosecţe care ar decurge d utlzarea bblotec î alt scop. Sursele d ANA sut oferte aşa cum sut. Codul sursă ş Maualul pot f modfcate de autor fără otfcare. Notă Maual î actualzare! Versule cele ma recete ale surselor ş Maualulu se găsesc la URL-ul de ma sus.

4 4 CUPRINS Notă copyrght... 2 INTRODUCERE Bbloteca ANA... 8 CAPITOLUL I REPREZENTAREA NUMERELOR ÎN CALCULATOR ş ERORI...2 Recureță...2 Bessel...2 Eemplul Muller-Kaha...3 Errors...3 Assoc_sum...3 Do...4 Ecuate_gr2...4 Iteger2...5 Itrsec_2...5 Loss_sgf...5 Rump_pol...6 Rump II...7 Specal_Values...8 SSH...9 Sum_Armoc...20 Sum_ErrFree...2 Test_eps...2 Nose...22 Ulp...23 CAPITOLUL II ECUAŢII NELINIARE...25 II- Ecuaţ de forma f() = Bs...26 Secat...28 Newto...3 II-2 Ecuaţ de forma = g(). Metoda puctulu f F...36 Statoar...39 Atke...4 Atke\Atke-G...44

5 5 II-3 Ssteme de ecuaţ elare...46 F_Sys...47 Newto_Sys...50 II-4 Rădăcle poloamelor...52 C_pol...52 Pol...55 Pol_Drect...58 Pol_Comple...60 Laguerre...62 Muller...64 Muller\Muller_Comple...69 CAPITOLUL III SISTEME DE ECUAŢII LINIARE...72 III- Metode drecte...72 Gauss...72 Gauss_AB...77 LU...79 LU\Crout...86 LU_Comple...87 LU_Comple\Crout_Comple...89 Cholesky...90 Cholesky_S...93 Cholesky_Bad...93 III-2 Aalza eror ş codţoare...98 Numar_Codte...98 Hlbert III-3 Metode teratve Jacob Gauss_Sedel Sor CAPITOLUL IV VALORI ŞI VECTORI PROPRII... 0 Problema de valor propr (sumar)... 0 Power... 7 Power_Comple Iverse_Power_Shft... 25

6 6 Iverse_Power_Comple Sm_Iter Jacob QR Metoda (sumar) Algortm ş cod Detal de mplemetare Balasare... 5 Fşere Structura fşerulu de date Eemple Geeral_R, Geeral_R... 7 Problema geeralzată de valor propr Reducerea la problema stadard Retreve_Ege_from_R Fşere sursă: Fşere de date (trare): Fşere de eşre (rezultate): INTERPOLARE Newto UTILITARE Fucto_epresso ş wdth Fucto_epresso.f90; Fucto_epresso_g.f90; Fucto_epresso- 2.f90; Fucto_epresso_Sys.f wdth.f Grafc Bblografe Lsta Fgurlor Ide... 93

7 7

8 8 INTRODUCERE Bbloteca ANA Metodele d ANA sut bazate pe teora ş algortm epuş î maualul: Adra Chsălţă, Numercal Aalyss (2002). Î ceea ce urmează, ctărle uor captole, paragrafe, se referă la această lucrare. Notă: - U algortm d ANA sut ma evoluaţ decât ce epuş î Numercal Aalyss. - Uele surse d ANA pot f ma evoluate decât cele descrse acest maual. ANA este orgazată pe foldere care coţ rutele ecesare petru utlzarea ue metode umerce, calculul uor mărm (eemplu: umărul de codţe), sau lustrarea erorlor sau precze î calculul cu umere reprezetate î vrgulă flotată. Folderele coţ rutele ecesare petru costrucţa uu proect. Î geeral, folderul coţe:. Programul prcpal 2. Subruta metode 3. Subprogramul de tp fucto/subroute petru defrea fucţe / fucţlor cu care se lucrează (petru ecuaţ elare) 4. Alte subrute utltare Programul prcpal realzează, cel puţ, următoarele acţu: - Cteşte datele de trare - Apelează subruta metode - Tpăreşte rezultatele. Utăţle de program ş 3 se presupu scrse de utlzator. Petru facltate, ele sut cluse î folder. Utatea 3 coţe cod petru u eemplu de test. Petru rădăcle poloamelor, sstemele de ecuaţ lare ş petru problema de valor propr, î locul utăţ 3, î folder este clus u fşer cu datele petru u eemplu de test. Utlzatorul va

9 9 modfca codul d 3 sau datele d eemplul de test, petru problema cocretă cu care se lucrează. De asemeea, utlzatorul poate modfca programul prcpal. Utltarele sut rute cluse î proect, î specal petru tpărrea datelor de eşre. Descrerea lor se dă î captolul UTILITARE. Nume foldere. Nume utăţ de program ş fşere asocate Î geeral: - Numele folderulu este o memoca a metode. - Numele subrute metode este tot o memocă a metode. Eemplu: petru metoda bsecţe, umele folderulu ş al subrute este BIS. - Programul prcpal are umele MAIN- urmat de umele subrute. Eemplu: MAIN-BIS. - Numele fucţe este fu, f, g, etc. Î câteva cazur, programul prcpal îcorporează ş metoda; î acest caz, umele utăţ de program este o memocă a metode (fără a ma f precedat de MAIN-). Petru metodele î dublă precze, î geeral, umele folderulu ş utăţlor de program, sut precedate de caracterul D, d, sau succedate de caracterele _D, _d. Numele fşerelor asocate utăţlor de program urmează aceleaş regul. Notă - Câd umele folderulu sau al uu fșer-sursă coțe o specfcațe de a, codul d acestea este î versuea cea ma recetă. Eemplu (folder): Gauss 200 ș Gauss. - Câd umele folderulu sau al uu fșer-sursă coțe termața -IVF, complarea este presupusă petru complatorul Itel Vsual Fortra. Cod Î screrea codulu, s-a dat îtâetate clartăţ programăr metode, ueor î daua compactăţ codulu. Datele de trare se ctesc fe de la termal, fe dtr-u fşer de date. Aceeaş observaţe petru screrea datelor de eşre. Câd se utlzează u fşer de date, î geeral, datele de eşre se scru î acest fşer, î cotuarea datelor de

10 0 trare. Soluţa fşerulu de date se poate adopta îtotdeaua, pr modfcarea codulu. Petru smplfcare, î codur s-a evtat utlzarea ferestrelor de dalog petru deschderea / selectarea / crearea uu fşer sau drectoru; î versule ma o de cod, selectarea fşerulu de trare se face pr fereastra de dalog stadard. Codurle prezetate î versuea smplă precze, pot f covertte uşor la dublă precze pr adăugarea declaraţlor ecesare. Lmbajul este Fortra 90/95. Utăţle de program coţ cometarle ecesare petru semfcaţa datelor de trare, parametrlor de apel a subrutelor, etc. Petru cocretzarea datelor de trare v. fşerul de test al metode. Observaţe Testele de oprre a ue teraţ sut, î geeral, de forma: eps ş umăr de teraţ lt. Toleraţa eps ş umărul mam de teraţ lt sut date de trare. Trebue ca eps ULP ), ude ULP ) este cel ma mc umăr care ( aduat la dă, pr rotujre, u umăr ma mare ca v. Cap., 3.6. Î caz ( cotrar, cu ecepţa cazulu, prmul test u poate f satsfăcut ş teraţa se opreşte pr depăşrea lu lt. Ueor codul testează ş corectează toleraţa eps trodusă de utlzator v. ca eemplu metoda bsecţe. Î caz cotrar, la troducerea date eps, utlzatorul se va ţe cot de codţa de ma sus Utlzare Cu rutele d folder se costrueşte u proect de tp cosole applcato. Petru smplfcare ş portabltate, rutele u coţ dalogur ş c eşr grafce. Utlzarea este presupusă complatorul Compaq Vsual Fortra 6.6C, 2002 (ș petru medul Developer Studo), dar rutele pot f utlzate ş pe o altă platformă. Î partcular, rutele cu umele ume-ivf se referă la complatorul Itel Vsual Forta., 200 (ș medul Mcrosoft Vsual Studo 2008). Descrerea fşerelor d foldere ş a metodelor umerce, se dă î captolele următoare. Petru uele metode (î partcular: Muller, problema de valor propr, ş Iterpolare), prezetarea teoretcă este ma desvoltată.

11 Petru detal suplmetare, ca ș petru cele ma recete actualzăr, v. cometarle d surse. Uele cometar pot f î lmba egleză. Avertzare: Eemple de test ș Rezultate Majortatea rezultatelor umerce d eemplele de test sut obțute pr rularea cu u procesor Petum IV, ș cu complatorul CVF 6.6c cu opțule de complare mplcte al medulu Developer Studo, dacă u se specfcă altfel. (Cu ecepța rezultatelor dcate ca obtute cu complatorul IVF.; procesorul este Itel Duo T2450). Utlzarea altor procesoare ș altor complatoare (sau opțu de complare) ar putea face ca, î uele cazur, rezultatele umerce să u se reproducă eact c uma apropat. Fotur Tet: Tmes New Roma Nume foldere: Aral Nume fşere; ume rute: Aral Date de trare; rezultate (d fşerul de eşre); secveţe de cod: Courer New Caracterul dcă sfârştul ue Propozţ, Observaţ, Eemplu, etc.

12 2 CAPITOLUL I REPREZENTAREA NUMERELOR ÎN CALCULATOR ş ERORI Foldere: Recureță; Errors; Nose; Ulp. Recureță Bessel Calculul fucţe Bessel: drect, ş pr recureţă. Se pue î evdeţă, stabltatea algortmulu bazat pe formula de recureţă cu tre terme. Implemetarea Eemplulu 4, Cap. 0, 2.2. Fşere: Bessel.f90 Se calculează valorle fucţlor Bessel de speţa I-a, pe argumetul y, petru m,0, î două modur: (a) Drect (sere): J m () m 2 0 k 4 k! m k! Sera se truchază î mometul câd termeul curet este ma mc decât, sau egal cu E-5 (ş se îsumează cel mult 00 terme). Valorle obţute se cosderă valorle eacte. (b) Pr recureţă: J ) 2m J () J () m( m m Se poreşte cu valorle J 0 () ş J () calculate cu tre grade de precze, eprmate pr umărul de cfre semfcatve eacte: 5 6 (dublă-precze), 0, ş 7 (smplă precze). Calculul, cu aceste valor de porre, se face î dublă precze. Rezultatele se scru î fşerele bess-.rez, ude 7;0; 6. Petru calculul drect: umărul de terme care se îsumează efectv este 9 5 (petru m 0,,, 0 ); acest umăr se lstează î fşerul de eşre. Prmul terme egljat î sere este de ordul ; acest terme se lstează la dsplay.

13 3 Se remarcă dvergeţa crescătoare cu m, a valorlor calculate pr recureţă î raport cu valorle eacte char petru u umăr mare de cfre semfcatve (6), î J 0 ş J. Sgurele eror troduse î calculul (b) sut erorle de rotujre î valorle lu J 0 ş J. Eemplul Muller-Kaha Cf. Kaha [2006]. Se cosderă fucța f ( y, z) 08 (85 500/ z) / y Se defește șrul: 0 4; f ( 4.25, ), Șrul coverge către o lmtă L; se propue a se găs L, pr calculul lu petru "mare", de eemplu ~ 80. Calculul î dublă precze (ș î precze etsă) coduce la L 00. Lmta adevărată este L 5 - v. Lucr. ctată. Eemplul arată stabltatea formule de recureță cu 3 terme petru calculul lu. Notă Calculul î precze cvadruplă dă rezultatul corect, aume: Errors Folderul coţe următoarele sub-foldere, coţâd lustrăr de eror, î calculul cu umere reprezetate î vrgulă flotată. Assoc_sum Ne-asocatvtatea sume. Fşere: Sum_.f90, FP_precs.f90 Se cosderă terme =.25E20; 2 = 555.5,

14 4 ş sumele s_p = + 2 s2_p = + 2. p otează precza petru reprezetarea termelor (ş a sumelor parţale), aume: s: precze smplă (24 bţ), d: precze dublă (53 bţ), ş e: precze etsă (64 bţ). Precza de reprezetare de 64 bţ se setează cu subruta fpprecs. Rezultatele se scru î fşerul sum.rez, aume: s_s = s_d = s_e = Suma s2_p are valoarea corectă (petru orcare p): s2 = Do Calculul ue sume îtr-u cclu DO, î formele: sum = 0.; sum = sum +h; terme. sum2 = jh; Fşere: Do2003.f90 j, Programul lstează sum, sum2, ş eroarea relatvă a lu sum, petru 6 0, cu pasul 20,000. Se observă că eroarea relatvă creşte odată cu umărul termelor. Ecuate_gr2 Perderea de semfcaţe la rădăcle ue ecuaţ de gradul 2. Fşere: Ecuate_gr2.f90 2 Se cosderă ecuaţa 26 0, cu rădăcle Rădăcle se,2 calculează î smplă ş dublă precze; valorle î dublă precze se cosderă valorle eacte. Î smplă precze, rădăca 2 se calculează î două modur: după formulă caz î care apare perdere de semfcaţe, ş sub forma erorle relatve ale rădăclor; se costată că valoarea 2, m. Se lstează , m este eactă.

15 5 Iteger2 Calculaţ cu teger(2). Fşere: Iteger2.f90 Se şte că teger(2) se repreztă pe 2 octeţ, ar plaja de reprezetare este teger (2) (Cap., 2). Programul testează suma , ude 2 este teger(2); de eemplu, petru 2 = 3, se obţe Eplcaţe: terme sume se repreztă ca ma jos (Cap, 2; vez ş reprezetarea acestor umere cu utltarul Btvew): 0 = = 3 Aduarea produce umărul = Itrsec_2 Apelul fucţlor trsec Fortra, petru parametr reprezetăr. Fşere: Itrsec-2.f90 Se eemplfcă apelul, petru o dată real(4) ş real(8), a următoarelor fucţ trsec: Dgts; Epoet; Fracto; Maepoet; Mepoet; Nearest; Huge; Precso; Rage; Spacg; Ty; Epslo. Se testează + epslo(.0) >. Petru semfcaţa fucţlor trsec v. Compaq Vsual Fortra Laguage Referece Maual, 200. Loss_sgf Perderea de semfcaţe. Fşere: Loss_sgf.f90 Proectul mplemetează Eemplul 2, Cap.2, 4.. Se cosderă calculul fucţe:

16 6 f ( ) ( ), petru j 0, j =, 2, 7, î smplă ş dublă precze. Valorle f () calculate î dublă precze sut cosderate valorle eacte. Se calculează î smplă precze, valorle fucţe g() dată de g( ). g este trasformata lu f, care evtă calculul dfereţe perderea de semfcaţe. Aaltc, g() = f(). care produce Se lstează: valorle f() î smplă precze; valorle f() î dublă precze, rotujte la 8 cfre semfcatve; valorle g() î smplă precze. Se observă că: - Valorle f() î smplă precze se alterează odată cu creşterea lu j, datortă perder de semfcaţe. - Valorle g() au 7 cfre semfcatve corecte. Rump_pol Polomul lu Rump [Rump S.E., 200, 988]. Fşere: ma-rump.f90; FP_precs.f90; Se cosderă fucța f (, y) y ( y 2 y 6 2y 4 2) 5.5y 8 /(2y) ş evaluarea lu fucțe, petru = 7767 ş y = (Partea esețală e costtută d polomul format de prm 3 terme ș, d acest motv, eemplul poartă umele de polomul lu Rump. Polomul a fost cosderat de Rump 983 ș reluat lucrarea d 988). Programul lstează valorle polomulu calculate cu 3 vele de precze (oferte de complatorul CVF 6.6), aume: 24 bţ (precze smplă): E+2 53 bţ (precze dublă): E+2 64 bţ (precze etsă): E+7 Valoarea corectă:

17 7 (obţută cu precze de 43 cfre zecmale de precze; 44 bţ). Notă Î precze cvadruplă (complatorul IVF.), se obțe: 3 bţ (Precze cvadrupla): Petru rezultate smlare, obţute cu complatorul FORTE Developer 6 (Fortra 95, Su) v. Loh & Walster (2002). Eplcaţe: Ce patru terme a polomulu au valorle: t: E+29 t2: E+36 t3: E+36 t4: Astfel, u se produce depăşre de format c petru smpla precze. Dar terme do ş tre sut egal cu apromatv 2 23, ş astfel, petru reprezetarea cu toate cfrele petru evtarea perder de semfcaţe, este ecesară o precze de cel puţ 23 bţ. Or, char precza cvadruplă (real(6)) u oferă decât 3 bţ. Astfel, petru evaluarea polomulu î forma dată, trebue apelat la u pachet mult-precze cum este, de eemplu, MPFUN, v. Hgh-Precso Software Drectory, 200. Eplcaţa aaltcă este următoarea (Loh & Walster (2002)): ş y daţ, satsfac 2 2 relaţa 5.5y. Cu aceasta, terme de ord superor lu î ş y se reduc, ş epresa polomulu deve f(, y) 2. 2y Astfel, suma adevărată a prmlor 3 terme (eceptâd fracța) este -2. Programul lstează ş valoarea lu f (, ), calculată î precze dublă. y Rump II Polomul r. 2 al lu Rump [Rump S.E., 200] Fşere: ma-rump II.f90; FP_precs.f90;

18 8 Eemplul este smlar cu cel d paragraful ateror, dar cu o eprese ma smplă; a fost trodus de Rump 200. f ( a, b) 2b b 2 a a 55b bbb 0 a a bb a / 2b Se calculează î aceleaș valor: a = 7767.; b = Suma prmlor 4 terme este -2 (valoarea adevărată). Programul lstează, ca e. precedet, valorle polomulu calculate cu 3 vele de precze (complatorul CVF 6.6), ș aume: 24 bţ (precze smplă): bţ (precze dublă): bţ (precze etsă): Cu precze cvadruplă (complatorul IVF.), se obțe: Valoarea corectă cu 43 cfre zecmale de precze, este tot cea d paragraful Rump_Pol, îtrucât aaltc, polomul se scre f( a, b) 2 Note a 2b - Rezultatul calculat cu precze cvadruplă (3 bț, complatorul IVF ), are toate cfrele semfcatve corecte (24); - Valoarea corectă se obțe cu MPFUN, cu mmum 22 cfre zecmale de precze, aume: ; Specal_Values Valor specale. Fşere: Specal_Values.f90 Programul lustrează calculul ş tpărrea următoarelor valor specale Cap., 3.5: - Zero cu sem: -0.; ( ) 0. - Ift cu sem:./ 0. - NaN (Not a Number): 0./0; (./0)0; (./0) +(-./0) - Număr deormalzat: 0-45

19 9 - Depăşre format (superoară): Depăşre format (feroară): 0-46 Î Project Settgs, se va seta opţuea Eable IEEE Mus Zero Support, î tab-ul Fortra/Floatg Pot. SSH Problema Sea Surface Heght. Fşere: Ma_SSH-2.f90 ssh.dat U model de crculațe a oceaulu a fost desvoltat de He & Dg (200). Varabla SSH stochează îălțmea mede a suprafețe măr, d smularea î model. Datele corespuzâd smulăr dtr-o z, petru o reţea de 2064 = 7680 de pucte (20 logtud ş 64 de lattud), au fost stocate îtr-u tablou ssh(20,64), cu 0 4 precza de 64 bţ. Datele sut umere de ordul de mărme 0 0 ş de seme dferte, î tmp ce rezultatul sumăr e de ordul lu. Datele se ctesc d fșerul de trare ssh.dat. Ele se găsesc stocate cu 7 cfre zecmale. Programul calculeaza suma elemetelor d tabloul ssh, cu precze dublă ș cvadruplă. Notă Petru complatorul CVF 6., strucțule refertoare la tpul real(6) vor f făcute cometar (sau elmate) Ordoarea sume după dferte crter produce rezultatele de ma jos: Real(8): sum_row = sum_col = sum_row_reverse = sum_col_reverse = Sum o array (Real(8)):

20 20 sum_plus = E+06 sum_mus = E+06 sum_plus +sum_mus = Real(6): sum_row_6 = sum_col_6 = Valoarea corectă este cea obţută cu precza cvadruplă (real(6)) ofertă de complatorul IVF.. Notă Rezultatul corect se poate obțe ș cu pachetul soft de precze multplă MPFUN (Baley, 200). He & Dg au utlzat metoda sumăr auto-compesată (SCS). Sum_Armoc Suma sere armoce stratega de sumare. Fşere: Sum-armoc.f90 Programul calculează suma S, petru 0, = 2, 3,..., 7, astfel: a) Sum_Smallest: de la cel ma mc la cel ma mare smplă precze; b) Sum_Largest: de la cel ma mare la cel ma mc smplă precze; c) Sum_Double: de la mc la mare dublă precze, petru Sum_Double se cosderă valoarea eactă. Se lstează valorle sumelor ş erorle relatve ale prmelor două sume. Se observă, petru 5, că eroarea relatvă a sume (a) este ma mcă decât cea a sume (b). Proectul coţe ş sursa petru calculul sume sere armoce alterate. Î Project Settgs, se va seta opţuea "Eable Floatg Pot Cosstecy"

21 2 Sum_ErrFree Algortm de sumare fără eror. Fşere: Ma-ErrFree.f90; sub-sum_2.f90; sub-sum_n.f90; wdth.f90; Proectul mplemetează u algortm de sumare precsă d Ogta T., Rump S.M., ad Osh S., Accurate Sum ad Dot Product (2003). Acesta este deft de următor do algortm: Algorthm 3.. Error-free trasformato of the sum of two floatg pot umbers. fucto [, y] = TwoSum(a, b) = fl(a + b) z = fl( a) y = fl((a ( z)) + (b z)) Algortmul 3. trasformă două umere a, b reprezetate FP, î alte două umere FP, y, astfel că: a b y ş fl( a b). Algorthm 4.. Cascaded summato. fucto res = Sum2s(p) π = p; σ = 0; for = 2 : [π, q] = TwoSum(π, p) σ = fl(σ + q) res = fl(π + σ) Algortm sut mplemetaţ pr rutele sum_2(a,b,,y) ş sum_n(, p, s_ef, cor). Cu aceşta, se calculează suma d proectul Assoc_sum. Se obţe valoarea corectă. Test_eps Test petru eroarea de rotujre a utăţ. Fşere: test_eps.f90

22 22 Se defesc (Cap., 3.8): 24 mache _ EPS 2.0 ; Se testează că: + ULP >.0 + mache_eps =.0 + EPS >.0 23 ULP 2.0 ; EPSILON(.0 ) EPS ; Nose Zgomot umerc î calculul fucţlor v. Cap. 2, 4.2. Fşere: Nose.f90; fu.f90; FP_Precs.f90; Proectul mplemetează calculul fucţe 3 2 f ( ) (f are o rădăcă trplă î. 2). Calculul se face petru [ a, b], a j h; j 0,,..., N, ude a, b, ş N sut date ma jos. Calculele se fac cu precze mpusă de 24 bţ setată cu subruta fpprecs. Programul are ca eşre u fşer cu valorle ş f (). Cu u program de grafcă, se costrueşte grafcul (, f ( )). Se remarcă următoarele: a) [0.4, 2.0], N =00: grafcul apare ca o curbă etedă. b) [.9,.2], N = 00: grafcul apare ca o curbă cu tagetă dscotuă. c) [.9,.2], N = 000: puctele apar stuate îtr-o badă. d) [.99,.20], N = 00: detalere a bez de certtude. Spre eemplfcare, prezetăm grafcul (c).

23 23 Fgura - Zgomot umerc Ulp Calculul lu ULP(), petru o plajă de valor. Fşere: ma-ulp2003.f90; ULP()-2003.f90; Se defeşte v. Cap., 3.8, ULP ep ( ) 2, ude: e este epoetul reprezetăr lu î modelul ştţfc, returat de fucţa epoet(); P este precza reprezetăr, î bţ ( P 24 sau P 53 ). Se calculează: ULP( ) ; 2 ULP( ) / 2

24 24 Se testează că: ; 2. Petru test, se recomadă: - O plajă de valor 3; - O valoare mare (de e. E6). Programul lstează parametr reprezetăr lu (î modelul ştţfc), aume fracţa ş epoetul, ULP(), ş verfcă relaţle de ma sus. Folderul coţe sursele petru versuea î smplă precze; folderul Ulp_d coţe sursele petru versuea î dublă precze.

25 25 CAPITOLUL II ECUAŢII NELINIARE Problema: Foldere:. Ecuaţ de forma f() = 0: Bs; Secat; Newto; 2. Ecuaţ de forma = g(), metoda puctulu f: F; Statoar; Atke; 3. Ssteme de ecuaţ elare: F_Sys; Newto_Sys; 4. Rădăcle poloamelor: C_pol; Pol; Pol_Drect; Pol_Comple; Laguerre; Muller. II- Ecuaţ de forma f() = 0 Petru metodele bsecţe, Newto ş secate, fucţa de test este: f ( ) e 3 2 Aceasta admte 3 rădăc stuate î tervalele [-,0], [0,], [3,4]. Apromaţle rădăclor, cerute de metodele umerce (respectv, tervalele care coţ rădăca), se determă pr metode algebrce. Ma smplu, apromaţle rădăclor se pot găs pr specţa grafculu fucţe. 2 Ca eemplu, grafcul fucţe f ( ) e 3 se dă ma jos. Acesta este costrut cu programul GRAPH, pe baza fşerulu de eşre d programul coţut î folderul Grafc.

26 26 Fgura 2 Grafcul fucţe f ( ) e 3 2 Bs Metoda bsecţe. Fşere: Bs2005.f90: subruta metode Ma_Bs2005.f90: programul prcpal Fu.f90: subprogram de tp fucto, care defeşte fucţa f(). Epresa fucţe poate clude u parametru p; dacă estă, valoarea lu p este dată de trare. Fucto_epresso.f90, wdth.f90: UTILITARE.

27 27 Metoda: Fucţa f se presupue deftă ş cotuă pe tervalul [ a, b], luâd valor de seme cotrare î capetele tervalulu, ş avâd o sgură rădăcă î terval. Se defeşte c ( a b) / 2 Se a ca ou terval [ a, b] acela dtre [ a, c] ş [ c, b] î care fucţa a valor de seme cotrare la capete; etc. Şrul puctelor c coverge la rădăcă, lar. Subruta metode este: bs(f, a, b, eps, ter, rad, kod, ktp) Parametr formal sut: f: Numele fucţe f(). Este declarat cu atrbutul eteral programul prcpal. a, b: Itervalul care coţe rădăca. eps: Toleraţa. ter: Numărul mam de teraţ lt (trare) / Numărul efectv de teraţ (eşre) rad: Rădăca calculată. kod: Cod de termare a teraţe (utlzat ter): 0: s-a ats toleraţa eps : s-a depăşt lt -: petru tervalul specfcat f(a)f(b) > 0 2: rădăcă î a sau b ktp: Cod de tpărre teraţ: 0 (Nu); 0 (Da) Testul petru atgerea toleraţe eps este b c eps, ude [ a, b] este tervalul curet. Metoda ajustează toleraţa eps: dacă eps ULP(c), se pue eps ULP(c). Datele de trare se troduc de la termal. Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ:

28 28 - epresa fucţe f (scrsă de utltarul Fucto_epresso) - [p, dacă estă] - datele de trare a, b, lt, eps - modul de îcheere a teraţe (mesaj, coform codulu kod) - rădăca calculată rad - valoarea f(rad) - umărul efectv de teraţ. Datele de trare petru eemplul de test (3 rădăc): a, b: -, 0; 0, ; 3, 4 eps: E-6 lt: 50; 20; 20 ktp: 0 sau Rezultate: Toleraţa eps atsă. Radac / Număr de teraţ ; ; ; Eercțu Rulat, d ou, petru ua dtre rădăc, cu tolerața E-8 ș lt = 30 Secat Metoda secate. Fşere: Secat2005.f90: subruta metode Ma_Secat2005.f90: programul prcpal fu.f90: subprogram de tp fucto, care defeşte fucţa f(). Epresa fucţe poate clude u parametru p. Perod.f90: subrută petru peroada procesulu staţoar Fucto_epresso.f90; wdth.f90: utltare Metoda: Fucţe f cotuă pe u terval î jurul rădăc α.

29 29 Formula de terare este f ( ) ; ; 0 ş = date. f ( ) f ( ) Apromaţle 0 ş pot îcadra sau u rădăca. Dacă 0 ş sut sufcet de apropate de α (ş f, f ş f sut cotue), şrul, ar ordul de covergeţă este p. 68. Subruta metode este: secat(f, 0,, eps, lt, rad, kod) Parametr formal sut: f: umele fucţe; 0, : cele două apromaţ ţale cerute de metoda secate. eps: Toleraţa lt: Numărul lmtă de teraţ (trare); umărul efectv de teraţ (eşre) rad: Rădăca calculată kod: Itrare: cod de tpărre a teraţlor: 0 (u); 0 (da) Ieşre: cod de îcheere a teraţe (ter) 0: toleraţa eps atsă : depăşrea umărulu mam de teraţ adms lt 2: Proces staţoar -: dvergeţă -2: umtor ul î formula metode. Teste: Testul petru atgerea toleraţe eps este 2 eps Testul petru dvergeţa locală este 2 0, ude 0,, 2, sut tre terate succesve. Acest test u opreşte teraţa. Testul de umtor ul este f ( ) f ( 0) eps _ f,

30 30 ude toleraţa este aleasă ca eps _ f 2E 7 (această valoare se poate modfca). Datele de trare se troduc de la termal. Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ: - epresa fucţe f (scrsă de utltarul Fucto_epresso) - [p, dacă estă] - datele de trare 0, lt, eps - dfereţa curetă df, la îcheerea teraţe - modul de îcheere a teraţe (mesaj, coform codulu kod) - rădăca calculată rad; valoarea f(rad) - umărul efectv de teraţ. Î cazul tpărr teraţlor (ktp 0), dacă procesul mafestă dvergeţă se scre mesajul dvergeţă locală. Datele de trare petru eemplul de test (3 rădăc) se dau ma jos. Ca apromaţ ţale se au capetele tervalelor d metoda bsecţe. 0, : -, 0; 0, ; 3, 4; eps: E-6 lt: 0; 0; 0 ktp: 0 sau Rezultate: Toleraţa eps atsă. Rădăc / Număr de teraţ ; ; ; Observaţe Ca apromaţ ţale s-au luat capetele tervalelor cosderate î metoda bsecţe, ş aceeaş toleraţa eps ca î metoda bsecţe. Aceasta, petru a compara rezultatele metode secate cu cele d metoda bsecţe (aume: valoarea rădăc ş umărul de teraţ)

31 3 Newto Metoda Newto (o sgură ecuaţe). Fşere: Newto.f90: subruta metode Ma_Newto.f90: programul prcpal sub.f90: Perod.f90: subprogram care defeşte (ş returează) valorle fucţe f() ş dervate f (). Epresa fucţe f() poate clude u parametru p. fucţe care returează peroada procesulu staţoar Fucto_epresso; Fucto_epresso-2.f90; wdth.f90: utltare. Metoda: Fucţe f cotuă ş dervablă, î vecătatea ue rădăc α. Formula de terare este f ( ) ; 0 ; 0 dat f ( ) Dacă 0 este sufcet de aproape de rădăca smplă α (ş cotue), şrul coverge către α, cu ordul de covergeţă 2. f, f ş f sut Subruta metode este: Newto(SUB, 0, eps, lt, rad, kod, _dv) Parametr formal sut: SUB: Numele subrute care returează valorle fucţe ş dervate 0: Apromaţa ţală eps: Toleraţa lt: Numărul lmtă de teraţ (trare); umărul efectv de teraţ (eşre) rad: Rădăca calculată kod: Itrare: cod de tpărre a teraţlor: 0 (u); 0 (da) Ieşre: cod de îcheere a teraţe (ter) 0: toleraţa eps atsă : depăşrea umărulu mam de teraţ adms lt 2: Proces staţoar

32 32 -: dvergeţă -2: dervata fucţe 0 este apromatv ulă. _dv: Numărulde dvergeţe locale Subruta SUB este: sub(f, f, ) f: Valoarea fucţe pe ; Epresa fucţe poate clude u parametru p; dacă estă, valoarea lu p este dată de trare. f: Valoarea dervate pe : Apromaţa curetă Observaţe Teste: Se defeşte dfereţa curetă df, pr: df 0, ude este valoarea terate curete, ş 0 valoarea terate la pasul ateror. - Testul petru atgerea toleraţe eps este: df eps - Testul petru dvergeţă este df df _ at, ude df_at este dfereţa df de la pasul ateror. Petru aalza tpulu de dvergeţă, satsfacerea testulu de dvergeţă u opreşte teraţa, c produce uma u mesaj î fşerul de eşre. - Testul petru dervată ulă pe este f E 0 ude f f ( ). - Se ma testează îtâlrea uu proces staţoar. Datele de trare se troduc de la termal.

33 33 Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ: - epresa fucţe f (scrsă de utltarul Fucto_epresso) - [p, dacă estă] - datele de trare 0, lt, eps - dfereţa curetă df, la îcheerea teraţe - [_dv, dacă estă dvergeţe locale] - modul de îcheere a teraţe (mesaj, coform codulu kod) - rădăca calculată rad; valoarea f(rad) - umărul efectv de teraţ. Datele de trare petru eemplul de test (3 rădăc), sut: 0: -0.5; 0.5; 3.5; eps: E-6 lt: 0; 0; 0 ktp: 0 sau Rezultate: * Tolerata EPS s-a ats: Rădăc / Număr de teraţ ; ; ; Observaţe Ca apromaţ ţale 0, s-au luat mjloacele tervalelor cosderate î metodele bsecţe ş secate, ş aceeaş toleraţă eps. S-a procedat astfel, petru a compara rezultatele metode Newto cu cele d metodele bsecţe ş secate (valoarea rădăc ş umărul de teraţ). Apromaţ ţale ma bue pot f obţute de pe grafcul fucţe f. Cu o apromaţe 0 ma apropată de rădăcă, umărul de teraţ ecesar petru atgerea toleraţe eps va f ma mc Folderul Newto coţe u sub-folder Newto_r. Structura de fşere este aceeaş. Subruta Newto (fşer Newto_r.f90) tpăreşte, î plus, valorle lambda ( 2 ) /( 0), petru detfcarea rădăclor multple ale lu f

34 34 Observaţe: Proces staţoar î metoda Newto Fe fucţa: f ( ) 7 5cos 3s ş terăm cu apromaţa ţală 0 5. (Î fapt, u estă rădăc î vecătatea lu 0 ). Iterarea î metoda Newto duce la dvergeţă locală (îtâltă la pasul 3). Dacă u oprm procesul teratv, atuc, la teraţa 9, apare rezultatul: Iterata 9: (9) = (7) ** Proces statoar de peroada = Rezultatul se verfcă î fgura de ma jos, î care se repreztă grafcul fucţe f ş al tagetelor la grafcul lu f, î puctele de abscsă ş Procesul staţoar apare dacă teraţa u este oprtă câd se îtâleşte dvergeţa cum se face î mod obşut.

35 35 Fgura 3 - Proces staţoar î metoda Newto Eercţu: Iteraţ cu: 0 = 6.2; eps = E-7 ş lm = 000. Rezultat: proces staţoar de peroadă 5 Observaţe Petru acest eemplu, metoda secate cu apromaţle ţale 4.9 ş 5. dă dvergeţă locală î prm paş, covergâd apo la rădăca = 0

36 36 II-2 Ecuaţ de forma = g(). Metoda puctulu f. Ecuaţa de test este g(), echvaletă cu f ( ) 0, ude f ( ) 2 e 3. g () se determă pr prma procedură eplctă de puct f, aume g( ) ( ) f ( ), ude ( ) p = costat. Petru valorle lu p v. ma jos. F Metoda puctulu f (o sgură ecuaţe). Fşere: F2005.f90: subruta metode Ma_F2005.f90: programul prcpal G.f90: subprogram de tp fucto care defeşte fucţa g() Perod.f90: subrută petru peroada procesulu staţoar Fucto_epresso_g.f90; wdth.f90: utltare Metoda: Fucţe g, cotuă ş dervablă pe o vecătate [ a, b] a rădăc α. Formula de terare este g( ) ; 0; 0 = dat Dacă g este cotuă, ma g( ), ş [ a, ], şrul, lar. [ a, b] 0 b Subruta metode este: F(g,, tol, lm, kod) Parametr formal sut: g: Numele fucţe g(), declarat eteral î programul prcpal. Epresa fucţe poate clude u parametru p. : Itrare: apromaţa ţală; Ieşre: soluţa calculată / ultma apromaţe. tol: Toleraţa petru dfereţa a două valor succesve ale lu. lm: Numărul lmtă de teraţ. kod: Itrare: cod petru tpărrea teraţlor: 0 (Nu); 0 (Da)

37 37 kod 2: tpăreşte ş valoarea lambda ( 2 ) /( 0), ude 0, ş 2 sut tre terate succesve. Ieşre: cod de îcheere a teraţe: 0: s-a obţut toleraţa tol. : depăşre a lu lm. 2: proces staţoar. -: dvergeţă. Testul petru atgerea toleraţe tol este 0 tol, ude este terata curetă, ş 0 terata ateroară. Datele de trare se troduc de la termal. Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ: - epresa fucţe g (scrsă de utltarul Fucto_epresso_g) - [p, dacă estă] - datele de trare 0, lm, tol - modul de îcheere a teraţe (mesaj) - dcele ultme teraţ, rădăca calculată, valoarea g() - dfereţa curetă = g() Nota Sub-folderul Df coţe fşerele petru metoda î dublă precze Fucţa g, petru ecuaţa de test, este 2 g( ) p( e 3 ), ude p este o costată. Se au valorle: p 0. 0; p ; Datele de trare petru eemplul de test rădăca a trea, sut: 0: tol: 2.4E-7; lm: 00;

38 38 Rezultate: p = 0.0 Iterata g() ** Dfereta cureta = E-07 p = ** Dfereta cureta = Notă A doua valoare petru p este apropată de p_optm 0.055; v. Eemplul d Cap. 3-II, Eemplu de proces staţoar de peroadă 2: Se cosderă fucţa tg( ) g( ), tg( ) ş se terează cu 0 = 0.8, tol = E-7, lm = 000. Se obţe rezultatul: Iterata 844: (844) = (842) ** Proces statoar de peroada = 2 Iterata ** Dfereta cureta = E-06 Eplcaţe: Dervata g (), calculată î smplă precze pe tervalul [ , ], are valoarea , care este foarte apropată de valoarea. Astfel, este realzată codţa petru procesul staţoar de peroadă 2: g ( ).

39 39 Eercţu: Iteraţ î dublă precze, cu 0 = 0.8, tol = E-4, lm = Statoar Metoda puctulu f, proces staţoar: grafce. Fşere: Stat2005.f90: programul prcpal G.f90: fucţa g Fucto_epresso_g.f90: utltar Programul are ca eşre fşerele petru reprezetarea grafcă a uu proces staţoar, aume: Nume-ter.rez: teratele; Nume-g.rez, ume-bs.rez: fucţa g ş prma bsectoare. Datele de trare se troduc de la termal. Acestea sut: - 0,, : Apromaţa ţală; umăr de terate; umăr de terate omse; - Nume: Nume petru costrurea umelor fşerelor de eşre. Datele de eşre costau d două l-tet, urmate de date umerce, ş aume: - Le-tet-: Epresa fucţe g - Le-tet-2: Tpul de date d fşer, aume: terate; fucţa g; bsectoarea I-a. -, y: Perech de date umerce, aume: o Nume-ter.rez: k, ) : Idce terată terată ( k o Nume-g.rez:, g( )) ( k k o Nume-bs.rez:, ) ( k k k a valorle: k,. Notă Dacă programul de grafcă u are capabltatea de a recuoaşte l-tet (ş a le gora), se vor şterge cele două l-tet d fşer (prmele două l), îate de îcărcarea fşerulu î programul de grafcă. Î partcular, programul GRAPH are această capabltate

40 40 Eemplu: Petru eemplul de proces staţoar d metoda puctulu f, datele de trare sut: 0.8; 000; 800; Se omt 800 de terate, petru a reprezeta procesul staţoar (care îcepe la terata 842), pr teratele Grafcele teratelor ş fucţe g sut date ma jos. Fgura 4 - Proces staţoar Grafcul teratelor

41 4 Fgura 5 - Proces staţoar Grafcul fucţe ş prme bsectoare Atke Accelerarea Atke. Fşere: Atke2005.f90: subruta metode Ma_Atke2005.f90: programul prcpal ga.f90: fucţa g petru Atke Perod.f90: peroada procesulu staţoar Fucto_epresso_g.f90; wdth.f90: utltare Metoda:

42 42 Cu tre terate succesve,, 2, calculate ca î metoda puctulu f, se calculează a ( 2, 2, ( 2 ) ( ) ) Valoarea a este o apromaţe a rădăc (ma buă decât terata următoare,, 2 g( ) 2 ). 3 Procesul teratv este următorul: = dat; g ) ; g ) ; 0 3 a 0,2 ( 0 2 ( ; g ) ; g ) ; 4 ( 3 5 ( 4 6 a 3,5 ; Etc. Metoda Atke are cel puţ ordul 2, îtr-o rădăcă smplă. Subruta metode este: atke(g, 0, eps, lt, rad, kod) Parametr formal au, î geeral, aceeaş semfcaţe ca la metoda puctulu f. Eplct: g: Numele fucţe g(), declarat eteral î programul prcpal. Epresa fucţe poate clude u parametru p. 0: Itrare: apromaţa ţală; Ieşre: soluţa calculată / ultma apromaţe. eps: Toleraţa v. ma jos. lt: Numărul lmtă de teraţ. kod: Itrare: cod petru tpărrea teraţlor: 0 (Nu); 0 (Da) kod 2: tpăreşte ş valoarea lambda ( 2 ) /( 0), ude 0, ş 2 sut tre terate succesve. Ieşre: cod de îcheere a teraţe: 0: s-a obţut toleraţa eps : depăşre a lu lt 2: proces staţoar

43 43 -: umtor ul î formula metode Formula metode este codată astfel: teratele curete sut 0,,2. um =(2-) -(-0) cor =(-0)**2/um a =0 cor ude um este umtorul, ar cor este corecţa la 0. Testele petru atgerea toleraţe eps sut: ) testul obşut î metoda puctulu f: 2 eps 2) testul petru corecţe: df = a - 0; df eps Testul de umtor ul este um = 0. Datele de trare se troduc de la termal. Î programul prcpal, parametrul efectv petru toleraţă este umt tol. Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ: - epresa fucţe g (scrsă de utltarul Fucto_epresso_g) - [p, dacă estă] - datele de trare 0, lt, tol - modul de îcheere a teraţe (mesaj) - dcele ultme teraţ, rădăca calculată rad, valoarea g(rad) Eemplu de test: Se cosderă aceeaş fucţe g, ca la metoda puctulu f: 2 g( ) p( e 3 ), ude p este o costată. Se caută rădăca d tervalul [3, 4], cu: apromaţa ţală 0 = 3.7; tol = 2.4E-7; lt = 0. Se terează petru valor p 0.0, 0.02,, 0. 09, ş p = Rezultate eemplfcare petru p = 0.0; p = 0.00:

44 44 p = E-03 Radaca r. Iterata 3: * (3) -(2) = E-07 * Tolerata talta Radaca = ; Numar terat = 3 g(rad) = p = E-03 Radaca r. 2 2-; -0: E E-06 ** Numtor ul Radaca = ; Numar terat = 5 g(rad) = Observaţe Petru comparaţa umărulu de teraţ d metoda Atke, cu cele d metoda puctulu f: Îtr-u pas, Atke calculează două terate ( ş 2, cu 0 dat); astfel, umărul de terate calculate este 2 umărul teraţlor afşat de Atke. Petru p = 0.0: Atke calculează 6 terate, faţă de 47 î metoda puctulu f Atke\Atke-G Sub-folder, petru metoda Atke cu fucţa G(). Fşere: Atke_G f90; Ma-Atke_G2005.f90; ga.f90 9; Perod.f90; Fucto_epresso_g.f90; wdth.f90. Semfcaţa fşerelor este aceeaş ca î Atke. Metoda este: G( ),

45 45 ude 2 ( g( ) ) G( ) g( g( )) 2g( ) Subruta metode este: atke_g(g, 0, eps, lt, rad, kod) Parametr formal au aceeaş semfcaţe ca la Atke. Metode este codată astfel: teratele curete sut a ş a0. um =g(g(a0)) -2*g(a0) +a0 cor =-(g(a0)-a0)**2/um a =0 +cor Testele petru toleraţă se pu astfel: ) testul d metoda puctulu f: g( a0) a0 eps 2) testul petru corecţe: df a a0; df eps. Datele de trare se troduc de la termal. Parametrul efectv petru toleraţă este umt tol (î programul prcpal). Rezultatele se scru î fşerul de eşre ume.rez, ude ume este trodus de utlzator, ş coţ aceeaş date ca rezultatele d Atke. Petru eemplul de test d Atke, se obţ rezultatele: p = E-03 * XTOL talt Radaca = ; Numar terat = 4 g(rad) = p = E-03 * XTOL talt Radaca = ; Numar terat = 7 g(rad) =

46 46 II-3 Ssteme de ecuaţ elare Se cosderă sstemul de ecuaţ cu ecuoscute f (,, 2 f (,, 2...,..., ) 0 ) 0 Vectoral, sstemul se scre f( ) 0, ude, f f ( ) f ( ). ( ) Se otează tot cu, şrul argumetelor lu f, adcă,,. Petru metoda puctulu f, sstemul dat se pue sub forma sstemulu echvalet g(). Aceasta se realzează pr procedura eplctă de puct f g( ) A( ) f( ), ude A() este o matrce esgulară. Eemplu de test: 2 2 f (, y) y 5 0, f (, y) y e 0. Apromaţle ţale se au: (0) (0) ( 2, ), ş (0.5, 2) 2 Acestea se determă d tersecţa grafcelor celor două curbe. Notă Dfcultatea majoră costă î găsrea apromaţlor ţale, î cazul 3

47 47 Fgura 6 Determarea apromaţlor ţale F_Sys Metoda puctulu f petru ssteme de ecuaţ elare. Fşere: F_Sys2005.f90: subruta metode Ma-F_Sys2005.f90: programul prcpal fcs.f90: subruta care returează valorle fucţlor f () orm$.f90: Elm.f90: orma- a uu vector v() subruta petru elmarea Gauss

48 48 Fucto_epresso_Sys.f90; wdth.f90: utltare Metoda: (0) Iterare cu matrcea costată Iteraţa este deftă de A f( ( ) ( ) ( ) ) A F( ), cu actualzare după 3 paş. F() este jacobaul lu f. Dervatele parţale ale fucţlor f () (elemetele jacobaulu) se calculează umerc, cu varaţa delta Schema de terare este următoarea. Se defeşte δ ( ) ( ) ( ) ş rezultă:, F( ) δ f ( ( 0) ( ) ( ) ) (a) δ ( ) ( ) ( ) Ecuaţa (a) este u sstem lar î ecuoscuta Gauss. Testele de oprre a teraţe sut: δ ( ) lt eps Metoda are u ord de covergeţă p 2. ( ) δ, care se rezolvă pr elmare Subruta metode este FIX_SYS(fcs,,, tol, delta, lt, f, kod), Parametr formal sut: : ordul sstemulu (umărul de ecuaţ) fcs: umele subrute care calculează valorle fucţlor f () : tablou () petru valorle,,

49 49 tol: toleraţa delta: varaţa petru calculul dervatelor parţale lt: umărul lmtă de teraţ f: tablou f(), petru valorle f ( ),, f ( ) kod: cod de îcheere a teraţe (ter): 0: toleraţa atsă : umărul lmtă de teraţ ats -: Pvot < prag elmarea Gauss Eemplul de test: Se obţ rezultatele: Radaca r. Apromata tala: tol:.000e-06; lt: 0 XTOL ats Soluta X: F(X): E E-08 Numar de terat = 5 Radaca r.2 Apromata tala: tol:.000e-06; lt: 20 XTOL ats Soluta X: F(X): E E-08 Numar de terat = 7

50 50 Newto_Sys Metoda Newto petru ssteme de ecuaţ elare. Fşere: Newto_Sys.f90: subruta metode Ma-Newto_Sys.f90: programul prcpal fc.f90: subruta care returează valorle fucţlor f () jfc.f90: subruta care returează jacobaul lu f () orm$.f90: Elm.f90: orma- a uu vector v() subruta de elmare Gauss Perod_Sys.f90: fucţe care returează peroada procesulu staţoar Fucto_epresso_Sys.f90, wdth.f90: utltare Metoda: Iteraţa este deftă de ( ) ( ) F( ) f( ) ( ) ( ) ude F() este jacobaul lu f: f F( ) j f f f f f f... 2 Elemetele jacobaulu se calculează aaltc. Schema practcă de terare este:, F( ) δ f ( ( ) ( ) ( ) ) (a) δ ( ) ( ) ( ) Corecţa ( ) δ se calculează pr rezolvarea sstemulu lar (a). Iteraţa se opreşte pr testele: ( ) δ eps,

51 5 Număr de teraţ lt ude eps ş lt sut toleraţa, ş respectv, umărul lmtă de teraţ. Pe lâgă acestea, teraţa se ma opreşte dacă Jacobaul este sgular, sau dacă se îtâleşte u proces staţoar. Metoda are ordul de covergeţă p 2. Subruta metode este Newto_Sys (fc, jfc,,, lt, tol, f, kod, _dv) Parametr formal sut: : ordul sstemulu (umărul de ecuaţ) fc: umele subrute care calculează valorle fucţlor f () jfc: umele subrute care calculează jacobaul lu f; elemetele jacobaulu sut returate î tabloul jf(,). X: tablou () petru valorle,, tol: lt: toleraţa umărul lmtă de teraţ f: tablou f(), petru valorle f ( ),, f ( ) kod: cod de îcheere a teraţe (ter): 0: toleraţa XTOL atsă : umărul lmtă de teraţ ats 2: Proces staţoar -: Dvergetă -2: Pvot < prag elmarea Gauss (Jacoba sgular) Eemplul de test: Se obţ rezultatele:

52 52 Radaca r. Apromata tala: tol:.000e-06; lt: 0 Norma corecte: E-08 XTOL ats Soluta X: F(X): E E-08 Numar de terat = 4 Radaca r.2 Apromata tala: tol:.000e-06; lt: 0 Norma corecte:.82579e-08 XTOL ats Soluta X: F(X): E E-09 Numar de terat = 5 II-4 Rădăcle poloamelor C_pol Calculul valor polomulu, drect ş mbrcat (schema Horer), pe u terval [ a, b], cu pasul h. Fşere: C_pol2005.f90; sub_pol.f90 Metoda: Eemplfcăm pe u polom de gradul 4. Geeralzarea este medată. Forma dată: p ( ) a0 a a2 a3 a4

53 53 Forma mbrcată: p( ) a ( a ( a2 ( a3 a4 0 ) ) ) Calculul efectv se face cum urmează:. Calculul pr cclu: a) Forma dată: p =a(0) zk =. do k =, zk =zk*z p =p +a(k) *zk eddo Observaţ că, petru mmzarea umărulu operaţlor, puterle lu se calculează succesv pr k k. b) Forma mbrcată: Calculul pe forma mbrcată face î următorul cclu, care calculează succesv epresle d parateze: p =a() pd =dble(a()) do k =-,0,- p =a(k) +z*p pd =dble(a(k)) +dble(z)*pd eddo p ş pd sut valorle î smplă, respectv dublă precze, î forma mbrcată. (pd este declarată î dublă precze.) 2. Calculul pr fucţa p(), î smplă precze: Se calculează valoarea polomulu, î forma dată ş cea mbrcată. Î acest calcul, membrul drept se calculează î format dublu ets (64 bţ, î coprocesor), ş rezultatul se rotujeşte la precza smplă. sub_pol.f90: subrută care calculează valoarea polomulu î modul 2 (smplă precze). C_pol.f90: programul prcpal, care calculează î modurle a, b.

54 54 Datele de trare sut: - : gradul polomulu - a, a,, a0 : coefceţ polomulu (î această orde); - a, b, h: tervalul [ a, b] ş pasul h Acestea se ctesc dtr-u fşer de date. Fşerul de date este utlzat ş ca fşer de eşre petru rezultatele p, p, pd. Eemplu de test: p 3 2 ( ) 3 3 ( ) 3 Fşerul de date ş rezultate: Calcul pr cclu: p-dat p-imbrcat p-imbrcat Dubla precze E E E E E E E E E-03 Err(p_Dat) Err(p_Imbrcat) E E E E E E-09 Calcul pr fucte: p-dat p-imbrcat E E E E E E-03

55 55 Se costată: - La calculul pr cclu: valoarea cea ma precsă este pd (cu ecepţa valor î 0.9). - La calculul pr fucţe: u estă dfereţe ître forma dată ş mbrcată, ş valorle cocd cu valorle pd. Pol Metoda Newto petru poloame Algortmul cu reducerea gradulu Fşere: Polall.f90: subruta metode Ma-Pol.f90: programul prcpal Metoda: Se cosderă polomul p( ) a 0 a a Defm coefceţ a 2 2 a b ; bk ak bk, k, 2,..., 0 ude b p( ). Defm polomul cât, pr: 0 q( ; ) b b2... b, adcă p( ) ( ) q( ; ) p( ). Formula de terare este p( ) q( ; ), î care: q( ; ) q( ;. ), Subruta metode: Pol(, a, 0, eps, tma,rad, b, er, _dv) Calculează o rădăcă a lu p().

56 56 Parametr formal: : gradul polomulu a: vectorul coefceţlor: a0, a,..., a 0: apromaţa ţală eps: toleraţa petru metoda Newto tma: Itrare: umărul mam de teraţ. Ieşre: umărul efectv de teraţ rad: rădăca / ultma apromaţe b: coefceţ lu q() - returaţ petru o oua rădăcă. er: cod de trare/eşre: - Itrare: tpărrea teraţlor (0: da; 0: u) - Ieşre: cod de îcheere a teraţe: 0: toleraţa eps atsă : umărul mam de teraţ ats 2: Proces staţoar -: Dvergeţă -2: Numtor ul _dv: umărulde dvergeţe locale Formula de terare este codată astfel: 0 df Observaţ - Testul petru toleraţă este: df eps - Testul petru dvergeţă locală este: ude df df _ at df _ at este df de la pasul ateror. Programul prcpal: Este scrs astfel ca să determe u umăr specfcat de rădăc, pr reducerea succesvă a gradulu (deflaţe), ş aume: după găsrea ue rădăc, rădăca

57 57 următoare se caută ca rădăcă a lu q(), care are gradul cu o utate ma mc decât precedetul polom. Rădăcle sut apo, purfcate, pr terare î polomul orgal. Algortmul cu reducerea gradulu este ma puţ recomadat, îtrucât: reducerea gradulu poate f u proces stabl; se cer, î plus, teraţ de purfcare a rădăclor. Alteratva este algortmul fără reducerea gradulu v. folderul Pol_Drect. Fşerul de trare coţe următoarele date (scrse pe l): Le_tet: ttlul probleme; ma. 80 caractere;, r, ktp: gradul polomulu, umăr de rădăc de calculat, cod de tpărre a teraţlor; a, a a : coefceţ polomulu: (î această orde);,, 0 eps, tma: toleraţa, umărul mam de teraţ; 0(:r): apromaţle ţale, î umăr de r. Datele de eşre se scru î cotuarea datelor de trare, ş coţ: rad: Rădăca calculată, sau ultma terată dacă u s-a ats toleraţa; Codul de îcheere a teraţe; Numărul de teraţ; Valoarea p(rad). Eemplu: Polomul Laguerre de gradul 6. Fşerul de trare/eşre este: Laguerre de ordul e ** Radacle pr deflate: Rad Cod Iterat p(rad) E E E-03

58 E E E-02 ** Radacle polomulu: E E E E E E-02 Pol_Drect Metoda Newto petru poloame fără reducerea gradulu. Fşere: Pol_drect.f90: subruta metode Ma-Pol_drect.f90: programul prcpal GetFle.f90, OpeFle.f90: subrute petru selectarea fşerulu de trare Perod.f90: fucţe petru calculul peroade procesulu staţoar wdth.f90: utltar Metoda: Metoda este aceeaş ca î POL. Deosebrea este că acum, programul prcpal calculează rădăcle pr terare î polomul orgal (fără reducerea gradulu). Acest procedeu se recomadă faţă de cel descrs î POL. Subruta metode: POL_drect(, a, 0, eps, tma, rad, b, er, _dv) Parametr formal sut aceeaş ca la subruta metode POL, cu dfereţa că b este varablă scalară, care returează valoarea polomulu pe rădăca calculată. Datele de trare ş de eşre, sut aceleaş ca petru fşerul de trare d POL.

59 59 Î plus, programul prcpal tpăreşte ş semfcaţa codurlor de îcheere a teraţe. Notă: Fşerul de trare se selectează d fereastra de dalog stadard. Eemplu: Polomul Laguerre de gradul 6. Fşerul de trare/eşre este: Laguerre de ordul e ** Radacle: Radaca Cod Iterat p(radaca) E E E E E E-02 Cod Semfcate 0 * Tolerata EPS atsa Notă Pol_Drect-20 Acest proect mplemetează formula de terare Newto, petru poloame, î forma: p( ) p( ) Deosebrea față de formula geerală Newto este că acum, valoarea polomulu ș a dervate se calculează î formă mbrcată (v. fucța polval.f90). Formula d POL este potrvtă ma degrabă, petru versuea cu reducerea gradulu. Î rest, proectul este smlar cu cel d Pol_Drect. Fșerul de trare este acelaș cu cel de la Pol_Drect.

60 60 Pol_Comple Metoda Newto petru poloame: coefceţ real ş rădăc reale/complee. Fşere: Pol_comple.f90: subruta metode Ma-Pol_comple.f90: programul prcpal GetFle.f90, OpeFle.f90: subrute petru selectarea fşerulu de trare Perod_Comple.f90: fucţe petru calculul peroade procesulu staţoar wdth.f90: utltar Metoda ş formula de terare sut aceleaş ca petru POL, ar algortmul este cel d POL_Drect. Coefceţ polomulu sut real, ş se pot calcula rădăcle complee. Î plus, programul prcpal oferă posbltatea versăr coefceţlor polomulu adcă: se troduc coefceţ a k, ş se calculează rădăcle polomulu cu coefceţ / a. k Datele de trare ş eşre sut aceleaş ca petru fşerul de trare d POL, cu ecepţa că, după coefceţ polomulu se trduce o dată logcă petru versarea coefceţlor; Valoare: T (da), sau F (u) v. fşerul de ma jos. Apromaţle rădăclor trebue să fe complee. Dezavatajul este că trebue cuoscute apromaţ complee sufcet de apropate de rădăc. Eemplul de test: Se cosderă polomul p( ) care este desvoltarea lu ( ) ( 2)... ( 7). Coefcetul lu polomulu perturbat: ~ 7 6 p ( ) , 6 se modfcă, d 28, î Se calculează rădăcle 5 Fşerul de trare/eşre este: Polomul: (-)*... *(-7) - perturbat:

61 F e-6 00 (,0) (2,0) (3,0) (4,0) (5., 0.5) (5.,-0.5) (7,0) Radaca Iterata 42: (42) = (5) ** Proces statoar de peroada = 37 Radaca Nr. de dvergete locale ( , E+00) 4 ( , E+00) 9 ( , ) 9 ( , ) 9 ** Radacle: Radaca Cod Iter p(radaca) ( ) 0 2 ( E ) ( ) 0 4 ( E ) ( ) 0 3 ( E ) ( ) 2 42 ( E ) ( ) 0 22 ( E E-05) ( ) 0 22 ( E E-05) ( ) 0 7 ( E ) Cod Semfcate 0 * Tolerata EPS atsa 2 ** Proces statoar

62 62 Laguerre Metoda Laguerre. Metoda: Formula de terare este z p( z ) p( z ) H( z ) z, 2 ude: este gradul polomulu; H( z ) ( )[( ) p ( z ) p( z ) p ( z )], ar semul d faţa radcalulu se a astfel ca umtorul să fe cel ma mare î modul (dacă z este real, semul este semul lu p z ). Se arată că petru o rădăcă smplă, ordul de covergeţă este 3 (petru o rădăcă multplă, ordul este ). ( Fşere: Ma_Lag.f90: programul prcpal; polval.f90 (subruta compute_polval) care calculează valoarea polomulu (î smplă precze) Subruta metode este apelată d Bbloteca IMSL, aume: ZPLRC (, coef, rad) Parametr de apel sut: : gradul polomulu coef: tablou (real); coefceţ polomulu a(0:) rad: tablou (comple); rădăcle calculate rad(). Programul apelat trebue să coţă strucţuea: use umercal_lbrares Metoda Laguerre petru u polom cu coefceţ real este mplemetată î IMSL pr subruta ZPLRC, fd combată cu reducerea gradulu, astfel că se determă toate zero-urle polomulu. Apelul lu ZPLRC u cere apromaţ ţale v. IMSL Math/Lbrares (999). (Subruta ZPLRC returează uma rădăcle.)

63 63 Datele de trare se ctesc dtr-u fşer de date. Acesta coţe: Ttlul probleme: tet de ma. 80 caractere : gradul polomulu a, a a : coefceţ polomulu (î această orde).,, 0 Iverse: Dstace: [z: dată logcă; versarea sau u a coefceţlor. Valor: T/F. dată logcă; calculul dstaţe rădăclor la u puct. Valor: T/F. comple; puctul z la care se calculează dstaţa. Se troduce uma dacă Dstace are valoarea T; î ua d formele: comple: (, y) ; do real:, y sau y] Notă: Ultmele tre date servesc la a verfca dacă rădăcle aparţ sau u dsculu utate cu cetrul î puctul z (, y) ; aceasta terve la aprecerea stabltăţ metodelor umerce î ma mulţ paş petru ecuaţ dfereţale ordare. Codul este scrs astfel că: - Dacă ambele date Iverse ş Dstace sut false, ele se pot omte. - Dacă data Dstace este falsă, ea se poate omte. Datele de eşre se scru î cotuarea datelor de trare, ş coţ: - Rădăcle calculate ş valorle polomulu pe rădăc. - Dacă Dstace are valoarea T, se tpăresc ş dstaţele rădăclor la puctul z. Eemplu: Fşerul de trare/eşre este: Ttlu: (-)*... *(-7) - perturbat: Radac: ( , E+00) 2 ( , ) 3 ( , ) 4 ( , E+00)

64 64 5 ( , E+00) 6 ( , E+00) 7 ( , E+00) Valor polom: Notă ( E-03, E+00) 2 ( E-04, E-05) 3 ( E-04, E-05) 4 ( E-04, E+00) 5 ( E-04, E+00) 6 ( E-04, E+00) 7 ( E-04, E+00) - Folderele Laguerre ș Laguerre_D (dublă precze): coţ sursele petru versuea cu utlzare IMSL. - Folderul Laguerre_Drect: coţe sursele care mplemetează drect formula Muller de terare Laguerre. Petru acest proect, fșerul de trare este descrs Ma_Laguerre_.f90 - ș e smlar cu fserul de la Pol_Drect. Î această versue, se cer apromaț țale ale rădăclor. Metoda Muller. Fucţe f, cotuă ş cu dervate cotue pâă la ordul 3, pe o vecătate a rădăc. Metoda: Metoda cere tre apromaţ ţale 0,, 2 ale rădăc. (Nu este ecesar ca acestea să fe ordoate după mărme.) Se costrueşte polomul de terpolare (de gradul 2) care trece pr puctele, f ), ude f f ( ) ; apromaţa următore 3, este ua d rădăcle lu p() ( v. ma jos.

65 65 Apromaţ reale pot coduce la zero-ur complee. Î partcular, apromaţle reale se pot lua forma:, h. Polomul de terpolare Newto pe odurle 2,, 0 (v. INTERPOLARE), este: p ) f f ( ) f ( )( ), ( Coefceţ sut dfereţele dvzate ale fucţe f pe odurle,,, aume: j k f f ) ; ( f j f j f f [, j ] ; j f jk f jk fj f [, j, k ], k Fe polomul de terpolare desvoltat î ) : 2 p ) a( ) b( ) c ( 2 2 Coefceţ a, b, c, se găsesc pr: ; c f 2 a f 20 ; b f 2 f02 f0 Formula de terare este 3 2 b 2c b 2 4ac ( 2 Ca apromaţe următoare, se a valoarea 3 care este cea ma apropată de 2, adcă rădăca petru care 3 2 este cel ma mc. Petru aceasta, semul d faţa radcalulu se a astfel ca umtorul să fe cel ma mare, ş aume: - Petru rădăc reale, se a semul lu b (dacă b = 0, orce sem); - Petru rădăc complee (clusv cazul î b este comple), semul petru care umtorul este cel ma mare î modul. Eplct: puem 2 b b b 4ac. Dacă b, atuc formula de terare este:,2 b c / b ; altfel, 3 2 2c / b2. După determarea lu 3 : - Dtre puctele, 0, 2, se eclude puctul cel ma îdepărtat de 3 (cel petru care 3 este cel ma mare).

66 66 - Se atrbue 3 lu 2. Celelalte două pucte dev 0 ş. - Se procedează la o ouă teraţe (cu oua secveţa 0,, 2 ). Testul de oprre a teraţe este 3 2 EPS, ude EPS este toleraţa; remarcaţ că 2 3 _ ateror. Covergeţa: metoda Muller are ordul de covergeţă p =.84 petru o rădăcă smplă; v. Atkso (978). Petru o rădăcă compleă multplă, covergeţa poate f ma îceată. Fşere: Muller2005.f90: subruta metode select.f90: subruta de selecţe a valorlor 0,, 2 (petru teraţa următoare). Ma_Muller2005.f90: programul prcpal f.f90: fucţa f() Fucto_epresso.f90; wdth.f90: utltare Subruta metode: muller(f, 0,, 2, eps, ter, rad, kod) Parametr formal: f: Numele fucţe f 0,, 2: Apromaţle ţale eps: Toleraţa ter: Numărul lmtă de teraţ (trare); umărul efectv de teraţ (eşre) rad: Rădăca calculată kod: Itrare: cod de tpărre a teraţlor: 0 (u); 0 (da) Ieşre: cod de îcheere a teraţe (ter): 0: Toleraţa eps atsă : lt depăşt 2: Rădăca î apromaţle ţale -: Radcal d umăr egatv

67 67 Subruta muller apelează subruta select (0,, 2, 3). Datele de trare se troduc de la termal, s costau d: - ume: umele fşerulu de eşre (acesta prmeşte etesa.rez) - Est_p: dată logcă. Valor: T (true) sau F (false) - [p: dacă Est_p = T ] - eps, lt: toleraţa, umărul lmtă de teraţ -, h: apromaţa, pasul - kod: cod de tpărre a teraţlor Programul prcpal pue (îate apelul subrute muller): 0 h; 2 h Datele de eşre se scru î fşerul de eşre ume.rez, ş sut următoarele: - epresa fucţe f (scrsă de utltarul Fucto_epresso) - [p, dacă estă] - apromaţle 0,, 2 - lt, eps - modul de îcheere a teraţe (mesaj, coform codulu kod) - rădăca calculată rad; valoarea f(rad) - umărul efectv de teraţ. Eemplu de test: f ( ) p 2 e, cu p = 3; se caută rădăca d vecătatea valor 0.8. Se au: 0 0.8, h 0. 2 (Rezultă apromaţle ţale: 0.6; 0.8;.0) eps = E-6, lt 0; ktp = 0. Fşer de eşre: Metoda MULLER f =ep() -p** p: Radaca r.

68 68 Apromat: EPS:.000E-06; LNIT: 0 Iter 0 2 * * Tolerata EPS atsa Radaca = Numar de terat = 3 ; f(radaca) = E-08 Grafcul fucţe ş polomulu de terpolare se dau ma jos.

69 69 Fgura 7 Metoda Muller: grafcul fucţe ş polomulu de terpolare Muller\Muller_Comple Metoda Muller petru rădăcle ue fucţ complee. Fşere: Muller_Comple2005.f90; Ma_Muller_Comple2005.f90; f_comple.f90; select_comple.f90; Fucto_epresso.f90;; wdth.f90; Subruta metode: Muller_comple(f, h, z0, z, z2, eps, ter, rad, kod) Semfcaţle parametrlor sut aceleaş ca la Muller, cu deosebrle: - datele umerce ş fucţa f sut declarate complee - programul este scrs î dublă precze

70 70 Datele de trare se ctesc dtr-u fşer de date (specfcat de utlzator). Acesta are structura: - Ttlul probleme: tet de ma. 80 caractere - Est_p: dată logcă. Valor: T (true) sau F (false) - [p: dacă Est_p = T ] - rad: umărul rădăclor de calculat - z(:rad): rad apromaţ reale sau complee - h: pasul. Valoare reală. - eps, lt: toleraţa, umărul lmtă de teraţ - ktp: cod de tpărre a teraţlor: 0 (da); 0 (u) Datele de eşre se scru după datele de trare, ş coţ: rădăca, valoarea fucţe pe rădăcă, ş umărul de teraţ (petru rad rădăc). Eemplu de test: Petru polomul d eemplul de la Pol_Comple, se terează cu eps E 0 ; lt = 20; apromaţa reală 6 ; h 0.. Fşerul de trare/eşre este următorul: Wlkso_7 F 6 0. E Metoda MULLER (Comple) f =(z-)*(z-2)*(z-3)*(z-4)*(z-5)*(z-6)*(z-7) *z**6 EPS:.000E-0; LNIT: 20 # Radaca Iterat f = ( E-04, E-04)

71 7 f = ( E-04, E-04) Rădăca este găstă î 7 teraţ. Cu apromaţa 5 se găseşte aceeaş rădăcă î 9 teraţ.

72 72 CAPITOLUL III SISTEME DE ECUAŢII LINIARE Sstemul de ecuaţ lare este A b, ude A est matrce, ar ş b vector coloaă cu coordoate. Rezolvarea se poate cosdera petru ma mulţ terme lber b. III- Metode drecte Gauss Elmarea Gauss cu pvotare parţală. Fşere: Elm.f90: subruta metode Ma-EIm.f90: programul prcpal wdth.f90: utltar Fşer de date: E2.dat Metoda: Sstemul dat se trasformă î sstemul echvalet U g, cu matrcea U superor trughulară, cum urmează. Sstemul dat se otează () () A b. La pasul curet k ( k, 2,, ): Sstemul este ( k) ( k) A b. Se lucrează cu lle k,,, d (k ) A ş (k ) b. (Lle,, k, procesate ( k) ateror, rămâ eschmbate). Cocret, se operează cu sub-matrcea A ( k :, k : ) ( k) ş sub-coloaa b ( k : ) a termelor lber.

73 73 ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) (, ) (, (2) 2 (2) 2 (2) 22 () () () 2 () ) ( k k k k k k j k k k k k kj k kk k k k k k k k k m a a a a a a a a a a a a a a a a a A ; ) (.. ) ( ) ( ) ( ) (, (2) 2 () ) ( k k k k k k k k k m b b b b b b b Presupuem 0 ) ( k kk a v. ma jos pvotare, ş defm multplcator de la pasul k: ) ( ) ( k kk k k k a a m ; k,, Petru k,, : la k se îmulţeşte cu k m, ş se aduă la la. Rezultă elemete ule î coloaa k, sub elemetul dagoal (k ) kk a. La k rămâe eschmbată. No coefceţ ş terme lber vor f: k b m b b k j a m a a k k k k k k kj k k j k j,...,,..., ; ) ( ) ( ) ( ) ( ) ( ) ( La pasul se otează, petru coveeţă, ) ( ) (, b g A U, ş sstemul deve g U. Eplct:

74 74 u u u... kk u g u 2 2 g 2... uk k g k... u g Acest sstem se rezolvă pr substtuţe îapo: g u; k ( g k ukj j ) / ukk jk / ; k, 2,..., Pvotarea parţală: La fecare pas k, se caută elemetul de modul mam d sub-coloaa a ( k :, k), umt pvot; fe acesta găst î la I k. Dacă pvotul este ma mare decât u prag ş (k ) A ş î (k ) b ). I k, atuc se schmbă lle k ş I (î Dacă pvotul este ma mc decât pragul, elmarea Gauss se opreşte, îtrucât: - dacă pvotul este ul, matrcea este sgulară. - dacă pvotul este eul dar ma mc decât pragul, matrcea este aproape sgulară. Număr de operaţ: Petru = mare, umărul de operaţ î elmarea Gauss este: 3 NOP Guass 3 Subruta metode: ELIM (, b, A, B, prag, kod, kodprt) Parametr formal: : umărul ecuaţlor b: umărul de terme lber A(, ): matrcea coefceţlor

75 75 B(, b): matrcea termelor lber prag: prag petru pvot 0. kod : cod petru elmarea Gauss: kod = 0: o.k.; kod 0: pvot 0 (pvot < prag) kodprt: cod de tpărre v. ma jos. ELIM face pvotare parţală. Dacă pvotul este ma mc decât pragul, se produce u mesaj de eroare. Valoarea prag este setată de programul prcpal la E-6 (aceasta se poate modfca). Matrcea U se stochează î trughul superor d A. Soluţa este returată î coloaele d B. Datele de trare se ctesc dtr-u fşer de date, specfcat de utlzator. Acesta are structura: - Ttlu: tet de ma. 80 caractere -, b: umărul de ecuaţ; umărul de terme lber. - Matrcea coefceţlor A:. Se scre aşa cum e dată - pe l ş coloae. - Terme lber b: Se scru pe l: b l a terme lber. - cod_ Iversare_Coefceţ, cod_ Tpărre: cod_iversare_coefceţ: dacă este 0, atuc se rezolvă sstemul cu a(, j)./ a(, j). cod_ Tpărre: dacă este 0: Se tpăresc permutărle ş pvoţ. - check_tet: tet de ma. 20 caractere. Prmul caracter este semfcatv, Observaţe aume: C, c, P, p: se face proba A b (cocret, se tpăreşte vectorul A b). Dacă se cere proba, atuc programul prcpal salvează A ş B îate de apelul lu ELIM Datele de eşre se scru î cotuarea datelor de trare v. ma jos Eemplul-: Matrce 33, 2 terme lber.

76 A 2 4 ; b 7. 8 Fşerul de trare/eşre: Test: soluta_ =,, proba * Soluta petru terme lber r. () = (2) = (3) = * Soluta petru terme lber r. 2 () = E-07 (2) = (3) = * Proba A =b: Soluta r. : A* -b E E E+00 Soluta r. 2: A* -b E E E+00

77 77 Eemplul-2: Matrce sgulară Fşerul de trare/eşre (E2.dat): Matrce 44: sgulara * 0! kodiv, kodprt Check Permutare, Pvot: <-> E-07 La 4: Pvot = E-07 * Pvot <.00E-06! * Sstemul u se poate rezolva. Notă Acest eemplu arată de ce s-a ales pragul egal cu E-6 Gauss_AB Elmarea Gauss lucrul cu matrcea etsă. Fşere: Elm2003.f90; Ma-Elm2005.f90; wdth.f90; Subruta metode:

78 78 ELIM (AB,, col, prag, kod) Parametr formal: AB(, col): matrcea coefceţlor etsă cu terme lber. : umărul ecuaţlor. col: col = + b, ude b este umărul de terme lber (col este deft î programul prcpal). prag: prag petru pvot 0. kod : cod petru elmarea Gauss: kod = 0: o.k.; kod 0: pvot 0 (pvot < prag). Metoda este aceeaş ca la Gauss, cu deosebrea că acum, subruta metode lucrează cu matrcea etsă AB(, col). Soluţle sut returate coloaele matrc etse. : b ale Datele de trare se ctesc dtr-u fşer de date. Acesta are aceeaş structură ca la Gauss, cu deosebrea că u ma coţe codul de tpărre: - Ttlu: tet de ma. 80 caractere -, b: r. de ecuaţ; r. de terme lber. - Matrcea coefceţlor A:. Se scre aşa cum e dată - pe l ş coloae. - Terme lber b: Se scru pe l: b l a terme lber. - cod_ Iversare_Coefceţ: cod_iversare_coefceţ: dacă este 0, atuc se rezolvă sstemul cu a(, j)./ a(, j). - check_tet: tet de ma. 20 caractere. Prmul caracter este semfcatv, Observaţe aume: C, c, P, p: se face proba A b. Dacă se cere proba, atuc programul prcpal salvează matrcea AB îate de apelul lu ELIM Datele de eşre se scru î cotuarea datelor de trare ş coţ soluţa ş proba (dacă este comadată pr check_tet).

79 79 LU Rezolvarea pr descompuerea LU (calculul drect al factorlor L ş U) metoda Doolttle. Cu pvotare parţală. Fşere: Prmele 5 fşere costtue subrutele metode. LUdecomp.f90: descompuerea LU LUsolve.f90: substtuţe îapo apvt-lu.f90: pvotare parţală compute_a_.f90: calculul pvotulu (îate de pvotare) swap_row.f90: schmbare de l Ma-LU.f90: programul prcpal wdth.f90: utltar Metoda: Metoda costă î paş:. Factorzare A LU, cu pvotare parţală. A = L U 2. Rezolvarea sstemulu Ly b, pr substtuţe îate; rezultă y. L y = b 3. Rezolvarea sstemulu U y, pr substtuţe îapo; rezultă. U = y Formulele petru calculul elemetelor lu L ş U cu l ales arbtrar (eul): l = ales arbtrar (eul), =, 2,.., u j a j k l k u kj, j =, +,, (a) l

80 80 Dacă u 0,,, rezultă: l j a j k l jk u k, j = +,, (b) u Elemetele lu L s U se determă î următoarea secveţă, coform scheme de ma jos (se calculează elemetele d la d U, ş coloaa d L). l, l l, u, u, u, Î partcular, la, se calculează uma u - d (a). Metoda Doolttle pue l. 3 Numărul de operaţ este acelaş ca î elmarea Gauss ( 3). Pvotare: Pvotarea trebue făcută îate de calculul elemetelor lu U ş L. Adcă, pvotul u trebue calculat ş testat îate de aplcarea formulelor (a) ş (b). Petru metoda Doolttle, pvotul este dat de (cf. a): u a lk k u k Aşa cum se arătă î Eemplu-2, trebue pvotat ş dacă pvotul este foarte mc. Practc, se testează dacă pvotul este ma mc decât u prag. Două strateg de pvotare parţală sut dspoble, comadate prtr-u cod: căutarea pvotulu mam eul, sau căutarea prmulu pvot eul. Pragul este ales ca E 6. Prma stratege oferă, î geeral, o precze ma buă, î satsfacerea verfcăr soluţe, îsă cosumă ma mult tmp de calcul. Observaţe - Dacă u se pvotează, atuc avem LU = A.

81 8 - Dacă se pvotează, atuc avem LU A, ude A PA, ar P este o matrce de permutare de l. Matrcea A se obţe d A, permutâd lle î aceeaş orde î care se permută la pvotare. Sstemul care se rezolvă este A b, ude b este b cu lle permutate î ordea de la pvotare Calculul determatulu: Determatul matrc A LU este det( A ) u u 22 u Determatul matrc A va f det( A) ( ) _ l det( A), ude _l este umărul de schmbăr de l î cursul pvotăr. Subruta de descompuere LU (Pasul ) este: LUdecomp(A,, order, do_pvt, kodpvot, kod) LUdecomp face: - Stocare compactă: L ş U î A, î trughul feror, respectv superor. (Elemetele dagoale d L fd u se ma stochează.) - Pvotare parţală - pr apel apvt-lu; aceasta apelează compute_a_.f90 ş swap_row.f90. Ordea llor (după pvotare) e stocată î vectorul order; order se utlzează petru ordoarea membrlor do - la rezolvare (î LUsolve). Parametr formal: A: matrcea sstemulu : umărul de ecuaţ order: vector îtreg do_pvt: dată logcă; valor: T/F: pvotează sau u. kodpvot: cod petru stratega de pvotare: kodpvot 0: pvot mam; kodpvot = 0: prmul pvot eul. kod: cod de test pvot:

82 82 kod = 0: o.k.; kod <0: pvot <prag Subruta de rezolvare este: LUsolve(LU, b,,, order) Paş 2 ş 3 de ma sus. Elemetele d b sut re-arajate coform schmbărlor de l. Soluţa este returată. Parametr: LU: echvaletul LU a lu A (stocare compactă) b: vectorul termelor lber : soluţa order: vector îtreg Observaţe Î LU ş LUsolve, produsele scalare se calculează î dublă precze Subrutele se apelează astfel (î programul prcpal): call LUdecomp(A,, order, do_pvt, kodpvot, kodlu)! Soluta petru "b" terme lber: do kb =, b call LUsolve(A, b(:, kb),,, order) b(:, kb) = eddo Datele de trare se ctesc dtr-u fşer de date. Acesta coţe următoarele date (scrse pe l): - Ttlu: tet; ma. 80 caractere -, b: umăr de ecuaţ; umăr de terme lber. - Matrcea coefceţlor A: (Se scre pe l s coloae). - Terme lber b: Se scru pe l: b l a terme lber. - Cod_Tpărre, Cod_versare_ coefceţ: 0 / 0; 0 / 0. o Cod_Tpărre = 0: Soluţa, î fşerul de date.

83 83 Petru Cod_Tpărre 0, se tpăresc î plus datele de ma jos. o Cod_Tpărre = : Soluţa, la dsplay; Matrcle L s U, î fşerul de date. o Cod_Tpărre 2: Vectorul order, la fecare pvotare; Determatul lu A; Dacă u(, ) < prag: Se tpăreşte ş la a matrc A (la pasul respectv). o Cod_versare_ coefceţ 0: a(, j)./ a(, j) - Cod pvotare, kod_pvot: o Cod_pvotare: logc, valor T/F: Da / Nu. o kodpvot: 0: pvot mam; = 0: prmul pvot eul. - Check_tet: ma. 20 caractere; prmul caracter este semfcatv: C, c, P, p / alt caracter: Verfcă / Nu verfcă - soluţa. F, f: Se verfcă soluţa ş LU = PA (PA este A permutat). Observaţe Dacă se cere verfcarea, atuc programul prcpal salvează A ş b îate de apelul lu LUdecomp Datele de eşre se scru î fşerul de date, după datele de trare. Eemplele ş 2 de ma jos, se referă la sstemul: A ; b Eemplu (Fşer de date u3.dat): Matrce 44 cu u22 =0; u33=0. Fara pvotare

84 * 3 0 F 0 Check Pas - ORDER: Pas 2 - ORDER: Pas 3 - ORDER: Pas 4 - ORDER: Numar de schmbar de l = 0 Matrcea L Matrcea U Determat(A) = * Soluta petru terme lber r. () = (2) =

85 85 (3) = (4) = * Proba A =b: A* -b E E E E-08 Eemplu 2 (Fşer de date u3-p.dat): Matrce 44 cu u22 =0; u33=0. Pvotare * 3 0 T Check Pas - ORDER: pas 2 (test) - order: 4 3 u(2,2) = Pas 2 - ORDER: pas 3 (test) - order: 4 3 u(3,3) = Pas 3 - ORDER: Pas 4 - ORDER: 4

86 Numar de schmbar de l = Matrcea L Matrcea U Determat(A) = * Soluta petru terme lber r. () = (2) = (3) = (4) = * Proba A =b: A* -b E E E E+00 LU\Crout Rezolvarea pr descompuerea LU metoda Crout.

87 87 Fşere: LUdecomp-Crout.f90; LUsolve-Crout.f90; apvt-crout.f90; compute_a Crout.f90; swap_row.f90; Ma-Crout.f90; wdth.f90; Semfcaţle sut aceleaş ca ale fşerelor d metoda Doolttle. Metoda: Metoda este aalogă cu Doolttle, cu deosebrea că acum se aleg arbtrar u, ar pvotul este l. Metoda Crout pue u. LU_Comple Descompuere LU matrce compleă, metoda Doolttle Fşere: LUdecomp_z.f90; LUsolve_z.f90; apvt-lu_z.f90; compute_a z.f90; swap_row_z.f90; Ma-LU_comple.f90; wdth.f90; Semfcaţle sut aceleaş ca ale fşerelor d metoda Doolttle. Fşerul de date are aceeaş structură ca fşerul de date d LU, cu partculartăţle: - Matrcea A: elemetele se troduc pr partea reală ş partea magară; - Terme lber b: se troduc ca valor complee, î forma (, y). Paratezele sut oblgator. Eemplu: A ; b Fşerul de date este (test-p.dat): Test: soluta_ =(,0) (,0) (,0); soluta_2 =(,-) (2,) (0,3)

88 (5,-) (4,-3) (2,-) (0,5) (6,-7) (-,2) 2 0 T FProba Pas - ORDER: 3 2 ( , E+00) Pas 2 - ORDER: 2 ( , ) Pas 3 - ORDER: ( , ) Numar de schmbar de l = Matrcea L Matrcea U Determat(A) = * Soluta petru terme lber r. () = E-06 (2) = E-07 (3) = E-06

89 89 * Soluta petru terme lber r. 2 () = (2) = (3) = E * Proba A =b: Soluta r. : A* -b ( E-07, E-07) 2 ( E-07, E-07) 3 ( E-07, E+00) Soluta r. 2: A* -b ( E+00, E-07) 2 ( E-07, E-07) 3 ( E-07, E-07) * Proba LU =PA: L*U ( , E+00) ( , ) ( , ) ( , ) ( , ) ( , ) ( , ) ( , ) ( E+00, ) LU_Comple\Crout_Comple Descompuere LU matrce compleă, metoda Crout Fşere: LU_Decomp_Crout_z.f90; LUsolve-Crout_z.f90; apvt-crout_z.f90; compute_a Crout_z.f90; swap_row_z.f90; Ma-Crout_Comple.f90; wdth.f90; Semfcaţle sut aceleaş ca î LU metoda Crout.

90 90 Cholesky Metoda Cholesky cu matrcea L. Metoda: Se aplcă petru u sstem cu matrce smetrcă ş poztv deftă. Petru o astfel de matrce estă o descompuere LU, î care U este traspusa lu L, adcă T A LL. Metoda Cholesky u ecestă pvotare. Paş rezolvăr sut aceeaş ca paş LU, aume: ) Factorzare: T A LL 2) Calculul lu y, pr substtuţe îate: Ly b T 3) Calculul soluţe, pr substtuţe îapo: L y. Petru = mare, umărul de operaţ î metoda Cholesky este NOP Cholesky 3 6 Adcă, NOP Cholesk NOPGauss. 2 Fşere: Cholesky.f90; Forward.f90; Back.f90; Loca.f90; Ma_Cholesky-2004.f90; wdth.f90 Subrutele metode sut: cholesky(a, kod): Descompuerea Cholesky (Pasul ) forward(l,b): Substtuţe îate (Pasul 2) back(l,b): Substtuţe îapo (Pasul 3) Ele se apelează astfel (î programul prcpal): call Cholesky(a, kod) do k =,b call forward(a,b(:,k)) call back(a,b(:,k)) eddo

91 9 Parametr formal sut: a: vector de dmesue ( ) / 2. Acesta stochează: La trare: matrcea A (trughul feror, pe l); La eşre: matrcea L (trughul feror). kod: cod de eşre d descompuerea Cholesky: 0: ok; -: Matrcea u este poztv deftă. l: vector de dmesue ( ) / 2. Acesta stochează matrcea L. b: vector de dmesue, care stochează la trare terme lber, ş la eşre soluţa. Aume: Forward: b, ş y; Back: y, ş. La acestea, se adaugă o fucţe care calculează adresa elemetulu A(, j) î vectorul de stocare a, aume Loca(, j). Ma_Cholesky-2004.f90: programul prcpal Observaţe Programul prcpal stochează matrcea A î vectorul a de dmesue ( ) / 2 wdth.f90: utltar Datele de trare se ctesc dtr-u fşer de date, care coţe: Ttlu: tet, ma. 80 caractere., b: = umărul de ecuaţ; b = umărul de terme lber. a: trughul feror d A. b: terme lber; se scru pe l: b l a terme lber. kod: Cod de tpărre check_tet: tet, ma. 20 caractere. Prmul caracter e semfcatv: C, c, P, p : se verfca soluţa calculată. Datele de eşre se scru î cotuarea datelor de trare. Eemplu (Matrcea A, d Jegs (980), p. 06):

92 A ; b Fşer de date (2.dat): Test petru Cholesky Proba Matrcea L * Soluta petru terme lber r. - 3: 2 3 : : : * Proba A =b: Soluta r. : A* -b E E E-07 Soluta r. 2: A* -b E E-07

93 E-07 Soluta r. 3: A* -b E E E+00 Cholesky_S Metoda Cholesky cu matrcea S. Metoda: Metoda este aceeaş cu cea epusă la Cholesky. Cu deosebrea că acum, matrcea de referţă este matrcea T S L T. Factorzare: A S S. Astfel, paş sut: T 2. Calculul lu y, pr substtuţe îate: S y b 3. Calculul soluţe, pr substtuţe îapo: S y. Programul prcpal stochează acum, î vectorul a, trughul superor al lu A (pe coloae). Datele de trare ş eşre sut aceleaş ca la Cholesky, cu deosebrea că matrcea A se troduce pr elemetele trughulu superor. Fşere: Cholesky_S.f90; Forward.f90; Back.f90; Loca.f90; Ma_Cholesky_S.f90; wdth.f90; Semfcaţle sut aceleaş ca ale subrutelor d Cholesky. Eemplu: Eemplul d Cholesky, petru coloaele ş 3 de terme lber. Fşer de date:.dat Cholesky_Bad Cholesky petru matrc badă (smetrce ş poztv defte).

94 94 Matrce badă: elemetele ue l sut alcătute d: - Elemetul dagoal, u umăr de LIM- elemete la stâga acestua, ş LIM- elemete la dreapta. - Celelalte elemete d le sut zero. Numărul LIM se zce sem-lăţmea de badă. LIM repreztă umărul elemetelor d sem-badă, clusv elemetul dagoal. Observaţe Ître elemetele d badă, pot f ş elemete ule, dar elemetele stuate î afara bez sut toate ule. Î acest ses, LIM este sem-lăţmea de badă mamă De eemplu, o matrce 66, cu LIM = 3, are structura: a a a 2 22 Smetrc a a a a a a a a a a46 a 56 a66 Metoda: Matrcea badă se presupue smetrcă ş poztv deftă. Descompuerea T LL sau S T S urmează se cosderă descompuerea Paş sut ce de la Cholesky_S. ) Descompuerea Cholesky: poate f făcută lucrâd eclusv î badă. Î ceea ce T A S S, lucrâd cu sem-bada superoară. Elemetele actve la u pas al descompuer, sut coţute îtr-u trugh cu laturle LIM umt trughul actv. Î cursul procesulu, trughul actv coboară cu câte o le î badă. Metoda utlzează u vector de lucru Y, de dmesue NY, ude se defesc: NY 0 LIM ( LIM ) / 2 ; NY NY0 LIM. Acest vector este costtut d două părţ:

95 95 - Sub-vectorul Y( : NY 0 ), de dmesue LIM ( LIM ) / 2 : serveşte ca frot de lucru, petru descompuerea Cholesky; î acestea se geerează elemetele trughulu actv la u pas (trugh cu laturle LIM). - Sub-vectorul YA( NY 0 : NY ), de dmesue LIM : ţal, stochează matrcea A, pe l. Î cursul descompuer Cholesky, stochează lle procesate ale matrc A. Y YA LIM(LIM+)/2 LIM LIM LIM Fgura 8 - Tablourle Y ş YA 2) Soluţa: Aceasta se calculează pr substtuţe îate ş îapo (paş 2 ş 3). Petru alte cosderaţ prvd metoda (stocare, algortm), v. Cap. 4, 5.6. Fşere: AA.f90: fucţe care geerează elemetul (, j) al matrc badă A Cholesky_Bad.f90: descompuerea Cholesky î badă Loca.f90: fucţe care calculează adresa elemetulu A(, j) î vectorul Y Lof.f90: Locul î frot : adresa uu elemet d trughul actv, î vectorul Y. Ma-Cholesky_Bad_2005.f90: programul prcpal Solve.f90: calculează soluţa wdth.f90: utltar Fşer de date: b6-3.dat Datele de trare se ctesc dtr-u fşer de date, care coţe: Ttlu: tet, ma. 80 caractere., LIM, b: = umărul de ecuaţ; LIM = sem-lăţmea de badă (clusv elemetul dagoal); b = umărul de terme lber.

96 96 A: sem-bada superoară d A, aume: se scru l de LIM elemete; petru ultmele l se adaugă elemete ule (la dreapta), pâă la împlrea umărulu de LIM elemete. b: terme lber: Se scru pe l; b l a terme lber. kod: cod de tpărre: kod = 0: se tpăreşte soluţa; kod 0: se tpăreşte ş matrcea S; check_tet: T kod 2: se tpăreşte ş proba S S A. tet, ma. 20 caractere. Prmul caracter este semfcatv: C, c, P, p: se verfca soluţa. Eemplu: Se cosderă sstemul deft de: A ; 4 Smetrc 4 4 b Fşer de date (b6-3.dat): Test petru Cholesky: matrce bada - sem-bada superoara * Check Matrcea A:

97 Matrcea S: * Soluta petru terme lber r. - 2: 2 : : : : : : * Proba A =b: Soluta r. : A* -b E E E E E E+00 Soluta r. 2: A* -b e E-07

98 E E E E-07 III-2 Aalza eror ş codţoare Numar_Codte Calculul umărulu de codţe al ue matrc, după orma- ş orma-. Metoda: Se dă sstemul A = b. Cosderăm o perturbaţe r a termelor lber, adcă o ~ terme lber b b r, ude r / b este mc. Sstemul deve A ~ ~ b. Notăm perturbaţa soluţe pr e / Cod ( A), Cod ( A) r / b î care: Cod(A) = A A -. e ~, ş avem Numărul Cod(A) este umărul de codţe al matrc A. Avem Cod ( A). - Dacă Cod(A) ~ : A se zce be-codţoată; e / este mc, adcă este de ordul lu r / b. - Dacă Cod(A) >> : A se zce rău-codţoată; e / poate f mare, adcă e / r / b. Numărul de codţe depde de orma cosderată. Î partcular, se defeşte Cod ( A ) ( A ) ( A ), î care: (A) este raza spectrală a matrc A, deftă de ( A) ma ( A) ude ( A), sut valorle propr ale matrc A. Avem, petru orce ormă,, Cod ( A) Cod ( A). Numărul Cod (A) se calculează pr

99 99 ma Cod ( A) ( A) m. ( A) Programul calculează umărul de codţe petru ormele A ma j a j. ş., defte pr: Aceasta se zce orma llor, ş este mamul sumelor modulelor elemetelor, pe l. A ma j a j Aceasta se zce orma coloaelor, ş este mamul sumelor modulelor elemetelor, pe coloae. Fşere: Ma-Numar_Codte.f90;Normlf.f90; Norm.f90; Elm2004.f90; wdth.f90; Ma-Numar_Codte.f90: programul prcpal Normlf.f90, Norm.f90: orma- ş orma-, ale ue matrc Elm2004.f90: elmarea Gauss; aceasta serveşte petru calculul matrc verse. wdth.f90: utltar Subruta de elmare Gauss este ELIM2 (, b, A, B, prag, kod). Parametr au aceleaş semfcaţ ca la ELIM d Gauss (cu deosebrea că, ître parametr, u ma apare codul kodprt). Datele de trare se ctesc dtr-u fşer de date, cu structura de ma jos. Datele de eşre se scru î fşer, după datele de trare. Fşer de date (trare/eşre): Ttlu: tet, ma. 80 caractere : ordul matrc A Matrcea A: ; se scre aşa cum e dată - pe l ş coloae Cod_Iversare_Coefceţ, Cod_Tpărre: 0 / 0.

100 00 - Cod_Iversare_Coefceţ 0: se face a(, j)./ a(, j) - Cod_Tpărre 0: se tpăreşte ş Cod_Norma: cod petru ormă. Valor: 0: orma-ft (orma llor); : orma- (orma coloaelor) A. 2 (sau, alt umăr decât 0 sau ): orma-2: Nu este mplemetată; se a mplct, orma-ft. Eemplu: Test: ! Cod orma Matrcea versa: Norma edefta: Se a Norma-ft (orma llor) Norm(A) = Norm(A-vers) = Numarul de codte = Hlbert Calculul verse matrc Hlbert. Metoda: Matrcea Hlbert de ordul este:

101 0 H Matrcea Hlbert este cuoscută ca fd rău-codţoată, ş aume, cu atât ma răucodţoată cu cât ordul este ma mare. Iversarea se face î modul obşut, aume: Coloaele () ale matrc verse se calculează rezolvâd sstemele lare matrc utate de ordul. ( ) ( ) H e,,, ude () e sut coloaele Fşere: Ma-Hlbert2004.f90: programul prcpal Elm2004.f90: elmarea Gauss wdth.f90: utltar Î prcpu, petru această problemă se pot utlza orcare d metodele epuse ateror, petru ssteme lare geerale (Gauss, LU). Avatajul este că, programul prcpal geerează matrcea Hlbert de ordul, ş terme lber petru ordul (coloaele matrc utate). (Î loc de, specfcarea acestor date î fşerul de trare, cum ar f ecesar î metodele petru o matrce geerală.) Rezolvarea se face pr elmare Gauss, pr apelul subrute ELIM2. Parametr formal sut aceeaş ca la subruta ELIM d Gauss (cu deosebrea că ître parametr u ma fgurează codul kodprt). Datele de trare se troduc de la termal ş costau î: ordul ; o dată logcă (T/F) petru verfcarea sau u, a verse calculate X. Petru verfcare, se calculează produsul ude I este matrcea utate de ordul. H X ; ar trebu să avem proba H X I, Faptul că matrcea Hlbert este rău-codţoată, se poate costata d următoarele rezultate:

102 02 - Elemetele verse calculate sut afectate de eror cu atât ma mar, cu cât ordul este ma mare. (Erorle se aprecază î raport cu valorle eacte care se cuosc aaltc, sau î raport cu valorle calculate î dublă precze); - Iversa calculată verfcă tot ma rău proba, odată cu creşterea lu : adcă, erorle H X I sut tot ma mar. Eemplu: Petru = 5, produsul H X este: E E E E E E E E E E E E E E E E-04 III-3 Metode teratve Jacob Metoda Jacob petru ssteme lare. Eemplu umerc: Fe sstemul:

103 03 Rezolvăm fecare ecuaţe =, 2, 3, î raport cu ecuoscuta, căutâd ca aceasta să fe ecuoscuta cu coefcetul cel ma mare d ecuaţe, evetual rearajâd ecuaţle. Itervertd ecuaţle 2 ş 3, avem: (/8) 2 (/8) 2 / 7 (/ 7) (2 / 7) 4 3 /9 (2/9) (/9) 2 Sau matrceal: / 7 / 7 2 / 9 2 / 9 /8 0 / 9 /8 2 / (') care este de forma g M ( m) ( m) Se terează, cu apromaţa ţală (0) T [ 4/ 7 2/ 9] ; testul de oprre a teraţe ( m) ( m) este E 6. La teraţa 2 rezultă soluţa (.0,.0,.0). Metoda: Fe sstemul dat A b. Se rezolvă fecare ecuaţe î raport cu ecuoscuta. Eplctâd se obţe: ( b a ) / a, =, 2,, j j, j j S-a presupus a 0. Iteraţa Jacob va f: (0) ( m) arbtrar ( b a j j, j ( m) j ) / a,, 2,..., ; m 0 Testul de oprre a teraţe este ( m) ( m) eps.

104 04 Metoda Jacob se ma zce metoda teraţlor smultae, petru că, coordoatele ale soluţe se calculează depedet uele de altele. (Petru alt mod de calcul v. metoda Gauss_Sedel, ma jos.) Codţe sufcetă de covergeţă: Matrcea A este dagoal domată, adcă avem: a aj,, j, j Petru alte cosderaţ prvd metoda, v. Cap. 4-IV. Fşere: Jacob.f90: programul prcpal care mplemetează metoda Norm.f90: orma- a uu vector wdth.f90: utltar Datele de trare se ctesc dtr-u fşer de date. Acesta are structura: - Ttlu: le-tet, ma. 80 caractere. - : ordul matrc - Matrcea A: ; se scre pe l ş coloae aşa cum este dată. - Termeul lber b: se scru î le, valor b. - eps, lt: toleraţa, umărul lmtă de teraţ. - kodprt: cod de tpărre teraţ: 0 / 0: Da / Nu. - check_tet: tet de ma. 20 caractere. Prmul caracter este semfcatv: C, c, P, p: se face proba se tpăreşte vectorul A b. Datele de eşre se scru î fşer, după datele de trare v. ma jos. Eemplul umerc de ma sus: Fşerul de trare/eşre (E.dat): Eemplu pt. Jacob

105 e Proba Tolerata atsa. Numar de terat: 2 Soluta: Proba "A-b": E E E-06 Gauss_Sedel Metoda Gauss-Sedel. Se modfcă metoda Jacob, astfel că, la calculul coordoate (m) se utlzează valorle ( m),, deja calculate, care î geeral, sut apromaţ ma bue ale soluţe. ( m) Eemplu: Cosderăm eemplul umerc d Jacob. Ecuaţle se îlocuesc cu cele de ma jos, care ar trebu să ofere o covergeţă ma rapdă: () (0) (/8) 2 (/8) (0) 3 () () 2 / 7 (/ 7) (2 / 7) 4 (0) 3 () () 3 / 9 (2/ 9) (/ 9) 2 () 2 Îtr-adevăr, cu (0) T [0 0 0] ş aceeaş toleraţă 6 E, soluţa (.0,.0,.0) se obţe la teraţa 9. Rezdualul mam este 0.0.

106 06 Metoda: Formulele geerale ale metode Gauss-Sedel sut: (0) ( m) arbtrar ( b j a j ( m) j a j j ( m) j ) / a,,2,..., ; m 0 Testul de oprre a teraţe este ( m) ( m) eps. Metoda Gauss-Sedel se ma zce metoda teraţlor succesve, petru că la u pas m, m 0, de îdată ce o coordoată a soluţe este calculată, ea se utlzează ( m ) j î ecuaţle petru coordoatele următoare, > j. ( m ) Codţ sufcete de covergeţă: - matrcea A este dagoal domată. - matrcea A este smetrcă ş poztv deftă. Câd ambele metode Jacob ş Gauss-Sedel coverg, metoda Gauss-Sedel coverge ma rapd. Petru alte cosderaţ prvd covergeţa, v. Cap. 4-IV. Fşere: Gauss_Sedel.f90: programul prcpal orm.f90: orma- a uu vector wdth.f90: utltar Datele de trare se ctesc dtr-u fşer de date. Acesta are aceeaş structură ca ş fşerul de date d Jacob. Eemplu (E.dat): Eemplul de la Jacob. Rezultatele sut, acum: Tolerata atsa. Numar terat: 9

107 07 Soluta: () = (2) = (3) = Proba "A-b": Sor Metoda relaăr (Succesve Over-Relaato). Metoda: Reluăm formula metode Gauss-Sedel: ( m) ( b j a j ( m) j a j j ( m) j ) / a,,2,..., ; m 0 Formula se pue sub forma următoare, aduâd ş scăzâd (m) î membrul do (observaţ că acum, î a doua sumă, dcele j a valor de la ş u de la ): ( m) ( m) ( m) ( m) ( b aj j aj j ) / a,, j j Termeul care se aduă la m m este dfereţa ( ). Metoda SOR costă î (m) îmulţrea aceste dfereţe cu u factor de accelerare (sau relaare). Îtrucât >, metoda se zce supra-relaare. Alegerea lu se dscută ma jos. Formula metode SOR este dec ( m) ( m) ( m) ( m) ( b aj j aj j ) / a,, sau, eplctâd j j (m) d a doua sumă: ( m) ( m) ( m) ( m) ( b aj j aj j ) / a ( ),, j j

108 08 Se otează epresa d prma parateză cu z (aceasta este coordoata a terate ( m ) ( m ) d metoda Gauss-Sedel.). Formula de terare este echvaletă cu următoarele ecuaţ cosderate petru, : z ( m) ( b j a j ( m) j a j j ( m) j ) / a, ( m) z ( m) ( ) ( m) Î cele ma multe cazur, valoarea optmă a lu satsface relaţa < < 2. Î practcă, se poate alege, astfel: se utlzează valor de test, pe u umăr lmtat de teraţ; se alege ca valoare optmă acel petru care covergeţa este cea ma rapdă. Fşere: SOR.f90: programul prcpal orm.f90: orma- a uu vector wdth.f90: utltar Datele de trare se ctesc dtr-u fşer de date. Acesta are aceeaş structură ca ş fşerul de date d Jacob, cu deosebrea: după datele eps, lt, se troduce data: - omega: factorul de accelerare Eemplu: Cosderăm eemplul de ma jos. Petru acesta, metoda Gauss-Sedel face 27 de teraţ ş dă soluţa (27) = [ ] T. Alegem. 3 (valoarea optmă). Se obţ rezultatele de ma jos. Fşerul de trare/eşre: Test petru Gauss-Sedel & SOR. Soluta:,,,,

109 E P Tolerata atsa. Numar terat: 6 Soluta: () = (2) = (3) = (4) = (5) = Proba "A-b":

110 0 CAPITOLUL IV VALORI ŞI VECTORI PROPRII Metodele se găsesc î folderul EIGEN, î sub-folderele: Power; Power_Comple; Iverse_Power_Shft; Iverse_Power_Comple; Sm_Iter: metoda puter ş varate ale acestea. Jacob; QR: metodele Jacob ş QR. Problema de valor propr (sumar) Fe dată matrcea A, reală sau compleă. Dacă vectorul 0 ş scalarul satsfac relaţa A, () atuc: se umeşte valoare propre, ar vectorul propru asocat lu. Dacă ş y sut asocaţ cu, atuc ş y,, scalar, este asocat lu. Dacă P este o matrce A P AP esgulară, matrcea se zce smlară cu A. P se zce matrce de trasformare. Matrcle smlare au aceleaş valor propr. Dacă sut vector propr a lu A, vector propr a lu A se găsesc d relaţa P. Ma multe metode umerce trasformă matrcea A îtr-o matrce smlară A, de o formă ma smplă, determâd valorle propr ş vector propr a matrc A ; apo, se determă vector propr a lu A, cu relaţa de ma sus. Polomul caracterstc: Relaţa () este ecuaţa d care se găsesc ş. Aceasta se ma scre ( A I) 0 (2) ude I este matrcea utate. Eplct,

111 a a a 2 a a 22 a 2 2 a 0 a a 0 (2') Codţa ca (2) să abă soluţ etrvale, este det( A I) 0. Eplct, p( ) a a a 2 a a 22 a 2 2 a a a 2 0 (3) p() se zce polomul caracterstc al matrc A, ş p() = 0 ecuaţa caracterstcă. Fe determatul desvoltat: p( ) ( ) c c c Propretăţ ale coefceţlor ş valorlor propr: c det(a) ; det( ). 2 A ( a ; 2 c ). a Notă: Tr(A ) se zce urma matrc A. a Î geeral: c ( ) Suma morlor prcpal de ord a matrc A. Observaţ. Ordoarea valorlor propr: Valorle propr se ordoează î şrul, 2,,. Î acest şr, o rădăcă multplă de ordul r, se repetă de r or. Uzual, valorle propr se deează î ordea descrescătoare a modululu, adcă 2. Valoarea propre se zce domată. Mulţmea valorlor propr {,, } se zce spectrul matrc A.

112 2 2. Vector propr asocaţ ue valor propr: După determarea valorlor propr, vector propr asocaţ cu se găsesc puâd î (2'), ş rezolvâd sstemul lar ş omoge (2'). - Dacă A este reală: Î geeral, poate f comple, ş atuc vectorul propru asocat cu este comple. Dacă A ş sut real, atuc vectorul propru este real. - Dacă A este compleă: Î geeral, valorle propr ş vector propr sut mărm complee. Î partcular, uele dtre acestea pot f ş reale Subspaţu propru ş dmesuea acestua: Sstemul (2') este omoge, astfel că dacă, y sut soluţ, atuc y sut soluţ. Adcă, lu î este asocat u subspaţu lar S de soluţ. Se arată că: Dmesuea subspaţulu S este ma mcă decât sau egală cu ordul de multplctate a rădăc Notâd r = ordul de multplctate a rădăc, ş p = dmesuea subspaţulu S, avem: p r. Cu alte cuvte, estă cel mult r vector lar depedeţ î S. Dacă p r defectvă., valoarea se zce defectvă; î acest caz, ş matrcea A se zce ( r se ma zce multplctate algebrcă, ar 3. Determarea efectvă a sstemulu propru: Petru calculaţa practcă ( 3), u se recomadă: p multplctate geometrcă.) - Rezolvarea drectă a ecuaţe caracterstce. Aceasta, datortă faptulu că problema calcululu rădăclor uu polom este foarte sesblă la mc perturbaţ î coefceţ; aceste perturbaţ apar d erorle de rotujre. - Calculul drect al vectorlor propr, d (2').

113 3 Metode umerce petru găsrea valorlor propr, ş a vectorlor propr asocaţ (), sut prezetate î cotuare. Matrc hermtee ş utare Operaţa aplcată uu vector sau ue matrc otează traspus-cojugata. Dacă este u vector, respectv A o matrce, atuc: T ; T A A Eplct: A a ], [ A a j ], avem: aj a j. [ j. Î epresle ateroare, bara otează cojugata: ] ; A a ]. Petru u vector real, sau o matrce reală, operaţa reve la traspuere: [ [ j T ; T A A. Î partcular, petru u scalar, operaţa reve la cojugare: s s. Matrcea A se zce hermtaă, dacă Eemplu de matrce hermtaă: A A A. Remarcaţ că elemetele dagoale sut reale, ar elemetele smetrce sut cojugate. O matrce reală este hermtaă, dacă este smetrcă ( A T A ). O matrce hermtaă se zce poztv deftă, dacă 0 A 0 ( A este real). T Î partcular, o matrce reală este poztv deftă, dacă: 0 A 0. Matrc utare: O matrce se zce utară, dacă U U I ; echvalet, U U. O matrce reală este utară dacă T T U U I, sau U U. Valorle propr ale ue matrc utare au modulul egal cu.

114 4 Propretăţ ale matrclor hermtee (î partcular, reale ş smetrce): P. Dacă A este hermtaă, ş are valorle propr { } dstcte sau u, atuc: (a) Estă o matrce utară U, astfel că dagoalzează pe A), ş avem: U AU este dagoală (se zce că U U AU dag,, ). ( (b) Estă vector propr lar depedeţ care formează o bază ortoormată î (c) Valorle propr sut reale C (aceşta sut coloaele lu U); Î partcular, petru A reală ş smetrcă: T (a-) Estă U utară ş reală, astfel că U AU dag,, ). ( (b-) Estă vector propr lar depedeţ; aceşta formează o bază ortoormată î R (coloaele lu U); (c-) Valorle propr sut reale, ş vector propr sut real Avem ş propretatea: P'. Dacă A este hermtaă (reală ş smetrcă) ş poztv deftă, atuc valorle propr ale lu A sut reale ş poztve Produs scalar ş propretăţ de ortogoaltate:. Spaţu vectoral real V Fe u vector d V, ş matrcea coloaă a coordoatelor sale îtr-o bază a lu V ( R ). Dacă matrcea A reală, este smetrcă ş poztv deftă, se defeşte produsul scalar î raport cu matrcea A, pr:, y A T Ay y Î partcular, petru T A A I, acesta deve produsul scalar stadard:

115 5 T T, y y y Avem: y,, y ; y,, y. A A Vector ş y se zc ortogoal (relatv la produsul scalar), dacă, y 0, sau, y 0 A Astfel: - Vector ş y sut ortogoal relatv la matrcea A, dacă T Ay 0, sau y T A 0. - Vector sut ortogoal, dacă T y 0, sau y T Spaţu vectoral comple V Fe u vector d V, ş matrcea coloaă a coordoatelor îtr-o bază a lu V ( C ). Dacă A este o matrce hermtaă ş poztv deftă, se defeşte produsul scalar î raport cu matrcea A, pr: T T, y Ay y A. A (Ultma egaltate rezultă d aceea că scalarul său). Produsul scalar deft de, y T y y A I este: s, y este egal cu traspusul A Avem: y,, y, ş y,, y. A A Ortogoaltatea a do vector se defeşte ca îate, pr codţa, y 0, sau, y 0 Observaţe: Dacă avem, y 0, avem ş y, 0 Astfel: - Vector, y sut ortogoal î raport cu A, dacă: T T Ay 0, sau y A 0. A A A

116 6 - Vector, y sut ortogoal,dacă: T y 0, sau y 0. P2. Dacă A este hermtaă, atuc: - Vector propr asocaţ la două valor propr dstcte sut ortogoal: dacă 2, atuc 0 ş Avem ş: A 0, A (Dacă A hermtaă este ş poztv deftă, vector, 2 sut ortogoal relatv la matrcea T A.) Dacă A este reală ş smetrcă: - Vector propr asocaţ la două valor propr dstcte sut ortogoal: T 0, T Avem ş: T A 0, T A (Dacă A reală ş smetrcă, este ş poztv deftă, vector, 2 sut ortogoal relatv la matrcea A) Câtul Raylegh Fe A o matrce compleă (sau reală). Fe v C u vector arbtrar, ş defm ( v) v Av v v (v) se umeşte câtul Raylegh. Propretate-: Dacă este vector propru asocat cu, atuc ( ) Astfel, câtul Raylegh poate f utlzat petru a găs o apromare a valor propr, dacă se cuoaşte o apromare v a vectorulu propru : v (v). Propretate-2: Dacă matrcea este hermtaă, câtul Raylegh este mărgt de valorle propr etreme

117 7 Valorle propr sut reale; fe acestea 2, atuc, avem: ( v), petru orce v C. Power Metoda puter matrce reală, cu valor propr reale. Metoda: Metoda puter determă valoarea propre domată ş vectorul propru asocat, ale ue matrc A, reale sau complee. Aplcată la versa A metoda determă valoarea propre cea ma mcă (î modul), ş vectorul propru asocat cu aceasta. Se presupue că:. Estă u set de vector propr lar depedeţ. 2. Estă o sgură valoare propre domată : 2 Metoda este următoarea: Fe (0) w u vector ţal, ales arbtrar cu sgura codţe ca să abă o compoetă î drecţa lu aleator. (Î fapt, (). Petru a împl această cerţă, uele codur geerează u vector (0) w este o apromaţe a vectorulu propru () ; dacă o astfel de apromaţe este cuoscută, atuc aceasta accelerează teraţa de ma jos). Desvoltăm w (0) w î baza vectorlor propr: ( 0) () (2) ( ) a a2 a (a) Presupuem că a 0, ş formăm şrul de vector w ( k) Avem: Aw ( k) A k w (0), k 0 w () Aw a () (0) a 2 a 2 () a (2) 2 2 (2) a a ( ) ( )

118 8 Î geeral, w ( k ) k A w (0) k k k () 2 (2) ( ) ( ) a a2 a (b) Cum petru 2, urmează că rapoartele k ( / ) td la 0 petru k. Astfel, petru k crescător, vector drecţa vectorulu propru w ( k ) ( ) k a () (k ) w se alază d ce î ce ma mult la (). Î cosecţă, petru u k sufcet de mare, avem. Să cosderăm de asemeea relaţa w ( k) k () ( ) a. Luâd orce coordoată o-zero a lu ( k ) w, w ( k), să zcem cea de-a m-a coordoată, obţem ( k ) w m ( k ) wm Dezavatajul formule precedete este că, coordoatele eule ale lu (k ) w dev fe foarte mc ( ), fe foarte mar ( ), odată cu creşterea lu k. Aceasta se evtă pr ormalzarea (sau scalarea) lu orma- ş orma-2. Astfel, algortmul metode este: (0) w = Vector ţal ( k ) ( k ) w z, petru k 0 Normalzare ( k ) w (k ) w, la fecare pas k. Normele utlzate sut w Az ( k) ( k ), petru k 0 Iteraţe Teste de oprre a teraţe:. Test de colartate a do vector succesv: Vector (k ) z ş ( k) ( k) ( k) ( k) z sut colar, dacă rapoartele z / z, z 0 ( k) ( k) sut egale (coordoatele eule sut proporţoale), sau z z 0. Î calculaţa practcă, puem codţa 0 ( ( ) ( ) TOL, dacă z k ) TOL; sau, să avem smulta, ( z k ) TOL ş ( z k ) TOL. TOL este o toleraţă

119 9 specfcată; 0 este dcele ue coordoate fate: este coveabl să luăm 0 ma dcele coordoate de modul mam d ( k) z. Se troduc atuc, factor de colartate pr vectorul col ( : ), deft astfel: z col ( ) z, ( k) ( k) ( ma) / z ( ) / z ( k ) ( k ) ( )) ( ma)) daca altfel z ( k) ( ) TOL s z ( k ) ( ) TOL Testul este: col col( ma) TOL Observaţe Test petru orma-2 (eucldaă): Dacă, petru ormalzarea lu (k ) w, se utlzează orma-2, vector orma-2 egală cu, ş testul de colartate poate lua forma ( k) ( k) z z TOL. 2 (k ) z au O problemă specală apare petru A reală, dacă valoarea propre domată este reală ş egatvă, 0, ş aume: d w ( k) (0) k () ( ) ( k) ( k) ( k) A z ( ) [ a r ] ş z w / w, rezultă că ( k) k vectorul (k ) z schmbă de sem de la pasul k la pasul k ( k ) ( k dată de w ) m / z ( k) m ţă cot de aceasta. Astfel, defm,. (Valoarea propre,, u este afectată.). Testul de colartate trebue să ( k) s sg(., ), dz z s z ( k) ( k) Testul corect este dz 2 TOL. 2. Test asupra lu : Iteraţa se opreşte pr codţa ( k) ( k ) TOL

120 20 ude TOL este o toleraţă. 3. Test de satsfacere a relaţe de defţe: Az z Practc, TOL (k) z z, Az w ( k) ( k), ş k ( ). Defd df ( k) ( k) ( k) w z, se pue testul df TOL Observaţ: Notă - Î cod, dacă valorle ateroare (k) sut stocate î z0 ş lambda0, ar valorle curete (k+) î z ş lambda, defţa lu df deve df = z lambdaz0, luâd z îate de ormalzare. - Vectorul r Az z se zce vectorul rezdual. Astfel, testul se ma scre r TOL. Testul propru petru metodă este Testul, îtrucât, î eseţă, metoda determă vectorul propru r., ş apo determă d acesta. Cu Testul, se obţ vector propr ma precş decât cu Testul 2 (la aceeaş toleraţă). Testul 3 u este specfc metode puter, c poate f aplcat orcăre metode teratve petru valor ş vector propr. Codurle d Lapack (Ba et al.(2000)), utlzează Testul 3, cu TOL M, ude M este ε-maşă. Î metodele următoare, Testul 3 va f utlzat uma la verfcarea sstemulu propru. Ecepţe face metoda puter, ude, petru studu, se poate alege uul d Testele -3. (Alegerea testulu se face prtr-u cod.) Covergeţa: ( ) Covergeţa k este lară, ar rata covergeţe este apromatv /. 2

121 2 (Acest rezultat are loc î poteza metode, cu poteza suplmetară: petru 2 k k, cattăţle, 3, sut egljable î raport cu k ( / 2 ) k ( 2 / ).) Fşere: Power-2.f90: subruta metode Ma-Power.f90: programul prcpal Age.f90: subruta de geerare a matrc A(,). Made.f90: fucţe; dcele coordoate de modul mam d vectorul v(). vnorm.f90: orma- ş orma-2 a uu vector. w0ge.f90: subruta de geerare a lu w0 work.f90: modul wdth.f90: utltar Subruta metode este Power(ter, kodtest, kod, kodnorm, ter_flag, test_val) Parametr: ter: Numărul mam de teraţ (trare) / Numărul efectv de teraţ (eşre) kodtest: cod petru testul de oprre a teraţe kod: cod de tpărre a teraţlor kodnorm: codul orme ter_flag: cod de îcheere a teraţe (ter). test_val: valoarea de test. Notă: TOL, lt ş lambda se trasmt pr modulul work Age.f90: se scre cod petru geerarea matrc A(,). w0ge.f90: se scre cod petru geerarea vectorulu de start w0.

122 22 Petru a împl cerţa ca (), uele codur geerează (0) w să abă o compoetă î drecţa lu (0) w ca vector aleator. Datele de trare se ctesc dtr-u fşer de date (specfcat). Datele de eşre se scru î cotuarea datelor de trare. Datele de trare sut: - Ttlu: tet de ma. 80 caractere -, koda, kodw0 - [Matrcea A: dacă koda = 0. Se scre aşa cum e dată - pe l.] - [Vectorul w0: dacă kodw0 = 0. ] - TOL, lt: toleraţa, umărul lmtă d teraţ. - kodtest, kod: cod test, cod tpărre teraţ - kodnorm: cod ormă - Check_tet: cod de verfcare. Semfcaţa codurlor: : ordul matrc koda: kodw0: 0 / 0: cteşte A / geerează A (cu subruta Age) 0 / 0: cteşte w0 / geerează w0 (cu subruta w0ge) kodtest: 0: Test asupra lu (Testul 2); : Test de colartate (Testul ); 2: Test asupra lu Az z (Testul 3). kod: 0 / 0: Tpăreşte teraţle: Da / Nu. kodnorm: : Norma-ft; 2: Norma-2 (eucldaă) Check_tet: tet de ma. 0 caractere. Prmul caracter este semfcatv, aume: C, c, P, p: se face proba, adcă se tpăreşte vectorul Az z. Eemplu: Eemplu = 3

123 * E check Guess vector: Iterato Curret_vector Curret_lambda Iterato No. 7: Tolerace o "z" met. Last test_value s: Lambda- (domat egevalue): Egevector #: () (2) (3) Check: A*y -lambda*y E E E-07

124 24 Mamum dfferece ( modulus) = 3.33E-07 Coordate # 3 Power_Comple Metoda puter petru o matrce compleă. Metoda: Este cea descrsă la Power. Covergeţa: Ipotezele sut aceleaş ca la Power. Î partcular, u se obţe covergeţă, petru o matrce reală la care 2 de eemplu, câd,2 sut comple cojugate. Fşere: Age_comple.f90; Ma-Power_comple.f90; Made_z.f90; Power_Comple&Eps.f90; vnorm.f90; wdth.f90; work_comple.f90; Semfcaţa fşerelor ş rutelor aceleaş ca la Power. Subruta metode: Power_Comple(ter, kodtest, kod, kodnorm, ter_flag, test_val, test_val_m) Semfcaţa parametrlor ca la Power. Parametrul test_val_m returează valoarea mmă de test, î cazul câd u este atsă toleraţa TOL. Datele de trare sut datele la Power, cu deosebrle: - A ş w0: sut date complee; petru A ş w0 reale, se troduc date reale. - kod: Petru kod = 2: se tpăresc ş valorle eps /, ş eps z0, ude z0 este z_ateror. (Aceste valor servesc la studul covergeţe: avem ( k) ( k) z eps z ). Eemplu: Eemplu = 3. Val. propr: 5.38; -0.63;

125 25 (,0) (,-7) (0,-) (,7) (5,0) (0,-3) (0,) (0,3) (-2,0) (,0) (,0) (,0).E ch Iterato No. 44: Tolerace o "z" met. Curret Test_value s: e-08 Lambda- (domat egevalue): E-06 Egevector #: () (2) (3) Check: A*z -lambda*z ( E-08, E-07) ( E-09, E-07) ( E-07, E-08) Mamum dfferece ( modulus) =-8.2E-07 Coordate # E-08 Iverse_Power_Shft Metoda puter verse cu traslaţe (shft) matrce reală, cu valor propr reale. Metoda: Fe matrcea A, cu valorle propr, j j, lu A, cea ma apropată de u umăr dat s. Se cosderă matrcea B A si. Metoda găseşte valoarea propre a

126 26 ş presupuem că B este esgulară. Se verfcă medat că valorle propr ale lu B sut s. Cattatea s zce deplasare (shft). j j Fe s, valoarea propre de modul mm a lu B, adcă: 0 j, petru j. Atuc, metoda puter aplcată lu adcă /. Avem /, ş s. B produce valoarea propre de modul mam, Prcpala aplcaţe a metode este de a găs vectorul propru, dacă este cuoscută o apromaţe buă a valor propr, să zcem ˆ. (Aceasta poate f furzată de o metodă î care se determă uma valorle propr u ş vector propr.) Se aplcă metoda puter verse, cu deplasarea de, matrcea vectorulu propru s ˆ. Char dacă ˆ este apropată B A ˆ I este îcă esgulară, ş se obţe o buă apromaţe a (). Metoda teraţe verse cu deplasare, este ua dtre cele ma precse metode petru calculul vectorlor propr. Algortmul practc, este următorul: Iteraţa d metoda puter, aplcată la matrcea versa B, calculăm ( k) w d sstemul lar B, este Bw z w ( k) ( k) B z ( k) ( k). Î loc de a, pr descompuere LU. Factorzarea se face o sgură dată, ş sstemul se rezolvă succesv cu membr drepţ (k ) z, k 0. Notă: Petru testare, Iverse_Power_Shft oferă ş varata terăr drecte cu B Fşere: LU_Shft.f90: subruta metode algortmul precedet. lverse_shft.f90: subruta metode terare drectă cu matrcea Ma-IversePower_Shft.f90: programul prcpal B.

127 27 apvt-lu.f90; compute_a_.f90;; LUdecomp.f90; LUsolve.f90; swap_row.f90: semfcaţle de la descompuerea LU. Age.f90; Made.f90; w0ge.f90; wdth.f90; work.f90: aceleaş semfcaţ ca la metoda puter. vnorm2.f90: orma eucldaă a uu vector v(). Subrutele metode: LU_Shft(ter, kodtest, kodprt) Iverse_Shft(ter, kodtest, kodprt) Parametrul ter: Numărul lmtă de teraţ (trare) / Numărul efectv de teraţ (eşre). Petru celalţ parametr, v. codurle de ma jos. Datele de trare se ctesc dtr-u fşer de date (specfcat). Î acesta se scru ş datele de eşre. Datele de trare sut: - Ttlu: tet de ma. 80 caractere -, koda, kodw0 - [Matrcea A: dacă koda = 0. Se scre aşa cum e dată - pe l.] - [Vectorul w0: dacă kodw0 = 0 ] - s: Număr de apromaţ s, ale valorlor propr - Apromaţle s: s valor. - kod_met: codul metode - TOL, lt: toleraţa, umărul lmtă de teraţ. - kodtest, kodprt: cod test, cod tpărre teraţ ş vector rezdual. - Check_tet: cod de verfcare. Semfcaţa codurlor: : ordul matrc koda: 0 / 0: cteşte A / geerează A (cu subruta Age)

128 28 kodw0: 0 / 0: cteşte w0 / geerează w0 (cu subruta w0ge) kod_met: 0 / 0: terare cu B / descompuere LU. kodtest: 0 / 0: Test asupra lu / Test de colartate. kodprt: 0 / / 2: Tpăreşte: Nmc / Vector rezdual Az z / Iteraţle ş vector rezdual. Vector rezdual se tpăresc uma dacă este cerută proba v. codul Check_tet. Check_tet: tet de ma. 0 caractere. Prmul caracter este semfcatv, aume: C, c, P, p: Se face proba, adcă se verfcă Az z 0. Se scru: - coordoata de modul mam d Az z (mamul pe toţ vector z); - dcele vectorulu, ş dcele coordoate. Eemplu: Se cosderă eemplul de la Power. Acesta este u caz specal: matrcea este sgulară, ş dec estă o valoare propre egală cu 0. Luăm ca apromaţ s valorle 9, -, ş 0.0. Fşerul de trare / eşre este: Eemplu = *. E ch Shft #: test_val: E+00 Iterato No. 7 Egevalue:

129 29 Egevector: () (2) (3) Shft #2: test_val: E+00 Iterato No. 8 Egevalue: Egevector: () (2) (3) Shft #3: test_val: E+00 Iterato No. 8 Egevalue: E-07 Egevector: () (2) (3) Check: A*z -lambda*z Mamum dfferece ( modulus) = 2.429E-07 Egevector # ; Coordate #. Iverse_Power_Comple Metoda puter verse cu traslaţe (shft), petru o matrce compleă. Î partcular, o matrce reală care are (ş) valor complee. Metoda: cea de la Iverse_Power_Shft.

130 30 Fşere: LU_Shft_Comple.f90: subruta metode algortmul cu descompuerea LU. lverse_shft_comple.f90: subruta metode terare drectă cu matrcea Ma-lversePower_Comple.f90.f90: programul prcpal B. Hermta.f90: fucţe logcă; adevărat matrce hermtaă; fals î caz cotrar. apvt-lu_z.f90; compute_a z.f90; LUdecomp_z.f90; LUsolve_z.f90;; swap_row_z.f90: semfcaţle de la descompuerea LU_Comple. Age.f90; Made_z.f90; w0ge.f90; wdth.f90; work.f90: aceleaş semfcaţ ca la metoda puter. vnorm2.f90: orma eucldaă a uu vector real, ş a uu vector comple, v(). Subrutele metode: LU_Shft_Comple(ter, kodtest, kodprt, kodlu, test_val) Iverse_Shft_Comple(ter, kodtest, kodprt, kodlu, test_val) Semfcaţle parametrlor: ter, kodtest, kodprt: aceleaş semfcaţ ca la Iverse_Power_Shft. kodlu: cod descompuere LU; 0: o.k.; < 0: pvot < prag. test_val: valoarea de test (comparată cu toleraţa); aceasta depde de kodtest. Fşerul de date: Are aceeaş structură ca fşerul de date de la Iverse_Power_Shft, cu partculartatea că: matrcea A, vectorul w0, ş apromaţle s sut acum, valor complee. Dacă A este reală, se pot troduce valor reale; petru vectorul w0 trebue îsă troduse valor complee. Notă: Apromaţle s trebue să fe sufcet de apropate de valorle propr. Eemplu: Eemplul de la Power_Comple. Matrcea este hermtaă ş are valor propr reale. 7 8 Î rezultate, partea compleă a valorlor propr este de ordul 0 0.

131 3 Fşerul de trare / eşre este: Eemplu (,0) (,-7) (0,-) (,7) (5,0) (0,-3) (0,) (0,3) (-2,0) 3*(,0) 3 (5.,0.) (-0.,0.) (-0.7,0.) e ch Matrce hermtaa. Shft #: Iterato No. 6 Egevalue: E-07 Egevector: () (2) (3) Shft #2: Iterato No. 9 Egevalue: E-07 Egevector: () (2) (3) Shft #3:

132 32 Iterato No. 6 Egevalue: E-08 Egevector: () (2) E (3) Check: A*z -lambda*z Mamum dfferece ( modulus) =-2.95E-07 Egevector # 2; Coordate # E-07 Sm_Iter Metoda teraţlor smultae matrce hermtaă. Metoda: Aceasta este o etdere a metode puter petru o matrce A hermtaă (î partcular, reală ş smetrcă). O astfel de matrce, are valor propr reale. Presupuem, ma mult, că valorle propr sut de module dstcte: 2. Î loc de u vector de start (0) w, se utlzează o matrce de start, ale căre coloae ( 0) (0,) (0,2) (0, m) sut vector de start: W [ w w w ]. Dacă matrcea A este, (0) W este m, ude m. Vector de start w trebue să fe lar depedeţ. Metoda de bază rămâe îmulţrea la stâga a lu (0) ( k) ( k ) W cu matrcea A, adcă, W AW, k 0 ( 0, j). Îate de fecare etapă a teraţe, matrcea curetă W este ortogoalzată pr procedeul Gram-Schmdt, astfel îcât coloaele e utară). Astfel, vector dmesoal al lu ( j) w dev vector ortoormaţ (ortogoal, ş avâd orma eucldaă ( j) w formează o bază ortoormată a sub-spaţulu m- R, sub-îts de vector ţal w ( 0, j). Î cursul teraţe, această bază se alază d ce î ce ma mult la baza vectorlor propr a lu A, drecţa ( j) w drecţa ( j), j. Valorle propr se evaluează pr câtul Raylegh. Iteraţa

133 33 se îchee câd se atge o toleraţă coveablă, prvtor la drecţle a două baze ( j) succesve { w }. Dacă matrcea de start vector propr. Petru m =, adcă (0) W are m < coloae, se obţ prm m (0) W este, se găsesc toţ vector propr. Algortmul: Se cere u umăr e de vector propr.. Se defeşte matrcea (0) W ş W sut matrc e. (0) W : dacă o apromare ţală a vectorlor propr u ( 0) () (2) ( e) este cuoscută, se a W [ e e e ], adcă, (0) W este formată d prmele e coloae ale matrc utate I. Petru e =, W (0) I. 2. Se aplcă Gram-Schmdt la ortoormată). Se atrbue 3. Iţalzare cotor: ter = 0 4. Iteraţ: ter = ter +; (0) W (cu ecepţa cazulu î care aceasta este deja (0) W W. Atrbure: W (0) W (W = matrcea curetă; (0) W = matrcea ateroară.) 5. Se calculează (0) W AW. 6. Se calculează, j e, pr câtul Raylegh: Fe ( j) w ş j, ( 0, j) w a j-a coloaă a lu W ş (0) W, respectv; avem w j (0, j), w ( j) ( ) (0, j) ( j (0, j) (0, j) w Aw Pasul 5; ş w, w Paş 2 ş 4.) 7. Se aplcă Gram-Schmdt la W, astfel că W deve ortoormată. 8. Se verfcă atgerea toleraţe TOL: Pr testul de colartate.3, : se defeşte col() petru fecare vector z W(:, je), ş test _ val ma col col( ma). je, e (Îtrucât z sut ormalzaţ, testul se poate pue ş sub forma d, Observaţe.) - Dacă test _ val TOL, eşre d teraţe.

134 34 Observaţ Observaţ - Altfel, GOTO 4. - Se poate prescre u umăr lmtă de teraţ lt: atuc, se adaugă la Pasul 8 u test ter lt. - Pasul 6 se poate realza uma o sgură dată, după ce s-a eşt d teraţe.. Valor propr de acelaş modul Îtrucât metoda teraţlor smultae este î eseţă metoda puter, u se obţe covergeţă petru vector propr, dacă estă valor propr de modul egal. 2. Matrc o-hermtee Dacă aplcăm algortmul de ma sus ue matrc o-hermtee, u vom obţe covergeţă petru vector propr, cu ecepţa vectorulu propru corespuzâd valor domate (petru care, metoda reve la metoda puter). Aceasta se îtâmplă deoarece poteza eseţală a metode este că vector propr formează o bază ortogoală ş procedeul Gram-Schmdt forţează ca, la fecare pas k, vector ( k, j ) w să fe ortogoal. Totuş, dacă valorle propr sut de module dstcte, atuc vector propr sut lar depedeţ, ş se obţ apromaţ foarte bue petru valorle propr. Vez Eemplu-2. Eplcaţa este că, procedeul Gram-Schmdt furzează u set ( j) de vector { w } lar depedeţ (ortoormaţ), ar valorle propr sut calculate cu câtul Raylegh care dă apromaţ bue ale valorlor propr char cu apromaţ grosere petru vector propr. Valorle propr găste pot f utlzate ulteror, î metoda puter verse cu traslaţe, petru a obţe vector propr petru valorle, 2. Fşere: Sm_lter.f90: subruta metode Ma-Sm_lter.f90: programul prcpal Gram_Schmdt_Comple.f90: ortogoalzare Gram-Schmdt

135 35 Herm&Sm.f90: 2 fucţ logce petru a recuoaşte o matrce hermtaă, respectv compleă ş smetrcă. Made_z.f90: fucţe; dcele coordoate de modul mam î vectorul comple v(). Age.f90: subruta de geerare a matrc A(,). W0ge.f90: subruta de geerare a matrc W0(e,). Codul actual geerează prmele e coloae ale matrc utate. vnorm.f90: orma uu vector comple v() work.f90: modul wdth.f90: utltar Subruta metode: Sm_Iter(ter, kodtest, kodprt, ter_flag, test_val) Semfcaţle parametrlor sut aceleaş ca la metoda puter (kodprt: ca ş kod). Datele de trare se ctesc dtr-u fşer de date (specfcat). Î acesta se scru ş datele de eşre. Datele de trare sut: - Ttlu: tet de ma. 80 caractere -, e, koda, kodw0 - [Matrcea A: dacă koda = 0. Se scre aşa cum e dată - pe l.] - [Vectorul w0: dacă kodw0 = 0 ] - TOL, lt: toleraţa, umărul lmtă de teraţ. - kodtest, kodprt: cod test, cod tpărre teraţ ş vector rezdual. - Check_tet: cod de verfcare. Semfcaţa codurlor: : ordul matrc A e: koda: umărul de coloae ale matrc W0 (umărul de vector ş valor propr de calculat) 0 / 0: cteşte A / geerează A (cu subruta Age)

136 36 koda < 0: matrce hermtaă se troduce trughul superor (programul completează trughul feror). koda = 0: matrce geerală se troduce îtreaga matrce. kodw0: kodtest: 0 / 0: cteşte w0 / geerează w0 (cu subruta w0ge) 0 / : Test asupra lu / Test de colartate. kodprt: 0 / / 2: Tpăreşte: Nmc / Vector rezdual Az z / Iteraţle ş vector rezdual. Vector rezdual se tpăresc uma dacă este cerută proba v. codul Check_tet. Check_tet: tet de ma. 0 caractere. Prmul caracter este semfcatv, aume: C, c, P, p: Se face proba, adcă se verfcă Az z 0. Se scru: - coordoata de modul mam d Az z (mamul pe toţ vector z); - dcele vectorulu, ş dcele coordoate. Eemplu-: Matrcea este hermtaă (se poate pue koda < 0, ş troduce uma trughul superor). Ca varată, s-a trodus îtreaga matrce luâd koda = 0. Eemplu-. Matrce hermtaa (,0) (,-7) (0,-) (,7) (5,0) (0,-3) (0,) (0,3) (-2,0) e ch Matrce hermtaa Iterato No. 46: Tolerace o "W" met. Test Value s: 3.542E-08 Egevalues:

137 E E E-08 Egevectors: E E E E E E-07 Check: A*z -lambda*z Mamum dfferece ( modulus) =-7.843E-07.34E-08 Egevector #; Coordate #. Eemplu-2: Matrce o-hermtaă lustrarea Observaţe 2, de ma sus. Reproducem uma rezultatele petru valorle propr, ş verfcarea petru vectorul propru r.. Vector propr 2-4 u sut determaţ corect. Petru a- calcula, se va utlza metoda teraţe verse cu traslaţe, luâd ca apromaţ valorle propr calculate 2-4. Eemplu (Westlake). Val. propr: (,5); (2,6); (3,7); (4,8) (5.0,9.0), (5.0,5.0), (-6.0,-6.0), (-7.0,-7.0) (3.0,3.0), (6.0,0.0), (-5.0,-5.0), (-6.0,-6.0) (2.0,2.0), (3.0,3.0), (-.0,3.0), (-5.0,-5.0) (.0,.0), (2.0,2.0), (-3.0,-3.0), (0.0,4.0) e-6 200

138 38 ch Matrce geerala Iterato No. 69: Tolerace o "W" met. Test Value s: 6.482E-07 Egevalues: Check: A*z -lambda*z Egevectors: ( E-07, E-07) ( E-07, E-08) ( E-07, E-07) ( E-07, E-07) Jacob Metoda Jacob matrce reală smetrcă. Metoda: Metoda Jacob este o metodă coveablă petru a găs toate valorle propr ş vector propr a ue matrc reale ş smetrce, de ord moderat. Determarea vectorlor propr este opţoală. Fe A o matrce reală ş smetrcă. Dacă N este o matrce esgulară, atuc matrcea A N AN este smlară cu A, ş are aceleaş valor propr (bara u otează acum cojugata). Vector propr a lu A, sut legaţ de vector propr a lu A, pr:

139 39 N. (Vez Problema de valor propr sumar, ma sus). Să presupuem acum, că N este utară, adcă A N T AN Notaţ că A este de asemeea smetrcă. Dagoalzarea lu A: T N N. Matrcea A deve Să presupuem că N este aleasă astfel îcât A să devă dagoală: A T N AN dag ( a Petru matrcea A, avem propretăţle: ) ) Valorle propr ale lu A sut elemetele dagoale: a 2) Vector propr a lu A sut coloaele matrc utate I: ( ) ( ) e (ude e ( ) j ). j Î cosecţă, rezultă petru A: - Valorle propr ale lu A se găsesc pe dagoala matrc A. - Vector propr a lu A sut coloaele matrc N. Dagoalzarea Jacob: Metoda Jacob costă î trasformăr utare (sau, ortogoale) aplcate succesv lu A, pâă la obţerea ue forme aproape dagoale. Aume, dacă matrcea A se trasformă cum urmează: A T N AN N sut matrc utare, A T T T 2 N2 AN2 N ( N2 N ) A( N 2) A k N T k A T T T kn k ( Nk Nk N ) A( NN2 Nk ) Dacă matrcea apromatv zero, luăm A A k N T A k este aproape dagoală, adcă, elemetele o-dagoale sut AN

140 40 ude N N N 2 N k Fecare trasformare N se alege astfel ca să elme o pereche de elemete odagoale (să zcem a pq ş a qp la pasul ). O astfel de matrce are structura: N cos s ( p) s cos ( q)...( p)...( q) Elemetele escrse sut zero (cu ecepţa dagoale prcpale ude acestea sut uu). Trasformărle N se aplcă succesv, fecare dtre ele elmâd elemetul odagoal a pq, de modul mam. Prcpala propretate a ue astfel de trasformăr este că produsul q. T N AN modfcă uma elemetele lu A d lle ş coloaele p ş Ughul se alege astfel îcât a pq 0 Nole elemete dagoale, sut date de formulele: r a a 2 2 4a pq ( a pp aqq) ; pp qq 2 2 ( a ( a pp pp a a qq qq r) r) Petru detal, v. Cap. 5-II, 2. a pp aqq s ; 2 2r a pq cos ; r s

141 4 Cosderaţ de programare Stocajul matrc: Se lucrează cu trughul superor al lu A, astfel îcât, după dagoalzarea lu A, elemetul (,) coţe, etc. Trughul superor este stocat î vectorul a((+)/2), î ordea coloaelor, adcă: a [ a a2 a22 a3 a23 a33 a a2 Adresa elemetulu (, j) este dată de următoarea fucţe: Loca(, j) ( j ) * j / 2 Î partcular, elemetul dagoal (, ) are adresa Loca(, ) ( ) * / 2. După ce s-a efectuat o trasformare, matrcea curetă A este stocată î acelaş vector a. Stratega de elmare: Aceasta este căutarea completă, adcă: se caută î toată matrcea A (cocret, î vectorul a), elemetul o-dagoal de modul mam. (Petru alte strateg, v. Cap. 5- II, 2.) Elemetele o-dagoale se cosderă zero, dacă sut ma mc (î modul) decât o toleraţă TOL. a ] Fşere: Jacob.f90: subruta metode Ma-Jacob.f90: programul prcpal Age.f90: subruta de geerare a trughulu superor al matrc A(,); stocat pe coloae, î vectorul ag((+)/2). Loca.f90: fucţe; adresa elemetulu a(,j) î vectorul ag. work.f90: modul wdth.f90: utltar Subruta metode: Jacob(kodVP, kodi, ter, ama) Parametr:

142 42 kodvp: v. ma jos kodi: v. ma jos, kodprtj. ter: Numărul lmta de teraţ (trare) / Numărul efectv de teraţ (eşre). ama: Elemetul o-dagoal de modul mam, d A. Fşer de date (trare/eşre): - Ttlu: tet de ma. 80 caractere -, koda, kodprta - [Matrcea A: dacă koda = 0. Se troduce trughul superor, pe l.] - TOL, kodprtj: toleraţa petru elemetele o-dagoale; cod de tpărre a teraţlor. - kodvp: cod petru calculul vectorlor propr - Check_tet: cod de verfcare. Semfcaţa codurlor: : ordul matrc A koda: 0 / 0: cteşte A / geerează A (cu subruta Age). koda = 0: Se troduce trughul superor al matrc, scrs pe l. (Programul completează trughul feror, petru o matrce hermtaă.) kodpra: 0 / 0: Nu / Da Tpăreşte matrcea A (trughul superor). kodpra 0 se utlzează petru a tpăr o matrce geerată. kodprj: 0 / 0: Nu / Da Tpăreşte trasformărle succesve ale matrc A. Check_tet: Tet de ma. 0 caractere. Prmul caracter este semfcatv, aume: C,c, P,p, F,f: Se face proba, adcă se verfcă Az z 0. Se scru: - coordoata de modul mam d Az z (mamul pe toţ vector z); - dcele vectorulu, ş dcele coordoate.

143 43 Petru F sau f: se scre ş fecare vector rezdual Az z. Notă: Proba se face uma dacă se cere calculul vectorlor propr (kodvp 0). Eemplu: E. Jegs - p e-7 0 ch Iterato #8: Mamum off-dagoal: Egevalues ) ) ) ) Egevectors' Matr E Check: A*y -lambda*y Mamum dfferece ( modulus) =-7.33E-04 Egevector #; Coordate # 4.

144 44 Observaţe Utlzâd IversePower_Shft cu apromaţle ţale 4.3, 4.46, -0.37, (0) (valorle Jacob cu 3 cfre semfcatve corecte), w (,,, ), ş toleraţa E-7, se găsesc rezultatele: - Aceleaş valor propr r. ş 3; valorle r. 2 ş 4 dferă cu o utate, î a 7-a cfră semfcatvă. - Verfcarea este: Mamum dfferece ( modulus) = 5.895E- 07 Se poate cochde că metoda Jacob dă rezultate foarte bue petru valorle propr, ş rezultate ma puţ precse petru vector propr. QR Algortmul QR matrce reală. Metoda (sumar) QR este uul d ce ma utlzaţ algortm petru a determa toate valorle propr ale ue matrc.. Î umele metode, Q desemează o matrce ortogoală, ar R o matrce superor-trughulară (R ve de la rght-tragular). Cosderăm o matrce reală esgulară A, smetrcă sau u. Eseţa algortmulu QR rezdă î următoarea propretate: Dacă A este factorzată î produsul cosderâd produsul î orde versă, fe A QR ude Q este esgulară, atuc A aceleaş valor propr ca ş A, fd smlară cu A RQ, această matrce are Îtr-adevăr, avem R Q A, ş A Q AQ. Algortmul QR realzează factorzăr succesve ale şrulu de matrc { A }, ude A A, defte de: A QR; 2 RQ A ; k

145 45 A ; A3 R 2Q2 ; 2 Q2R 2 A Q R ; Ak R kqk k k Matrcle k A k, ş ; Q, R, au următoarele propretăţ: k k ) Toate A k au aceleaş valor propr ca ş A. 2) Dacă A este smetrcă, sau trdagoală, sau A are forma Hesseberg superoară, matrcle A k vor păstra aceste forme. 3) Fe Qk Q Q 2 Qk, atuc (pr ducţe): Ak Qk AQk. 4) Fe R k R k R, atuc: Q k k R k ( A) Algortm: Algortmul parcurge următoarele etape: I. Reducerea lu A la forma trdagoală dacă A este smetrcă, sau la forma Hesseberg dacă A este esmetrcă. II. III. Reducerea lu A la forma trughulară, sau bloc- trughulară (v. ma jos). Descompuerea QR. Algortmul QR propru-zs, costă î Etapele II ş III. a) Etapa I se realzează îate de algortmul QR petru a aduce matrcea A la o forma ma smplă, ş a reduce astfel efortul de calcul. b) Etapa II se realzează pr premultplcare cu matrcea Householder P k, cum urmează: A P A A2 P2 A P2P A A P P2P A

146 46 Matrcea A are forma trughulară ş este matrcea R. T Îtr-adevăr: Să otăm Q P P2 P, avem A Q A. Q este o matrce ortogoală, dec avem superor trughulară, urmează că R A. QA A. Cum Q este ortogoală ş A este Atuc, Etapele II ş III se realzează pr următor paş de terare: () ) Pue A A - Tragularzează () A : () () A P A; A ; ; () () () 2 P2 A A P A () () () 2 - La sfârştul pasulu, avem: R ; () () A Q. () () () () P P2 P 2) Calculează (2) A R () Q () - Tragularzează (2) A : A ; (2) (2) (2) P A A ; ; (2) (2) (2) 2 P2 A A P A (2) (2) (2) 2 - Pue: R ; (2) (2) A Q. (2) (2) (2) (2) P P2 P... k) Calculează ( k) ( k) ( k) A R Q ( k 2) - Tragularzează (k ) A : ( k) ( k) ( k) A P A ; A P A ; ; ( k) 2 ( k) 2 ( k) A ( k) ( k) ( k) P A 2 - Pue: R A ; ( k) ( k) Q P P P ( k) ( k) ( k) ( k) 2...

147 47 Calculaţa cotuă pâă câd elemetele trughulu sub-dagoal î A sut ( k ) apromatv zero. Atuc, valorle propr sut pe dagoala lu A ( k ). Ma precs: Dacă A are valor propr de module dstcte, avem: a) Dacă A este smetrcă, atuc toate elemetele o-dagoale vor f apromatv zero. Reamtm că o matrce smetrcă are uma valor propr reale. b) Dacă A este esmetrcă ş are uma valor propr reale, calculaţa se termă câd toate elemetele sub-dagoale sut apromatv zero. Dacă A (esmetrcă) are o pereche de valor propr complee (cojugate), pe dagoală rămâ submatrc blocur 2 2, ale căror valor propr sut perechea de valor propr cojugate ale lu A. Covergeţa: - Dacă A este o matrce reală (smetrcă sau u) ş are valor propr de module dstcte, atuc matrcle (k ) A produse de algortmul QR coverg spre o matrce superor trughulară, pe dagoala cărea se găsesc valorle propr ale lu A. - Dacă A are o valoare propre de multplctate m, atuc (k ) A îcă coverg la matrce superor trughulară, cu ecepţa uu bloc dagoal de ordul m, ale căru valor propr au modulul egal cu. Algortmul QR cu deplasare: Presupuem că A are valor propr de module dstcte 0. 2 Se arătă că vteza de covergeţă la zero a elemetelor sub-dagoale, ş cea de covergeţă la valorle propr a elemetelor dagoale, depd de rapoartele (,. k / ) Dacă două valor propr ş sut apropate ua de alta, covergeţa va f îceată. Atuc, se utlzează următoarea tehcă petru a accelera covergeţa. Se

148 48 aplcă o deplasare s k la valorle propr (acestea dev sk ), la fecare etapă k. Adcă, puem A A, ş A s I Q R, ( k) ( k) ( k) k A R Q ( k ) ( k) ( k) s k I Estă două strateg petru a alege deplasarea s k ( s k est o apromaţe a lu ): ) (k ) sk a Petru o matrce smetrcă (reală), această stratege asgură o covergeţă cubcă, char î prezeţa uor valor propr multple (Wlkso, (965)). 2) Se calculează valorle propr ale submatrc 22 cea ma de jos d (k ) A : ( a a k ), ( k ), a ( k ), ( k ) a Dacă valorle propr sut reale, se alege: s k = valoarea propre care este cea ma apropată de Dacă valorle propr sut complee, se a: s k = partea reală a valor propr. (k ) a. 3) Epermetele umerce au codus la o a trea stratege, ş aume: ( k) sk m( a ),, Petru uele matrc smetrce, această stratege se dovedeşte cea ma buă, coducâd la u umăr ma mc de teraţ, ş o eroare ma mcă î Ay y. Algortm ş cod Programul calculează sstemul propru (valor ş vector propr), î succesuea următoare: I. Trasformarea prelmară a matrc A (Opţoal). II. Valorle propr, pr reducerea matrc la forma bloc-trughulară.

149 49 III. Vector propr (Opţoal). Se calculează, ma îtâ, vector propr a matrc bloc-trughulare. Aceşta se aduc, pr trasformarea de smlartate, la vector propr a lu A. IV. Rafarea sstemulu propru pr teraţe versă (Opţoal; uma î cazul câd s- a ales opţuea de calcul a vectorlor propr). V. Verfcarea sstemulu propru (Opţoal): Precza sstemulu propru se verfcă pr lstarea eror mame (î modul), î Ay y (ude este valoarea propre, ar y vectorul propru asocat cu ). Datele se ctesc dtr-u fşer de date. Rezultatele sut scrse î acest fşer, î cotuarea datelor de trare. Codul este scrs î dublă precze. Detal de mplemetare. Itroducerea matrc Matrcea A se defeşte î uul d următoarele modur: - Cttă d fşer - Geerată (de subruta Age) Ctrea se poate face, coform uu cod, astfel: - Matrce smetrcă: trughul superor - Matrce geerală: completă, pe l ş coloae - Matrce geerală: elemetele eule (dce le, dce coloaă, elemet). Nu este mplemetată ctrea sau stocarea de matrc badă. 2. Etapa I Trasformăr prelmare Coform uu cod, matrcea dată se poate aduce la ua d formele: - Trdagoală (superoară): uma petru o matrce smetrcă - Hesseberg (superoară): matrce geerală - Forma dată: u se face c o trasformare prelmară

150 50 Codul auto comadă forma trdagoală petru o matrce smetrcă, ş forma Hesseberg petru o matrce geerală. 3. Etapele II, III Iteraţa QR Iteraţa QR se face cu deplasare, ş este mplemetată î coformtate cu algortmul de ma sus. Sut mplemetate cele tre strateg, petru alegerea deplasăr s k ; stratega se alege prtr-u cod. Se prescru: - U umăr lmtă de teraţ, lt - Toleraţa eps petru forma bloc-trughulară - Toleraţa eps_lambda petru valorle propr (v. ma jos) Iteraţa QR este oprtă dacă ua d codţle -4 de ma jos este îdepltă:. S-a ats lt. 2. S-a obţut forma bloc-trughulară. 3. S-a ats toleraţa eps_lambda petru doua setur succesve de valor propr. Forma bloc-trughulară se cosderă obţută, dacă următoarele două teste sut satsfăcute: Ma _ Sub _ Sub eps _ sub (a) Ma _ Left _ Dag eps _ left, (b) ude: Ma _ Sub _ Sub este elemetul sub-sub-dagoal de modul mam, ar jma este la pe care se atge mamul (elemetele sub-sub-dagoale d coloaa j sut a ( l, j), l j 2, ; mamul se caută petru j, 2); eps _ sub eps a( jma, jma) Ma _ Left _ Dag este elemetul stâg-dagoal de modul mam, ar lma este la pe care se atge acest mam (elemetul stâg-dagoal de pe la l este a( l, l) ); eps _ left eps( a( lma, lma ) a( lma, lma) ).

151 5 Notă: Factor lu eps sut tpărţ de program. Observaţ: - Testul (a) este îdeplt (după cel puţ o teraţe) dacă, ţal, matrcea este redusă la ua d formele prelmar (trdagoală sau Hesseberg). - Testul (b) se pue petru elemetul stâg-dagoal a prme l a bloculu 22. (Î cazul uu u bloc de dmesue petru la respectvă.) - Codurle petru metoda QR v. Ba et al. (2000), Golub & Va Loa (996) pu testul,, a tol ( a a ), ude tol este o toleraţă ma mare decât eroarea de rotujre a utăţ. Elemetele sub-dagoale a, care satsfac acest test sut setate la zero. 4. Iteraţa se ma opreşte dacă elemetul stâg-dagoal de modul mam este staţoar (u se ma reduce). Testul pus este Ma_Left_Dag = Prev_ Ma_Left_Dag, ude membrul do este Ma_Left_Dag de la teraţa precedetă. Testul se pue după ce Ma_Left_Dag s-a redus deja î proporţa Ma_Left_Dag eps_left0. Balasare Eroarea î calculul valorlor propr ale matrc A, rezultată pr aplcarea metode QR, este de ordul M A F, ude M este ε-maşă (Cap., 3.8.2), ar A F este orma Frobeus (Cap. 4, 3) v. Che & Demmel, Balacg Matrces î Ba et al. (2000), Parlett & Resch (969). Balasarea este o trasformare prelmară a matrc A, pr smlartate cu matrcea dagoală reală D, matrcea de lucru deved A b D AD. Scopul este reducerea orme Frobeus a matrc date. O matrce se zce balasată î orma-p dacă, petru fecare,, orma-p a le este egală cu orma-p a coloae : A (,: ) A(:, ), p p,

152 52 Algortm reduc orma- sau orma-2 a matrc A. Ţâd cot de echvaleţa ormelor, rezultă că va f redusă ş orma Frobeus a matrc A. Balasarea se poate face fără a troduce eror de rotujre suplmetare, pr aceea că elemetele matrc D se aleg ca puter îtreg ale baze utlzate î reprezetarea umerelor î calculator (baza 2). Prcpalul algortm este descrs î lucrarea de referţă Parlett & Resch (969). Îate de balasare, pr permutăr de l ş coloae, matrcea se aduce la forma: T 0 0 X Z 0 Y W, T 2 ude T desemează o matrce superor trughulară, ar 0 o matrce cu elemete ule. Algortmul se aplcă, î eseţă, matrc Z (dar trasformarea de smlartate se aplcă îtreg matrc, astfel că se modfcă ş matrcle X, Y, W). Algortmul balasează matrcea î orma-, după u umăr ft de paş. Acest algortm stă la baza subrute sgbal d LAPACK (2000). Alţ algortm sut descrş î Ba et al. (2000). Eemple Cosderăm următoarea matrce (Che & Demmel, Balacg Matrces î Ba et al. (2000)): A Balasarea drectă, cu D dag(0.0 00), produce matrcea balasată 0 2 A D b AD 0.

153 53 Normele sut: 4 A F ş A b F Pe de altă parte, ormele llor ş coloaelor î A b sut apromatv egale. Metoda QR aplcată lu A, fără rafare (cu EPS = E-8), cu ş fără balasare, dă următoarele rezultate: - Valorle ş vector propr cocd, cu cel puţ 0, ş respectv 9 cfre semfcatve. - Erorle mame (î modul) î Ay y sut: 3.229E- ş 2.887E-4, respectv. Se observă precza mult ma mare a sstemulu propru calculat cu balasarea matrc A. 2. Balasarea cu subruta sgbal (î smplă precze), dă următoarele rezultate: D dag( e E ) A b Este de remarcat că, pr acest procedeu, matrcea este balasată apromatv î orma-. Normele llor ş coloaelor sut de acelaş ord de mărme (îsă, dferte): Eroarea mamă î Ay y este 4.960E Subruta Balace d programul QR, balasează matrcea î orma- (fără a face permutăr), cum urmează. Notăm: orm_r orma le, ş orm_r orma le fără elemetul dagoal, adcă: orm _ r a(, j) ; aalog, petru coloaa, j, j orm_c ş orm_c. Algortmul este următorul: - Iţalzăm D I, ş terăm paş K =, 2,

154 54 - La fecare pas K, procesăm lle (ş coloaele) î ordea aturală, aume: Petru, 2,, : - Calculăm elemetele matrce D, pr d orm_ r / orm _ c - Se scalează la ş coloaa, pr A D AD - Puem D D D La rezultă matrcea D, la pasul curet K, ş s-a calculat A D AD. - Calculăm (petru matrcea curetă A): Rato ma orm _ r orm _ c / orm _ r, - Se pu următoarele codţ de oprre a teraţe: Rato EPS ; Numar _ Iterat lt ; (Se au: EPS E 4 ş lt 00 ). Petru matrcea d Eemplu, la pasul 2, se obţe: Rato.2064E - 05; D dag( E E ). Normele llor ş coloaelor sut: Eroarea mamă (î modul) î Ay y este 4.29E-4. Fşere - Fşere sursă: Age.f90: subruta de geerare a matrc A Ma-QR-2005.f90: programul prcpal work : modul - Bbloteca statcă:

155 55 QR_Lb.lb Aceasta coţe fşere modul obect (petru aceste fşere u se dă codul sursă). Î proect se vor clude cele tre fşere sursă ş bbloteca statcă. - Fşere de date: Acestea se găsesc î sub-folderul QR\Dat. La lasarea î eecuţe, programul deschde fereastra stadard de selecţe a fşerulu d acest folder. U fşer ou de date, este preferabl să fe plasat î acest folder. Programul QR este scrs î dublă precze. Programul prcpal apelează următoarele subrute (ş o fucţe): GetFle(fame, status) Selectarea fşerulu de trare. Bazată pe API-ul GetOpeFleName. fame: ume fşer status: îtreg ut2(, Q) Iţalzează matrcea reală Q(, ) cu matrcea utate. : ordul matrc Q Q: matrce (, ) Age(Ag, job) Geerarea matrc A Ag: tablou (,), petru matrcea A geerată. Job: character(20); v. Semfcaţa codurlor. symm(, a) Fucţe logcă; matrce A smetrcă. : ordul matrc A a: tablou (, ) petru A. PrtA(, A)

156 56 Tpărrea matrc A(, ) Balace(, a, dag_bal, 0), Drect_Balace(, a, dag_bal) Balasarea matrc A, ş balasarea drectă a matrc A. : ordul matrc A a: tablou (, ) petru A. dag_bal: elemetele dagoale ale matrc de balasare D (Balace: eşre; Drect_Balace: trare). Trdagoal(kod), Hesseberg(kod) Reducerea al forma trdagoală, respectv Hesseberg. kod: cod de tpărre a trasformărlor. Se a 0. QR_Z(ter, do_shft, kodshft, koditer, BlockReduced, real_val) Iteraţa QR. ter: cotor de teraţ do_shft: logc; cu sau fără shft. kodshft: codul shft-ulu. V. Semfcaţa codurlor. koditer: cod de tpărre a teraţlor. BlockReduced: logc. Matrce redusă la forma bloc-trughulară (eşre). real_val: logc. Toate valorle propr sut reale (eşre). Vec_BlocTr(VEC, kodnorm), Vec_BlocTr_Z(VEC_Z, kodnorm). Calculează vector propr a ue matrc bloc-trughulare valoare propre reală, respectv compleă. VEC, VEC_Z: tablou (, ) petru vector propr; real, respectv comple. Power_Refe(vp), Power_Refe_Z(vp) Rafarea vectorulu ş valor propr r. vp valoare propre reală, respectv compleă. Normalze_r(VEC, kodnorm), Normalze_Z(VEC_Z, kodnorm) Normalzarea vectorlor propr cazul real, respectv comple. VEC, VEC_Z: ca ma sus.

157 57 kodnorm: codul orme. V. ma jos: Semfcaţa codurlor Check(real_val, full_prt_check) Subrută petru verfcarea sstemulu propru. real_val: logc; valor propr reale. full_prt_check: logc; tpărrea la verfcare, ş a vectorlor Az z. Structura fşerulu de date - Ttlu: tet, ma. 80 caractere (ttlul probleme). -, koda, kodprta Datele următoare defesc matrcea A. Se troduce ua d varate, î fucţe de codul koda: - Matrcea A... koda = 0, (matrce cttă d fşerul de date) - Job... koda < 0 (matrce geerată). - Fame_2:... koda 2 (matrcea se cteşte d fşerul Fame_2). - Balace, kod_balace: cod petru balasarea matrc; cod petru modul de balasare. - [dags(), =,... Dacă kod_balace 0.] - Form: cod petru trasformăr prelmare ale matrc. - Eps, Eps_lambda, Lt, koditer: toleraţe; umăr lmtă de teraţ, cod tpărre teraţ. - Shft, kodshft: cod petru shft ; cod stratege de alegere a shft-ulu. - kodvp: cod petru calculul vectorlor propr. - [Refe: rafarea sstemulu propru pr teraţe versă (dată logcă)...dacă kodvp 0] - [s (îtreg): cod petru mod rafare... Dacă Refe are valoarea adevărat :] - [kodnorm: cod ormă petru vector propr... dacă kodvp 0] - Check_tet: cod petru verfcarea sstemulu propru. Semfcaţa codurlor: : ordul matrc koda: koda 0: matrce cttă; koda < 0: matrce geerată (de Age). Valor koda ş datele petru defrea matrc A:

158 58 koda = 0: trughul superor, pe l (matrce smetrcă) î fşerul de trare; koda = : îtreaga matrce, pe l î fşerul de trare; koda 2: Fame_2: specfcatorul fşerulu care coţe elemetele matrc. Structura fşerulu Fame_2: Prma le: tet arbtrar (ttlul probleme) Lle următoare, coform codulu: koda = 2: trughul superor (matrce smetrcă) pe l; koda = 3: îtreaga matrce pe l; koda 4: elemetele eule ale matrc, aume:, j, a (, j). Sfârştul de fşer este o dată eumercă. Eemplu: Ed koda < 0: job: Dată tet (-20 caractere). Numele jobulu deft î Age. Parametru petru apel Age. kodprta: > 0: tpăreşte A (dată, ş redusă la forma bloc-trughulară); 0: tpăreşte A redusă la forma bloc-trughulară; < 0: u ţpar. Balace: Dată tet (-20 caractere). Prmul caracter este semfcatv, aume: B, b / Alt caracter: Balasează / Nu balasa. kod_balace: 0: Balasare cu subruta Balace; 0: Balasare drectă, cu dags (subruta Drect_Balace). Dacă u se balasează: se troduce orce îtreg: dags ( : ) : Elemetele dagoale petru balasare drectă ( A D AD ) Form: Dată tet (-20 caractere). Prmul caracter este semfcatv: - A, a: Auto, rezultâd î: Matrce smetrcă: forma Trdagoală; Matrce esmetrcă: forma Hesseberg (superoară). - T, t: forma Trdagoală; - H, h: forma Hesseberg; - Alte caractere: matrcea dată (Fără trasformăr prelmare). Eps: Toleraţa la elemetele o-dagoale

159 59 Eps_lambda: Toleraţa la două valor succesve λ Lt: koditer: Shft: kodshft: 0: Numărul lmtă de teraţ 0 / 0: Da / Nu tpăreşte teraţle. tet (-20 caractere). Prmul caracter este semfcatv: S, s / alt caracter: Cu / Fără shft; (k ) sk a ( s k este shftul de la pasul k) ( k) > 0: s k Valoarea propre a sub-matrc A ( :, : ) ma apropată de (k ) a., cea kodvp: Refe: s: < 0: s k Elemetul dagoal smetrce). 0 / 0: Da / Nu calculează vector propr. kodvp > 0: Scre vector propr; kodvp < 0: Nu scre vector propr. Dată logcă. Valor: (k ) a mm. (optm petru uele matrc T / F: Rafează / Nu rafa sstemul propru pr teraţe versă (cu traslaţe). Notă: Dacă se rafează: vector popr sut deja ormalzaţ cu orma-2. Defeşte shft-ul petru teraţa versă. Se troduce uma petru Refe = T. Shftul este deft pr s ( ) ds, ude: s > 0: ds = o utate î cea de-a "s-a" cfră semfcatvă a lu lambda. Recomadare: s = 4; 5, 6. s < 0: ds = D-4 kodnorm: < 0: Nu ormalza. 0: Norma-ft : Norma- 2: Norma eucldaă (Norma-2) 3: Norma "gerească": prma coordoată =. Check_tet: dată tet (-20 caractere). Prmul caracter este semfcatv: C,c, P,p, F,f / Alt caracter: Da / Nu - Verfcarea sstemulu propru.

160 60 F,f: se tpăresc ş vector rezdual Az z. (do_balace, do_shft, do_check, full_prt_check: date logce; utlzare teră) Semfcaţa uor date de eşre: Row: Idcele le matrc reduse. Bloc Flag = / 2 : Idcele le Row î bloc (Prma le / A Doua le). Bloc Flag = 0: La u aparţe uu bloc. (Iter, se utlzează tabloul bloc(:): Idcele le bloculu; la eşre, data Bloc Flag este varabla _flag. V. programul prcpal.). Dacă se balasează (do_balace =.true.): Row _ Norm Colum _ Norm Rato ma, Row _ Norm Dacă ordul matrc 50, programul afşează ş tmpul de calcul. Eemple Eemplu-: Fără rafare. E Rau Cod NoBal 0 Hess E-8 E shft 0 F 2 Proba Matr A - Hesseberg form

161 E * Reached block-tragular form (Iterato 4). Mamum Left-Dagoal ( modulus) s: E-2 (Row: lma = 3). a(lma-,lma-) + a(lma,lma) : Mamum sub_sub-dagoal ( modulus) s: e-2 (Colum ). Processg block-tragular form: Iteratg to reach tolerace o lambdas. * Met tolerace EPS_lambda o lambdas (Iterato 5). Actual test value s: Real Egevalues: F Iterato 5: Reduced Matr - Block-Tragular Form E E E-03 Row Block Flag Egevalues E-03

162 62 Egevectors E Check: A*y - lambda*y Mamum absolute dfferece (A*y -lambda*y) = 3.695E-2 Vector # Coordate(s) # 3 3 Eemplu-2: cu rafare. Reluăm Eemplu-, cu rafare, cu s = 5. E. Rau Cod. cu rafare NoBal 0 Hess E-8 E Shft 0 T 5 2

163 63 Proba Matr A - Hesseberg form E * Reached block-tragular form (Iterato 4). Mamum Left-Dagoal ( modulus) s: E-2 (Row: lma = 3). a(lma-,lma-) + a(lma,lma) : Mamum sub_sub-dagoal ( modulus) s: e-2 (Colum ). Processg block-tragular form: Iteratg to reach tolerace o lambdas. * Met tolerace EPS_lambda o lambdas (Iterato 5). Actual test value s: Real Egevalues: F Iterato 5: Reduced Matr - Block-Tragular Form E E E-03 Row Block Flag * Refemet: Iteratos Test Value Tolerace

164 E E E E E-9 Egevalues E-03 Egevectors E Check: A*y - lambda*y Mamum absolute dfferece (A*y -lambda*y) = 4.44E-6 Vector # Coordate(s) # Eemplu-3: cu balasare (ş fără rafare). Cosderăm d ou, Eemplu-, cu balasarea matrc cu kod_balace = 0. Se observă că, verfcarea sstemulu propru este ma buă decât î Eemplu-. E Rau Cod. cu balasare 3 0

165 Bal 0 Hess E-8 E shft 0 F 2 Proba Balace: No. of steps = 5; Rato = 4.034E-05 A-balaced Matr A - Hesseberg form E * Reached block-tragular form (Iterato 4). Mamum Left-Dagoal ( modulus) s: e-3 (Row: lma = 3). a(lma-,lma-) + a(lma,lma) : Mamum sub_sub-dagoal ( modulus) s: E-22 (Colum ). Processg block-tragular form: Iteratg to reach tolerace o lambdas. * Met tolerace EPS_lambda o lambdas (Iterato 5). Actual test value s: E-6

166 66 Real Egevalues: F Iterato 5: Reduced Matr - Block-Tragular Form E E E E-03 Row Block Flag Egevalues E-03 Egevectors E Check: A*y - lambda*y

167 67 Mamum absolute dfferece (A*y -lambda*y) = 6.362E-4 Vector # Coordate(s) # 2 Eemplu-4: Cosderăm matrcea Eberle de ordul 6 (Westlake (968)). Aceasta se defeşte pr: C C C ; B ; 5C C B 2B A. 4B 3B Matrcea A are următoarele valor propr: 60 20, 45 5, 30 0, 5 5, 2 4, 9 3, 6 2, 3. Codul î Age petru geerarea matrc A î tabloul Ag(,), este dat ma jos. (Î datele de trare, se pue = 6).... ELSEIF(job =='ebe6') THEN allocate(c(4,4), b(8,8)) c(,) =-2; c(,2:4) =2; c(2,) =-3; c(2,2) =3; c(2,3:4) =2; c(3,) =-2; c(3,2) =0; c(3,3) =4; c(3,4) =2; c(4,) =-; c(4,2:3) =0; c(4,4) =5 b(:4,:4) =5*c; b(:4,5:8) =-c; b(5:8,:4) =5*c; b(5:8,5:8) =c; ag(:8,:8) =b; ag(:8,9:6) =2*b; ag(9:6,:8) =4*b; ag(9:6,9:6) =3*b; deallocate(c, b) ENDIF

168 68 Petru programul fără rafare, se troduc datele Eberle - ord ebe6 NoBal 0 auto Shft 0 F 2 ch Forma bloc-trughulară este atsă la teraţa 2 (ş toleraţa la, la teraţa 22). Rezultatul verfcăr sstemulu propru este: Mamum absolute dfferece (A*y -lambda*y) = 5.572E-03 Vector # Coordate(s) # 5 5 Programul cu rafare, cu s = 5, produce următoarele rezultate (petru ecoome de spaţu, vector propr u sut lstaţ): Egevalues

169 Check result: Mamum absolute dfferece (A*y -lambda*y) = E-5 Vector # Coordate(s) # 8 Observaţ: Toleraţele Eps ş Eps_lambda s-au luat relatv mc (0.0), producâd rezultate destul de mprecse î cazul fără rafare: eroarea î verfcarea sstemulu propru, este de ordul E-3. Acestea sut îsă, îmbuătăţte foarte mult, pr rafare (eroare de ordul E-5). Toleraţe ma mc, u îmbuătăţesc verfcarea sstemulu propru. Eemplu: Toleraţe de 0.00 duc la o eroare de ordul E-4 î verfcare. Acest eemplu dă o dee, despre dfcultăţle care apar î calculul sstemulu propru al ue matrc de ord relatv mare; aceste dfcultăţ cresc odată cu ordul matrc. Petru o matrce de ord mare, u se vor alege toleraţe Eps ş Eps_lambda foarte mc. Eemplu-5: Cosderăm matrcea Wlkso de ordul 20 (Wlkso (963), Westlake (968)): A Aaltc, matrcea, este deftă pr a (, j) 0, cu ecepţa elemetelor: a(, ) ;, a(, ) ;, ; a (,).

170 70 Eemplul Wlkso a 20. Dacă perturbaţa 0, matrcea este superor trughulară, ş valorle propr sut ( ). Petru E 0, cu metoda QR fără rafare (cu EPS = E-6), se obţ următoarele rezultate: a) Fără balasare: Valorle propr rezultă toate reale. Ele repreztă perturbaţ ale valorlor, 20,, aume (ordoate descrescător): , , ,..., , , Eroarea î verfcarea sstemulu propru este.232e-07. b) Cu balasare: Valorle propr calculate coţ 4 valor complee, ş aume (ordoate după descrescător):

171 Eroarea î verfcarea sstemulu propru este 4.2E-06. (Cu balasare ş rafare, eroarea deve.776e-5.) Eplcaţa rezultatelor foarte dferte î cazurle (a) ş (b), este următoarea: polomul caracterstc al matrc este p ( ) ( )( 2) ( 20) 20 9, ş acesta este foarte rău codţoat; umerele de codţe petru rădăc sut cuprse ître ş Odată cu polomul, ş valorle propr sut rău codţoate. (Problema codţoăr valorlor propr depăşeşte cadrul acestu maual. V. de eemplu, Golub & Va Loa (996)). D acest eemplu, se poate cochde că smpla verfcare a sstemulu propru (pr proba că Az z = mcă ), u asgură corecttudea sstemulu propru calculat v. cazul (a). Pe de altă parte, rezultă că balasarea matrc este ecesară î acest caz. Î geeral: Balasarea se recomadă petru metoda QR aplcată la matrc esmetrce, la care valorle propr pot f rău-codţoate. Matrcle smetrce au valor propr becodţoate. Geeral_R, Geeral_R Problema geeralzată reducerea la problema stadard.

172 72 Problema geeralzată de valor propr Problema determăr valorlor ş vectorlor propr a ue matrc A, deftă de A, sau de ecuaţa ( A I) 0 () se va um problema stadard. Î Damca Structurlor apare următoarea problemă: ( K M) 0, (2) 2 ude:, ar K ş M sut matrc smetrce ş poztv defte (K ş M sut respectv, matrcle de rgdtate ş de masă; este pulsaţa propre). Problema (2) se zce problema geeralzată de valor propr. Ma geeral cosderâd două matrc A ş B, problema geeralzată are forma ( A B) 0. Î cotuare, cosderăm problema (2). Reducerea la problema stadard Problema (2) poate f adusă la problema stadard () petru o matrce smetrcă ş poztv deftă, cum urmează. ) Se face descompuerea Cholesky a lu M: M S T S, (3) ude S este superor trughulară.. Atuc, (2) scrsă î forma K M, deve T K S S, ş se scre d ou ca ş KS ( S) S 2) Se otează T ( S). (4) y S (5) ş ecuaţa (4) deve KS T y S y. Premultplcâd cu S KS T y Iy ( T T S ) ( S ) S T, se obţe

173 73 3) Acum, defm R S T KS (5) R este matrce smetrcă ş poztv deftă. 4) Problema (2) este pusă î forma stadard petru matrcea R, ş aume, ( R I) y 0 (6) Problemele (6) ş (2) au aceleaş valor propr. 5) După rezolvarea lu (6) petru ş y, vector propr a probleme orgale (2) sut daţ, cf. (4), de S y (7) Ţâd cot de faptul că M ş K sut smetrce ş poztv defte, se verfcă medat că matrcea R este smetrcă ş poztv deftă. Urmează că valorle propr ale lu R 2 sut reale ş poztve, aşa cum trebue să avem coform cu. Astfel, petru a rezolva (6), orce metodă petru problema de valor propr ale ue matrc smetrce ş poztv defte poate f aplcată lu R. Observaţe Cel ma smplu caz este acela î care matrcea M este dagoală (model de mase T cocetrate), M dag m ). Atuc, avem S S dag m ), ş ( ( S S T dag (/ m ). Astfel, elemetele lu R ş sut date de: r ş kj,, j, m m j, y,. m, j Observaţe Matrcea R poate f scalată, adcă se pue R R factor. Ecuaţa (6) deve

174 74 ( R I) y 0, ude factor Astfel, după determarea valorlor propr avem factor, ar pulsaţle propr se găsesc d: factor Foldere: Geeral_R, Geeral_R Ambele proecte reduc problema geeralzată (2) la problema stadard. Deosebrea este că prmul stochează ş procesează trughul superor al matrclor M ş K, ar al dolea, matrcle complete M(gl,gl), K(gl,gl). Ambele proecte lucrează î dublă precze. Fşere (Geeral_R): Back.f90: substtuţe îapo, petru Cholesky. Cholesky_S.f90: subruta Cholesky. loca.f90: fucţa de adresă d Cholesky. Ge_M.f90, Ge_K.f90: subrutele de geerare a matrc M, respectv K. Ge_R.f90: subruta de calcul a matrc R. Ma-Geeral_R.f90: programul prcpal. Wrte_R.f90: subrută petru screrea matrc R. work.f90: modul GetFle.f90, Opefle.f90, wdth.f90: utltare Compact_mul: subrută de îmulţre SA, ude: S este smetrcă ş stocată î trughul superor, ar A este (, ).

175 75 [Aceasta este uma î folderul Geeral_R.] Subruta metode este Ge_R(kodPrt) Parametru: kodprt: cod petru tparre Datele de trare se ctesc dtr-u fşer de date (acesta se selectează d fereastra stadard). Datele de eşre se scru î cotuarea datelor de trare. Matrcle M ş K se troduc coform codurlor kod_gem ş kod_gek (codur de ctre sau geerare a matrclor): - kod_ge 0: matrc geerate (de subrutele Ge_M.f90, Ge_K.f90); - kod_ge : matrc ctte d fşer, aume: - kod_ge = : fşerul de trare; - kod_ge 2: fşer specfcat (selectat). Daca matrcea este cttă: se troduce ş "factor"; dacă este geerată, u. Î cazul matrclor ctte dtr-u fşer specfcat (kod_ge 2), fşerul va avea următoarea structură: - Prma le d fşer este o le-tet (gorată la ctre); - Următoarele l coţ elemetele trughulu superor al matrc. Datele de trare (aceleaş petru Geeral_R ş Geeral_R), sut: - Ttlu: tet de ma. 80 caractere - gl, kod_gem, kod_gek Petru kod_gem =, se troduce: - [Matrcea M trughul superor, pe l.] Petru kod_gem, se troduce: - [m_factor: factor de multplcare petru M; (M m_factor M) Petru kod_gek =, se troduc: - [Matrcea K trughul superor, pe l.] Petru kod_gek, se troduce:

176 76 - [k_factor: factor de multplcare petru K; (K k_factor K) - kodprt: cod tpărre Semfcaţa codurlor: gl: ordul matrc (umărul gradelor de lbertate) kod_ge: v. ma sus kodprt: 0 / 0: Nu se tpăresc / Se tpăresc: matrcle M, K, ş S. Observaţe Matrcea R este scalată: adcă, î fşerul de eşre, se tpăreşte matrcea scalată R ş factorul de scalare scal: avem Factorul de scalare se calculează astfel: orm = maval(dabs(r)) scal = 2_8**(epoet(orm)-) ude orm este orma-. Eemplu: R R scal. 2 0 M 3 ; K 2. 0 Fşerul de date: Eemplu cu M o-dagoala; gl = ! m_factor

177 77.! k_factor 0 Rezultate: Matrcea R = S^(-T)*K*S^(-) Matrcea S^(-): Retreve_Ege_from_R Regăseşte valorle ş vector propr a probleme geeralzate, după găsrea valorlor ş vectorlor propra matrc R. Fşere sursă: Ma-Retreve_Ege_from_R.f90: programul prcpal work : modul GetFle.90, OpeFle.90: fşere petru fereastra de selecţe stadard wdth.90: utltar Fşere de date (trare): Programul cere ca folderul de lucru să este urmatoarele 4 fşere: ume-s^-.dat: fşerul care coţe matrcea ume-scal_r.dat: fşerul care coţe factorul de scalare. S (trughul superor); ume-val.dat: fşerul care coţe valorle propr ale lu R; ume-vec.dat: fşerul care coţe vector propr y a lu R;

178 78 Specfcatorul de fşer trebue să abă forma de ma sus, î care, ume este ales de utlzator (de regulă, umele eemplulu). Î fecare fşer, datele umerce sut precedate de o le-tet. - Prmele două fşere sut furzate (ca fşere de eşre) de programul Geeral_R. - Ultmele două fşere sut furzate (ca fşere de eşre) de programul de valor propr QR sau Jacob. Date troduse de la termal: - Numărul gradelor de lbertate (ordul matrc R) - Pulsaţ sau Frecveţe: se troduce T, respectv F. Relaţa ître pulsaţa ş frecveţa f este: f /( 2 ). Fşere de eşre (rezultate): ume-omega.dat (pulsaţ), sau ume-frecv.dat (frecveţe); ume-vec_x.dat: vector propr, a probleme geeralzate. Eemplu (v. eemplul de la Geeral_R) Fşere de trare: E3-S^-.dat: Matrcea S^(-): E3-Scal_R.dat: Factor de scalare petru R: Următoarele fşere sut geerate de Jacob_D: E3-VAL.dat: Egevalues:

179 E-02 E3-VEC.dat: Egevectors E

180 80 INTERPOLARE Newto Polomul de terpolare Newto. Metoda: Problema Fe fucţa f, cuoscută pr valorle e pe pucte dstcte, ca î tabelul următor: 0 2 f() f 0 f f 2 f Puctele se umesc odur ş s-a otat f f ( ), 0. Se cere să se găsească, u polom p de grad cel mult, care să cocdă cu fucţa f pe odurle (sau, al căru grafc să treacă pr puctele, f ) ), adcă: p ( ) f, 0, ( Se zce că p este polomul de terpolare al fucţe f, pe odurle date. Se arată că: Polomul de terpolare (al fucţe f, pe odur) estă ş este uc Forma Newto a polomulu de terpolare p( ) c0 c( 0) c( 0) ( ) Defm poloamele q 0( ), q ( ) 0, q2( ) ( 0)( ),, sau, î geeral, k 0 q0( ) ; qk ( ) ( ), k,

181 8 Polomul de terpolare sub forma Newto se scre atuc: k k k q c p 0 ) ( ) ( Coefcetul k c se umeşte dfereţa dvzată de ordul k (a fucţe f, pe odul k ) ş se otează cu [ 0 ] 0 f c ; ],,, [ 0 k k f c, k. Cu aceasta, epresa polomulu de terpolare se scre k k k q f p 0 0 ) ( ],,, [ ) ( () sau eplct: ) ( ) ](,, [ ) )( ](,, [ ) ](, [ ) ( ) ( f f f f p (') Propretăţ ale dfereţelor dvzate P. Dfereţa dvzată este o fucţe smetrcă de argumetele sale Adcă, cosderâd o permutare (,, 0 ) a umerelor (,, ), avem: ],, [ ],, [ 0 0 f f P2. Formula de recureţă a dfereţelor dvzate: ],, [ ],, [ ],, [ f f f (2) Calculul practc al dfereţelor dvzate Notâd odurle cu j j j,,,, (2) deve: j j j j j j j j f f f ],, [ ],, [ ],, [ ş j j f f ] [. Utlzâd otaţa smplfcată ],,, [ j j j j j j f f, formula de recureţă (2) se scre:

182 82 f f f j j j j j j j (3) j j Astfel, obţem dfereţele de ordul, 2, 3, etc.: : f f f 0 0 ; 0 f 2 f 2 ; 2 f f f f ; 3 2 2: 3: Etc. f f f ; 2 0 f ; 3 0 f f f f ; 3 f Dfereţele dvzate se pot aşeza î următorul tabel eemplu petru 4 odur: f f f f f f f f f f 023 Prmele două coloae sut datele probleme (Coloaa a doua repreztă ş dfereţele de ordul 0). Dfereţele de ordul, 2, 3 sut î coloaele 3, 4, 5. Tabloul are structura trughulară: datele u permt calculul dfereţelor (care mplcă odul 4 ). Polomul de terpolare Newto, petru eemplul d tabel, este: p f j j cu j 4 4( ) f f ( ) f ( )( ) f ( )( )( ) (4) Coefceţ polomulu se găsesc î prma le d tabel (îcepâd cu coloaa 2). Petru calculul practc al coefceţlor polomulu Newto, otăm coefceţ ca î tabloul de ma jos, aume dfereţe): c jk (ude j este dcele odulu, ar k dcele ordulu c c c c c c c 0 2 c c 02 2 c 03

183 83 Corespodeţa este: c ; c02 f02; c03 f023 0 f 0 c ; c2 f23; f 2 c2 f 2 ; Sau, î geeral, c jk f j j jk (5) Cu aceasta, (4) se scre: p4( ) c00 c0( 0) c02( 0)( ) c03( 0)( )( 2) Coefceţ c jk se calculează pr recureţă, cu formula care dervă d (2) ş (5): c jk c j, k j, k jk c j (6) Fşere: Pol-ewto.f90: programul prcpal Fu.f90: fucţa f Programul prcpal mplemetează calculul coefceţlor c jk coform (6), petru fucţa deftă î fu.90. Î afară de aceasta, programul calculează erorle relatve ale polomulu de terpolare pe şte valor date z, adcă ( f ( z ) p( z )) / f ( z ) ; dacă f ( z ) E 6, se lstează eroarea (î loc de eroarea relatvă). Subprogramul fu() returează valorle fucţe f pe. (Fucţa este umtă fu, ş valorle e sut stocate, î programul prcpal, î tabloul f(0:).) Datele de trare se ctesc dtr-u fşer de date, care coţe datele: - Ttlu: tet, ma. 80 caractere - : umărul de odur. ( ) - ( 0 : ) : odurle : valor - z: umărul de valor z

184 84. - z(:z): valorle z : z valor Datele de eşre costau î: valorle fucţe f pe odur; coefceţ c jk ; valorle polomulu p(z); erorle f z ) p( z ). (Dacă f ( ) 0. 2, î loc de eroarea relatvă se lstează eroarea.) Notă ( Programul are scopul de a lsta valorle ş erorle polomulu de terpolare (î geeral, pe alte pucte decât odurle). Programul se poate modfca uşor, astfel ca să abă ca trare valorle fucţe pe odur, adcă valorle f(0:).(î loc ca acestea să fe calculate de fucţa deftă î fu.f90.) Eemplu: z Cosderăm fucţa 2 e 3, ş odurle, 0,, 2, 3, 4 f ( ). Lstăm valoarea ş eroarea polomulu, pe mjloacele tervalelor defte de odur: 0.5; 0.5;.5; 2.5; 3.5. Fşerul de trare/eşre este: Fucta f = ep()-3**; 6 odur f(): Coefcet c_j:

185 E z p(z) Eroare relatva E E-02 (* eroarea) E E E E-02 Grafcele fucţe ş polomulu de terpolare sut date ma jos.

186 86 Fgura 9 Iterpolare: grafcul fucţe ş polomulu de terpolare

Lucrarea de laborator nr. 11

Lucrarea de laborator nr. 11 Metode Nuerce - Lucrarea de laborator 11 Lucrarea de laborator r. 11 I. Scopul lucrăr Aproxarea î ede pr etoda celor a c pătrate II. Coţutul lucrăr 1. Metoda celor a c pătrate. Procedur MAPLE ş exeple

More information

Universitatea din Bucureşti Facultatea de Matematică şi Informatică. Matematică (Varianta 1)

Universitatea din Bucureşti Facultatea de Matematică şi Informatică. Matematică (Varianta 1) Uverstatea d Bucureşt 9.07.05 Facultatea de Matematcă ş Iformatcă Cocursul de admtere ule 05 Domeul de lceţă Calculatoare ş Tehologa Iformaţe Matematcă (Varata ). Toate valorle parametrulu real a petru

More information

CURS 6: APROXIMAREA FUNCTIILOR PRIN REGRESIE

CURS 6: APROXIMAREA FUNCTIILOR PRIN REGRESIE CURS 6: APROXIMAREA FUNCTIILOR PRIN REGRESIE Metoda celor ma mc pătrate. Formularea probleme. Notaț Metoda celor ma mc pătrate (ale eror) este cea ma uzuală metodă de aproxmare a ue depedeţe y=y(x), date

More information

7 ECUAŢII ALGEBRICE ŞI TRANSCENDENTE

7 ECUAŢII ALGEBRICE ŞI TRANSCENDENTE 7 ECUAŢII ALGEBRICE ŞI TRANSCENDENTE 7 Separarea rădăcnlor Ecuaţe algebrcă dacă ( este polnom Ecuaţa transcendentă în caz contrar ( = Rădăcnă apromatvă valoare ξ apropată de valoarea eactă ξ Denţ neechvalente:

More information

Testarea ipotezelor statistice. Stud. Master - AMP. Cateva elemente recapitulative PRELUCRAREA DATELOR DE SONDAJ SI INFERENTA STATISTICA

Testarea ipotezelor statistice. Stud. Master - AMP. Cateva elemente recapitulative PRELUCRAREA DATELOR DE SONDAJ SI INFERENTA STATISTICA PRELUCRAREA DATELOR DE SONDAJ SI INFERENTA STATISTICA Tetarea potezelor tattce Stud. Mater - AMP ISAIC- MANIU ALEXANDRU web www.amau.ae.ro e-mal AL.ISAIC-MANIU@CSIE.ASE.RO 7.XI.03 Cateva elemete recaptulatve

More information

Probleme de numărare: combinări, aranjamente, permutări de Manuela Prajea 1)

Probleme de numărare: combinări, aranjamente, permutări de Manuela Prajea 1) Probleme de umărare: combăr, arajamete, permutăr de Mauela Prajea 1) Lecța se adresează î prmul râd elevlor de gmazu care focuseaza cocursurle de matematcă hgh-level ș d acest motv se îcepe expuerea de

More information

Prezentarea şi prelucrarea datelor experimentale

Prezentarea şi prelucrarea datelor experimentale Loretz JÄNTSCHI Prezetarea ş prelucrarea datelor epermetale Imprecs Precs ş Eact Ieact A s mol m K kg cd v v 3 v 5 v 4 v v 6 Repere î pla U.T.Press 3 ISBN 978-973-66-9-9 Prezetarea ş prelucrarea datelor

More information

O V E R V I E W. This study suggests grouping of numbers that do not divide the number

O V E R V I E W. This study suggests grouping of numbers that do not divide the number MSCN(2010) : 11A99 Author : Barar Stelian Liviu Adress : Israel e-mail : stelibarar@yahoo.com O V E R V I E W This study suggests grouping of numbers that do not divide the number 3 and/or 5 in eight collumns.

More information

Sisteme cu logica fuzzy

Sisteme cu logica fuzzy Sisteme cu logica fuzzy 1/15 Sisteme cu logica fuzzy Mamdani Fie un sistem cu logică fuzzy Mamdani două intrări x şi y ieşire z x y SLF Structura z 2/15 Sisteme cu logica fuzzy Mamdani Baza de reguli R

More information

APLICATII NUMERICE DE STATISTICA IN FARMACIE SI IN STUDIILE CLINICE VOL. I metode manuale. Editia a II a Revizuita

APLICATII NUMERICE DE STATISTICA IN FARMACIE SI IN STUDIILE CLINICE VOL. I metode manuale. Editia a II a Revizuita Costat Mrcou Roxaa Colette Sadulovc APLICATII NUMERICE DE STATISTICA IN FARMACIE SI IN STUDIILE CLINICE VOL. I metode mauale Edta a II a Revzuta EDITURA UNIVERSITARA CAROL DAVILA BUCURESTI, 00 Prof. dr.

More information

ALGORITMI GENETICI DE OPTIMIZARE

ALGORITMI GENETICI DE OPTIMIZARE ALGORITMI GENETICI DE OPTIMIZARE George Dael Mateescu Rezuat. Algort geerc repreztă u struet utl petru rezolvarea ue clase larg de problee, pord de la prcp extrase d bologe. Scopul acestu artcol este de

More information

1.3. OPERAŢII CU NUMERE NEZECIMALE

1.3. OPERAŢII CU NUMERE NEZECIMALE 1.3. OPERAŢII CU NUMERE NEZECIMALE 1.3.1 OPERAŢII CU NUMERE BINARE A. ADUNAREA NUMERELOR BINARE Reguli de bază: 0 + 0 = 0 transport 0 0 + 1 = 1 transport 0 1 + 0 = 1 transport 0 1 + 1 = 0 transport 1 Pentru

More information

ON THE QUATERNARY QUADRATIC DIOPHANTINE EQUATIONS (II) NICOLAE BRATU 1 ADINA CRETAN 2

ON THE QUATERNARY QUADRATIC DIOPHANTINE EQUATIONS (II) NICOLAE BRATU 1 ADINA CRETAN 2 ON THE QUATERNARY QUADRATIC DIOPHANTINE EQUATIONS (II) NICOLAE BRATU 1 ADINA CRETAN ABSTRACT This paper has been updated and completed thanks to suggestions and critics coming from Dr. Mike Hirschhorn,

More information

Rezolvarea ecuaţiilor şi sistemelor de ecuaţii diferenţiale ordinare (II)

Rezolvarea ecuaţiilor şi sistemelor de ecuaţii diferenţiale ordinare (II) Rezolvarea ecuaţiilor şi sistemelor de ecuaţii diferenţiale ordinare (II) Metode multipas Prof.dr.ing. Universitatea "Politehnica" Bucureşti, Facultatea de Inginerie Electrică Suport didactic pentru disciplina

More information

1 0, x? x x. 1 Root finding. 1.1 Introduction. Solve[x^2-1 0,x] {{x -1},{x 1}} Plot[x^2-1,{x,-2,2}] 3

1 0, x? x x. 1 Root finding. 1.1 Introduction. Solve[x^2-1 0,x] {{x -1},{x 1}} Plot[x^2-1,{x,-2,2}] 3 Adrew Powuk - http://www.powuk.com- Math 49 (Numercal Aalyss) Root fdg. Itroducto f ( ),?,? Solve[^-,] {{-},{}} Plot[^-,{,-,}] Cubc equato https://e.wkpeda.org/wk/cubc_fucto Quartc equato https://e.wkpeda.org/wk/quartc_fucto

More information

Divizibilitate în mulțimea numerelor naturale/întregi

Divizibilitate în mulțimea numerelor naturale/întregi Divizibilitate în mulțimea numerelor naturale/întregi Teorema îmărţirii cu rest în mulțimea numerelor naturale Fie a, b, b 0. Atunci există q, r astfel încât a=bq+r, cu 0 r < b. În lus, q şi r sunt unic

More information

OPTIMIZAREA DECIZIILOR ÎN CONDIŢII DE RISC ŞI INCERTITUDINE

OPTIMIZAREA DECIZIILOR ÎN CONDIŢII DE RISC ŞI INCERTITUDINE 78 Optmzarea deczlor î codţ de rsc ş certtude OPTIMIZAA CIZIILO ÎN CONIŢII ISC ŞI INCTITUIN L Mâdru, LS Begu 2 Uverstatea George Barţu Braşov 2 Academa de Stud coomce Bucureşt INTOUC Î orce domeu de actvtate,

More information

Curs 1 PARAMETRII ELEMENTELOR DE SISTEM

Curs 1 PARAMETRII ELEMENTELOR DE SISTEM Curs PARAMETR ELEMENTELOR DE TEM. Geeratoare Rereztă rcalele surse de almetare ale reţelelor electrce, fd realzate cu autorul motoarelor scroe. Parametr ş schemele echvalete ale geeratoarelor d EE ded

More information

REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAłII LINIARE

REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAłII LINIARE CALCUL NUMERIC. Rezolvre umercă sstemelor de ecuń lre REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAłII LINIARE. DETERMINANłI NUMERICI Fe dtă o mtrce pătrtcă rtrră de ord :,,2, 2, 2,2 2, A =.,,2, Fecăre d mtrcele

More information

PORTOFOLIILOR CU CONSTRÂNGERI DE LICHIDITATE FUZZY MODELING THE PORTFOLIO SELECTION PROBLEM WITH FUZZY LIQUIDITY CONSTRAINTS

PORTOFOLIILOR CU CONSTRÂNGERI DE LICHIDITATE FUZZY MODELING THE PORTFOLIO SELECTION PROBLEM WITH FUZZY LIQUIDITY CONSTRAINTS Profesor dr. Adra Vctor BĂDESCU Drd. Radu Ncolae CRISEA Drd.Adraa Elea SIMION Academa de Stud Ecoomce d Bucureşt MODELAREA PROBLEMEI DE SELECłIE A POROFOLIILOR CU CONSRÂNGERI DE LICHIDIAE FUZZY MODELING

More information

UTILIZAREA METODEI NUCLEELOR DEGENERATE MODIFICATĂ LA REZOLVAREA APROXIMATIVĂ A ECUAŢIILOR INTEGRALE LINIARE DE TIP FREDHOLM

UTILIZAREA METODEI NUCLEELOR DEGENERATE MODIFICATĂ LA REZOLVAREA APROXIMATIVĂ A ECUAŢIILOR INTEGRALE LINIARE DE TIP FREDHOLM UTILIZRE METODEI NULEELOR DEGENERTE MODIFITĂ L REZOLVRE PROXIMTIVĂ EUŢIILOR INTEGRLE LINIRE DE TIP FREDHOLM Mr S II dr Vse ăruţşu strct I ths rtce we propose ppromto method or Fredhom er ter equto souto

More information

A L A BA M A L A W R E V IE W

A L A BA M A L A W R E V IE W A L A BA M A L A W R E V IE W Volume 52 Fall 2000 Number 1 B E F O R E D I S A B I L I T Y C I V I L R I G HT S : C I V I L W A R P E N S I O N S A N D TH E P O L I T I C S O F D I S A B I L I T Y I N

More information

MODELAREA DECIZIEI FINANCIARE - Manual de studiu individual -

MODELAREA DECIZIEI FINANCIARE - Manual de studiu individual - Lect. uv. dr. Carme Judth GRIGORESCU Cof. uv. dr. Graţela GHIC MODELAREA DECIZIEI FINANCIARE - Maual de studu dvdual - Lect. uv. dr. Carme Judth GRIGORESCU Cof. uv. dr. Graţela GHIC MODELAREA DECIZIEI

More information

IMAR Problema 1. Fie P un punct situat în interiorul unui triunghi ABC. Dreapta AP intersectează

IMAR Problema 1. Fie P un punct situat în interiorul unui triunghi ABC. Dreapta AP intersectează IMAR 017 Problema 1 Fie P u puct situat î iteriorul uui triughi ABC Dreapta AP itersectează latura BC î puctul D ; dreapta BP itersectează latura CA î puctul E ; iar dreapta CP itersectează latura AB î

More information

COMPARATIVE DISCUSSION ABOUT THE DETERMINING METHODS OF THE STRESSES IN PLANE SLABS

COMPARATIVE DISCUSSION ABOUT THE DETERMINING METHODS OF THE STRESSES IN PLANE SLABS 74 COMPARATIVE DISCUSSION ABOUT THE DETERMINING METHODS OF THE STRESSES IN PLANE SLABS Codrin PRECUPANU 3, Dan PRECUPANU,, Ștefan OPREA Correspondent Member of Technical Sciences Academy Gh. Asachi Technical

More information

Ecuatii si inecuatii de gradul al doilea si reductibile la gradul al doilea. Ecuatii de gradul al doilea

Ecuatii si inecuatii de gradul al doilea si reductibile la gradul al doilea. Ecuatii de gradul al doilea Ecuatii si inecuatii de gradul al doilea si reductibile la gradul al doilea Ecuatia de forma Ecuatii de gradul al doilea a + b + c = 0, (1) unde a, b, c R, a 0, - variabila, se numeste ecuatie de gradul

More information

MODELAREA SISTEMELOR ORIENTATE PE SERVICII PRIN REŢELE PETRI RECONFIGURABILE CU ATRIBUTE MATRICEALE

MODELAREA SISTEMELOR ORIENTATE PE SERVICII PRIN REŢELE PETRI RECONFIGURABILE CU ATRIBUTE MATRICEALE Modearea sstemeor oretate e servc r reţee Petr recofgurabe cu atrbute matrceae MODEAREA SISTEMEOR ORIENTATE PE SERVICII PRIN REŢEE PETRI RECONFIGURABIE CU ATRIBUTE MATRICEAE Iu Ţurcau drd E Guţueac dr

More information

Prof univ dr. Sever Spânulescu - LUCRARI DE LABORATOR

Prof univ dr. Sever Spânulescu - LUCRARI DE LABORATOR UNIVERSITATEA HYPERION Facultatea de Stiițe Exacte și Igierești Prof uiv dr. Sever Spâulescu CALCUL NUMERIC - LUCRARI DE LABORATOR Lucrarea de laborator. Rezolvarea sistemelor de ecuatii liiare pri metode

More information

Pentru clasa a X-a Ştiinţele naturii-sem II

Pentru clasa a X-a Ştiinţele naturii-sem II Pentru clasa a X-a Ştiinţele naturii-sem II Reprezentarea algoritmilor. Pseudocod. Principiile programării structurate. Structuri de bază: structura liniară structura alternativă structura repetitivă Algoritmi

More information

Laborator 4. Rezolvarea ecuaţiilor diferenţiale în Matlab

Laborator 4. Rezolvarea ecuaţiilor diferenţiale în Matlab Laborator 4. Rezolvarea ecuaţiilor difereţiale î Matlab Bibliografie. G. Aastassiou, I. Iata, Itelliget Routies: Solvig Mathematical Aalsis with Matlab, Mathcad, Mathematica ad Maple, Spriger, 03.. I.

More information

METODE DE CĂUTARE DIRECTĂ Algoritmi şi Studii Numerice

METODE DE CĂUTARE DIRECTĂ Algoritmi şi Studii Numerice METODE DE CĂUTARE DIRECTĂ Algotm ş Stud Numece Necula Ade Reseac Isttute fo Ifomatcs Cete fo Advaced Modelg ad Optmzato 8- Aveescu Aveue Bucaest Romaa. Academy of Romaa Scetsts 54 Splaul Idepedete Bucaest

More information

COMPUTERISED ALGEBRA USED TO CALCULATE X n COST AND SOME COSTS FROM CONVERSIONS OF P-BASE SYSTEM WITH REFERENCES OF P-ADIC NUMBERS FROM

COMPUTERISED ALGEBRA USED TO CALCULATE X n COST AND SOME COSTS FROM CONVERSIONS OF P-BASE SYSTEM WITH REFERENCES OF P-ADIC NUMBERS FROM U.P.B. Sc. Bull., Seres A, Vol. 68, No. 3, 6 COMPUTERISED ALGEBRA USED TO CALCULATE X COST AND SOME COSTS FROM CONVERSIONS OF P-BASE SYSTEM WITH REFERENCES OF P-ADIC NUMBERS FROM Z AND Q C.A. MURESAN Autorul

More information

Lucrarea de laborator nr. 8

Lucrarea de laborator nr. 8 Metode Numerice Lucrarea de laborator r. 8 I. Scopul lucrării Metoda Newto II. Coţiutul lucrării 1. Metoda tagetei 2. Metoda Newto cazul m-dimesioal III. Prezetarea lucrării III.1. Metoda tagetei Metoda

More information

Soluţii juniori., unde 1, 2

Soluţii juniori., unde 1, 2 Soluţii juniori Problema 1 Se consideră suma S x1x x3x4... x015 x016 Este posibil să avem S 016? Răspuns: Da., unde 1,,..., 016 3, 3 Termenii sumei sunt de forma 3 3 1, x x x. 3 5 6 sau Cristian Lazăr

More information

T h e C S E T I P r o j e c t

T h e C S E T I P r o j e c t T h e P r o j e c t T H E P R O J E C T T A B L E O F C O N T E N T S A r t i c l e P a g e C o m p r e h e n s i v e A s s es s m e n t o f t h e U F O / E T I P h e n o m e n o n M a y 1 9 9 1 1 E T

More information

APLICATII NUMERICE DE STATISTICA IN FARMACIE SI IN STUDIILE CLINICE

APLICATII NUMERICE DE STATISTICA IN FARMACIE SI IN STUDIILE CLINICE PREFATA Lucrarea de fata rerezta o cotuare a cart Statstca Alcata Farmace s Stud Clce aaruta Edtura Uverstara Carol Davla aul 7 s stetzeaza o arte d eereta a do autor, amado acelas tm s farmacst s matematce,

More information

CATAVASII LA NAȘTEREA DOMNULUI DUMNEZEU ȘI MÂNTUITORULUI NOSTRU, IISUS HRISTOS. CÂNTAREA I-A. Ήχος Πα. to os se e e na aș te e e slă ă ă vi i i i i

CATAVASII LA NAȘTEREA DOMNULUI DUMNEZEU ȘI MÂNTUITORULUI NOSTRU, IISUS HRISTOS. CÂNTAREA I-A. Ήχος Πα. to os se e e na aș te e e slă ă ă vi i i i i CATAVASII LA NAȘTEREA DOMNULUI DUMNEZEU ȘI MÂNTUITORULUI NOSTRU, IISUS HRISTOS. CÂNTAREA I-A Ήχος α H ris to os s n ș t slă ă ă vi i i i i ți'l Hris to o os di in c ru u uri, în tâm pi i n ți i'l Hris

More information

Teorema Reziduurilor şi Bucuria Integralelor Reale Prezentare de Alexandru Negrescu

Teorema Reziduurilor şi Bucuria Integralelor Reale Prezentare de Alexandru Negrescu Teorema Reiduurilor şi Bucuria Integralelor Reale Preentare de Alexandru Negrescu Integrale cu funcţii raţionale ce depind de sint şi cost u notaţia e it, avem: cost sint i ( + ( dt d i, iar integrarea

More information

VARIABILE ALEATOARE. este o mulţime infinită de numere reale.

VARIABILE ALEATOARE. este o mulţime infinită de numere reale. VARIABILE ALEATOARE DEFINIŢIE ŞI CLASIFICARE Itutv, o vrlă letore este o mărme cre î urm relzăr ue epereţe pote lu o vlore dtr-o mulţme e deftă (mulţme vlorlor posle) Vrl letore este o fucţe relă cre depde

More information

Numere prime. O selecţie de probleme pentru gimnaziu

Numere prime. O selecţie de probleme pentru gimnaziu Numere prime O selecţie de probleme petru gimaziu Adria Zaoschi Colegiul Natioal "Costache Negruzzi" Iasi (Clasa a V-a) Determiați submulțimea B a mulțimii A 0,,,, 49, 50, formată di toate elemetele lui

More information

P a g e 5 1 of R e p o r t P B 4 / 0 9

P a g e 5 1 of R e p o r t P B 4 / 0 9 P a g e 5 1 of R e p o r t P B 4 / 0 9 J A R T a l s o c o n c l u d e d t h a t a l t h o u g h t h e i n t e n t o f N e l s o n s r e h a b i l i t a t i o n p l a n i s t o e n h a n c e c o n n e

More information

Revista Informatica Economica, nr. 1 (21)/2002. Program pentru utilizarea functiilor spline în probleme de interpolare neliniara

Revista Informatica Economica, nr. 1 (21)/2002. Program pentru utilizarea functiilor spline în probleme de interpolare neliniara 84 Revsta Inormatca Economca, nr. ()/00 Program pentru utlzarea unctlor splne în probleme de nterpolare nelnara Con.dr. Maela MUNTEAN Catedra de Inormatca Economca, Facultatea de Stnte Economce Unverstatea

More information

Ordin. pentru aprobarea structurii informaţiilor înscrise pe cardul naţional de asigurări sociale de sănătate

Ordin. pentru aprobarea structurii informaţiilor înscrise pe cardul naţional de asigurări sociale de sănătate CASA NATIONALA DE ASIGURARI DE SANATATE Ordin pentru aprobarea structurii informaţiilor înscrise pe cardul naţional de asigurări sociale de sănătate Având în vedere: Act publicat in Monitorul Oficial al

More information

Modelling the Steady State Characteristic of ph Neutralization Process: a Neuro-Fuzzy Approach

Modelling the Steady State Characteristic of ph Neutralization Process: a Neuro-Fuzzy Approach BULETINUL Universităţii Petrol Gaze din Ploieşti Vol. LXVII No. 2/2015 79 84 Seria Tehnică Modelling the Steady State Characteristic of ph Neutralization Process: a Neuro-Fuzzy Approach Gabriel Rădulescu

More information

1. A real number x is represented approximately by , and we are told that the relative error is 0.1 %. What is x? Note: There are two answers.

1. A real number x is represented approximately by , and we are told that the relative error is 0.1 %. What is x? Note: There are two answers. PROBLEMS A real umber s represeted appromately by 63, ad we are told that the relatve error s % What s? Note: There are two aswers Ht : Recall that % relatve error s What s the relatve error volved roudg

More information

n 1 n 2 n 2 n n 1 ln n 2 1 n Express the number as a ratio of integers

n 1 n 2 n 2 n n 1 ln n 2 1 n Express the number as a ratio of integers SECTION 8. SERIES 8. SERIES A Clck here for aswers. S Clck here for solutos. ; Fd at least 0 partal sums of the seres. Graph both the sequece of terms ad the sequece of partal sums o the same scree. Does

More information

Raport de Cercetare APLICAII ALE FILTRELOR NELINIARE ÎN IDENTIFICAREA I COMPENSAREA NELINIARITILOR NEDORITE CAPITOLUL I

Raport de Cercetare APLICAII ALE FILTRELOR NELINIARE ÎN IDENTIFICAREA I COMPENSAREA NELINIARITILOR NEDORITE CAPITOLUL I Raport de Cercetare Grat: CNCSIS 57 Tema Autori: Georgeta Budura, Coria Botoca Uiversitatea: Politeica Timioara APLICAII ALE FILTRELOR NELINIARE ÎN IDENTIFICAREA I COMPENSAREA NELINIARITILOR NEDORITE INTRODUCERE.

More information

Ash Wednesday. First Introit thing. * Dómi- nos. di- di- nos, tú- ré- spi- Ps. ne. Dó- mi- Sál- vum. intra-vé-runt. Gló- ri-

Ash Wednesday. First Introit thing. * Dómi- nos. di- di- nos, tú- ré- spi- Ps. ne. Dó- mi- Sál- vum. intra-vé-runt. Gló- ri- sh Wdsdy 7 gn mult- tú- st Frst Intrt thng X-áud m. ns ní- m-sr-cór- Ps. -qu Ptr - m- Sál- vum m * usqu 1 d fc á-rum sp- m-sr-t- ó- num Gló- r- Fí- l- Sp-rí- : quó-n- m ntr-vé-runt á- n-mm c * m- quó-n-

More information

FORMULELE LUI STIRLING, WALLIS, GAUSS ŞI APLICAŢII

FORMULELE LUI STIRLING, WALLIS, GAUSS ŞI APLICAŢII DIDACTICA MATHEMATICA, Vol. 34), pp. 53 67 FORMULELE LUI STIRLING, WALLIS, GAUSS ŞI APLICAŢII Eugenia Duca, Emilia Copaciu şi Dorel I. Duca Abstract. In this paper are presented the Wallis, Stirling, Gauss

More information

O tehnica fuzzy de partitionare si inductie automata bazata pe extensia fuzzy a distantei c 2

O tehnica fuzzy de partitionare si inductie automata bazata pe extensia fuzzy a distantei c 2 76 Revta Iformatca Ecoomca, r. (4 / 000 O tehca fuzzy de arttoare ducte automata bazata e etea fuzzy a dtate c Cof.dr. Vale GEORGESCU Uvertatea d Craova, vgeo@cetral.ucv.ro Lucrarea roue u tem de achzte

More information

Numerical Analysis Formulae Booklet

Numerical Analysis Formulae Booklet Numercal Aalyss Formulae Booklet. Iteratve Scemes for Systems of Lear Algebrac Equatos:.... Taylor Seres... 3. Fte Dfferece Approxmatos... 3 4. Egevalues ad Egevectors of Matrces.... 3 5. Vector ad Matrx

More information

Review Exam II Complex Analysis

Review Exam II Complex Analysis Revew Exam II Complex Aalyss Uderled Propostos or Theorems: Proofs May Be Asked for o Exam Chapter 3. Ifte Seres Defto: Covergece Defto: Absolute Covergece Proposto. Absolute Covergece mples Covergece

More information

Teoria probabilit¼aţilor şi statistic¼a matematic¼a

Teoria probabilit¼aţilor şi statistic¼a matematic¼a Teoria probabilit¼aţilor şi statistic¼a matematic¼a B¼arb¼acioru Iuliaa Carme CURSUL 7 Cursul 7 2 Cupris 1 Legea umerelor mari 5 1.1 Geeralit¼aţi............................... 5 1.2 Iegalitatea lui Cebîşev........................

More information

Spreadsheet Problem Solving

Spreadsheet Problem Solving 1550 1500 CO Emmssos for the US, 1989 000 Class meetg #6 Moday, Sept 14 th CO Emssos (MMT Carbo) y = 1.3x 41090.17 1450 1400 1350 1300 1989 1990 1991 199 1993 1994 1995 1996 1997 1998 1999 000 Year GEEN

More information

Asymptotic Formulas Composite Numbers II

Asymptotic Formulas Composite Numbers II Iteratoal Matematcal Forum, Vol. 8, 203, o. 34, 65-662 HIKARI Ltd, www.m-kar.com ttp://d.do.org/0.2988/mf.203.3854 Asymptotc Formulas Composte Numbers II Rafael Jakmczuk Dvsó Matemátca, Uversdad Nacoal

More information

DESPRE COMPLEMENTAREA METODELOR JEFFERSON, ADAMS, WEBSTER ŞI HUNTINGTON-HILL

DESPRE COMPLEMENTAREA METODELOR JEFFERSON, ADAMS, WEBSTER ŞI HUNTINGTON-HILL DESPRE COMPLEMENTAREA METODELOR JEFFERSON ADAMS WEBSTER ŞI HUNTINGTON-HILL Dr hab prof unv Ion BOLUN ASEM Sunt propuse compementăr de depăşre a stuaţor în care foosrea metodeor Jefferson Adams Webster

More information

2. Lema chinezească a resturilor. Fie,,..., mai mari decât 1 astfel încât pentru. Atunci, oricare ar fi ϵ există unic determinat astfel încât,, unde.

2. Lema chinezească a resturilor. Fie,,..., mai mari decât 1 astfel încât pentru. Atunci, oricare ar fi ϵ există unic determinat astfel încât,, unde. Lea chneză a resturlor Aplcaț COLUMNA, nr 4, 2015 Ion MUNTEANU unteanuon74@galco ABSTRACT: Ths paper presents soe applcatons of Lea chnezească a resturlor The an dea of Modular arthetc s the study of ssues

More information

Utilizarea limbajului SQL pentru cereri OLAP. Mihaela Muntean 2015

Utilizarea limbajului SQL pentru cereri OLAP. Mihaela Muntean 2015 Utilizarea limbajului SQL pentru cereri OLAP Mihaela Muntean 2015 Cuprins Implementarea operatiilor OLAP de baza in SQL -traditional: Rollup Slice Dice Pivotare SQL-2008 Optiunea ROLLUP Optiunea CUBE,

More information

F48T10VHO, F60T10VHO, F72T10VHO, F96T12HO (1 LAMP ONLY) ELECTRICAL DATA (120V APPLICATION)

F48T10VHO, F60T10VHO, F72T10VHO, F96T12HO (1 LAMP ONLY) ELECTRICAL DATA (120V APPLICATION) LOW TEMPERATURE ELECTRONIC F72T8HO (1 ONLY) (1 ONLY) ELECTRICAL DATA (120V APPLICATION) /(N) /(L) INPUT VOLT: 120V ± 10%, 50/60Hz WATTS/TYPE F48T8HO F60T8HO F72T8HO F48T12HO F60T12HO F72T12HO F96T12HO

More information

Gradul de comutativitate al grupurilor finite 1

Gradul de comutativitate al grupurilor finite 1 Gradul de comutativitate al grupurilor finite Marius TĂRNĂUCEANU Abstract The commutativity degree of a group is one of the most important probabilistic aspects of finite group theory In this survey we

More information

2. METODA GRADIENTULUI CONJUGAT PENTRU REZOLVAREA SISTEMELOR ALGEBRICE LINIARE

2. METODA GRADIENTULUI CONJUGAT PENTRU REZOLVAREA SISTEMELOR ALGEBRICE LINIARE MEOD GRDIENULUI CONJUG PENRU REZOLVRE SISEMELOR LGEBRICE LINIRE Neculai drei Research Istitute for Iformatics Ceter for dvaced Modelig ad Optimizatio 8- verescu veue Bucharest Romaia E-mail: adrei@iciro

More information

GENERATOARE DE SEMNAL DIGITALE

GENERATOARE DE SEMNAL DIGITALE Technical University of Iasi, Romania Faculty of Electronics and Telecommunications Signals, Circuits and Systems laboratory Prof. Victor Grigoras Cuprins Clasificarea generatoarelor Filtre reursive la

More information

Software Process Models there are many process model s in th e li t e ra t u re, s om e a r e prescriptions and some are descriptions you need to mode

Software Process Models there are many process model s in th e li t e ra t u re, s om e a r e prescriptions and some are descriptions you need to mode Unit 2 : Software Process O b j ec t i ve This unit introduces software systems engineering through a discussion of software processes and their principal characteristics. In order to achieve the desireable

More information

Cristalul cu N atomi = un sistem de N oscilatori de amplitudini mici;

Cristalul cu N atomi = un sistem de N oscilatori de amplitudini mici; Curs 8 Caldura specifica a retelei Cristalul cu N atomi = un sistem de N oscilatori de amplitudini mici; pentru tratarea cuantica, se inlocuieste tratamentul clasic al oscilatorilor cuplati, cu cel cuantic

More information

BERNSTEIN COLLOCATION METHOD FOR SOLVING NONLINEAR DIFFERENTIAL EQUATIONS. Aysegul Akyuz Dascioglu and Nese Isler

BERNSTEIN COLLOCATION METHOD FOR SOLVING NONLINEAR DIFFERENTIAL EQUATIONS. Aysegul Akyuz Dascioglu and Nese Isler Mathematcal ad Computatoal Applcatos, Vol. 8, No. 3, pp. 293-300, 203 BERNSTEIN COLLOCATION METHOD FOR SOLVING NONLINEAR DIFFERENTIAL EQUATIONS Aysegul Ayuz Dascoglu ad Nese Isler Departmet of Mathematcs,

More information

QR Factorization and Singular Value Decomposition COS 323

QR Factorization and Singular Value Decomposition COS 323 QR Factorzato ad Sgular Value Decomposto COS 33 Why Yet Aother Method? How do we solve least-squares wthout currg codto-squarg effect of ormal equatos (A T A A T b) whe A s sgular, fat, or otherwse poorly-specfed?

More information

Habilitation Thesis. Periodic solutions of differential systems: existence, stability and bifurcations

Habilitation Thesis. Periodic solutions of differential systems: existence, stability and bifurcations UNIVERSITATEA BABEŞ BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ Habilitation Thesis Mathematics presented by Adriana Buică Periodic solutions of differential systems: existence, stability

More information

Executive Committee and Officers ( )

Executive Committee and Officers ( ) Gifted and Talented International V o l u m e 2 4, N u m b e r 2, D e c e m b e r, 2 0 0 9. G i f t e d a n d T a l e n t e d I n t e r n a t i o n a2 l 4 ( 2), D e c e m b e r, 2 0 0 9. 1 T h e W o r

More information

The Periodic Table. Periodic Properties. Can you explain this graph? Valence Electrons. Valence Electrons. Paramagnetism

The Periodic Table. Periodic Properties. Can you explain this graph? Valence Electrons. Valence Electrons. Paramagnetism Periodic Properties Atomic & Ionic Radius Energy Electron Affinity We want to understand the variations in these properties in terms of electron configurations. The Periodic Table Elements in a column

More information

Acta Technica Napocensis: Civil Engineering & Architecture Vol. 54 No.1 (2011)

Acta Technica Napocensis: Civil Engineering & Architecture Vol. 54 No.1 (2011) 1 Technical University of Cluj-Napoca, Faculty of Civil Engineering. 15 C Daicoviciu Str., 400020, Cluj-Napoca, Romania Received 25 July 2011; Accepted 1 September 2011 The Generalised Beam Theory (GBT)

More information

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D Lesson eight What are characteristics of chemical reactions? Science Constructing Explanations, Engaging in Argument and Obtaining, Evaluating, and Communicating Information ENGLISH LANGUAGE ARTS Reading

More information

Multiple Choice Test. Chapter Adequacy of Models for Regression

Multiple Choice Test. Chapter Adequacy of Models for Regression Multple Choce Test Chapter 06.0 Adequac of Models for Regresso. For a lear regresso model to be cosdered adequate, the percetage of scaled resduals that eed to be the rage [-,] s greater tha or equal to

More information

MATEMATICI SPECIALE PENTRU INGINERI

MATEMATICI SPECIALE PENTRU INGINERI DAN LASCU MATEMATICI SPECIALE PENTRU INGINERI TEORIE CUPRINS PREFAÞÃ 4 FUNCÞII COMPLEXE 5 Numere complee 5 Itroducere Forma algebricã Forma trigoometricã a umerelor complee 5 7 Elemete de topologie î corpul

More information

Modele neliniare. Teorie şi aplicaţii

Modele neliniare. Teorie şi aplicaţii Modele elre Teore ş plcţ Mr Vld Uverstte d Bucureşt vld[t]fmuucro Astrct Lucrre preztă modelele mtemtce elre ce estmeză evoluţ proceselor su feomeelor pe z uor prmetr ce defesc procesele ş feomeele î vedere

More information

Parts Manual. EPIC II Critical Care Bed REF 2031

Parts Manual. EPIC II Critical Care Bed REF 2031 EPIC II Critical Care Bed REF 2031 Parts Manual For parts or technical assistance call: USA: 1-800-327-0770 2013/05 B.0 2031-109-006 REV B www.stryker.com Table of Contents English Product Labels... 4

More information

Regression and the LMS Algorithm

Regression and the LMS Algorithm CSE 556: Itroducto to Neural Netorks Regresso ad the LMS Algorthm CSE 556: Regresso 1 Problem statemet CSE 556: Regresso Lear regresso th oe varable Gve a set of N pars of data {, d }, appromate d b a

More information

ANOVA IN THE EDUCATIONAL PROCESS

ANOVA IN THE EDUCATIONAL PROCESS U.P.B. Sci. Bull., Series C, Vol. 70, No. 3, 008 ISSN 454-34 ANOVA IN THE EDUCATIONAL PROCESS Mihaela Florentina MATEI Analiza dispersiei, ANOVA, reprezintă una din metodele statistice, dintre cele mai

More information

Mu Sequences/Series Solutions National Convention 2014

Mu Sequences/Series Solutions National Convention 2014 Mu Sequeces/Seres Solutos Natoal Coveto 04 C 6 E A 6C A 6 B B 7 A D 7 D C 7 A B 8 A B 8 A C 8 E 4 B 9 B 4 E 9 B 4 C 9 E C 0 A A 0 D B 0 C C Usg basc propertes of arthmetc sequeces, we fd a ad bm m We eed

More information

2D AND 3D PROCESSING OF THE INTERDEPENDENCE BETWEEN THE COMFORT MAIN INDICATORS

2D AND 3D PROCESSING OF THE INTERDEPENDENCE BETWEEN THE COMFORT MAIN INDICATORS BULETINUL INSTITUTULUI POLITEHNIC DIN IAŞI Publicat de Universitatea Tehnică Gheorghe Asachi din Iaşi Tomul LVII (LXI), Fasc. 1, 2011 SecŃia TEXTILE. PIELĂRIE 2D AND 3D PROCESSING OF THE INTERDEPENDENCE

More information

Universitatea Politehnica Bucureşti Facultatea de Automatică şi Calculatoare Departamentul de Automatică şi Ingineria Sistemelor

Universitatea Politehnica Bucureşti Facultatea de Automatică şi Calculatoare Departamentul de Automatică şi Ingineria Sistemelor Universitatea Politehnica Bucureşti Facultatea de Automatică şi Calculatoare Departamentul de Automatică şi Ingineria Sistemelor TEZĂ DE ABILITARE Metode de Descreştere pe Coordonate pentru Optimizare

More information

( ) 2 2. Multi-Layer Refraction Problem Rafael Espericueta, Bakersfield College, November, 2006

( ) 2 2. Multi-Layer Refraction Problem Rafael Espericueta, Bakersfield College, November, 2006 Mult-Layer Refracto Problem Rafael Espercueta, Bakersfeld College, November, 006 Lght travels at dfferet speeds through dfferet meda, but refracts at layer boudares order to traverse the least-tme path.

More information

Johns Hopkins University Department of Biostatistics Math Review for Introductory Courses

Johns Hopkins University Department of Biostatistics Math Review for Introductory Courses Johs Hopks Uverst Departmet of Bostatstcs Math Revew for Itroductor Courses Ratoale Bostatstcs courses wll rel o some fudametal mathematcal relatoshps, fuctos ad otato. The purpose of ths Math Revew s

More information

AN APPROACH TO THE NONLINEAR LOCAL PROBLEMS IN MECHANICAL STRUCTURES

AN APPROACH TO THE NONLINEAR LOCAL PROBLEMS IN MECHANICAL STRUCTURES U.P.B. Sci. Bull., Series D, Vol. 74, Iss. 3, 2012 ISSN 1454-2358 AN APPROACH TO THE NONLINEAR LOCAL PROBLEMS IN MECHANICAL STRUCTURES Marius-Alexandru GROZEA 1, Anton HADĂR 2 Acest articol prezintă o

More information

Kernel-based Methods and Support Vector Machines

Kernel-based Methods and Support Vector Machines Kerel-based Methods ad Support Vector Maches Larr Holder CptS 570 Mache Learg School of Electrcal Egeerg ad Computer Scece Washgto State Uverst Refereces Muller et al. A Itroducto to Kerel-Based Learg

More information

"IIITO-TEC 'NIKI" & EQUIPME

IIITO-TEC 'NIKI & EQUIPME LIGHTING "IIITO-TEC 'NIKI" & EQUIPME T FOR CITIES 6 MAKEDONOMAHON STR.,ZIPCaDE:67009,KALO ORI,THESSALONIKI, GREECE TEL / FAX: 0030 2310761824/751626,8 mall: hito@otenet.qi' Webslte:www.hlto..techkl.gr

More information

i;\-'i frz q > R>? >tr E*+ [S I z> N g> F 'x sa :r> >,9 T F >= = = I Y E H H>tr iir- g-i I * s I!,i --' - = a trx - H tnz rqx o >.F g< s Ire tr () -s

i;\-'i frz q > R>? >tr E*+ [S I z> N g> F 'x sa :r> >,9 T F >= = = I Y E H H>tr iir- g-i I * s I!,i --' - = a trx - H tnz rqx o >.F g< s Ire tr () -s 5 C /? >9 T > ; '. ; J ' ' J. \ ;\' \.> ). L; c\ u ( (J ) \ 1 ) : C ) (... >\ > 9 e!) T C). '1!\ /_ \ '\ ' > 9 C > 9.' \( T Z > 9 > 5 P + 9 9 ) :> : + (. \ z : ) z cf C : u 9 ( :!z! Z c (! $ f 1 :.1 f.

More information

REGRESIA LINIARĂ ŞI CORELAŢIA

REGRESIA LINIARĂ ŞI CORELAŢIA REGRESIA LINIARĂ ŞI CORELAŢIA Sut stuţ î cre e tereseză să estmăm testte legătur dtre două su m multe vrle, su să găsm o relţe dec o formă ltcă mtemtcă cre să eprme o vrlă fucţe de ltele mplcte î procesul

More information

Johns Hopkins University Department of Biostatistics Math Review for Introductory Courses

Johns Hopkins University Department of Biostatistics Math Review for Introductory Courses Johs Hopks Uverst Departmet of Bostatstcs Math Revew for Itroductor Courses Ratoale Bostatstcs courses wll rel o some fudametal mathematcal relatoshps, fuctos ad otato. The purpose of ths Math Revew s

More information

Inteligenta Artificiala

Inteligenta Artificiala Inteligenta Artificiala Universitatea Politehnica Bucuresti Anul universitar 2010-2011 Adina Magda Florea http://turing.cs.pub.ro/ia_10 si curs.cs.pub.ro 1 Curs nr. 4 Cautare cu actiuni nedeterministe

More information

CHEM 130 Exp. 8: Molecular Models

CHEM 130 Exp. 8: Molecular Models CHEM 130 Exp. 8: Molecular Models In this lab, we will learn and practice predicting molecular structures from molecular formulas. The Periodic Table of the Elements IA 1 H IIA IIIA IVA VA VIA VIIA 3 5

More information

Test de Departajare pentru MofM 2014 (Bucureşti) Enunţuri & Soluţii

Test de Departajare pentru MofM 2014 (Bucureşti) Enunţuri & Soluţii Test de Departajare petru MofM 04 Bucureşti Euţuri & Soluţii Problem. Give + distict real umbers i the iterval [0,], prove there exist two of them a b, such that ab a b < Solutio. Idex the umbers 0 a 0

More information

(C) Pavel Sedach and Prep101 1

(C) Pavel Sedach and Prep101 1 (C) Pavel Sedach and Prep101 1 (C) Pavel Sedach and Prep101 1 (C) Pavel Sedach and Prep101 2 (C) Pavel Sedach and Prep101 2 (C) Pavel Sedach and Prep101 3 (C) Pavel Sedach and Prep101 3 (C) Pavel Sedach

More information

UNITATEA DE ÎNVĂȚARE 3 Analiza algoritmilor

UNITATEA DE ÎNVĂȚARE 3 Analiza algoritmilor UNITATEA DE ÎNVĂȚARE 3 Analiza algoritmilor Obiective urmărite: La sfârşitul parcurgerii acestei UI, studenţii vor 1.1 cunoaște conceptul de eficienta a unui algoritm vor cunoaste si inţelege modalitatile

More information

Chapter 5 Properties of a Random Sample

Chapter 5 Properties of a Random Sample Lecture 6 o BST 63: Statstcal Theory I Ku Zhag, /0/008 Revew for the prevous lecture Cocepts: t-dstrbuto, F-dstrbuto Theorems: Dstrbutos of sample mea ad sample varace, relatoshp betwee sample mea ad sample

More information

Le classeur à tampons

Le classeur à tampons Le classeur à tampons P a s à pa s Le matériel 1 gr a n d cla s s e u r 3 pa pi e r s co o r d o n n é s. P o u r le m o d è l e pr é s e n t é P a p i e r ble u D ai s y D s, pa pi e r bor d e a u x,

More information

array a[0..n-1] a[0] = v0,..., a[n-1] = vn-1

array a[0..n-1] a[0] = v0,..., a[n-1] = vn-1 Curs 5 - Agenda sortare interna buble sort sortare prin insertie sortare pri selectie naiva sistematica ( heap sort ) sortare prin interclasare ( merge sort ) sortare rapida ( quick sort ) cautare in liste

More information

The exam must be written in ink. No calculators of any sort allowed. You have 2 hours to complete the exam. Periodic table 7 0

The exam must be written in ink. No calculators of any sort allowed. You have 2 hours to complete the exam. Periodic table 7 0 Email: The exam must be written in ink. No calculators of any sort allowed. You have 2 hours to complete the exam. CEM 610B Exam 3 Spring 2002 Instructor: Dr. Brian Pagenkopf Page Points 2 6 3 7 4 9 5

More information

CS475 Parallel Programming

CS475 Parallel Programming CS475 Parallel Programmg Deretato ad Itegrato Wm Bohm Colorado State Uversty Ecept as otherwse oted, the cotet o ths presetato s lcesed uder the Creatve Commos Attrbuto.5 lcese. Pheomea Physcs: heat, low,

More information

176 5 t h Fl oo r. 337 P o ly me r Ma te ri al s

176 5 t h Fl oo r. 337 P o ly me r Ma te ri al s A g la di ou s F. L. 462 E l ec tr on ic D ev el op me nt A i ng er A.W.S. 371 C. A. M. A l ex an de r 236 A d mi ni st ra ti on R. H. (M rs ) A n dr ew s P. V. 326 O p ti ca l Tr an sm is si on A p ps

More information

Made the FIRST periodic table

Made the FIRST periodic table Made the FIRST periodic table 1869 Mendeleev organized the periodic table based on the similar properties and relativities of certain elements Later, Henri Moseley organized the elements by increasing

More information