Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AstronomieBiofizicaBiologieBotanicaCartiChimieCopii
Educatie civicaFabule ghicitoriFizicaGramaticaJocLiteratura romanaLogica
MatematicaPoeziiPsihologie psihiatrieSociologie


INTERPOLAREA NUMERICA - Formula de interpolare Lagrange

Matematica



+ Font mai mare | - Font mai mic



INTERPOLAREA NUMERICA



1. Introducere

Interpolarea este operatia prin care unei functii 'fr(x)' determinata printr-un numar finit de puncte (xi, fr( xi)) , i=1,,n, i se estimeaza valoarea corespunzatoare unui argument x xi, unde x (inf xi, sup xi),i=1,,n. Prin inf xi si sup xi am notat elementul inferior, respectiv superior din multimea

X=.

In viata de zi cu zi se intalnesc nenumarate exemple de interpolare. Atunci cand minutarul unui ceasornic se afla intre doua diviziuni ale cadranului, valoarea diviziunii fiind de 5 minute aprecierea numarului de minute corespunzatoare orei respective se face prin interpolare. Evident, eroarea comisa nu poate depasi numarul de minute aferent intervalului dintre doua diviziuni consecutive ale cadranului.

Aprecierea temperaturii dintr-o incapere cu ajutorul unui termometru, citirea presiunii unui fluid cu ajutorul unui manometru sau al unui piezometru, masurarea tensiunii si a intensitatii unui curent electric au la baza operatia de interpolare.

Din punct de vedere matematic problema interpolarii monovariabile se pune corect astfel incat sa avem :

Prin fr(α) am notat valoarea reala (exacta) a functiei cercetate pentru x= α, iar prin ε un numar pozitiv impus, numit eroare relativa maxima admisibila.

Functia y=f(x) care satisface numai conditia a) se numeste functie de interpolare sau, pe scurt, interpolant. Interpolantul care satisface si conditia b) se va numi interpolant admisibil.

Fie d(xi) = f'r(xi) valoarea derivatei functiei exacte (supusa operatiei de interpolare), in argumentul xi (i=1,..,n).

Interpolantul y=f(x) cu proprietatea

f'(xi)=d(xi), () i=1,,n,

se numeste interpolant Hermite.

Un asemenea interpolant se va reprezenta grafic printr-o curba tangenta graficului functiei exacte, y=fr(x), in punctele de abscise xi.

De regula, un interpolant y=y(x) se construieste de forma

unde fj(x),(j=1,,n) se numesc functii de baza iar coeficientii α j(j=1,,n), urmeaza a se determina din conditiile :

Evident, aceste conditii reprezinta un sistem liniar de ecuatii in necunoscutele α j (j=1,,n).

Se cuvine sa facem mentiunea ca pot exista diferite functii de baza incat sistemul (2.) sa fie compatibil. In aceste conditii, problema care se impune este de a alege cel mai potrivit ansamblu de functii de baza fj(x), j=1,,n, astfel incit sa se obtina un interpolant optim sau, cel putin, admisibil. (Prin interpolant optim se intelege acel interpolant caracterizat prin cele mai mici erori relative). Determinarea acestui interpolant reprezinta obiectul acestui capitol. In ce priveste functiile de baza utilizate, acestea vor fi de tip polinomial definite fie pe intervalul [inf xi,sup xi]i=i,,n, fie pe subintervale incluse in intervalul precedent.

2. Formula de interpolare Lagrange

Fie f(x) o functie definita pe [a,b] cunoscuta in n+1 puncte arbitrare, distincte si in ordine crescatoare x0,x1,,xn [a,b]

x | x0 x1 xn-1 xn

f(x) | f0 f1 fn-1 fn

Pentru a intelege ideea de baza a formulei lui Lagrange sa consideram produsul:

= (x - x1)(x - x2)(x-xn)

Functia este un polinom de grad n, egal cu zero pentru x=x1, x=x2,, x=xn. Daca impartim la , functia rezultanta

