Sunteți pe pagina 1din 11

1

8. APROXIMAREA FUNC IILOR


8.1. INTRODUCERE
Prin aproximarea unei func ii y = f (x) , se n elege nlocuirea acesteia cu o alt func ie convenabil F (x) . Aceast opera ie se realizeaz atunci cnd func ia f (x) este greu de calculat (prin derivare sau integrare), iar func ia F (x) are o expresie mai simpl, convenabil calculului numeric. Aproximarea func iilor se face i atunci cnd func ia f (x) este ob inut grafic sau din experimentri i se cere imaginea analitic a acesteia. La baza aproximrii func iilor stau mai multe principii, i anume: - principiul interpolrii; - principiul celor mai mici ptrate (miniptrat Gauss); - principiul maximelor minime (minimax Cebev).

8.2. APROXIMAREA FUNC IILOR PRIN INTERPOLARE


Fie y = f (x) , cu f : [a, b] R , pentru care se cunosc valorile y 0 , y1 , L , y n n nodurile x 0 , x1 , L , x n . Se cere determinarea unei func ii analitice F (x) , destul de simpl, care s aproximeze func ia f (x) . Func ia F (x) fiind imaginea analitic a func iei f (x) , opera ia de aproximare poart numele de interpolare i nu are solu ie unic deoarece prin (n+1) puncte: ( x0 , y 0 ), ( x1 , y1 ), L , ( x n , y n ) , se pot trasa o infinitate de curbe. De regul, pentru func ia F ( x) se folosete o combina ie liniar de func ii simple, adic un polinom de func ii de forma:
F ( x) = a0 F0 ( x) + a1 F1 ( x) + L + a n Fn ( x) .

(8.2.1)

Acest polinom de func ii se particularizeaz n: - polinom de puteri:

P ( x) = a0 + a1 x + a2 x 2 + L + an x n , - polinom trigonometric:

(8.2.2)

T ( x) = a0 + a1 cos x + a2 cos 2 x + L + an cos nx + + b1 sin x + b2 sin 2 x + L + bn sin nx, - polinom de exponen iale reale:
E ( x) = a0 + a1e x + a 2 e 2 x + L + a n e nx + + b1e
x 2 x

(8.2.3)

+ b2 e

+ L + an e

nx

(8.2.4)

- polinom de exponen iale complexe: Z ( x) = a0 + a1e xi + a 2 e 2 xi + L + a n e nxi + + b1e xi + b2 e 2 xi + L + a n e nxi , - polinom de func ii speciale: Legendre, Laguere, Hermite, Cebev. (8.2.5)

8.2.2. Interpolarea liniar


Pentru o re ea de noduri x0 , x1 , L , x n considerate distincte, presupunem cunoscute valorile y 0 , y1 , L , y n . Avnd n vedere c func ia este dat tabelar, nu putem determina valoarea func iei ntr-un punct al crui abscis difer de nodurile considerate, dect dac apelm la o formul de interpolare. Se va ncepe studiul aproximrii func iilor prin interpolare cu cea mai simpl metod, i anume: interpolarea liniar. Din setul de puncte date, considerm doar dou puncte, i anume: A( xi , y i ) i B( xi +1 , y i +1 ) (fig. 8.2.1).

y y i +1 y yi o xi x x i +1 x
Fig. 8.2.1. Imaginea interpolrii liniare

B M A

3 Pentru a determina valoarea y , ntr-un punct x ( xi < x < xi +1 ), vom considera ecua ia dreptei ce trece prin cele dou puncte A i B, i anume: y yi (8.2.9) ( x xi ) . y = y i + i +1 xi +1 xi
Pentru x = x , rezult:
y = yi + y i +1 y i ( x xi ) . xi +1 xi

Se demonstreaz [11] c eroarea de trunchiere n nodul considerat x , folosind interpolarea liniar, este:

ET ( x ) =

f ( x ) ( x x k )( x x k +1 ) , 2

(8.2.10)

8.2.3. Interpolarea ptratic


Deoarece, n general, func iile de interpolat difer de o func ie liniar, se procedeaz la interpolarea polinomial, cu gradul polinomului mai mare sau egal cu doi. In cazul interpolrii ptratice, se consider trei puncte consecutive A( xi 1 , y i 1 ) , B( xi , y i ) i C ( xi +1 , y i +1 ) (fig. 8.2.2) i se presupune c prin cele trei puncte trebuie s treac graficul unei func ii de forma:

p ( x) = a 0 + a1 x + a 2 x 2 . unde x ( xi 1 , xi +1 ) .

(8.2.11)

y C (x i+1, yi+1) A (xi-1, yi-1) M B (x i , yi) o x


Fig. 8.2.2. Imaginea interpolrii ptratice

4 Pentru determinarea coeficien ilor a 0 , a1 i a 2 , se nlocuiete x, din rela ia (8.2.11), succesiv cu xi 1 , xi , xi +1 i se ob in ecua iile:
y i 1 = a 0 + a1 xi 1 + a 2 xi21 ;

(8.2.12) (8.2.13) (8.2.14)

y i = a 0 + a1 xi + a 2 xi2 ; y i +1 = a 0 + a1 xi +1 + a 2 xi2+1 .

Rela iile (8.2.12), (8.2.13) i (8.2.14) formeaz un sistem de trei ecua ii liniare n necunoscutele a 0 , a1 i a 2 , sistem ce se poate rezolva analitic sau numeric (de exemplu, prin metoda eliminrii gaussiene).

8.2.4. Polinoame de interpolare Newton 8.2.4.1. Polinom de interpolare Newton dreapta (cu diferen e finite progresive)
Fie o func ie f : [a, b] R , pentru care se cunosc valorile yi = f ( xi ) n nodurile x0 , x1 , L, x n presupuse echidistante, adic: xi = xo + ih , i = 1, n , h fiind pasul re elei. Se pune problema determinrii unui polinom de grad mai mic sau egal cu n, care s satisfac condi iile de interpolare: Pn ( xi ) = yi , i = 0, n Pentru aproximarea func iei f, se va considera un polinom de forma:
d N n ( x) = a0 + a1 ( x x0 ) + a 2 ( x x0 )( x x1 ) + L

(8.2.15)

+ a n ( x x0 )( x x1 )L ( x xn1 )

(8.2.16)

Folosind condi iile de interpolare (8.2.15) i expresia (8.2.16), se ob ine: - pentru x = x0 , a0 = y 0 ; - pentru x = x1 , a0 + a1 ( x1 x0 ) = y1 ; - pentru x = x2 , a0 + a1 ( x2 x0 ) + a 2 ( x2 x0 )( x2 x1 ) = y 2 ; a0 + a1 ( xn x0 ) + a 2 ( xn x0 )( xn x1 ) + L ; - pentru x = xn , + a n ( xn x0 )( xn x1 )L ( xn xn1 ) = y n Nodurile fiind echidistante, se pot scrie rela iile: a0 = y 0 ; a0 + a1h = y1 ; (8.2.17) (8.2.18)

5 a0 + a1 2h + a2 2h 2 = y 2 ; (8.2.19) a0 + a1nh + a 2 n(n 1)h 2 + L + a n n!h n = y n ; (8.2.20)

Din rela ia (8.2.17) se ob ine coeficientul a0 , i anume: a0 = y 0 . nlocuind valoarea lui a0 n rela ia (8.2.18), se ob ine: y y 0 y 0 = . (8.2.21) a1 = 1 h h n mod analog se ob in i ceilal i coeficien i, i anume: 2 y 0 n y0 a2 = , L, a n = . (8.2.22) 2!h 2 n!h n Prin nlocuirea valorilor coeficien ilor din expresiile (8.2.17), (8.2.21) i (8.2.22), n rela ia (8.2.16), se ob ine:
d N n ( x) = y0 +

y 0 2 y0 ( x x0 ) + ( x x0 )( x x1 ) + L 2 1!h 2!h + y0 n!h n


n

(8.2.23)

( x x0 )( x x1 )L ( x xn1 )

Pentru ntocmirea programului de calcul se face o schimbare de nota ie, i anume y1 = y 0 . n acest caz, polinomul (8.2.23) devine:
d N n ( x ) = y1 +

y1 2 y1 ( x x1 ) + ( x x1 )( x x 2 ) + L 2 1! h 2!h + n 1 y1 (n 1)!h n 1
n 1 k =1

