metode si algoritmi la analiza numerica capcelea maria capcelea titu secrieru ion

Upload: sergio-aeres

Post on 06-Apr-2018

222 views

Category:

Documents


1 download

TRANSCRIPT

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    1/74

    Maria CAPCELEA, Titu CAPCELEA, Ion SECRIERU

    MMEETTOODDEEII AALLGGOORRIITTMMII

    LLAA AANNAALLIIZZAA NNUUMMEERRIICC

    1 0.5 0 0.5 1

    0

    0.5

    1

    1.5

    g( )z

    L( )z

    yj

    ,,z z xj

    1 0.5 0 0.5 1

    1

    0.5

    0

    0.5

    1

    f( )z

    L( )z

    yj

    ,,z z xj

    Materialdidacticpentruoreled

    elaborator

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    2/74

    UNIVERSITATEA DE STAT DIN MOLDOVA

    FACULTATEA DE MATEMATICI INFORMATIC

    CATEDRA MATEMATICA APLICAT

    MARIA CAPCELEA, TITU CAPCELEA, ION SECRIERU

    MMEETTOODDEEII AALLGGOORRIITTMMII

    LLAA AANNAALLIIZZAA NNUUMMEERRIICC

    Aprobat i recomandat deConsiliul Facultii deMatematici Informatic

    Chiinu, 2009CEP USM

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    3/74

    CZU 519.6 (075.8)S

    Recomandat de Catedra Matematica Aplicat

    Recenzent Boris HNCU, dr., conf. univ.

    Maria Capcelea, Titu Capcelea, Ion Secrieru, 2009

    USM, 2009

    ISBN 9975-70-900-2

    Descrierea CIP a Camerei Naionale a CriiCapcelea, Maria

    Metode i algoritmi la Analiza Numeric / Maria Capcelea, TituCapcelea, Ion Secrieru; Universitatea de Stat din Moldova. Facultateade Matematici Informatic. Catedra Matematica Aplicat. Chiinu: CEP USM, 2009. 73p.

    Bibliogr. p. 72 (28 titluri)ISBN 9975-70-900-250 ex.

    519.6 (075.8)

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    4/74

    Cuprins 3

    CUPRINS

    INTRODUCERE.........................................5LUCRAREA DE LABORATOR 1Aproximarea valorilor funciilor cu ajutorul dezvoltrii n serii de puteri...................................7

    1.I. Scopul lucrrii..................................................................71.II. Prezentarea teoretica lucrrii................................................................................... 7

    Formularea problemei..............................................................................Descrierea algoritmului..............................................................................................................

    77

    1.III. Modul de desfurare a lucrrii..................................................................................................... 11Cerine fade ndeplinirea lucrrii..........................................................Chestiuni de studiat.....................................................................................................................Probleme propuse spre rezolvare................................................................................................

    111111

    LUCRAREA DE LABORATOR 2Aproximarea funciilor cu polinoame de interpolare...................................................................... 13

    2.I. Scopul lucrrii..................................................................132.II. Prezentarea teoretica lucrrii................................................................................... 13

    Formularea problemei..............................................................................Interpolare polinomialpe reea neuniform..............................................................................

    1313

    Polinomul de interpolare sub forma lui Lagrange.................................................................Algoritmul lui Neville-Aitken................................................................................................Polinomul de interpolare sub forma lui Newton cu diferene divizate..................................

    131516

    Interpolare polinomialpe reea uniform................................................................................. 18Polinomul de interpolare sub forma lui Lagrange cu noduri echidistante.............................Polinomul de interpolare sub forma lui Newton cu noduri echidistante................................

    1819

    A) Formula lui Newton de interpolare ascendent..........................................................B) Formula lui Newton de interpolare descendent........................................................

    1921

    2.III. Modul de desfurare a lucrrii..................................................................................................... 22Cerine fade ndeplinirea lucrrii..........................................................Chestiuni de studiat.....................................................................................................................Probleme propuse spre rezolvare................................................................................................

    222323

    LUCRAREA DE LABORATOR 3Aplicarea formulelor de cuadratur la calculul aproximativ al integralei definite......................24

    3.I. Scopul lucrrii..................................................................243.II. Prezentarea teoretica lucrrii................................................................................... 24

    Formularea problemei..............................................................................Formula dreptunghiurilor................................................................................Formula trapezelor..................................................................................Formula lui Simpson (parabolelor).................................................................................Algoritmi cu control automat al pasului de integrare.................................................................Formule de cuadraturde tip Gauss...................................................................................

    242525

    252629

    Formula de cuadratura lui Gauss-Legendre........................................................................Formula de cuadratura lui Gauss-Chebyshev......................................................................

    3031

    3.III. Modul de desfurare a lucrrii..................................................................................................... 31Cerine fade ndeplinirea lucrrii..........................................................Chestiuni de studiat.....................................................................................................................Probleme propuse spre rezolvare................................................................................................

    313232

    LUCRAREA DE LABORATOR 4

    Rezolvarea numeric a ecuaiilor algebrice i transcendente.........................................................334.I. Scopul lucrrii..................................................................334.II. Prezentarea teoretica lucrrii................................................................................... 33

    Formularea problemei..............................................................................Separarea rdcinilor prin metoda tabelrii funciei...............................................................

    3333

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    5/74

    4 Cuprins

    Separarea grafica rdcinilor ..................................................................................Metoda dihotomiei..................................................................................Metoda lui Newton.................................................................Metoda lui Newton modificat...................................................................................Metoda secantelor (Newton discret).....Metoda coardelor (interpolrii liniare, falsei poziii, secantelor cu un capt fixat)Metoda iteraiei simple...Calculul rdcinilor ecuaiilor polinomialeCalculul rdcinilor multiple..

    34343537383941

    4243

    4.III. Modul de desfurare a lucrrii..................................................................................................... 43Cerine fade ndeplinirea lucrrii..........................................................Chestiuni de studiat.....................................................................................................................Probleme propuse spre rezolvare................................................................................................

    434444

    LUCRAREA DE LABORATOR 5Rezolvarea numeric a sistemelor de ecuaii algebrice liniare.......................................................46

    5.I. Scopul lucrrii..................................................................465.II. Prezentarea teoretica lucrrii................................................................................... 46

    Formularea problemei..............................................................................Metode directe................................................................

    Metoda eliminrii a lui GaussStrategii de pivotare n rezolvarea SEAL..Aplicaii ale algoritmilor de eliminare...

    A)Rezolvarea SEAL cu matrice rareB)Calculul determinantului i a inversei matricei A

    Metoda factorizrii LU...Metoda factorizrii Doolittle.Metoda factorizrii Crout..Metoda factorizrii Cholesky

    Metode iterative..................................................................................Metode staionare...

    Metoda lui Jacobi..............Metoda lui Gauss-Seidel...O metodde stocare compacta matricei simetrice.

    Metode nestaionare...Metoda pasului descendent (coborrii rapide)......Metoda gradienilor conjugai...

    46464648494950515151525555555658595961

    5.III. Modul de desfurare a lucrrii..................................................................................................... 63Cerine fade ndeplinirea lucrrii..........................................................

    Chestiuni de studiat.....................................................................................................................

    63

    63LUCRAREA DE LABORATOR 6Metoda lui Runge-Kutta de rezolvare a problemei lui Cauchy......................................................64

    6.I. Scopul lucrrii..................................................................646.II. Prezentarea teoretica lucrrii................................................................................... 64

    Formularea problemei..............................................................................Descrierea algoritmilor...................................................................Monitorizarea erorilor locale de trunchiere pe parcursul procesului de integrare......................Algoritmi cu controlul automat al pasului..............

    64646667

    6.III. Modul de desfurare a lucrrii..................................................................................................... 70Cerine fade ndeplinirea lucrrii..........................................................Chestiuni de studiat.....................................................................................................................Probleme propuse spre rezolvare................................................................................................

    707171

    REFERINE............................................................................................................................................ 72

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    6/74

    Introducere 5

    INTRODUCERE

    Aplicarea tehnicii computaionale n cele mai diverse domenii ale activitii umane astzi a

    devenit un lucru obinuit. ns utilizarea eficient a calculatorului la rezolvarea problemelor

    aplicative presupune identificarea unor metode de rezolvare a acestora, descrierea lor ntr-un limbaj

    algoritmic, apoi implementarea i testarea pe calculator. Metodele matematice ce stau la bazaalgoritmilor respectivi sunt studiate n cadrul cursului Analiza numeric, disciplin obligatorie n

    planurile de nvmnt la toate specialitile ce in de Matematica aplicati Informatic.

    Lucrarea de fa se adreseaz, n primul rnd, studenilor din nvmntul universitar pentru a

    servi ca material didactic la ndeplinirea lucrrilor de laborator prevzute n procesul de studiu al

    cursului Analiza numeric. Menirea lor este de a contribui la nsuirea mai profund a metodelor de

    rezolvare aproximativ a problemelor matematice, ct i a formrii gndirii algoritmice, deprinderilor

    de programare i analiz a rezultatelor obinute.

    n lucrare sunt incluse lucrri de laborator ce se refer la urmtoarele compartimente: metode

    numerice de aproximare a funciilor, construirea i aplicarea formulelor de cuadratur, metode

    aproximative de rezolvare a ecuaiilor neliniare, metode exacte i aproximative de rezolvare a

    sistemelor de ecuaii liniare algebrice, metode de rezolvare aproximativ numeric a problemei lui

    Cauchy. Compartimentele menionate corespund Curriculumului disciplinei Analiza numeric

    pentru specialitile matematice, ct i cursului Calcul numericpentru specialitile informatice.

    Materialul este structurat astfel, nct fiecare lucrare conine trei compartimente. Anume, n

    partea I sunt formulate scopul i obiectivele lucrrii. Partea a II-a conine formularea strict a

    problemei i metodele principale de rezolvare a acesteia cu formulele respective de calcul i de

    estimare a erorii. Pentru majoritatea metodelor, ntr-o seciune special, se face o analiz a

    proprietilor numerice pe care le posed. Ultimul compartiment include cerinele principale de

    ndeplinire a lucrrilor de laborator i un set de variante de probleme concrete matematice pentru

    fiecare lucrare.

    O atenie deosebit se acord aspectelor algoritmice i organizrii procesului de calcul. Astfel,

    metodele numerice, descrise n lucrare, sunt concretizate sub form de algoritmi, prezentai ntr-un

    meta-limbaj extrem de apropiat de implementarea direct ntr-un limbaj de programare de nivel

    nalt.

    Menionm faptul c n prezent exist sisteme mai performante de utilizare a metodeloraproximative de rezolvare a problemelor matematice studiate n aceast lucrare, ct i ale altor

    metode din Analiza numeric. ns aspectul programrii nemijlocite a metodelor pe probleme

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    7/74

    6 Introducere

    concrete considerm c este o etap absolut necesar la pregtirea specialitilor de o calificare nalt

    n domeniul matematicii aplicate.

    n lucrare prezentm i cteva informaii, utile pentru studeni, referitoare la modul de

    desfurare a laboratorului la Analiza numeric. Fiecare lecie de laborator are o anumit tematic.

    Activitatea pe care trebuie s o desfoare fiecare student n cadrul leciei presupune dou priimportante. Prima parte const n exploatarea unor programe demonstrative ce ilustreaz tematica

    lucrrii. A doua parte a leciei const n implementarea unora dintre algoritmii studiai n cadrul

    temei respective. Implementarea se va face ntr-un limbaj de programare de nivel nalt, n

    concordan cu pseudocodul prezentat n lucrare. n urma analizei comportamentului numeric al

    algoritmilor implementai, studentul trebuie s redacteze un referat, conform cerinelor fiecrei

    lucrri, pe care l va prezenta profesorului n momentul susinerii lucrrii de laborator.

    Fiecare tem de laborator este apreciat cu dou note: o not pentru referat i o not pentru

    implementarea algoritmilor studiai n lucrarea respectiv ntr-un limbaj de programare de nivel

    nalt. Referatul va conine urmtoarele compartimente: numele studentului i grupa din care face

    parte; numele cadrului didactic ndrumtor; titlul lucrrii, scopul lucrrii, principiul algoritmilor,

    pseudocodul algoritmilor, rezultate experimentale, grafice etc. (conform cerinelor din ndrumar),

    analiza rezultatelor i concluzii. n principiu, cerinele pot fi modificate de ctre profesor.

    n ncheiere, autorii mulumesc colegilor lor - dnei Galina Rbacova, dr., conf. univ., i dlui

    Vladimir Paiuc, dr., conf. univ., pentru interesul acordat i n special pentru comentariile i

    observaiile constructive fcute pe marginea lucrrii.

    Autorii

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    8/74

    Lucrarea de laborator 1 7

    LUCRAREA DE LABORATOR 1APROXIMAREA VALORILOR FUNCIILOR

    CU AJUTORUL DEZVOLTRII N SERII DE PUTERI1.I. Scopul lucrrii

    Studiul unui algoritm pentru sumarea numeric a seriilor de puteri cu controlul erorii de trunchiere

    i implementarea acestuia ntr-un limbaj de programare de nivel nalt.1.II. Prezentarea teoretic a lucrrii

    Formularea problemei

    Funcia ( ) y f x= se exprimprin funciile elementare:

    cos , sin , ( )x x x e x . (1.1)

    Pentru o valoare 0x a argumentului x sse aproximeze cu exactitatea 0 > valorile funciilor indicate n

    relaia (1.1), utiliznd n acest scop formulele pentru dezvoltarea lor n serii de puteri, apoi, n baza

    valorilor obinute, sse calculeze valoarea aproximativ 0 0( ) y f x= a funciei iniiale.

    Descrierea algoritmului

    Dezvoltrile n serii de puteri ale funciilor indicate n relaia (1.1) sunt:

    2 2 1

    0 0 0

    cos ( 1) (2 )!, sin ( 1) (2 1)!, !, j j j j x j

    j j j

    x x j x x j e x j x

    +

    = = =

    = = + = . (1.2)

    Reprezentrile din relaia (1.2) permit evaluarea valorilor funciilor menionate prin reducerea la operaii

    aritmetice elementare (aditive i multiplicative).

    Calculul aproximativ al sumei unei serii presupune trunchierea unui proces de sumare infinit. Dacirul numeric 0{ }k kx converge ctre limita x , atunci pentru orice 0 > existun numr natural n , astfel

    nct kx x , pentru orice k n> . n consecin, pentru o exactitate impus , exist un rang finit n ,

    astfel nctn

    x reprezint o aproximaie satisfctoare pentru limita x . Rezult c, dup evaluarea unui

    numr n suficient de mare de termeni, ultimul poate fi adoptat ca soluie numeric cu o eroare de

    trunchiere dependentde acest n .

    Deoarece seriile de puteri corespunztoare funciilor cosinus i sinus sunt alternante, iar irurile

    valorilor absolute ale termenilor sunt monoton descresctoare, conform criteriului lui Leibniz, eroarea de

    trunchiere este majorat de modulul primului termen neglijat. n realitate, ns, erorile de rotunjire i

    modul de sumare a seriei (de la stnga spre dreapta, fr a ine cont de mrimea fiecrui termen) pot

    genera o eroare de calcul mult mai mare dect cea indicat de criteriul lui Leibniz (a se vedea, de

    exemplu, [28, p.22]). De aceea, n procesele de calcul ale valorilor funciilor cu ajutorul dezvoltrii n

    serii de puteri, este necesar ntreprinderea unor msuri speciale pentru a evita pierderi semnificative n

    exactitate.

    ntruct pentru eroarea absoluta mrimii jx are loc relaia ( ) ( ) ( ) j j j jx x x j x x = = (la ridicarea la

    putere a unui numr aproximativ eroarea lui relativ se nmulete la exponenta puterii), n cazul n care

    nu se ndeplinete inegalitatea 1x < , eroarea absolut poate deveni inacceptabil de mare. Prin urmare,

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    9/74

    8 Lucrarea de laborator 1

    influena erorilor de rotunjire se va diminua semnificativ dac 1x < .

    Utiliznd paritatea (imparitatea) funciilor cosinus i sinus cos cos , sin sin , x x x m x m sign x= = = ,

    dar i egalitatea 1x xe e = , se reduce calculul valorilor funciilor din relaia (1.1) pentru un argument

    arbitrar la calculul valorilor acestora pentru un argument nenegativ. Deoarece la sumarea seriilor

    menionate eroarea de calcul va fi esenial mai mic dac 1x = = >

    = > = = =

    Prin urmare, cos7.6 sin 0.1 = i n continuare se calculeazsinusul conform formulei pentru dezvoltarea

    n serie de puteri.

    Se presupune c argumentul este definit n radiani. Dac acesta este definit n grade, atunci el se

    transformn radiani prin nmulirea cu mrimea 180 .

    n calculul valorilor funciilor cos t i sin ( (0; 4]t t ; cazul 0t= este trivial i n algoritm se

    descrie separat) cu exactitatea 0 > se utilizeazegalitile corespunztoare din relaia (1.2), iar procesul

    de sumare se ncheie cnd pentru un j

    se ndeplinete inegalitatea [24, p.99; 25]j

    a

    < , unde

    2( 1) (2 )!j jj

    a t j

    = (pentru funcia cosinus) sau 2 1( 1) (2 1)!j jj

    a t j

    +

    = + (pentru funcia sinus). Sumarea

    seriei pentru funcia cosinus se face prin formulele recurente [25, p.29]: 20 0 11, 1, ((2 1)2 )j jS a a a t j j= = = ,

    1 , 1,2,... j j jS S a j= + = , iar a seriei pentru funcia sinus prin formulele:2

    0 0 1, , (2 (2 1))j jS t a t a a t j j= = = + ,

    1 , 1,2,... j j jS S a j= + = .

    Pseudocodul algoritmuluiPrezentm algoritmii de calcul ai valorilor funciilor cosx i sin x cu o eroare de trunchiere maimicdect .

    Date de intrare:

    0x (de tip real) punctul n care se calculeaz valoarea funciei cosx sau sin x ;

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    10/74

    Lucrarea de laborator 1 9

    (de tip real) exactitatea de calcul.Date de ieire:

    0x (de tip real) punctul n care se calculeaz valoarea funciei cosx sau sin x ;

    s (de tip real) valoarea funciei cosx sau sin x n punctul 0x ;k (de tip ntreg) numrul de termeni sumai;

    real ,x s ntreg , , ,k m n p

    (calculul valorii 0cosx )

    dac 0x > atunci

    {

    0 0: ; :m sign x x x= =

    dac 2x atunci [ ]{ : 2 ; : 2 }n x x x n = = dacx atunci { : ; : x x m m= = }

    dac 2x atunci { : ; : } x x m m= =

    dac 4x atunci3{ : 2 ; : ; : 6; : 2}x x s x a x p= = = =

    altfel 2{ : 1; : 2; : 1}s a x p= = = : 1k =

    execut{

    : ; : 1s s a k k = + = + 2: 2; : ( ( 1)) p p a ax p p= + = +

    }

    ct timp a

    :s ms= }

    altfel : 1; : 0s k= =

    scrie 0 , ,x s k

    (calculul valorii 0sin x )

    dac 0x > atunci

    {

    0 0: ; :m sign x x x= =

    dac 2x atunci [ ]{ : 2 ; : 2 }n x x x n = = dacx atunci { : ; : x x m m= = }

    dac 2x atunci :x x=

    dac 4x atunci2{ : 2 ; : 1; : 2; : 1} x x s a x p= = = =

    altfel 3{ : ; : 6; : 2}s x a x p= = = : 1k =

    execut{

    : ; : 1s s a k k = + = + 2: 2; : ( ( 1)) p p a ax p p= + = +

    }

    ct timp a

    :s ms= }

    altfel0

    : ; : 0s x k= =

    scrie 0 , ,x s k

    Calculul valorii funciei xe pentru 0x se efectueazn modul urmtor:

    Fie n - partea ntreag a lui x i t x n= . Evident, [0;1)t . Dac 0t= i 0n = , atunci 1xe = , iar

    dac 0t= i 1n , atunci ...x nde n ori

    e e e e= =

    . Pentru (0;1), 0t n avem x n t e e e= i te se calculeaz cu

    exactitatea 0 > , conform formulei corespunztoare din relaia (1.2), utiliznd suplimentar urmtoarea

    relaie pentru restul seriei (a se vedea [24, p.89])0

    , , !, 1,2,...p

    t j

    p p p j jj

    e S a t p S a a t j p=

    < = = =

    . Astfel,

    sumarea se va efectua pn la acea valoare p

    a lui p , pentru care se va satisface relaia pa t p < .

    Procesul sumrii este comod de organizat n modul urmtor [25, p.27]: 0 0 11, 1, j jS a a a t j= = = ,

    1 , 1,2,... j j jS S a j= + = .

    Pseudocodul algoritmului

    Date de intrare:

    0x (de tip real) punctul n care se calculeaz valoarea funcieixe ;

    (de tip real) exactitatea de calcul.Date de ieire:

    0x (de tip real) punctul n care se calculeaz valoarea funcieixe ;

    exp (de tip real) valoarea funciei xe n punctul 0x ;

    1k+ (de tip ntreg) numrul de termeni sumai;

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    11/74

    10 Lucrarea de laborator 1

    ntreg , ,k m n real , , , ,x t exp s a

    [ ]0 0: ; : ; : ; : ; : 1; : 1m sign x x x n x t x n exp s= = = = = =

    pentru : 1,i n= execut :s s e= dac 0t atunci

    {

    : 1; : 0a k= = execut

    {

    : 1; : ; :k k a a t k exp exp a= + = = + }

    ct timp at k

    }:exp exp s=

    dac 1m = atunci : 1exp exp=

    scrie 0 , , 1 x exp k+

    ntruct funciile sin cos , cos sin , ( ) 2, ( ) 2, x x x x

    tgx x x ctgx x x shx e e chx e e thx sh x ch x

    = = = = + = suntdependente de funciile indicate n relaia (1.1), se admite ca expresia analitica lui ( )f x sconinunele

    dintre acestea. Pentru a evita pericolul pierderilor n exactitate din cauza efecturii diferenei a dou

    mrimi apropiate ca valoare, calculul valorilor funciilor sh x i th x pentru valori 0x se va face n baza

    formulei 2 10

    (2 1)!j

    j

    sh x x j

    +

    =

    = + (n locul celei corespunztoare funcieix

    e ). Totodat, pentru valorile

    0x < (dar apropiate de zero) se va ine cont i de egalitatea ( )sh x shx = .

    Analiza algoritmului

    Eroarea numericcomis n calculul aproximativ al valorilor funciilor elementare din relaia (1.1),

    utiliznd dezvoltarea n serie de puteri, const din dou componente: eroarea de rotunjire (datorat

    reprezentrii finite, aproximative a numerelor reale n sistemele de calcul) i eroarea de trunchiere

    (datorataproximrii finite a unor procese infinite). n cazul cnd numrul de termeni ai seriei este fixat,

    eroarea de trunchiere va depinde direct proporional de valoarea argumentului t.

    Au loc urmtoarele estimaii pentru eroarea de trunchiere a seriilor utilizate n lucrare [24, p.89;

    p.95]:cos 2( 1) sin 2 3 exp 1cos (2( 1))!, sin (2 3)!, [0; 4]; ( ! ) , [0;1]n n t nn n n

    t S t n t S t n t e S t n n t + + + + + < ,

    unde cos 2 sin 2 1 exp0 0 0

    ( 1) (2 )!, ( 1) (2 1)!, !n n n

    j j j j j

    n n n

    j j j

    S t j S t j S t j+

    = = =

    = = + = . Modul n care eroarea de trunchiere

    depinde de n caracterizeazviteza de convergena algoritmilor descrii.

    n procesele de calcul definite de relaia (1.2), eroarea de trunchiere este cu att mai mic cu ct

    numrul de termeni calculai este mai mare. Pe de alt parte, efortul de calcul pentru evaluarea valorii

    funciei crete odatcu mrirea exactitii impuse, dar i cu creterea modulului variabilei t.Studiul comportamentului numeric al algoritmilor elaborai demonstreaz c atunci cnd 4t < ,

    eroarea de trunchiere este micca valoare i este comparabilcu eroarea de rotunjire chiar i la sumarea

    unui numr relativ mic de termeni ai seriei.

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    12/74

    Lucrarea de laborator 1 11

    3.III. Modul de desfurare a lucrrii

    Cerine fa de ndeplinirea lucrrii

    n baza pseudocodurilor descrise n seciunea II a lucrrii, s se elaboreze un program destinat

    calculului valorilor funciilor elementare din relaia (1.1), utiliznd dezvoltrile n serii de puteri pentru

    acestea. n baza valorilor obinute, s se calculeze valoarea aproximativ a funciei ( )f x , expresia

    analitica creia conine funciile elementare din relaia (1.1). n plus, pentru fiecare dintre seriile date de

    relaia (1.2) i fiecare valoarei

    x a variabilei independente x , programul va calcula i va afia suma

    pariala seriei i eroarea absolutde trunchiere pentru diferite ordine n . Se va reprezenta grafic variaia

    erorii n funcie de numrul de termeni sumai. Se va analiza viteza de convergena algoritmului pentru

    diferite valorii

    x . Programul de calcul sse testeze pe exemplele propuse la sfritul lucrrii de laborator.

    Este necesar sse asigure (n caz de necesitate) afiarea valorilor funciei ( )f x ntr-un ir de puncte

    , 1,i x i N = , definite de ctre utilizator.

    Sse extragla tipar tabelul

    i ix iy iye id maxk

    1

    N

    n care: i - numrul de rnd;i

    x - valoarea argumentului;i

    y - valoarea funciei ( )f x n punctul ix ,

    calculatde program (utiliznd algoritmul dezvoltrii n serie de puteri);i

    ye - valoarea funciei n punctul

    ix , calculat cu ajutorul funciilor standard ale mediului de programare; max;i i id y ye k = - numrul

    maximal de termeni sumai din seriile folosite.

    Programul trebuie sdea rezultat pentru orice valoare a argumentului x . Dacpentru un carevai

    x

    valoarea funciei ( )f x nu exist sau are loc suprancrcarea, atunci se va extrage la tipar comunicarea

    respectiv.

    Chestiuni de studiat

    1. Precizai modalitile prin care poate fi diminuateroarea de calcul la sumarea numerica unei serii.

    2. S se fac o analiz experimental a timpului de calcul al valorilor funciilor elementare din relaia

    (1.1), utiliznd dezvoltarea n serie de puteri, n funcie de exactitatea de calcul impusi de mrimea

    argumentului 0x .

    3. Sse reprezinte grafic variaia erorii de calcul n funcie de numrul de termeni sumai ai seriei.

    Probleme propuse spre rezolvare

    2

    2

    1. ( ) 4sin ;

    2. ( ) 1 sin cos 4 ;3. ( ) cos (1 cos ) ;

    4. ( ) 12 sin (0.5 cos );

    5. ( ) ( );

    x

    x x

    x

    x x x

    f x x tgx e

    f x x e x e f x sh x x x

    f x e x x

    f x tgx ctgx e e e

    = +

    = +

    = +

    = +

    = + + +

    2

    2

    2

    2

    14. ( ) cos 2 sin ;

    15. ( ) cos 2 sin ;

    16. ( ) cos 4 12 ;

    17. ( ) (cos 2 sin 2 ) ( 1);

    18. ( ) sin 2 cos 2 ;

    x

    x

    x

    x

    x

    f x e x chxshx x

    f x e x chxshx x

    f x x tgx e

    f x x x e

    f x e x chx x

    = +

    =

    = +

    = + +

    = +

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    13/74

    12 Lucrarea de laborator 1

    2

    6. ( ) (4 ) (2sin );

    7. ( ) 1 ( ) 2 1;

    8. ( ) (2sin 1) (cos );

    9. ( ) (2 1) (2 );

    10. ( ) 4 sin ( sin ) cos ;

    11. ( ) sin2 (0.4 cos );

    12. ( ) sin 2 12 ;

    13. ( ) 2

    x x

    x

    x

    x

    x

    x

    x

    x

    f x ctgx e e x

    f x tgx ctgx e

    f x x x e

    f x tgx e

    f x x e x x

    f x e tgx x x

    f x x ctgx e

    f x e

    = +

    = +

    =

    =

    = +

    =

    = + +

    = + + (3 5sin ) (3sin 1);x x+

    3

    2

    2

    2

    3

    2

    19. ( ) sin 2 cos ;

    20. ( ) cos4 cos2 ;

    21. ( ) sin 2sin ( );

    22. ( ) cos 3 2 2sin ;

    23. ( ) cos2 4 2 2 sin ;

    24. ( ) 2 2cos2 4 2 sin ;

    25. ( ) cos 4

    x

    x

    x x x

    x

    x

    x

    x

    f x e x shx x

    f x e x chx x

    f x e x chx x e e

    f x e x sh x x

    f x e x ch x chx x

    f x e ch x x chx x

    f x e x

    = +

    = +

    = + +

    =

    = +

    = + +

    = + 2 3 sin2 ;

    26. ( ) cos2 2 2 sin .xch x shx x

    f x e x ch x shx x

    =

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    14/74

    Lucrarea de laborator 2 13

    LUCRAREA DE LABORATOR2

    APROXIMAREA FUNCIILOR CU POLINOAME DE INTERPOLARE2.I. Scopul lucrrii

    Studiul unor algoritmi de aproximare a funciilor continue cu polinomul algebric de interpolare i

    implementarea acestora ntr-un limbaj de programare de nivel nalt.

    2.II. Prezentarea teoretic a lucrrii

    Formularea problemei

    Fie pentru funcia continu 0:[ ; ]n f x x cunoscute valorile ei ( )i i y f x= n nodurile reelei

    0 0 1: { } , ... ( , )n

    i i nx a x x x b a b

    = = < < < . Se cere de aproximat funcia ( )f x pe segmentul 0[ ; ]nx x cu un

    polinom algebric de interpolare, adicde construit polinomul algebric ( )mp x de grad minimal m , care n

    nodurile , 0,i x i n= , ia valori egale cu iy :

    ( ) , 0,m i ip x y i n= =

    . (2.1)Folosind reprezentarea analitic a polinomului obinut, s se calculeze valoarea aproximativ a

    funciei ( )f x n punctul 0[ ; ], , 0,n iz x x z x i n = .

    Problema de interpolare formulatare soluie unic [2-5; 8; 16; 20-21; 23-24]: pentru orice funcie

    continu ( )f x i orice sistem de noduri distincte , 0,i

    x i n= , exist un singur polinom algebric ( )mp x de

    grad m n ce satisface condiiile (2.1).

    n funcie de necesitate, n practic sunt utilizate mai multe forme de reprezentare (algoritmi de

    construcie) ale polinomului de interpolare, unele dintre care le vom indica n continuare.

    Interpolare polinomial pe reea neuniform

    Polinomul de interpolare sub forma lui Lagrange

    Aceastforma polinomului de interpolare este definitprin relaia [3-5; 8; 23; 24, p.529]:

    0

    ( ) ( )n

    n i i

    i

    L x y l x=

    = , (2.2)

    n care ( )0,

    ( ) ( ) ( )n

    i j i j

    j j i

    l x x x x x=

    = sunt numite polinoamele fundamentale de interpolare Lagrange.

    Pseudocodul algoritmului

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    [ ]x n - tabloul (cu elemente de tip real; indici de la 0 la n ) nodurilor de interpolare;[ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.

    Date de ieire:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg ,i j real ,t p

    : 0p =

    pentru : 0,i n= execut{

    : 1t =

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    15/74

    14 Lucrarea de laborator 2

    pentru : 0,j n= execut { dac j i atunci : ( ) ( ) j i jt t z x x x= }

    : i p p t y= + }

    scrie ,z p

    Analiza algoritmului

    n cazul n care ( )f x este continupe0

    [ ; ]n

    x x i mai posedi derivate continui pnla ordinul 1n +

    inclusiv (vom utiliza notaia 1 0( ) [ ; ]n

    nf x C x x+ ), este adevrat urmtoarea estimaie pentru eroarea

    ( ) : ( ) ( )Ln n

    E x f x L x= a procesului de interpolare n punctul 0[ ; ]n z x x [2-3; 8; 10; 16; 23; 24, p.537]:

    1( ) ( ) ( 1)!L

    n n n E z z M n

    + + ,

    unde0

    ( 1)1 0 1

    [ ; ]max ( ) , ( ) ( )( ) ... ( )

    n

    n

    n n nx x x

    M f x z z x z x z x++

    = = . Analiza comportamentului funciei ( )n x

    permite sconcluzionm ceroarea interpolrii ( )Ln

    E z va fi n medie mai mare dacpunctul z se afl n

    vecintatea extremitilor segmentului 0[ ; ]nx x [21, p.63].Efortul de calcul pentru evaluarea polinomului Lagrange n punctul z conform formulei (2.2), este

    de 24 6 2n n+ + operaii aritmetice (aditive i multiplicative). Complexitatea de ordinul 2(4 )O n uneori este

    inacceptabil n practici poate s conduc la apariia unor erori de calcul mari. Din aceast cauz au

    fost elaborai ali algoritmi de calcul al valorilor polinomului de interpolare.

    Dac se calculeaz valorile polinomului Lagrange ntr-un numr mare de puncte (diferite de

    nodurile reelei de interpolare), atunci este avantajoasurmtoarea form:

    ( )00

    ( ) ( ) ( )n n

    n j i i

    ij

    L x x x r x x==

    = , (2.3)

    n care coeficienii ( 0, )i

    r i n= sunt dai de relaia0,

    ( )n

    i i i j

    j j i

    r y x x=

    = . Procesul de calcul descris de

    formula (2.3) admite urmtorul pseudocod:

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    [ ]x n - tabloul (cu elemente de tip real; indici de la 0 la n ) nodurilor de interpolare;[ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.

    Date de ieire:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg ,i j real , ,t p r

    : 1; : 0t p= =

    pentru : 0,j n= execut : ( )jt t z x=

    pentru : 0,i n= execut{

    :i

    r y=

    pentru : 0,j n= execut { dac j i atunci : ( )i jr r x x= }

    : ( )i

    p p r z x= +

    }: p p t =

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    16/74

    Lucrarea de laborator 2 15

    scrie ,z p

    Spre deosebire de cazul n care este utilizat formula (2.2), calculul valorii polinomului ( )nL x ,

    conform relaiei (2.3), necesit 22 7 6n n+ + operaii aritmetice. Dac se efectueaz m evaluri, efortul

    global de calcul este de 22 (5 2) 6n m n m+ + + operaii. Din punctul de vedere al eficienei spaiale,

    variantele (2.2) i (2.3) necesitfiecare un spaiu de memorie de ordin (2 )O n .Algoritmul lui Neville-Aitken

    Calculul valorii aproximative a funciei ntr-un punct dat poate fi efectuat i fr a apela la forma

    analitica polinomului Lagrange. Aceasta se poate efectua, de exemplu, utiliznd algoritmul lui Neville-

    Aitken [2, p.12; 25, p.116]. Procedura iterativ de calcul utilizeaz pentru nceput dou noduri de

    interpolare, ca apoi treptat sincludn calcule noi noduri pnse obine precizia dorit.

    Fie , 1,..., ( ) j j j iP x+ + polinomul de interpolare construit pe nodurile distincte 1, ,..., j j j i x x x+ + . Evideniem

    cazul 0i = cnd vom considera c ( ) , 0,j jP x y j n= = . Polinoamele , 1,..., ( ) j j j iP x+ + satisfac relaia de

    recuren[2, p.12]:

    ( ), 1,..., , 1,..., 1 1, 2,...,( ) ( ) ( ) ( ) ( ) ( )j j j i j i j j j i j j j j i j i jP x x x P x x x P x x x+ + + + + + + + += + . (2.4)

    Algoritmul lui Neville-Aitken presupune calculul consecutiv conform formulei (2.4) a elementelor

    evideniate cu bold din tabelul de mai jos:

    0 0 0

    1 1 1

    2 2 2

    3 3 3

    3 3 3

    2 2 2

    1 1 1

    n n n

    n n n

    n n n

    n n n

    x y P

    x y P

    x y P

    x y P

    x y P

    x y P

    x y P

    x y P

    =

    =

    =

    =

    =

    =

    =

    =

    01

    01 2

    12 01 23

    12 3

    23 0, ...,n -1

    0,1,.. . ,n

    n - 3 ,n - 2 1, ...,n

    n -3 , n -2 , n -1

    n - 2 ,n -1 n - 3 ,n - 2 ,n -1 ,n

    n -2 , n -1 , n

    n -1 , n

    P

    P

    P P

    P

    P P

    P

    P P

    P

    P P

    P

    P

    Coloanele evideniate ale tabelului se completeazde la stnga spre dreapta. Fiecare element al coloanei

    se calculeaz recursiv n baza celor doi vecini din coloana precedent. Algoritmul admite urmtoarea

    reprezentare n pseudocod:

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    [ ]x n - tabloul (cu elemente de tip real; indici de la 0 la n ) nodurilor de interpolare;

    [ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.Date de ieire:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;

    ny (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg ,i j

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    17/74

    16 Lucrarea de laborator 2

    pentru : 1,i n= execut

    { pentru : , j n i= execut ( )1: ( ) ( ) ( ) j j j j i j j j iy x x y z x y x x = + }

    scrie , nz y

    Schema descrispermite s evideniem un algoritm de calcul al valorii funciei ( )f x ntr-un punct

    dat ( 0, )i z x i n = cu exactitatea dorit 0 > sau cu cea mai bun exactitate posibil pentru informaia

    avut. Vom nota 0,1,...,( ) : ( ), 0,m mL x P x m n= = . Pentru a descrie algoritmul menionat vom utiliza relaia

    1( ) ( ) ( )L

    m m mE x L x L x

    + [20, p.48]. Astfel, mrimea 0,1,..., 1 0,1,..., 1: ( ) ( ) ( ) ( )m m m m mP x P x L x L x + += poate fi

    consideratca o aproximaie a erorii interpolrii ( )Lm

    E x .

    Se calculeaz succesiv valorile: 0 0 1 0,1 0 1 0 2 0,1,2( ) : ( ), ( ) : ( ), : ( ) ( ) , ( ) : ( )L x P x L x P x L x L x L x P x= = = = ,

    1 2 1 3 0,1,2,3 2 3 2: ( ) ( ) , ( ) : ( ), : ( ) ( ) ,...L x L x L x P x L x L x = = = . Dacpentru o valoare a numrului (0 )m m n < va

    avea loc inegalitateam

    < , atunci calculele se stopeaz i se consider 1( ) ( )m f x L x+ . n caz contrar,

    ( , 0, 1m

    m n = ) se determincel mai mic m pentru care0 1min

    m jj n

    = i se consider 1( ) ( )m f x L x+ .

    Pseudocodul algoritmului

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    [ ]x n - tabloul (cu elemente de tip real; indici de la 0 la n ) nodurilor de interpolare;[ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare;

    (de tip real) exactitatea de calcul dorit.Date de ieire:

    z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    er (de tip real) cea mai bun exactitate posibil pentru informaia avut;

    ntreg , ,i j kreal , , ,d t p er

    0: 1; :er t y= =

    pentru : 1,i n= execut{

    pentru : ,1k i= execut { : 1; : ( ) ( ) ( ) j k k j i i jj k y y y y z x x x= = + }

    0 0: ; :d y t t y= =

    dac d < atunci { 0: ; :er p y= = ; se iese din ciclu }

    altfel { dac ( 0er< sau d er< ) atunci { 0: ; :er d p y= = } }}

    scrie , , z p er

    Analiza algoritmului

    Efortul de calcul necesar pentru realizarea algoritmului este de cel mult 23.5 4.5n n+ operaii

    aritmetice, iar din punct de vedere al eficienei spaiale necesitun spaiu de memorie de ordin (2 )O n .

    Polinomul de interpolare sub forma lui Newton cu diferene divizateAceastforma polinomului de interpolare are urmtorul aspect:

    1

    0 01 0

    ( ) [ ;...; ] ( )in

    n i j

    i j

    N x y f x x x x

    = =

    = + . (2.5)

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    18/74

    Lucrarea de laborator 2 17

    Relaia (2.5) utilizeazdiferenele divizate de ordinul k ale funciei ( )f x :

    ( ) ( )1 1[ ;...; ] : [ ;...; ] [ ;...; ] ( , )i i k i i k i i k i k if x x f x x f x x x x i k + + + + += . (2.6)

    n particular, pentru 0, 1,i k n= = obinem diferenele divizate din formula (2.5). Vom considera c

    [ ] , 0,j j

    f x y j n = = .

    Evaluarea valorii polinomului (2.5) se va efectua n modul urmtor:1. Utiliznd definiia (2.6) se genereaz diferenele divizate. Vom ine cont c n procesul de

    construcie a polinomului particip efectiv doar diferenele divizate 0[ ;...; ], 1,i f x x i n = , de aceea restul

    diferenelor le vom considera ca date intermediare. Pentru a economisi memoria, vom amplasa diferenele

    divizate n tabloul n care iniial se pstrau valorile funciei ( )f x n noduri. Tabloul dat se va nnoi parial

    la calcularea diferenelor de ordin superior. Completarea tabloului se va face ncepnd cu ultimul element

    al acestuia. Astfel, la calcularea diferenelor divizate de ordinul I, elementul ny se va nlocui cu

    1[ ; ]n n f x x , 1ny - cu 2 1[ ; ]n n f x x .a.m.d. Elementul 0y rmne nemodificat. La calcularea diferenelorde ordinul II, primele dou elemente ale tabloului rmn nemodificate, iar restul elementelor sunt

    nlocuite cu diferenele respective. n momentul n care a fost calculatdiferena divizatde ordinul n , n

    locul vectorului iniial 0 1( ; ;...; )T

    n y y y avem vectorul 0 0 1 0 1 2( ; [ ; ]; [ ; ; ];...y f x x f x x x 0 1...; [ ; ;...; ])

    T

    n f x x x .

    2. Din motive de eficien, evaluarea polinomului de interpolare Newton n punctul z se realizeaz

    conform algoritmului (schemei) lui Horner [24, p.74; 25, p.24]. Pentru aceasta polinomul ( )nN x se scrie

    sub forma:

    ((( )

    0 0 0 1 1 0 1 2 2 0 1 1 1 0 1

    1

    ( ) ( ) [ ; ] ( ) [ ; ; ] ... ( ) [ ; ;...; ] ( ) [ ; ;...; ])...n n n n n

    n

    N x y x x f x x x x f x x x x x f x x x x x f x x x

    = + + + + + .

    Vom afla valoarea lui ( )n

    N x n punctul z , calculnd succesiv mrimile:

    0 1 0 1 1 0 0 0 1: [ ; ;...; ], : [ ; ;...; ] ( ) , 1,1, ( ) : ( )n n k k k k nb f x x x b f x x x z x b k n b N x y z x b += = + = = = + .

    Pseudocodul algoritmului

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    [ ]x n - tabloul (cu elemente de tip real; indici de la 0 la n ) nodurilor de interpolare;

    [ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.Date de ieire:

    z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg ,i kreal p

    pentru : 1,i n= execut { pentru : ,k n i= execut 1: ( ) ( )k k k k k i y y y x x = }

    :n

    p y=

    pentru : 1,0i n= execut : ( )i i

    p y z x p= +

    scrie ,z p

    Analiza algoritmului

    n cazul n care sunt cunoscute diferenele divizate, calculul direct al valorii polinomului ( )nN x

    conform formulei (2.5) (n sensul c se gsesc valorile tuturor termenilor, apoi acetia se sumeaz),

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    19/74

    18 Lucrarea de laborator 2

    necesit 2 2n n+ operaii aritmetice. n schimb, schema lui Horner permite obinerea valorii lui ( )nN x ,

    efectund doar 3n operaii. n plus, utilizarea schemei menionate nu numai c economisete timpul de

    calcul, dar i mbuntete exactitatea calculelor n baza diminurii erorilor de rotunjire (numrul mare

    de operaii poate duce la pierderea exactitii datorit acumulrii erorilor de rotunjire). Realizarea celor

    douetape ale algoritmului necesit 21.5 4.5n n+ operaii aritmetice cu numere reale.

    n cazul n care este necesar s se calculeze valorile polinomului de interpolare ( )nN x n mai multe

    puncte, diferenele divizate 0[ ;...; ] ( 1, )i f x x i n = se calculeaz doar o singur dat, iar pentru a calcula

    valorile cerute se apeleazdoar la algoritmul lui Horner. Dacse efectueaz m evaluri, efortul global de

    calcul este de 21.5( ) 3n n mn+ + operaii cu numere reale. Spaiul de memorie necesar pentru realizarea

    algoritmului este de ordinul (2 )O n . Timpul de calcul este dependent de eroarea impus, avnd valori mari

    doar n cazurile n care se dorete o precizie ridicat.

    Algoritmul permite i mrirea gradului polinomului de interpolare cu un efort minim de calcul, ntruct la adugarea unui nou nod n reeaua de interpolare se reutilizeaz coeficienii de la gradul

    anterior.

    n cazul n care ( )f x este continu, se poate utiliza urmtoarea formul pentru eroarea

    ( ) : ( ) ( )Nn nE x f x N x= a procesului de interpolare n punctul 0[ ; ]n z x x :

    0 1 0( ) [ ; ;...; ; ] ( ), ( ) ( ) ... ( )N

    n n n n nE z f x x x z z z z x z x = = .

    Remarc. n cazul interpolrii pe o reea neuniform, se recomand a alege n calitate de noduri

    urmtoarele puncte [24, p.541]:

    ( ) 2 ( ) 2, 0,i i

    x b a t b a i n= + + = ,

    unde cos((2 1) (2 2)) ( 0, )i

    t i n i n= + + = sunt zerourile polinomului Chebyshev de spea I de gradul 1n + ;

    0[ ; ]( [ ; ]) na b x x - segment pe care este definit funcia ( )f x . Prin aceasta se obine, n primul rnd,

    micorarea influenei erorii de calcul asupra rezultatului, iar n al doilea rnd, n cazul unei funcii

    suficient de netede, eroarea se micoreazodatcu creterea lui n . Evaluarea erorii de interpolare pentru

    cazul n care 1 0( ) [ ; ]n

    nf x C x x+ este datde formula:

    0

    1( 1)1 0

    12 1 [ ; ]

    ( )( ) ; max ( )

    ( 1)! 2 n

    nnn n

    n nn x x x

    M x x E z M f x

    n

    +

    ++

    ++

    =

    +.

    Interpolare polinomial pe reea uniform

    Polinomul de interpolare sub forma lui Lagrange cu noduri echidistante

    n cazul n care nodurile reelei sunt echidistante, adicare loc relaia

    0 , 0, , 0i x x ih i n h= + = > ,

    formula polinomului de interpolare Lagrange (2.2) se simplifici capturmtorul aspect:

    000

    ( 1)( ) ( ) ( ) ( 1)

    !

    n n ni i i

    n n n

    ij

    y L x L x th t j C

    n t i==

    + =

    ,

    unde 0( )t x x h= , iar ! ( !( )!)i

    nC n i n i= - numrul combinrilor din n elemente luate cte i . Se vor

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    20/74

    Lucrarea de laborator 2 19

    utiliza dou procedee de optimizare a algoritmului de calcul: primul - bazat pe formula de recuren

    1 01 1 1( 2, , 1, 1; 1)

    i i i

    k k k k C C C k n i k C

    = + = = = (triunghiul lui Pascal), iar al doilea pe formula combinrilor

    complementare i n in n

    C C

    = ( [ ]0, 2 ,i n n= , [ ]2n - partea ntreaga numrului 2n ).

    Pseudocodul algoritmului

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    0 , nx x - (de tip real) primul i respectiv, ultimul nod al reelei de interpolare;

    [ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.Date de ieire:

    z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg , ,i j kreal , , ,h t p s tablou real [ ]c k (tabloul (cu elemente de tip real; indici de la 0 la k) ce conine numrul combinrilor din n

    elemente luate cte , 0,i i k= )

    [ ] 0 0: 2 ; : ( ) ; : ( ) ; : ( 1)n

    nk n h x x n t z x h p t = = = =

    pentru : 1,j n= execut : ( )p p t j j=

    0 : 1c =

    pentru : 1,i k= execut : 0ic =

    pentru : 1,j k= execut { pentru : ,1i j= execut 1:i i ic c c= + }

    pentru : 1, j k n= + execut { pentru : ,1i k= execut 1:i i ic c c= + }

    : 0; : mod 2s j n= =

    dac 1j = atunci { pentru : 0,i k= execut : ( 1) ( ( ) ( ( )))ii i n i

    s s c y t i y t n i

    = + }

    altfel{

    pentru : 0, 1i k= execut : ( 1) ( ( ) ( ( )))ii i n i

    s s c y t i y t n i= + +

    : ( 1) ( )kk k

    s s c y t k = +

    }: p p s=

    scrie ,z p

    Analiza algoritmului

    Realizarea algoritmului necesit un efort de calcul de 2(0.375 3.75 )O n n+ operaii aritmetice i un

    spaiu de memorie de (1.5 )O n .

    Polinomul de interpolare sub forma lui Newton cu noduri echidistante

    A)Formula lui Newton de interpolare ascendentare aspectul urmtor:1

    00 0

    1 0

    ( ) ( ) ( )!

    k kn

    n n

    k j

    y N x N x th y t j

    k

    = =

    + = + , (2.7)

    unde 0( ) , 0t x x h h= > - pasul tabelei de valori. Relaia (2.7) utilizeaz diferenele finite de ordinul k

    ale funciei ( )f x :

    1 11 , 1, , 0,

    k k k

    i i iy y y k n i n k

    + = = = . (2.8)

    n particular, pentru 0, 1,i k n= = , obinem diferenele finite din formula (2.7). Vom considera c

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    21/74

    20 Lucrarea de laborator 2

    00( ), , 0,i i i iy y f x x x ih i n = = = + = .

    Evaluarea valorii polinomului (2.7) se va efectua n modul urmtor:

    1. Utiliznd definiia (2.8), se genereaz diferenele finite. Vom ine cont c n procesul de

    construcie a polinomului particip efectiv doar diferenele finite 0 , 1,...,k y k n = , de aceea restul

    diferenelor le vom considera ca date intermediare. Pentru a economisi memoria, vom amplasa diferenele

    n tabloul n care iniial se pstrau valorile funciei ( )f x n noduri. Tabloul dat se va nnoi parial la

    calcularea diferenelor de ordin superior. Completarea tabloului va ncepe cu ultimul element al acestuia.

    Astfel, la calcularea diferenelor finite de ordinul I, elementul ny se va nlocui cu 1ny , 1ny - cu 2ny

    .a.m.d. Elementul 0y nu se modific. La calcularea diferenelor de ordinul II, primele douelemente ale

    masivului nu sufer modificaii, iar restul elementelor sunt nlocuite cu diferenele respective. n

    momentul n care a fost calculat diferena finit de ordinul n , n locul vectorului iniial 0 1( ; ;...; )T

    n y y y

    obinem vectorul2

    0 0 0 0( ; ; ;...; )n T

    y y y y .2.Evaluarea polinomului (2.7) n punctul z se efectueazconform algoritmului lui Horner. Pentru

    aceasta 0( )n N x th+ se scrie sub forma:

    2 10 0 0

    0 0 0( ) ( 1) ... ( 2) ( 1) ...2! ( 1)! !

    n n

    n

    y y y N x th y t y t t n t n

    n n

    + = + + + + + + +

    .

    Vom afla valoarea acestui polinom n punctul z , calculnd succesiv mrimile:

    00 0 1 0 0 0 1( ) , : !, : ( ) , 1,1, ( ) :!

    k

    n

    n k k n

    yt z x h b y n b t k b k n b N x th y t b

    k+

    = = = + = = + = + .

    Pseudocodul algoritmului

    Date de intrare:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    0 , nx x - (de tip real) primul i respectiv, ultimul nod al reelei de interpolare;[ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.

    Date de ieire:z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg , ,i k u real , ,h t p

    pentru : 1,i n= execut { pentru : ,k n i= execut 1:k k k y y y = }: 1u =

    pentru : 2,i n= execut { : ; :i i

    u u i y y u= = }

    0 0: ( ) ; : ( ) ; :n nh x x n t z x h p y= = =

    pentru : 1,0i n= execut : ( )ip y t i p= + scrie ,z p

    Analiza algoritmului

    n cazul n care sunt cunoscute diferenele finite, pentru realizarea algoritmului este necesar un efortde calcul de 20.5 6.5 3n n+ operaii aritmetice cu numere reale i un spaiu de memorie de ( )O n .

    n cazul n care 1 0( ) [ ; ]n

    nf x C x x

    + este adevraturmtoarea estimaie pentru eroarea procesului de

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    22/74

    Lucrarea de laborator 2 21

    interpolare n punctul 0[ ; ]n z x x [8; 16; 24, p.538]:

    11( ) ( 1) ... ( ) ( 1)!

    N n

    n nE z t t t n h M n

    +

    + + ,

    unde0

    ( 1)1 0

    [ ; ]max ( ) , ( )

    n

    n

    nx x x

    M f x t z x h+

    +

    = = .

    B)Formula lui Newton de interpolare descendentare aspectul urmtor:1

    1 0

    ( ) ( ) ( )!

    k knn k

    n n n n

    k j

    y N x N x th y t j

    k

    = =

    + = + + , (2.9)

    unde kn k

    y sunt diferene finite de ordinul , 1,k k n= , ( )nt x x h= (deoarece 0( ; )n x x x avem 0t< ),

    0 , 0,i x x ih i n= + = , 0h > - pasul tabelului de valori.

    Ca i n cazul precedent A), se vor calcula diferenele finite n baza relaiei (2.8) i se vor memora

    n tabloul valorilor funciei ( )f x n noduri. Vom meniona, totui, c n cazul dat tabloul se va completa

    ncepnd cu primul element: elementul 0y se va nlocui cu 0y , 1y - cu 1y .a.m.d. n momentul n care

    a fost calculat diferena finit de ordinul n , n locul vectorului iniial 0 1( ; ;...; )T

    n y y y obinem

    10 1 1( ; ;...; ; )

    n n T

    n n y y y y

    . Evaluarea polinomului (2.9) n punctul z se efectueaz n baza algoritmului

    lui Horner:

    01 0 1( ) , : , : ( ) , 1,1, ( ) :! !

    n k

    n kn n k k n n n

    y yt z x h b b t k b k n b N x th y tb

    n k

    +

    = = = + + = = + = + .

    Pseudocodul algoritmului

    Date de intrare:

    z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;n (de tip ntreg) gradul maximal al polinomului de interpolare;

    0 , nx x - primul i, respectiv, ultimul nod (de tip real) al reelei de interpolare;

    [ ]y n - tabloul (cu elemente de tip real; indici de la 0 la n ) valorilor funciei ( )f x n nodurile de interpolare.Date de ieire:

    z (de tip real) punctul n care se calculeaz valoarea polinomului de interpolare;p (de tip real) valoarea polinomului de interpolare n punctul z ;

    ntreg , ,i k u real , ,h t p

    pentru : 1,i n= execut { pentru : 0,k n i= execut 1:k k k y y y+= }

    : 1u = pentru : 2,i n= execut { : ; :n i n iu u i y y u = = }

    0 0: ( ) ; : ( ) ; :n nh x x n t z x h p y= = =

    pentru : 1,0i n= execut : ( )n i

    p y t i p

    = + +

    scrie ,z p

    Analiza algoritmului

    n cazul n care sunt cunoscute diferenele finite, pentru realizarea algoritmului este necesar un efort

    de calcul de 20.5 6.5 3n n+ operaii aritmetice cu numere reale i un spaiu de memorie de ( )O n .

    n cazul n care 1 0( ) [ ; ]n nf x C x x+

    este adevraturmtoarea estimaie pentru eroarea procesului deinterpolare n punctul 0[ ; ]n z x x [24, p.538]:

    11( ) ( 1) ... ( ) ( 1)!

    N n

    n nE z t t t n h M n+

    + + + + ,

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    23/74

    22 Lucrarea de laborator 2

    unde0

    ( 1)1

    [ ; ]max ( ) , ( )

    n

    n

    n nx x x

    M f x t z x h++

    = = .

    Remarc. Din punctul de vedere al exactitii calculelor este rezonabil s se utilizeze formula

    Newton de interpolare ascendent pentru calculul valorii funciei n punctele jumtii din stnga a

    segmentului 0[ ; ]nx x , iar formula Newton de interpolare descendent n punctele jumtii din dreapta a

    segmentului 0[ ; ]nx x .3.III. Modul de desfurare a lucrrii

    Cerine fa de ndeplinirea lucrrii

    Fie dat analitic funcia ( ), [ ; ]= y f x x a b . n baza pseudocodurilor descrise n seciunea II a

    lucrrii, sse elaboreze un program, care are drept obiectiv realizarea urmtoarelor etape:

    1) Calculul valorilor ( ), 0, ( )= = i i

    y f x i n n (cu ajutorul funciilor standard ale mediului de

    programare) n punctele distincte ix , 0 1 ... < < < na x x x b .

    2) Calculul valorii aproximative a funciei ( )f x n punctul x z= , utiliznd polinomul de interpolare sub

    forma lui Lagrange sau Newton.

    3) Calculul aproximativ cu exactitatea 610 = (sau cu cea mai bun exactitate posibil) al valorii

    funciei ( )f x n punctul x z= , utiliznd algoritmul lui Neville-Aitken.

    S se analizeze variaia erorii la aproximarea prin interpolare a funciei ( )f x n x z= (a se vedea

    punctul 2)) n funcie de:

    2.1. Numrul nodurilor de interpolare;

    2.2. Distribuia nodurilor de interpolare:

    a) noduri echidistante;

    b) nodurile sunt n concordan cu zerourile polinomului Chebyshev de gradul 1n + definit pe

    0[ ; ] [ ; ]na b x x ;

    c) alte modaliti de amplasare;

    2.3. Poziia punctului z (n vecintatea extremitii din stnga sau din dreapta a segmentului de

    interpolare, sau n vecintatea mijlocului acestuia).

    Sse testeze programul de calcul pe exemplele propuse la sfritul lucrrii de laborator.

    Sse extragla tipar tabelele (pentru fiecare polinom de interpolare):

    Tabelul dupcare se interpoleaz(suportul problemei de interpolare)

    ( 0, )=i

    x i n - nodurile reelei de interpolare;

    ( 0, )=i

    y i n - valorile funciei ( )f x n noduri;Tabelul interpolrii i testrii

    ( 1, )=j z j m - punctele n care se interpoleazvaloarea funciei

    ( )f x ;( 1, )=jP j m - valorile polinomului de interpolare n punctele jz ;

    ( 1, )j f j m= - valorile funciei ( )f x n punctele jz , calculate cu

    ajutorul funciilor standard ale mediului de programare;

    i 0x ... nx

    i 0y ... ny

    j jz jP jf j

    1 m

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    24/74

    Lucrarea de laborator 2 23

    ( 1, )j j m = - erorile de interpolare j j jf P = n punctele jz .

    Programul trebuie sdea rezultat pentru orice sistem finit de puncte de interpolare.

    Chestiuni de studiat

    1. Precizai modalitile prin care poate fi diminuateroarea interpolrii.

    2.S se fac o analiz experimental a timpului de calcul al valorilor polinomului de interpolare n

    funcie de gradul polinomului.

    3. S se formuleze exemple de funcii continue pentru care polinoamele de interpolare corespunztoare

    nu vor converge uniform.

    4. S se construiasc polinoamele de interpolare Lagrange i Newton ce aproximeaz funcia2( ) 1 (1 25 ) , [ 1;1] f x x x= + . S se reprezinte grafic funcia ( )f x i polinomul de interpolare

    corespunztor, precum i variaia erorii n funcie de numrul nodurilor de interpolare dac:

    nodurile reelei de pe [ 1;1] sunt echidistante;

    nodurile reelei sunt zerourile polinomului Chebyshev de gradul 1n + .

    5. Analizai comportarea aproximrii funciei prin interpolare polinomial n exteriorul segmentului

    0[ ; ]nx x (problema extrapolrii).

    Probleme propuse spre rezolvare

    2

    2

    sin

    1. ( ) sin ( 1), [0;2];

    2. ( ) 1, [0.5;4];

    3. ( ) sin , [1;4];4. ( ) ln , [2;5];

    5. ( ) cos , [2;4];

    6. ( ) ln( 1) , [10;15];

    7. ( ) ln , [2;4];

    8. ( ) , [4;7];

    9. ( ) ,

    x

    x

    x

    x

    x

    x

    x

    f x e x x x

    f x e x x

    f x e x x x

    f x x x x

    f x e x x x

    f x x x x

    f x e x x

    f x xe x

    f x e x

    +

    = +

    = +

    =

    =

    =

    = +

    =

    =

    =

    2

    2sin

    cos

    [0.2;2];

    10. ( ) , [1.1;4];

    11. ( ) , [1;4];12. ( ) , [10;16];

    13. ( ) 3sin cos2 , [ 2;0];

    x

    x

    x

    x

    f x e x x

    f x xe x

    f x xe x

    f x x x x

    =

    =

    =

    = +

    2

    2

    3

    2

    2

    14. ( ) ( 1) 0.5 , [0;3];

    15. ( ) ( 1) , [0;2.5];

    16. ( ) sin , [0.6;3];17. ( ) 4 cos , [0;5];

    18. ( ) sin , [ 1;4];

    19. ( ) sin cos , [ 3; 3];

    20. ( ) cos , [ 2;4];

    21. ( ) cos

    x

    x

    f x x e x

    f x x e x

    f x x x x

    f x x x x

    f x x x x

    f x x x x

    f x x x x

    f x x

    =

    =

    =

    =

    =

    = +

    =

    =

    2

    2

    sin , [ 2; 2];

    22. ( ) 2cos0.5 , [ 2;3];

    23. ( ) 2 cos , [ 2;3];

    24. ( ) ln( 5), [ 4;3];25. ( ) sin3 4cos3 , [0; 2];

    26. ( ) lg , [2;6].

    x x

    f x x x x

    f x x x x

    f x x x x

    f x x x x

    f x x x x

    =

    =

    = + +

    =

    = +

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    25/74

    24 Lucrarea de laborator 3

    LUCRAREA DE LABORATOR3

    APLICAREA FORMULELOR DE CUADRATUR

    LA CALCULUL APROXIMATIV AL INTEGRALEI3.I. Scopul lucrrii

    Studiul unor algoritmi de integrare numeric i implementarea acestora ntr-un limbaj de

    programare de nivel nalt.3.II. Prezentarea teoretic a lucrrii

    Formularea problemei

    Fie :[ ; ] ( ) f a b a b < < < o funcie continu. Sse calculeze integrala definit

    ( )b

    a

    I f x dx= , (3.1)

    cu exactitatea 0 > , utiliznd n acest scop o formulde integrare numeric.

    Noiunea de integral definit de la funcia ( )f x , definit pe intervalul [ ; ]a b , se va nelege n

    sensul lui Riemann. Din cursul Analiza matematic se tie c aceasta reprezint un numr ce poate fi

    calculat, cnd se cunoate primitiva ( )F x a integrandului, cu ajutorul formulei Leibniz-Newton

    ( ) ( )I F b F a= . (3.2)

    O condiie suficient pentru ca s existe integrala definit (3.1) este ca funcia )(xf s fie continu pe

    [ ; ]a b . Dar primitiva ei, deseori, nu se exprim prin funcii elementare, ceea ce face imposibil aplicarea

    formulei (3.2) n acest caz. n afarde aceasta, n multe probleme cu caracter aplicativ, funcia ( )f x nu se

    cunoate ea nsi dect sub form tabelari atunci determinarea primitivei n genere nu poate fi fcut.Din aceste motive formula (3.2) nu are aplicare larg n practic i se recurge frecvent la calculul

    aproximativ al integralei cu ajutorul formulelor de cuadratur (prescurtat FC). Forma general a acestor

    formule este [2-5; 8; 10; 13; 15; 16; 20-21; 23-24]

    0

    ( )n

    n i i

    i

    I c f x=

    = , (3.3)

    unde [ ; ] ( 0, )i

    x a b i n = i se numesc nodurile formulei de integrare numeric, iar ( 0, )i

    c i n= sunt

    coeficienii ei. Restul ( )nR f al FC (3.3) este definit ca ( ) :n nR f I I = . Acesta ofer informaii privindclasa funciilor pentru care formula de integrare numericeste eficient, n sensul cpentru funcia dati

    0 > , pentru numere n suficient de mari, are loc relaia ( )n n

    R f I I = < . n aplicaii, testarea

    acurateei aproximrii impune verificarea unei inegaliti de forma n nI I < pentru n n > .

    Trebuie menionat, de asemenea, ci pentru calculul integralei ( ) ( )b

    a

    x f x dx , n care : ( ; )a b

    este o funcie continupozitiv, numitpondere, pot fi construite FC de forma (3.3).

    O metodde obinere a unor FC const n aproximarea funciei )(xf prin polinomul de interpolare

    ( )n

    P x , construit pe sistemul de noduri 0 1, ,..., n x x x de pe [ ; ]a b i integrarea (analitic) celui din urm n

    aceleai limite. Diferite variante de formule se pot obine n dependen de ponderea concret ( )x , de

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    26/74

    Lucrarea de laborator 3 25

    numrul de noduri n, de alegerea concreta nodurilor ix , ct i de forma polinomului de interpolare ales

    pentru aproximare.

    Mai nti considerm cazul ( ) 1x = . mprim segmentul [ ; ]a b n n pri egale, de lungime

    ( )h b a n= , prin intermediul punctelor echidistante

    , 0,i

    x a ih i n= + = . (3.4)

    Formula dreptunghiurilor

    Dacfuncia )(xf este aproximatpe [ ; ]a b cu un polinom de gradul zero 0 ( ) ( )P x f x= , unde x este

    mijlocul intervalului de integrare, rezultformula dreptunghiului:

    ( )( ) ( ) 2I b a f a b= + . (3.5)

    n practic aceast formul se aplic sub form generalizat. Integrala definit pe [ ; ]a b se exprim ca

    suma integralelor pe fiecare din subintervalele 1[ ; ], 0, 1i i x x i n+ = (valorile , 0,i x i n= sunt definite de

    relaia (3.4)), apoi la fiecare termen al sumei se aplicformula dreptunghiului. Astfel obinem relaia:1

    0

    ( 2)n

    i

    i

    I h f x h

    =

    = + , (3.6)

    care poart denumirea de formula generalizat a dreptunghiurilor medii. n cazul n care 2( ) [ ; ]f x C a b ,

    estimarea restului ( )dn

    R f al formulei (3.6) poate fi fcutcu ajutorul inegalitii [1; 6]:

    ( ) ( )3 22 2[ ; ]

    ( ) ( ) 24 , : max ( )dnx a b

    R f b a M n M f x

    = . (3.7)

    Formula trapezelor

    Aceast formulse obine dac funcia ( )f x se aproximeazpe [ ; ]a b prin polinomul de interpolare

    de gradul nti 1( )P x conform nodurilor 0 1, x a x b= = i are forma:

    ( )( ) ( ) ( ) 2I b a f a f b= + . (3.8)

    Utiliznd proprietatea de aditivitate a integralei fade intervalul de integrare i formula (3.8) pentru

    fiecare din subintervalele 1[ ; ] ( 0, 1)i i x x i n+ = , se obine formula generalizata trapezelor:

    ( )1

    0 1

    ( ) ( ) 2 ( )n

    n ii

    I h f x f x f x

    =

    = + +

    . (3.9)

    n cazul n care 2( ) [ ; ]f x C a b , pentru restul ( )tn

    R f al FC (3.9) avem estimaia [2-8; 10; 16; 20-21; 23-25]

    ( ) ( )3 22 2[ ; ]

    ( ) ( ) 12 , max ( )tnx a b

    R f b a M n M f x

    = . (3.10)

    Formula lui Simpson (parabolelor)

    Considernd c funcia de integrat ( )f x se aproximeaz pe [ ; ]a b prin polinomul de interpolare de

    gradul doi 2 ( )P x , conform nodurilor 0 1 2, ( ) 2,x a x a b x b= = + = , obinem urmtoarea aproximaie a

    integralei cutate( )( )( ) 4 ( ) 2 ( ) ( ) 6I f a f a b f b b a= + + + , (3.11)

    ce poart numele lui Simpson. Pentru a obine i n acest caz o formul, care s asigure o precizie mai

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    27/74

    26 Lucrarea de laborator 3

    mare, se considercsegmentul [ ; ]a b este divizat n 2n m= pri egale cu ajutorul punctelor (3.4). Pentru

    fiecare subinterval de forma 2[ ; ]i ix x + aplicm formula (3.11) i summ dup toate valorile lui 0, 2i n= .

    Drept rezultat obinem formula generalizata lui Simpson:

    2 2 1

    0 2 1 21 1

    ( ) ( ) 4 ( ) 2 ( )3

    n n

    n i i

    i i

    hI f x f x f x f x

    = =

    = + + +

    . (3.12)

    n cazul n care ( )( ) [ ; ]IVf x C a b , pentru restul ( )tn

    R f al formulei (3.12) avem estimaia [2-6; 16; 24]

    ( ) ( )5 4 ( )4 4[ ; ]

    ( ) ( ) 180 , max ( )S IVnx a b

    R f b a M n M f x

    = . (3.13)

    Pseudocodul algoritmilor

    Date de intrare:

    ,a b (de tip real) limitele intervalului de integrare;n (de tip ntreg) numrul de pri n care este divizat intervalul de integrare;

    ( )f x - numele subprogramului-funcie (de tip real), cu ajutorul cruia se calculeaz valoarea

    integrandului ( )f x .Date de ieire:s (de tip real) valoarea aproximativ a integralei;

    ntreg i

    real , ,h s x formula dreptunghiurilor

    : ( ) ; : 0; : 2h b a n s x a h= = = +

    pentru : 0, 1i n= execut : ( )s s f x ih= + +

    :s hs= scrie s

    formula trapezelor

    : ( ) ; : 0h b a n s= =

    pentru : 1, 1i n= execut : ( )s s f a ih= + +

    : ( 0.5( ( ) ( )))s h s f a f b= + + scrie s

    formula lui Simpson

    : ( ) ; : 0.5( ( ) ( )); : 1h b a n s f a f b i= = = execut{

    : ; : 2 ( ) ( ); : 2x a ih s s f x f x h i i= + = + + + = + }

    ct timp i n<

    : 2 3s hs= scrie s

    Remarc. Adunarea repetata lungimii pasului sub forma 1i i x x h= + , n cazul n care se genereaz

    un numr mare de noduri de integrare, poate condiiona acumularea de erori. Drept urmare, n descriereaalgoritmilor s-a utilizat relaia , 0,

    i x a ih i n= + = .

    Algoritmi cu control automat al pasului de integrare (implicit i al exactitii de calcul)

    Evaluarea constantelor 2M i M , prezente n relaiile (3.7), (3.10) i (3.13), de cele mai dese ori

    ntmpindificulti serioase. De aceea, n practiccontrolul preciziei de integrare se efectueaz n baza

    unui algoritm numeric, cunoscut ca procedeul lui Runge [25, p.149]. Acest proces implic la pasul

    ( 0,1,...)k k= calculul aproximativ al integralei (3.1) conform uneia dintre formulele (3.6), (3.9) sau

    (3.12), pentru o valoare h a pasului, corespunznd unui numr 2 1kp = + de puncte de integrare, i

    compararea valorii ( )kI astfel obinute cu valoarea ( 1)kI + rezultat pentru pasul 2h , corespunznd unui

    numr de 2 1p puncte de integrare. ntruct pentru eroarea de aproximare a integralei (3.1) are loc

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    28/74

    Lucrarea de laborator 3 27

    urmtoarea relaie [16, p.394]

    ( )( 1) ( 1) ( ) 2 1k k k m I I I I + + ,

    ( m este o constant care coincide cu ordinul formulei de cuadratur aplicate) njumtirea pasului

    trebuie continuat, n principiu, pn cnd eroarea ( 1) ( )k kI I+ pentru dou aproximaii consecutive ale

    integralei scade sub o valoare admisibil (2 1)m . Apoi se consider ( 1)kI I+

    . Trebuie menionat cpentru formulele (3.6) i (3.9) avem 2m = , iar pentru (3.12) - 4m = .

    Calculul integralei cu o precizie prestabilit prin metoda njumtirii pasului poate fi optimizat

    observnd cnu este necesarevaluarea funciei n toate punctele de integrare, ci doar n cele prin care au

    fost njumtite subintervalele reelei utilizate n etapa anterioar. Restul valorilor funciei, deja calculate

    la paii anteriori, sunt folosite implicit stabilind o relaie de recuren ntre douaproximaii consecutive

    ale integralei.

    Pseudocodul algoritmilorCazul formulei dreptunghiurilor generalizate

    Date de intrare:

    ,a b (de tip real) limitele intervalului de integrare;( )f x - numele subprogramului-funcie (de tip real), cu ajutorul cruia se calculeaz valoarea integrandului

    ( )f x ; (de tip real) - exactitatea de calcul.

    Date de ieire:

    2s (de tip real) valoarea aproximativ a integralei;k (de tip ntreg) numr ce indic de cte ori a fost njumtit pasul de integrare h ;

    ntreg , ,n i kreal 1, 1, 2, ,h s s x

    1: 0; : 3 ; : 1; : ; 2: (( ) 2)k n h b a s h f a b = = = = = + execut

    {

    : 2 ; 1: 2; : 2; : 1; 2: 0; : 2n n s s h h k k s x a h= = = = + = =

    pentru : 1,i n= execut 2 : 2 ( )s s f x ih= + + 2 : 2s s h=

    }

    ct timp 12 1s s

    scrie 2,s k

    Cazul formulei trapezelor generalizate

    Se poate verifica frdificultate c succesiunea de aproximaii obinute prin formula (3.9) poate fi

    descriscu ajutorul procesului iterativ [3, p.76]:

    1

    (0 )0 0 0

    ( ) ( 1)1 1 1 1

    1

    ( ( ) ( )) 2, , 1,

    1( ( 1 2) ) , 2, 2 , 1,2,...,

    2

    k

    tr

    nk k

    tr tr k k k k k k

    i

    I f a f b h h b a n

    I I h f a i h h h n n k

    =

    = + = =

    = + + = = =

    (3.14)

    unde ( )k kh b a n=

    este lungimea subintervalelor dup etapa k, iar 2

    k

    kn=

    reprezint numrulcorespunztor de subintervale sau, echivalent, numrul punctelor noi de integrare i de njumtire a

    subintervalelor pentru etapa urmtoare. Procesul recurent (3.14) trebuie continuat pn cnd modulul

    diferenei dintre douaproximaii succesive ale integralei devine mai mic dect (2 1)m .

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    29/74

    28 Lucrarea de laborator 3

    Date de intrare:

    ,a b (de tip real) limitele intervalului de integrare;( )f x - numele subprogramului-funcie (de tip real), cu ajutorul cruia se calculeaz valoarea integrandului

    ( )f x ; (de tip real) - exactitatea de calcul.

    Date de ieire:

    2t (de tip real) valoarea aproximativ a integralei;k (de tip ntreg) numr ce indic de cte ori a fost njumtit pasul de integrare h ;

    ntreg , ,n i kreal 1, 1, 2, ,h t t x

    1: 0; : 3 ; : 1; : ; 2: 0.5 ( ( ) ( ))k n h b a t h f a f b = = = = = + execut

    {

    1: 2; 2 : 0; : 0.5t t t x a h= = =

    pentru : 1,i n= execut 2 : 2 ( )t t f x ih= + + 2 : 0.5( 1 2); : 2 ; : 0.5 ; : 1t t h t n n h h k k = + = = = +

    }ct timp 12 1t t

    scrie 2,t k

    Cazul formulei lui Simpson generalizate

    Avnd n vedere aproximaiile date de formula generalizata trapezelor pentru valori ale pasului de

    integrare njumtite succesiv, se poate verifica caproximaiile formulei generalizate a lui Simpson pot

    fi exprimate n raport cu cele dinti:( ) ( ) ( 1)(4 ) 3k k kS tr tr I I I

    = .

    Atunci, algoritmul pentru calculul recursiv al aproximaiilor conform formulei (3.12) poate fi descris cu

    ajutorul relaiilor:

    1

    (0 )0 0 0

    ( ) ( 1)1 1

    1

    ( ) ( ) ( 1)1 1

    ( ( ) ( )) 2, , 1,

    1( ( 1 2) ) , 1,2,...,

    2

    (4 ) 3; 2, 2 ( ( ) , 2 ).

    k

    tr

    nk k

    tr tr k k

    i

    k k k k

    S tr tr k k k k k k k

    I f a f b h h b a n

    I I h f a i h k

    I I I h h n n h b a n n

    =

    = + = =

    = + + =

    = = = = =

    Date de intrare:

    ,a b (de tip real) limitele intervalului de integrare;( )f x - numele subprogramului-funcie (de tip real), cu ajutorul cruia se calculeaz valoarea integrandului( )f x ;

    (de tip real) - exactitatea de calcul.Date de ieire:

    2s (de tip real) valoarea aproximativ a integralei;k (de tip ntreg) numr ce indic de cte ori a fost njumtit pasul de integrare h ;

    ntreg , ,n i kreal 1, 1, 2, 1, 2,h t t s s

    1: 0; : 15 ; : 1; : ; 2 : 0.5 ( ( ) ( )); 2 : 2k n h b a t h f a f b s t = = = = = + = execut

    {1: 2; 2 : 0; 1: 0.5t t t s a h= = =

    pentru : 1,i n= execut 2 : 2 ( 1 )t t f s ih= + +

    1: 2; 2 : 0.5( 1 2); 2 : (4 2 1) 3; : 2 ; : 0.5 ; : 1s s t t h t s t t n n h h k k = = + = = = = +

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    30/74

    Lucrarea de laborator 3 29

    }

    ct timp 12 1s s

    scrie 2,s k

    Remarc. Pentru ca numrul n al divizrilor intervalului [ ; ]a b , ca putere a lui doi, snu depeasc

    valoarea maximde tip long reprezentabil, se recomandca numrul de njumtiri ale subintervalelor

    s fie limitat. Dac, datoritconvergenei slabe a procesului, se epuizeaznumrul maximal admisibil deiteraii posibile fr a se fi atins exactitatea dorit n calculul integralei (3.1), se iese din ciclul

    njumtirilor i se emite un mesaj de eroare.

    Analiza algoritmilor

    Se observ c restul formulei (3.12) depinde de h (eroarea formulei este de ordinul patru

    ( ) ( )SnR f O h= ), n timp ce restul formulelor (3.6) i (3.9) depinde doar de2h . Astfel, formula lui Simpson

    este cu un grad de precizie mai ridicat dect formulele dreptunghiului sau trapezului. n schimb, acestea

    din urmsunt mai flexibile, deoarece utilizeazo reea cu un numr oarecare de noduri, spre deosebire deformula lui Simpson, care necesitun numr impar de noduri. Formulele (3.6) i (3.9) sunt exacte pentru

    orice funcie liniar, pe cnd formula (3.12) este exactpentru orice polinom de grad mai mic sau egal cu

    trei. FC (3.6), (3.9) i (3.12) sunt cazuri particulare ale formulelor Newton-Ctes [2, p.88].

    Formule de cuadratur de tip Gauss

    Spre deosebire de FC Newon-Ctes, care utilizeaz diviziuni echidistante ale intervalului de

    integrare, n formulele de tip Gauss nodurile se aleg ntr-un mod optim pentru ca eroarea de aproximare a

    integralei sfie minim.n cele ce urmeazvom considera formule de integrare numericde forma:

    1

    ( ) ( ) ( )b n

    i i

    ia

    x f x dx c f x=

    , (3.15)

    unde ponderea ( )x este o funcie continui pozitivpe ( ; )a b . Dacnodurile ( 1, )i x i n= se aleg ca fiind

    zerourile unui polinom ( )q x de gradul n ce satisface relaia de ortogonalitate

    ( ) ( ) ( ) 0b

    a

    x p x q x dx = , (3.16)

    pentru orice polinom ( )p x de grad pn la 1n , atunci formula (3.15) are gradul (maxim) de exactitate

    2 1n (formula va fi exactpentru orice polinom de grad mai mic sau egal cu 2 1n ) [3, p.70]. FC de tip

    Gauss sunt formule de forma (3.15) pentru care se atinge gradul maxim de exactitate. Zerourile unui

    polinom ce satisface relaia (3.16) sunt simple i aparin intervalului deschis ( ; )a b .

    Odat stabilit familia de polinoame ortogonale n raport cu ponderea ( )x , se afl rdcinile

    acestora, iar coeficienii ( 0, )ic i n= rezult din formula ( ) ( )b

    i i

    a

    c x l x dx=

    , n care ( )il x sunt polinoamele

    fundamentale de interpolare Lagrange.

    Pentru orice funcie continu pe [ ; ]a b , aproximaiile integralei conform formulei de tip Gauss vor

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    31/74

    30 Lucrarea de laborator 3

    converge cnd n ctre valoarea exacta integralei [4, p.174].

    Cazul ( ) 1x = . Formula de cuadratur a lui Gauss-Legendre

    Vom analiza mai nti cum se aproximeaz integrala1

    1

    ( ) f t dt

    i vom extinde apoi metoda pentru

    calculul integralei pe orice interval [ ; ]a b .

    Se pune problema de a determina nodurile ( 1, )i

    t i n= din intervalul [ 1;1] i coeficienii ( 1, )i

    c i n=

    astfel nct FC1

    11

    ( ) ( )n

    i i

    i

    f t dt c f t =

    sfie exactpentru orice polinom de grad mai mic sau egal cu 2 1n .

    Pentru un n fixat n calitate de noduri ale FC se iau zerourile polinomului de gradul n din sistemul

    ortogonal a lui Legendre:

    ( )21

    ( ) ( 1) , 0,1,... ( [ 1;1])2 !

    nn

    n n n

    d L t t n t

    n dt= = .

    Polinomul ( )nL t are n rdcini reale, distincte, simetrice fade origine, situate n intervalul ( 1;1) .

    Coeficienii ic se obin prin integrarea pe intervalul [ 1;1] a polinoamelor fundamentale de

    interpolare Lagrange, construite cu ajutorul rdcinilor polinomului Legendre ( )nL t :

    ( ) ( )( )1

    1,1

    , 1,n

    i j i j

    j j i

    c t t t t dt i n=

    = =

    .

    n general, pentru calculul aproximativ al integralei ( )b

    a

    f x dx se face mai nti schimbarea de

    variabil ( ) 2 ( ) 2x t b a b a= + + , pentru a avea limitele de integrare 1 i 1. Astfel, se obine formula

    ( )1

    1

    ( ) ( ) , ( ) ( ) 2 ( ) 22

    b

    a

    b af x dx F t dt F t f t b a b a

    = = + + . Aplicnd ultimei integrale FC a lui Gauss

    Legendre, avem:

    1

    ( ) ( )2

    b n

    i i

    ia

    b a f x dx c f x

    =

    , (3.17)

    unde ( ) 2 ( ) 2, 1,i i

    x t b a b a i n= + + = , cu it zerourile din intervalul ( 1;1) ale polinomului Legendre

    ( )nL t .

    Exist tabele speciale unde pot fi gsii coeficienii i nodurile FC a lui Gauss-Legendre pentru

    diferite valori ale lui n . n tabelul de mai jos sunt indicate nodurile de integrarei

    t i coeficieniii

    c

    corespunztori, pentru un numr de intervale 2,3,4,5n = .

    n , 1,i

    t i n= , 1,i

    c i n=

    2 2 1 1 3t t= = 1 2 1c c= =

    3 3 1 23 5, 0t t t= = = 1 3 25 9, 8 9c c c= = =

    4 4 1 3 20.8611363116, 0.3399810436t t t t = = = = 1 4 2 30.3478548451, 0.6521451549c c c c= = = =

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    32/74

    Lucrarea de laborator 3 31

    5 5 1 4 2

    3

    0.9061798459, 0.5384693101,

    0

    t t t t

    t

    = = = =

    = 1 5 2 4

    3

    0.2369268850, 0.4786286705,

    0.5688888889

    c c c c

    c

    = = = =

    =

    Cazul 21, 1, ( ) 1 1a b t t = = = . Formula de cuadratur a lui Gauss-Chebyshev

    Se poate observa cfuncia pondere ( )t prezintsingulariti n 1 . Utilitatea practica unei astfel

    de ponderi este integrarea numeric a funciilor ce prezint acelai gen de singularitate integrabil ncapetele domeniului de integrare, utiliznd procedeul izolrii comportrii singulare din capete n funcia

    pondere.

    FC a lui Gauss-Chebyshev se aplicpentru integrale de forma ( )1

    1 22

    1

    1 ( )t F t dt

    i are aspectul:

    1

    211

    1( ) ( )

    1

    n

    i i

    i

    F t dt c F t t =

    . (3.18)

    Aici valorile ( 1, )it i n= ale nodurilor de integrare sunt zerourile polinomului ( ) cos( arccos( ))nT t n t = degradul n din sistemul de polinoame ortogonale ale lui Chebyshev de spea nti:

    ( ) ( )( )cos (2 1) 2 , 1,it i n i n= = ,

    iar coeficieniii

    c satisfac relaia , 1,i

    c n i n= = . Deoarece toi coeficieniii

    c din formula (3.18) au

    aceeai valoare, aceast formul necesit un numr de operaii mai mic pentru atingerea unui anumit

    ordin de precizie, n comparaie cu formula (3.17).

    Orice integral de forma ( )

    1 22

    1 ( )

    b

    a x f x dx

    sau ( )

    b

    af x dx ( a b < < < ), poate fi adus la forma

    (3.18) printr-o transformare convenabilde variabil.

    Pentru a calcula integrala ( ) ( )b

    a

    x f x dx cu exactitatea dat 0 > , conform formulei (3.17) sau

    (3.18), se poate aplica principiul lui Runge. Algoritmii de calcul descrii de aceste dou formule sunt

    simpli i se implementeazanalog celor definii de formulele (3.5), (3.8), (3.11).

    3.III. Modul de desfurare a lucrrii

    Cerine fa de ndeplinirea lucrrii

    S se elaboreze un program destinat calculului integralei (3.1) cu exactitatea dat 0 > . n acest

    scop, se vor implementa algoritmii metodelor numerice analizate la punctul 3.II ntr-un limbaj de

    programare de nivel nalt. Programul de calcul s se testeze pe exemplele propuse la sfritul lucrrii de

    laborator.

    S se extrag la tipar valoarea aproximativ a integralei, numrul de njumtiri ale pasului iniial

    de integrare necesar pentru a obine exactitatea cerut 0 > , precum i timpii necesari pentru efectuarea

    unei iteraii i pentru atingerea unei precizii dorite. n plus, pentru fiecare algoritm se va afia ireprezenta grafic variaia erorii aparente ( 1) ( )k kI I+ (distana dintre dou iteraii succesive n cadrul

    procedeului lui Runge) pe parcursul iteraiilor. Se vor compara rezultatele obinute prin utilizarea

  • 8/3/2019 Metode Si Algoritmi La Analiza Numerica Capcelea Maria Capcelea Titu Secrieru Ion

    33/74

    32 Lucrarea de laborator 3

    diferiilor algoritmi (eficiena lor relativ n rezolvarea problemei date) i se va determina algoritmul

    optim.

    Chestiuni de studiat

    1. Comparai eficiena diferiilor algoritmi pentru calculul aproximativ al aceleiai integrale.

    2. S se fac o analiz experimental a erorii la integrarea numeric n funcie de valoarea pasului de

    integrare, precum i de modul de alegere a nodurilor i a coeficienilor FC.

    3. S se fac o analiz experimental a dependenei timpului de calcul a aproximaiei integralei de

    exactitatea de calcul impus.

    Probleme propuse spre rezolvare

    a) Pentru integralele definite ce urmeaz

    1

    20

    11. ;

    1dx

    x+

    22

    0

    7. sin ;x dx 1

    0

    13. cos ;