devine egala cu unitatea pentru x=x0 si egala cu zero pentru x=x1, x=x2,, x=xn.Similar, putem defini Ln,i(x) sub forma:

Functia Ln,i(x) este un polinom de grad n care devine egal cu unitatea pentru x=xj, ji. Daca inmultim Ln,0 cu f0, Ln,1(x) cu f1,, Ln,n(x) cu fn si insumam expresiile astfel obtinute, suma va fi un polinom de grad n, egal cu fi pentru i=0,1,,n.

Formula de interpolare Lagrange dedusa in acest mod poate fi scrisa sub forma :

Ecuatia (4.) este echivalenta cu o suma de puteri ai carei coeficienti rezulta din rezolvarea unui sistem de ecuatii liniare de forma (2.).

Exemplul 1. Interpolarea Lagrange in trei puncte.

Sa se afle interpolantul Lagrange care trece prin punctele (-1,2), (1,1) si (2,1).

Vom determina

Formule de interpolare Newton prin noduri echidistante [ 3 ], [ 9 ]

In capitolul anterior am studiat formula de interpolare Lagrange care poate fi utilizata atat pentru interpolarea in noduri echidistante cat si pentru retele la care distanta dintre noduri este variabila.

Interpolarea Lagrange prezinta o serie de dezavantaje :

un numar mare de calcule ;

modificarea valorii x pentru care se face interpolarea implica, de fiecare data, acelasi numar de calcule deoarece nu se pot utiliza rezultate partiale de la interpolarile anterioare;

modificarea numarului de noduri genereaza reluarea calculelor din acelasi motiv ca la paragraful anterior ;

evaluarea dificila a erorii.

Utilizarea interpolarii Newton evita in buna masura aceste dificultati.

Pentru a opera o interpolare de tip Newton pentru un set de date cunoscut este necesara dezvoltarea unei tabele a diferentelor. Odata obtinuta tabela diferentelor se pot obtine foarte usor formule de interpolare pentru diferite seturi de noduri consecutive (de exemplu pentru i=0,1,2,3 sau i=3,4,5,6 sau i=2,3,4 etc.).

Vom descrie in continuare doua versiuni pentru interpolarea Newton prin noduri echidistante : intrepolarea Newton directa si interpolarea Newton inversa. Matematic, cele doua interpolari sunt echivalente chiar daca au expresii diferite.

1. Formula de interpolare Newton directa

Sa consideram nodurile echidistante cu distanta dintre doua noduri succesive egala cu h. Vom nota setul de date cu (xi,fi), i=0,1,,n.

Pentru a evalua formula directa de interpolare Newton sa definim mai intai tabela diferentelor directe si coeficientii binomiali.

Diferentele directe sunt definite de urmatoarele relatii:

Δ 0fi = fi (diferenta directa de ordinul zero)

Δ 1fi = fi+1-fi (diferenta directa de ordinul intai)

Δ 2fi = Δfi+1- Δ fi (diferenta directa de ordinul doi)

Δ 3fi = Δ 2fi+1 2fi (diferenta directa de ordinul trei)

.

Δ kfi = Δ k-1fi+1- Δ k-1fi (diferenta directa de ordinul k)

Tabelul 1 ilustreaza o tabela a diferentelor pana la ordinul cinci pentru un numar de sase noduri. Incepand de la coloana a treia, fiecare coloana contine diferentele calculate pornind de la coloana anterioara. Fiecare linie include un set de diferente directe pentru punctele corespunzatoare in care s-au calculat.

Tabelul 1.

i fi Δ fi Δ 2fi Δ 3fi Δ 4fi Δ 5fi

0 f0 Δf0 Δ2f0 Δ3f0 Δ4f0 Δ5f0

1 f1 Δf1 Δ 2f1 Δ 3f1 Δ 4f1

2 f2 Δf2 Δ 2f2 Δ3f2

3 f3 Δf3 Δ2f3

4 f4 Δf4

5 f5

