Sunteți pe pagina 1din 5

CAPITOLUL V

INTERPOLARE

§ 1. Generalităţi

Fiind date n abscise (numite noduri) x 1 , x 2 ,..., x n , aflate pe [a , b] şi valorile

unei funcţii necunoscute f ( x ) în aceste noduri y1 , y 2 ,..., y n

f (x i ) = y i , i = 1, 2, ..., n ,
se cere să se construiască o funcţie F( x ) (numită funcţie de interpolare) care în cele n

noduri ia aceleaşi valori cu funcţia f ( x ) , adică

F( x i ) = y i , i = 1, 2, ..., n ,
şi care să aproximeze funcţia necunoscută f(x).
Problema are sens chiar dacă se cunoaşte forma funcţiei f ( x ) , dar ea are o
formă foarte complicată, nepractică în aplicaţii.
Din punct de vedere geometric, problema revine la aflarea unei curbe care trece
prin n puncte M ( x i , y i ) , i = 1, 2, ..., n .

Funcţia F( x ) care rezolvă problema, de obicei se foloseşte pentru aproximarea

valorii lui f ( x ) într-un punct x care nu este nod. Dacă x ∈ [x 1 , x n ] operaţia se

numeşte interpolare, dacă însă x ∈ [ a , b ] − [x 1 , x n ] operaţia se numeşte extrapolare.


Vom exemplifica aceste consideraţii generale analizând interpolarea liniară pe
porţiuni şi interpolarea polinomială conform metodei lui Lagrange.

§ 2. Interpolare prin polinoame liniare pe porţiuni

Fie ∆ : x 1 < x 2 < ... < x n o diviziune a intervalului [x 1 , x n ] şi n numere reale

y1 , y 2 ..., y n
Se introduc polinoamele de gradul întâi l 1 ( x ) , l i ( x ) , i = 2, ..., n − 1 , l n ( x )
în felul următor:
 x2 − x
 , x1 ≤ x ≤ x 2
l 1 (x) =  x 2 − x 1
0, x2 < x ≤ xn

 x − x i −1
x − x , x i −1 < x ≤ x i
 i i −1

 x −x
l i ( x ) =  i +1 , x i < x ≤ x i +1
 x i +1 − x i
0, x 1 ≤ x ≤ x i −1 sau x i +1 < x ≤ x n


 x − x n −1
 , x n −1 < x ≤ x n
l n ( x ) =  x n − x n −1
0, x 1 ≤ x ≤ x n −1

Aceste polinoame satisfac relaţiile
1, i = j
l i ( x j ) = δ ij =  , δ ij fiind simbolul lui Kronecker.
0, j ≠ i,
Cu ajutorul acestor funcţii elementare se construieşte funcţia liniară pe porţiuni,
n
y( x ) = ∑ y i l i ( x ) .
i =1

În cazul particular x 1 = 0 şi x n = 1 , rezultă funcţiile elementare

x2 − x
 , 0 ≤ x ≤ x2
l 1 (x) =  x 2
0, x2 < x ≤ 1

 x − x i −1
x − x , x i −1 < x ≤ x i
 i i −1

 x i +1 − x
l i (x) =  , x i < x ≤ x i +1
 x i +1 − x i
0, 0 ≤ x ≤ x i −1 sau x i +1 < x ≤ 1


 x − x n −1
 , x n −1 < x ≤ 1
l n ( x ) =  1 − x n −1
0, 0 ≤ x ≤ x n −1

Aplicaţie. Să se determine funcţia de interpolare liniară 0 ≤ x ≤1
corespunzătoare nodurilor (0,3), (1/3,2), (2/3,0), (1,2) în punctul x = .5 .
Program 1
ORIGIN 1
xp .5
1 2
x 0 1 x= 0 0.333 0.667 1
3 3
n cols ( x) n=4
i 1 .. n y := ( 3 2 0 2 )

1
xp
1 3
l1 if xp , ,0 l1 = 0
3 1
3
2
xp
1 xp 2 3
l2 if xp , , if xp , ,0 l2 = 0.5
3 1 3 1
3 3
1
xp
1 2 3 1 xp
l3 if xp , 0 , if xp , , l3 = 0.5
3 3 2 1 2
1
3 3 3
2
xp
2 3
l4 if xp , 0, l4 = 0
3 2
1
3
T
y = (3 2 0 2) l = ( 0 0.5 0.5 0 )

f y .l f=1 .

Program 2. Vom folosi funcţia predefinită linterp(x,z,v)


ORIGIN ≡ 1
x :=  0 1
1 2 T T
x := x y := ( 3 2 0 2 ) y := y
 3 3 
linterp( x, y , 0.5) = 1 .

§ 3. Polinomul de interpolare al lui Lagrange

Se consideră polinoamele de gradul n-1

Pi ( x ) =
(x − x 0 )(x − x 1 )(x − x 2 )...(x − x i−1 )(x − x i+1 )...(x − x n ) ,
(x i − x 0 )(x i − x 1 )(x i − x 2 )...(x i − x i−1 )(x i − x i+1 )...(x i − x n )
i = 1, 2, ..., n
Ele se bucură de următoarele proprietăţi
1, pentru j = i
Pi ( x j ) = δ i , j = 
0, pentru j ≠ i

care se verifică uşor prin înlocuire în expresia lui Pi ( x ) .


Cu ajutorul acestor polinoame se construieşte polinomul de interpolare a lui
Lagrange
P(x ) = y1 P1 ( x ) + ... + y i Pi ( x ) + ... + y n Pn ( x ) .
Acest polinom este de gradul n-1 şi în nodul x i valoarea lui este y i
Exemple:
1. Fiind dată funcţia y = f ( x ) prin tabela următoare, să se calculeze f (0.2) .

X -1 0 2
Y 2 -1 3
Calculăm polinoamele
x ( x − 2) ( x + 1)( x − 2) ( x + 1) x
P1 ( x ) = , P2 ( x ) = , P3 ( x ) = .
(−1 − 0)(−1 − 2) (0 + 1)(0 − 2) (2 + 1)(2 − 0)
În acest caz P( x ) are expresia

P( x ) = 2P1 ( x ) − 1P2 ( x ) + 3P3 ( x ) ,


de unde
10 x 2 8x 5x 2 4 x
f ( x ) ≈ P( x ) = − −1 = − − 1 , f (0.2) = -1.2 .
6 3 3 1
Vom folosi programul
ORIGIN≡ 1

1 2
n := 3 x 0 y 1
2 3

Se introduce abscisa în care se calculează polinomul


a := 0.2 i 1 .. n j 1 .. n

a xj
Xi if j i, ,1 LAG y i . Xi LAG = −1.2 .
xi xj
j i

2. Fiind dată tabelar funcţia y[f ( x )] prin punctele M1(-5,-3), M2(-2,0),


M3(7,9), M4(11,13) şi M5(30,32) să se calculeze f(29) utilizând polinomul de
interpolare al lui Lagrange.
Varianta 1.
ORIGIN 1
5 3
2 0
n 5 x 7 y 9 a 29 i 1 .. n j 1 .. n
11 13
30 32
a xj
Xi if j i, ,1 LAG y i . Xi LAG = 31
xi xj
j i

Varianta 2.
ORIGIN 1
5 2 7 11 30
n 5 u a 29 i 1 .. n j 1 .. n
3 0 9 13 32
a u1 , j
Xi if j i, ,1 LAG u 2 , i . Xi LAG = 31 .
u1 , i u1 , j
j i

S-ar putea să vă placă și