( x x1 )( x x 2 ) L ( x x n 1 ) = ( x xi ) ih i =1
k

(8.2.23)

= y1 + k y1

8.2.4.2. Polinom de interpolare Newton stnga (cu diferen e finite regresive)


Polinomul Newton de interpolare stnga are forma:
s N n ( x) = b0 + b1 ( x xn ) + b2 ( x xn )( x xn1 ) + L

+ bn ( x xn )( x xn1 )L ( x x1 )

(8.2.25)

6 Pentru determinarea coeficien ilor b0 , b1 , L, bn se folosesc condi iile de interpolare:


s N n ( xi ) = yi , i = n, 0 .

(8.2.26)

Astfel: - pentru x = xn , b0 = y n ; b0 + b1 ( xn1 xn ) = y n1 ; - pentru x = xn1 , - pentru x = xn2 , b0 + b1 ( xn2 xn ) + b2 ( xn2 xn )( xn2 xn1 ) = y n2 ; b0 + b1 ( x0 xn ) + b2 ( xo xn )( x0 xn1 ) + L - pentru x = x0 , . (8.2.27) + bn ( x0 xn )( x0 xn1 )L ( x0 x1 ) = y n Nodurile fiind echidistante, din rela iile (8.2.27) se ob in coeficien ii b0 , b1 , , bn , de forma: b0 = y n ; y y n1 y n ; = b1 = n h h y n 2 y n1 + y n2 2 y n n yn b2 = = . ; ; bn = 2!h 2 2!h 2 n!h n Dup nlocuiri n rela ia (8.2.25), se ob ine:
s N n ( x) = y n +

(8.2.28)

y n 2 yn ( x xn ) + ( x xn )( x xn1 ) + L 2 1!h 2!h + yn n!h n


n

(8.2.29)

( x xn )( x xn1 )L ( x x1 )

8.2.5. Polinoame de interpolare Gauss (nu se cer la examen) 8.2.5.1. Polinom de interpolare Gauss dreapta (de prima spe )
Fie f : [a, b] R , pentru care se cunosc valorile yi = f ( xi ) n punctele xn , xn+1 , L, x1 , x0 , x1 , L, xn1 , xn din intervalul [a, b] . Punctele sunt considerate echidistante, iar pasul re elei este h. Pentru aproximarea func iei f, se construiete un polinom de interpolare pornind de la un punct x0 interior intervalului [a, b] , care conduce la o eroare minim de interpolare pentru x [ a, b] . Polinomul Gauss de interpolare de prima spe este de forma:

d G2 n ( x) = c0 + c1 ( x x0 ) + c2 ( x x0 )( x x1 ) + c3 ( x x0 )( x x1 )( x x1 ) +

+ c4 ( x x0 )( x x1 )( x x1 )( x x2 ) + L + c2 n1 ( x x0 )( x x1 )( x x1 )( x x2 )L ( x xn+1 ) + + c2 n ( x x0 )( x x1 )( x x1 )( x x2 )L ( x xn+1 )( x xn ) (8.2.31) sau d G2 n ( x) = c0 + c1 ( x x0 ) + c2 ( x x0 )( x x1 ) + c3 ( x x1 )( x x0 )( x x1 ) + + c4 ( x x1 )( x x0 )( x x1 )( x x2 ) + L + c2 n1 ( x xn+1 )( x xn+ 2 ) L ( x x1 )( x x0 )( x x1 ) L ( x xn1 ) + + c2 n ( x xn+1 )( x xn+ 2 ) L ( x x1 )( x x0 )( x x1 ) L ( x xn ) + (8.2.32) Pentru determinarea constantelor c0 , c1 , L, c2 n se pun condi iile de interpolare:
d G2 n ( xi ) = yi , i = n, n .

Astfel: - pentru x = x0 , c0 = y 0 ; - pentru x = x1 , c0 + c1h = y1 ; - pentru x = x1 , c0 c1h + c2 2h 2 = y 1 ; - pentru x = x2 , c0 + c1 2h + c2 2h 2 + c3 6h 3 = y 2 ; Folosind rela iile anterioare, se ob in coeficien ii c0 , c1 , L, c2 n , dup cum urmeaz: c0 = y 0 ; y y 0 y 0 = ; (8.2.33) c1 = 1 h h 2 n1 y n+1 y1 2 y 0 + y 1 2 y 1 2 n y n = ; ; c2 n1 = ; c2n = c2 = . 2!h 2 2!h 2 (2n 1)!h 2 n1 (2n)!h 2 n
Dup nlocuiri n rela ia (8.2.32), se ob ine:

8
y 0 2 y 1 = y0 + ( x x0 ) + ( x x0 )( x x1 ) + 1!h 2!h 2 ( x x1 )( x x0 )( x x1 ) + 4 y 2 4!h 4 ( x x1 )( x x0 )( x x1 )( x x2 ) + L

d G2 n ( x )

+ + +

3 y 1 3!h 3

2 n1 y n+1 (2n 1)!h 2 n1 2 n y n (2n)!h 2 n

( x xn+1 )( x xn+ 2 )L ( x x1 )( x x1 )( x x2 )L ( x xn1 ) +

( x xn+1 )( x xn+ 2 )L ( x x1 )( x x1 )( x x2 )L ( x xn1 )( x xn ) (8.2.34)

Dac se face schimbarea de variabil t = ( x x0 ) / h , rezult:


d G2 n ( x0

t t (t 1) 2 t (t 2 1) 3 + th) = y 0 + y 0 + y 1 + y 1 + 1! 2! 3! t (t 2 1)(t 2) 4 t (t 2 1)(t 2 2 2 ) 5 + y 2 + y 2 + L + 4! 5! t (t 2 1)(t 2 2 2 ) L (t 2 (n 1) 2 ) 2 n1 + y n+1 + (2n 1)! t (t 2 1)(t 2 2 2 ) L (t 2 (n 1) 2 )(t n) 2 n + y n (2n)!

(8.2.35)

8.2.5.2. Polinom de interpolare Gauss stnga (de spe a a doua)


Polinomul Gauss de interpolare de spe a a doua este de forma:
s G2 n ( x) = c0 + c1 ( x x0 ) + c2 ( x x1 )( x x0 ) + c3 ( x x1 )( x x0 )( x x1 ) +

+ c4 ( x x2 )( x x1 )( x x0 )( x x1 ) + L + c2 n1 ( x xn+1 )( x xn+ 2 ) L ( x x1 )( x x0 )( x x1 ) L ( x xn1 ) + + c2 n ( x xn )( x xn+1 ) L ( x x1 )( x x0 )( x x1 ) L ( x xn1 ) (8.2.36) Pentru determinarea constantelor c0 , c1 , L, c2 n , se pun condi iile de interpolare: s G2 n ( xi ) = yi , i = n, n Astfel: - pentru x = x0 , c0 = y 0 ;

9 - pentru x = x1 , c0 c1h = y 1 ; - pentru x = x1 , c0 + c1h + c2 2h 2 = y1 ; - pentru x = x2 , c0 c1 2h + c2 2h 2 c3 6h 3 = y 2 ; Folosind rela iile anterioare, se ob ine: c0 = y 0 ; y y 1 y 1 = ; c1 = 0 h h 2 n y n 2 n1 y n y1 2 y 0 + y 1 2 y 1 c2 = = . ; ; c2 n1 = ; c2n = 2!h 2 2!h 2 (2n 1)!h 2 n1 (2n)!h 2 n Dup nlocuiri n rela ia (8.2.36), se ob ine: y 1 2 y 1 s G2n ( x) = y 0 + ( x x0 ) + ( x x 1 )( x x0 ) + 1!h 2!h 2
+ + + 3 y 2 3!h
3

( x x 1 )( x x0 )( x x1 ) + y n

4 y 2 4!h
4

( x x 2 )( x x 1 )( x x0 )( x x1 ) + L

2 n 1

(2n 1)!h 2 n1 2 n y n (2n)!h 2 n

( x x n+1 )( x x n+ 2 ) L ( x x 1 )( x x1 )( x x 2 ) L ( x x n1 ) +

( x x n )( x x n+ 2 ) L ( x x 1 )( x x1 )( x x 2 ) L ( x x n1 ) (8.2.37)

Dac se face schimbarea de variabil t = ( x x0 ) / h , rezult:


s G2 n ( x0

t t (t + 1) 2 t (t 2 1) 3 + th) = y 0 + y 1 + y 1 + y 2 + 1! 2! 3! t (t 2 1)(t + 2) 4 t (t 2 1)(t 2 2 2 ) 5 + y 2 + y 3 + L + 4! 5! t (t 2 1)(t 2 2 2 ) L (t 2 (n 1) 2 ) 2 n1 + y n + (2n 1)! t (t 2 1)(t 2 2 2 ) L (t 2 (n 1) 2 )(t + n) 2 n + y n (2n)!

(8.2.38)

8.2.6. Polinom de interpolare Lagrange (se cere la examen)


Fie f : [a, b] R , i x0 , x1 , L, xn (n+1) puncte din intervalul [a, b] , pentru

10 care se cunosc valorile yi = f ( xi ) . Punctele sunt considerate echidistante, iar pasul re elei este h. Pentru aproximarea func iei f, se construiete un polinom de interpolare de forma: Ln ( x) = y0 b0 ( x) + y1b1 ( x) + L + y n bn ( x) , (8.2.39)

unde b0 ( x), b1 ( x), L, bn ( x) reprezint polinoame de gradul n. Condi iile de interpolare sunt: Ln ( x) = yi , i = 0, n . (8.2.40)

Pentru a ob ine forma polinoamelor b0 ( x), b1 ( x), L, bn ( x) , se pun condi iile de interpolare (8.2.40), i anume: y0 b0 ( x0 ) + y1b1 ( x0 ) + L + y n bn ( x0 ) = y0 ; y 0 b0 ( x1 ) + y1b1 ( x1 ) + L + y n bn ( x1 ) = y1 ; . y 0 b0 ( xn ) + y1b1 ( xn ) + L + y n bn ( xn ) = y n . Prin identificare, rezult: b0 ( x0 ) = 1 ; b1 ( x0 ) = 0 ; bn ( x0 ) = 0 ; b0 ( x1 ) = 0 ; b1 ( x1 ) = 1; bn ( x1 ) = 0 ; . b0 ( xn ) = 0 ; b1 ( xn ) = 0 ; bn ( xn ) = 1 . Din rela iile (8.2.41)

(8.2.41), rezult c fiecare dintre polinoamele b0 ( x), b1 ( x), L , bn ( x) are n zerouri distincte, ceea ce nseamn c un polinom oarecare, bk (x) , are forma: bk ( x) = Ak ( x x0 )( x x1 )L ( x xk 1 )( x xk +1 )L ( x xn ) . (8.2.42)

Constantele Ak se determin din condi iile: bk ( xk ) = 1 , k = 0, n , i sunt de forma: 1 Ak = . (8.2.43) ( xk x0 )( xk x1 )L( xk xk 1 )( xk xk +1 )L( xk xn ) Dac se nlocuiesc rela iile (8.2.42) i (8.2.43) n rela ia (8.2.39), se ob ine polinomul Lagrange de interpolare, de forma: Ln ( x) =
n k =0

yk ( x

( x x0 )( x x1 ) L ( x x k 1 )( x x k +1 ) L ( x x n ) . x0 )( x k x1 ) L ( x k x k 1 )( x k x k +1 ) L ( xk x n ) k

(8.2.44)

Forma polinomului Lagrange se simplific dac se face nota ia:

11 wn ( x) = ( x x0 )( x x1 )L( x xk 1 )( x xk +1 )L( x xn ) Derivata func iei wn (x) este: wn ( x) = ( x x1 )L ( x xk 1 )( x xk +1 )L ( x xn ) + + ( x x0 )( x x2 )L ( x xk 1 )( x xk +1 )L ( x xn ) + L + ( x x0 )( x x1 )L ( x xk 1 )( x xk +1 )L ( x xn ) 1 Dac se nlocuiete x cu xk , se ob ine: wn ( x) = ( xk x0 )( xk x1 )L ( xk xk 1 )( xk xk +1 )L ( xk xn ) , (8.2.47) astfel c polinomul de interpolare Lagrange devine:
n

(8.2.45)

(8.2.46)

Ln ( x) =

k =0

y k ( x x n) w ( x
k n

w ( x)

k)

(8.2.48)