Se observa usor ca in cazul particular in care fi=f(xi), daca f(x) este un polinom de gradul k, diferentele de ordinul k sunt egale si diferentele de ordin superior lui k sunt nule.

Intr-adevar, diferentele de ordinul intai sunt polinoame de gradul k-1 s.a.m.d. pana la diferentele de ordinul k, ce se reduc la un termen constant.

Coeficientii binomiali sunt dati de relatiile :

unde s este s=(x-x0)/h iar h=xi+1-xi.

Polinomul de interpolare Newton direct care trece prin k+1 puncte f0,f1,,fk poate fi scris sub forma :

(9)

De exemplu, pentru k=2, ecuatia (9.) devine :

echivalenta cu

Se poate arata ca ecuatia (9.) este egala succesiv cu f0,f1,f2,,fk pentru x=x0, x=x1, x=x2, ,x=xk dupa cum urmeaza:

s=0 : N(x0) = N(x0+0) = f0

s=1 : N(x1) = N(x0+h) = f0+Δf0 = f1

s=2 : N(X2) = N(x0+2h)= f0+2Δf0+Δ2f0 = f2

s=k : N(xk) = N(x0+kh)= f0+kΔf0+k(k-1) Δ2f0+= fk

2

Primii m+1 termeni din ecuatia (9.) formeaza un polinom de interpolare de gradul m in m+1 puncte (x0,x1,x2,,xm). Similar, primii m+2 termeni formeaza un polinom de interpolare de gradul m+1 in m+2 puncte. Rezulta ca gradul polinomului de interpolare se poate schimba usor modificand numarul de diferente pe care le luam in considerare de pe prima linie din Tabelul 1.

Daca in ecuatia (9.) inlocuim x0 si f0 respectiv cu x2 si f2 formula devine :

(10)

unde s=(x-x2)/h.

Valoarea lui s devine egala cu zero pentru x=x2 si succesiv egala cu 1,2,3, pentru x=x3, x=x4, x=x5,

Ecuatia (10.) este un polinom de gradul k ce va verifica punctele x2,x3,,xk+2 si care utilizeaza diferentele aflate de-a lungul celei de a treia linii din Tabelul 1. Aceasta demonstreaza ca, odata intocmita tabela diferentelor, se pot obtine usor formule de interpolare pentru diferite seturi de puncte succesive.

2. Formula de interpolare Newton inversa

Polinomul de interpolare Newton invers este functie de diferentele descendente si coeficientii binomiali.

Diferentele inverse sunt definite de urmatoarele relatii :

0fi = fi (diferenta inversa de ordinul zero)

fi = fi - fi-1 (diferenta inversa de ordinul intai)

2fi = fi - Δfi-1 (diferenta inversa de ordinul doi)

3fi = 2fi - 2fi-1 (diferenta inversa de ordinul trei)

kfi = k-1fi - k-1fi-1 (diferenta inversa de ordinul k)

Coeficientii binomiali utilizati in formula de interpolare Newton inversa sunt :

Polinomul de interpolare Newton invers care trece prin punctele x=xj, x=xj-1, x=xj-2,, x=xj-k este dat de relatia :

(11)

unde s=(x-xj)/h,

este coeficientul binomial si nfj este diferenta inversa.

Echivalenta dintre diferenta directa si diferenta inversa este data de relatia:

(12)

Tinand cont de (12.), ecuatia (11.) poate fi scrisa in functie de diferentele directe :

sau, mai explicit,

4. Formula de interpolare Newton prin noduri neuniform distribuite

Formulele de interpolare Newton descrise anterior sunt valabile numai in cazul nodurilor echidistante. In practica, de cele mai multe ori, nu intalnim acest caz fericit. Vom deteremina in continuare o metoda de interpolare Newton pentru cazul nodurilor neuniform distribuite.

Sa presupunem ca Pn este polinomul Lagrange de grad cel mult n care coincide cu o functie f in punctele x0,x1,,xn. Metoda descrisa in continuare, care se bazeaza pe notiunea de diferente divizate, poate fi dedusa demonstrand ca polinomul Pn este de forma :

Pn(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+ +an(x-x0)(x-x1)(x-xn-1)

pentru anumite valori ale constantelor a0,a1,,an.

Pentru a determina prima constanta, a0, vom tine cont de faptul ca Pn poate fi scris sub forma data de ecuatia (14.); evaluand Pn in punctul x0 obtinem a0=Pn(x0)=f(x0).

Similar, atunci cand evaluam Pn in punctul x1, singurii termeni diferiti de zero din expresia pentru Pn(x1) sunt constanta si termenul liniar.

f(x0)+a1(x1-x0)=Pn(x1)=f(x1) ,

de unde rezulta

(15)

La aceast_ etapa vom introduce notiunea de diferenta divizata. Diferenta divizata zero a functiei f(x) in punctul xi, se noteaza f[xi] si este chiar valoarea functiei in punctul respectiv :

f[xi] = f(xi)

Urmatoarele diferente divizate se definesc prin inductie; prima diferenta divizata a functiei f in punctele xi si xi+1, se noteaza f[xi,xi+1] si este data de relatia

(16.)

Considerand ca am determinat diferentele divizate de ordinul (k-1),

f[xi,xi+1,xi+2,,xi+k-1] si f[xi+1,xi+2,,xi+k-1,xi+k],

diferenta divizata de ordinul k in punctele xi,xi+1,xi+2,,xi+k este data de relatia :

Cu aceste notatii coeficientul a1 dat de relatia (15.) poate fi reexprimat sub forma a1=f[x0,x1] iar polinomul de interpolare Pn dat de (14.) devine :

Pn(x) = f[x0]+f[x0,x1](x-x0)+a2(x-x0)(x-x1)+ +an(x-x0)(x-x1)(x-xn-1)

Repetand rationamentul anterior si folosindu-ne de notatiile introduse pentru diferentele divizate, polinomul Pn(x), va fi exprimat de relatia :

Pn(x)=f[x0]+f[x0,x1](x-x0)+f[x0,x1,x2](x-x0)(x-x1)+.

+f[x0,x1,,xn](x-x0)(x-x1)(x-xn-1)

echivalenta cu

(17.)

Ecuatia (17.) este cunoscuta sub denumirea de formula de interpolare Newton cu diferente divizate.

O schema de calcul a diferentelor divizate este ilustrata in tabelul 2.

Tabelul 2

x f(x) Prima diferenta A doua diferenta

divizata divizata

x0 f[x0]

f[x0,x1]=(f[x1]-f[x0])/(x1-x0)

x1 f[x1] f[x0,x1,x3]=(f[x1,x2]-f[x0,x1])/(x2-x0)

f[x1,x2]=(f[x2]-f[x1])/(x2-x1)

x2 f[x2] f[x1,x2,x3]=(f[x2,x3]-f[x1,x2])/(x3-x1)

f[x2,x3]=(f[x3]-f[x2]/(x3-x2)

x3 f[x3] f[x2,x3,x4]=(f[x3,x4]-f[x2,x3])/(x4-x2)

f[x3,x4]=(f[x4]-f[x3])/(x4-x3)

x4 f[x4]

5. Analiza interpolarii polinomiale

Cum putem aprecia calitatea unui interpolant ?

Considerand un interpolant polinomial scris sub forma generala data de relatia (1.), dupa ce calculam coeficientii αj, urmatorul pas consta in evaluarea interpolantului in punctele xi si verificarea daca punctele yi sunt reproduse fara erori prin rotunjire. Daca rezultatele nu corespund este posibil ca matricea coeficientilor sa nu fie corect conditionata sau sa existe o problema in program. Practic nu este insa posibil sa apreciem evolutia generala a unui interpolant cunoscand doar faptul ca reproduce datele de intrare. Cea mai buna cale este de a evalua interpolantul in cat mai multe puncte si de a trasa graficul corespunzator.

Exista totusi situatii in care calitatea interpolantului poate fi studiata analitic. Sa definim eroarea interpolarii polinomiale (atat Lagrange cat si Newton) prin

e(x) = f(x) - g(x)

unde f(x) este functia analitica care a generat valorile fi si g(x) este polinomul unic de grad n care interpoleaza cele n+1 puncte (xi,fi), i=0,1,,n. Deoarece g(x) coincide cu functia f in punctele xi, e(x) poate fi scrisa si sub forma

e(x) = (x-x0)(x-x1)(x-xn)s(x)

Vom demostra ca pentru o valoare x [x0,xn], oarecare, s(x) este dat de relatia

(20.)

unde ξ depinde de x dar este intotdeauna cuprins in intervale (x0,xn).

Sa selectam o valoare η (x0,xn) si sa definim o noua functie

p(x) = f(x)-g(x)-(x-x0)(x-x1)(x-xN)s(

echivalenta cu

p(x) = (x-x0)(x-x1)(x-xn)[s(x)-s(

Functia p(x) are valoarea zero in punctele xi, i=0,1,,n.

Derivata p'(x) are cel mult n radacini reale cuprinse in intervalul [x0,xn], derivata p'(x) are cel mult n-1 radacini reale iar derivata p(n+1)(x) are o radacina ξ[x0,xn].

Derivata de ordin n+1 a polinomului p(x) dat de relatia (22.) este

p(n+1)(x) = f(n+1)(x)-0-s(η)(n+1)!

care devine

p(n+1)( ) = f(n+1)( )-s(η)(n+1)! = 0 (24.)

unde am notat cu ξ radacina ecuatiei p(n+1)(x)=0, care va satisface conditia x0< ξ <xn. Rezulta ca

(25.)

Schimband notatiile η si ξ in x si ξ obtinem

(26.)

Rezulta in final ca eroarea data de un polinom de interpolare de ordinul n este

(27.)

unde x0<i<xn.

Datorita echivalentei dintre formula de interpolare Newton si formula de interpolare Lagrange, eroarea polinomului de interpolare Newton este identica cu cea data de formula de interpolare Lagrange. Mai mult, evaluarea erorii in cazul interpolarii Newton este mai uaoara decat in cazul interpolarii Lagrange.

Sa consideram ecuatia (9.) scrisa pentru k = n. Daca marim pe k de la n la n+1, termenul adiaional este

unde s = (x-x0)/h si xn = x0+nh. Se poate demonstra ca al doilea factor din ecuatia (28.) poate fi considerat ca o aproximatie pentru f(n+1)(x), mai exact

unde

Rezulta ca ecuatia (28.) poate fi considerata aproximativ egala cu expresia erorii (27.). Altfel spus, in interpolarea Newton, eroarea este reprezentata de termenul aditional care apare daca gradul polinomului creste cu unu ca urmare a aparitiei unui punct suplimentar xn+1. In cazul in care acest punct nu este disponibil vom verifica daca exista un punct suplimentar la cealalta extremitate, mai exact f(x1). Daca este disponibil, se poate calcula Δ n+1f-1 care va fi utilizata ca aproximare pentru Δ n+1f0.

Sa incercam sa analizam care sunt parametrii care influenteaza distributia si marimea erorii in interpolarea polinomiala.

In primul rand, ce se intampla daca pentru o functie cunoscuta vom mari din ce in ce mai mult numarul de puncte de interpolare, intervalul de definitie al functiei ramanand fix. Expresia erorii contine trei componente distincte: factorialul si produsul distantelor dintre puncte fac ca eroarea sa scada odata cu cresterea numarului de puncte de interpolare, in timp ce ordinul derivatei va creste. In majoritatea cazurilor valorile derivatei cresc mai rapid decat produsul factorial (n+1)!. Efectul practic este ca un interpolant polinomial de grad mare poate prezenta deviatii mari in puncte x, diferite de xi, motiv pentru care niciodata nu este indicata depasirea gradului patru sau cinci.

Concluzia care se impune este ca interpolarea polinomiala de grad mare nu este o idee prea buna.

Un al doilea factor care influenteaza eroarea interpolarii polinomiale este marimea domeniului de definitie.

D = xn - x0

In general, valoarea maxima pentru |e(x)| tinde la zero atunci cand D descreste. Atunci cand D creste valoarea maxima pe care o ia |e(x)| creste, devenind in unele situatii dominanta comparativ cu modulul polinomului de interpolare, in cazul unui grad mare a acestuia.

Al treilea parametru care trebuie luat in considerare la analiza interpolarii polinomiale este distributia punctelor xi pe abscisa.

In cazul in care sunt uniform distribuite, |e(x)| este mic pe centrul domeniului si tinde sa creasca rapid la extremitati.

Exemplul 6. Interpolarea functiei lui Runge [ 7 ]

O analiza detaliata a problemelor implicate de interpolarea polinomiala a fost facuta pentru prima data de Runge. El a incercat sa interpoleze polinomial pe intervalul [-1,1] o functie simpla de forma

utilizand noduri egal departate. A remarcat ca daca gradul n al polinomului de interpolare pn tinde la infinit, pn(x) este divergent pe intervalele 0,726<|x|<1. Fenomenul este ilustrat in graficul 2.Remarcati ca polinomul de interpolare este corespunzator in centru domeniului,

Fig. 2. Interpolarea polinomiala a functiei lui Runge

9. Functii spline cubice

Dificultatea care intervine atunci cand utilizam pentru interpolare polinoame Hermite consta in necesitatea de a cunoaste valorile derivatei functiei care este aproximata.

Vom descrie in acest capitol o metoda de interpolare care utilizeaza polinoame definite pe subintervale si care, cu exceptia punctelor extreme ale domeniului de interpolare, nu necesita informatii referitoare la derivatele functiei.

Cea mai utilizata aproximare polinomiala pe subintervale este interpolarea spline cubica care poate fi definita dupa cum urmeaza:

Definitie

Considerand o functie f definita pe intervalul [a,b] si un set de noduri

a = x0<x1 << xn = b,

un interpolant spline cubic, S, pentru functia f este o functie care satisface urmatoarele conditii :

a) S este un polinom cubic, notat Si pe intervalul [xi,xi+1] pentru i = 0,1,,n-1 ;

b) S(xi) = f(xi) pentru i = 0,1,,n ;

c) Si+1(xi+1) = Si(xi+1) pentru i = 0,1,,n-2 ;

d) S'i+1(xi+1) = S'i(xi+1) pentru i = 0,1,,n-2 ;

e) S'i+1(xi+1) = S'i(xi+1) pentru i = 0,1,,n-2.

f) este satisfacuta una din urmatoarele conditii :

f1) S'(x0) = S'(xn) = 0

f2) S'(x0) = f'(x0) si S'(xn) = f'(xn)

Observam ca un interpolant spline admite si derivata de ordinul doi continua, conditie care constitue un avantaj in majoritatea aplicatiilor. Conditia din definitie ca S'(x) sa fie continua in cele n-2 puncte interioare nu este suficienta, fiind necesare informatii suplimentare referitor si la derivatele in punctele extreme x0 si xn ale domeniului de interpolare.

Vom deduce mai intai expresia generala pentru un interpolant spline cubic, dupa care vom analiza mai multe posibilitati de determinare ale unui spline unic in functie de conditiile indeplinite in punctele extreme x0 _i xn.

Sa consideram intervalul [xi, xi+1] de lungime hi = xi+1-xi (vezi figura 5.). Pe acest interval putem defini polinomul cubic

(5)

unde xi <= x <= xi+1

fi-1 hi-1=xi-xi-1 fi hi=xi+1-xi fi+1

---|----- ----- -------------|----- ----- -------------|----

xi-1    xi xi+1

Fig. 5. Notatii in interpolarea spline cubica

Impunand mai intai conditia ca S(x) sa fie egal cu valorile functiei f(x) in punctele x = xi si x = xi+1 obtinem :

fi = ai (54.)

fi+1 = ai+bihi+cihi2+dihi3 (55.)

In plus este necesar ca S' si S' sa fie continue in punctele i si i+1 cu polinoamele cubice definite pe intervalele adiacente [xi-1,xi] _i [xi+1,xi+2].

Derivata de ordinul doi a polinomului cubic (5),

S'(x) = 2ci+6di(x-xi) (56.)

este definita in punctele i si i+1 de relatiile :

S'i = 2ci (57.)

S'i+1 = 2ci + 6dihi (58.)

Rezulta coeficientii ci si di, functie de S'i si S'i+1 :

Coeficientul ai este deja dat de expresia (54.). Inlocuind relatiile (54.), (59.), (60.) in (55.) vom elimina ai, ci si di si vom obtine coeficientul bi :

Cunoscand toti coeficientii, polinomul cubic Si(x) definit de relatia (5), devine :

(62)

Derivata de ordinul intai a expresiei (62.) este data in punctele x=xi si x=xi+1 de relatiile:

(63)

(64)

unde hi = xi+1-xi. Pentru intervalul xi-1 <= x <= xi, (64.) devine

(65)

Din ecuatia de continuitate pentru derivata de ordinul intai in nodul i, rezulta ca expresiile date de relatiile (6) si (65.) pentru S'i trebuie sa fie egale. Egaland aceste expresii rezulta relatia:

(66.)

Inlocuind ai si ci dati de (54.) si (59.), ecuatia (66.) poate fi rescrisa sub forma

(67.)

Aplicand relatia (67.) pentru i = 1,2,,n-1 rezulta un sistem liniar de n-1 ecuatii. Necunoscute vor fi variabilele ci (i = 0,1,,n), deoarece variabilele hi (i=0,1,,n-1) si ai (i = 0,1,,n) sunt cunoscute ca distantele dintre noduri si valorile functiei f date.

Sistemul astfel obtinut avand n-1 ecuatii si n+1 necunoscute, sa analizam posibilitatile de a elimina nedeterminarea.

O prima posibilitate de a ridica nedeterminarea consta in impunerea conditiei S'(a) = S'(b) = 0. Se obtine astfel un spline cubic natural. Fizic aceasta conditie considera ca graficul interpolantului este o dreapta in afara intervalului [x0,xn].

Utilizand notatiile existente, aceasta conditie conduce la cn = S'(xn) = 0 si 0=S'(x0) = 2c0+6d0(x0 - x0) de unde c0 = 0.

Cele doua ecuatii c0 = 0 si cn = 0 impreuna cu ecuatiile (67.) genereaza un sistem liniar descris de ecuatia matricial vectoriala Ax = b, in care A este matricea de dimensiuni (n+1)x(n+1) :

iar b si x sunt vectorii:

Matricea A este strict dominanta diagonal ceea ce inseamna ca sistemul admite o solutie unica c0,c1,,cn.

A doua conditie care permite calcularea unui spline cubic este atunci cand se cunosc avalorile primei derivate ale functiei care urmeaza sa fie aproximata in punctele x0 si xn. In acest caz se impun conditiile S'(x0) = f'(x0) si S'(xn) = f'(xn).

Sa analizam modul de rezolvare al problemei in aceasta situatie.

Tinand cont de (54.) si (59.), relatia (61.) care exprima coeficientul bi poate fi rescrisa sub forma:

(68.)

Utilizand egalitatea evidenta S'(a) = S'(x0) = b0, ecuatia (61.) devine pentru i = 0

In consecinta,

(69)

Similar,

de unde ecuatia (61.) implica pentru i = n-1 :

si

(70)

Ecuatiile (67.) impreuna cu (69.) si (70.) determina sistemul liniar Ax=b, unde A este urmatoarea matrice de dimensiune (n+1) x (n+1) :

iar b si x sunt vectorii :



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 7495
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved