Sunteți pe pagina 1din 11

Interpolare polinomial

a
Interpolare Hermite
Denitia -1.1 Se consider a:
n N

;
x
1
, x
2
, . . . , x
n
R un sistem de puncte (noduri);
m N

num arul de puncte distincte;


y
1
, y
2
, . . . , y
m
R punctele distincte ale sistemului;
n
1
, n
2
, . . . , n
m
N

ordinele de multiplicitate ale punctelor distincte n


sistem;
z
ij
R cu 1 i m, 0 j n
i
1 familie de elemente reale.
Spunem c a aceste elemente denesc un sistem de date notat cu
(SH).
Denitia -1.2 Se nume ste polinom de interpolare Hermite ata sat sis-
temului de date (SH) un polinom P R[x] cu urm atoarele propriet a ti:
1) gradP n 1;
2) P
(j)
(y
i
) = z
ij
pentru orice 1 i m, 0 j n
i
1.
Teorema -1.1 Polinomul de interpolare Hermite ata sat sistemului de date
(SH) exist a si este unic.
Denitia -1.3 Fie I un interval real ce con tine punctele x
1
, . . . , x
n
si f : I
R o func tie de n
i
1 ori derivabil a n y
i
pentru orice 1 i m. Lu am
1
z
ij
:= f
(j)
(y
i
), 1 i m, 0 j n
i
1. Polinomul de interpolare Hermite
ata sat acestui sistem de date se nume ste polinom de interpolare asociat
func tiei f si sistemului de date (SH). Not am valoarea acestui polinom
ntr-un punct x din I cu P(f; x
1
, x
2
, . . . , x
n
; x).
Denitia -1.4 Dac a n = m, atunci sistemul de date (SH) se nume ste sistem
de date Lagrange (se noteaz a cu (SL)). n acest caz vom nota z
z0
cu z
i
.Se
nume ste polinom de interpolare Lagrange ata sat sistemului de date (SL)
un polinom P R[X] cu urm atoarele propriet a ti:
1) gradP n 1;
2) P(x
i
) = z
i
pentru orice i 1, n.
Teorema -1.2 (Formula lui Lagrange)
Polinomul de interpolare Lagrange P asociat sistemului de date (SL)
se reprezint a sub forma:
P(x) =
n

i=1
z
i
L
i
(x) cu L
i
(x) =
n

j = 1
j = i
x x
j
x
i
x
j
Exemplul -1.1 Utiliznd formula lui Lagrange de reprezentare s a se de-
termine polinomul de interpolare de grad 2 ata sat datelor:
x 0 1 4
z 2 1 4
Solutie Din denitia -1.4 si teorema -1.2 rezult a c a:
P(0) = 2, P(1) = 1, P(4) = 4 si
P(x) = P(0)L
1
(x) +P(1)L
2
(x) +P(4)L
3
(x)
2
Avem:
L
1
(x) =
(x 1)(x 4)
(0 1)(0 4)
=
x
2
5x + 4
4
L
2
(x) =
x(x 4)
(1 0)(1 4)
=
x
2
4x
3
L
3
(x) =
x(x 1)
(4 0)(4 1)
=
x
2
x
12
Atunci:
P(x) = 2
x
2
5x + 4
4
+ 1
x
2
4x
3
+ 4
x
2
x
12
=
1
2
x
2

3
2
x + 2
Teorema -1.3 (Formul a de recuren t a pentru polinoamele de interpolare
Hermite ata sate unei func tii f)
Dac a m = 1 atunci
P(f; x
1
, . . . , x
1
; x) = f(x
1
) +
x x
1
1!
f(x
1
) + +
(x x
1
)
n1
(n 1)!
f
(n1)
(x
1
).
(x
1
apare de n ori).
n cazul n care m 2 si x
1
= x
n
, polinomul de interpolare Hermite
asociat unei func tiei f si nodurilor x
1
, x
2
. . . , x
n
veric a urm atoarea for-
mul a:
P(f; x
1
, x
2
. . . , x
n1
, x
n
; x) =
(x x
1
)P(f; x
2,
. . . , x
n
; x) (x x
n
)P(f; x
1
, . . . , x
n1
; x)
x
n
x
1
Denitia -1.5 n ipotezele deni tiei -1.3, se nume ste diferen t a divizat a
asociat a func tiei f si nodurilor x
1
, x
2
, . . . , x
n
coecientul lui x
n1
din scrierea
canonic a a polinomului P(f; x
1
, x
2
, . . . , x
n
; x). Not am aceast a diferen t a di-
vizat a cu simbolul f(x
1
, x
2
, . . . , x
n
).
Propozitia -1.1 (Formul a de recuren t a pentru diferen te divizate)
Pentru n 2 si x
1
= x
n
f(x
1
, x
2
, . . . , x
n
) =
f(x
2
, . . . , x
n
) f(x
1
, . . . , x
n1
)
x
n
x
1
,
3
iar
f(a, a, . . . , a
. .
n ori
) =
f
(n1)
(a)
(n 1)!
pentru orice n 1.
Propozitia -1.2 Polinomul de interpolare Hermite associat unei func tii f
si nodurilor x
1
, x
2
, . . . , x
n
veric a urm atoarea formul a de recuren t a:
P(f; x
1
, x
2
, . . . , x
n
; x) = P(f; x
1
, x
2
, . . . , x
n1
; x) +f(x
1
, x
2
, . . . , x
n
)
n1

i=1
(x x
i
)
Teorema -1.4 (Formula de reprezentare Newton a polinomului de inter-
polare)
Polinomul de interpolare Hermite associat unei func tii f si nodurilor
x
1
, x
2
, . . . , x
n
admite urm atoarea formul a de reprezentare:
P(f; x
1
, x
2
, . . . , x
n
; x) = f(x
1
) +
n

i=2
f(x
1
, x
2
, . . . , x
i
)
i1

j=1
(x x
j
)
Teorema -1.5 (Formul a de evaluare a erorii)
Fie f : I R o func tie de n ori derivabil a pe I. Atunci
|f(x) P(f; x
1
, x
2
, . . . , x
n
; x)|
1
n!
max
xI

f
(n)
(x)

i=1
(x x
i
)

, x I
Pentru a minimiza eroarea la interpolarea Lagrange pentru o functie
f denit a pe intervalul [a, b], nodurile de interpolare se aleg astfel:
x
i
=
b a
2
cos
(2i 1)
2n
+
a +b
2
, i = 1, n
Interpolarea cu aceste noduri se mai numeste si iinterpolare Cebsev.
Exemplul -1.2 Fie func tia f : [0, 4] R cu f(x) = 6

2x + 1 2x, x [0, 4].


Utiliznd formula de reprezentare Newton s a se determine polinomul de
interpolare Hermite P(x) = P(f; 0, 0, 0, 4, 4; x). Se se evalueze eroarea |f(x)
P(x)|.
4
Solutie: Avemx
1
= x
2
= x
3
= 0, x
4
= x
5
= 4. Din formula de reprezentare
Newton avem:
P(f; 0, 0, 0, 4, 4; x) = f(0)+f(0, 0)x+f(0, 0, 0)x
2
+f(0, 0, 0, 4)x
3
+f(0, 0, 0, 4, 4)x
3
(x4)
Vom calcula diferentele divizate cu formula de recurent a dat a de propoz-
itia -1.1. Calculele le vom organiza ntr-un tabel de forma:
nod d.d.1 nod d.d.2 noduri d.d.3 noduri d.d.4 noduri d.d.5 noduri
x
1
f(x
1
) f(x
1
, x
2
) f(x
1
, x
2
, x
3
) f(x
1
, x
2
, x
3
, x
4
) f(x
1
, x
2
, x
3
, x
4
, x
5
)
x
2
f(x
2
) f(x
2
, x
3
) f(x
2
, x
3
, x
4
) f(x
2
, x
3
, x
4
, x
5
)
x
3
f(x
3
) f(x
3
, x
4
) f(x
3
, x
4
, x
5
)
x
4
f(x
4
) f(x
4
, x
5
)
x
5
f(x
5
)
(am notat cu "d.d.k noduri" diferente divizate asociate la k noduri).
Cum f(x) = 6

2x + 12x = 6(2x+1)
1/2
2x rezult a c a f

(x) = 6(2x+1)
1/2
2
si f

(x) = 6(2x + 1)
3/2
. Atunci f(0) = 6, f(4) = 10, f(0, 0) = f

(0) = 4,
f(0, 4) = (f(4) f(0))/(4 0) = 1, f(4, 4) = f

(4) = 0, f(0, 0, 0) =
1
2
f

(0) = 3,
f(0, 0, 4) = (f(0, 4) f(0, 0))/(4 0) = 3/4, etc.. Rezult a urm atorul tabel n
cazul datelor problemei:
nod d.d.1 nod d.d.2 noduri d.d.3 noduri d.d.4 noduri d.d.5 noduri
0 6 4 3 9/16 7/64
0 6 4 3/4 2/16
0 6 1 1/4
4 10 0
4 10
Atunci (cu formula de reprezentare Newton) avem
P(f; 0, 0, 0, 4, 4; x) = 6 + 4x 3x
2
+
9
16
x
3

7
64
x
3
(x 4)
5
Din formula de evaluare a erorii rezult a c a
|f(x) P[f; 0, 0, 0, 4, 4; x]|
M
5
5!
|x
3
(x 4)
2
| x [0, 4]
unde M
5
= sup
x[0,4]
|f
(5)
(x)|. Avem f
(3)
(x) = 18(2x + 1)
5/2
, f
(4)
(x) = 90(2x +
1)
7/2
, f
(5)
(x) = 630(2x +1)
9/2
. Cum f
(6)
(x) = 630 9(2x +1)
11/2
< 0, rezult a
c a f
(5)
este descresc atoare si cum f
(5)
(x) > 0 x [0, 4]rezult a c a M
5
=
f
(5)
(0) = 630. Atunci
|f(x) P(x)|
630
120
|x
3
(x 4)
2
| =
21
4
x
3
(x 4)
2
x [0, 4]
6
Formule de interpolare cu noduri echidistante
Consider am date:
Functia f : R R,
Familia (x
j
)
jZ
o retea de noduri echidistante cu pasul h, denit a
prin x
0
R, x
j
= x
0
+jh, j Z
Not am:
q =
x x
0
h
, A
n
q
=
n1

j=0
(q j) si C
n
q
=
A
n
q
n!
n N

.
Prin conventie lu am A
0
q
= C
0
q
= 1.
Denim diferentele ascendente
n
h
de ordinul n recurent astfel:
0
h
f(x) =
f(x),
n
h
f(x) =
n1
h
f(x +h)
n1
h
f(x), n N

.
Denim diferentele descendente
n
h
de ordinul n recurent astfel:
0
h
f(x) =
f(x),
n
h
f(x) =
n1
h
f(x)
n1
h
f(x h), n N

.
Rezult a urm atoarele formule de interpolare polinomial a cu noduri
echidistante:
a) FORMULA LUI NEWTON DE INTERPOLARE ASCENDENT

A
P(f; x
0
, x
1
, . . . , x
n
; x) =
n

i=0
C
i
q

i
h
f(x
0
)
Exemplul -1.3 S a se determine, folosind formula de interpolare Newton
ascendent a, polinomul Lagrange ata sat datelor: n = 3, x
0
= 4, h = 2 (de
unde x
1
= 6, x
2
= 8, x
3
= 10) si f : R R o func tie continu a cu f(x
0
) = 1,
f(x
1
) = 3, f(x
2
) = 8, f(x
3
) = 20 si s a se estimeze valoarea func tiei f n
punctul x = 7.
7
Solutie Organiz am calculul diferentelor nite ascendente n tabelul
urm ator:
k x
k
f(x
k
)
1
h
f(x
k
)
2
h
f(x
k
)
3
h
f(x
k
)
0 4 1 2 3 4
1 6 3 5 7
2 8 8 12
3 10 20
(De exemplu
1
h
f(x
0
) =
h
f(x
0
) = f(x
1
) f(x
0
) = 3 1 = 2,
2
h
f(x
0
) =

1
h

h
f(x
0
) =
h
f(x
1
)
h
f(x
0
) =
1
h
f(x
1
)
1
h
f(x
0
) = 5 2 = 3, etc.) Atunci

0
h
f(x
0
) = 1,
1
h
f(x
0
) = 2,
2
h
f(x
0
) = 3,
3
h
f(x
0
) = 4.
Fie x R Avem q =
xx
0
h
=
x4
2
si atunci C
0
q
= 1, C
1
q
= q =
x4
2
,C
2
q
=
q(q1)
2
=
(x4)(x6)
8
, C
3
q
=
q(q1)(q2)
6
=
(x4)(x6)(x8)
48
. Rezult a c a:
P(f; x
0
, x
1
, x
2
, x
3
; x) =
3

i=0
C
i
q

i
h
f(x
0
) == 1+(x4)+
3
8
(x4)(x6)+
4
48
(x4)(x6)(x8)
si deci
P(f; x
0
, x
1
, x
2
, x
3
; 7) = 1 + 3 +
9
8

1
4
=
39
8
= 4, 875
b) FORMULA LUI NEWTON DE INTERPOLARE DESCENDENT

A
P(f; x
n
, x
n+1
, . . . , x
0
; x) =
n

i=0
(1)
i
C
i
q

i
h
f(x
0
)
Exemplul -1.4 S a se determine, folosind formula de interpolare New-
ton descendent a, polinomul Lagrange ata sat datelor: n = 3, x
0
= 10,
h = 2(de unde x
1
= 8, x
2
= 6, x
3
= 4) si f : R Ro func tie con-
tinu a cu f(x
0
) = 20, f(x
1
) = 8, f(x
2
) = 3, f(x
3
) = 1 si s a se estimeze
valoarea func tiei f n punctul x = 7.
8
Solutie Organiz am calculul diferentelor nite descendente n tabelul
urm ator:
k x
k
f(x
k
)
1
h
f(x
k
)
2
h
f(x
k
)
3
h
f(x
k
)
0 10 20 12 7 4
1 8 8 5 3
2 6 3 2
3 4 1
(De exemplu
1
h
f(x
0
) =
h
f(x
0
) = f(x
0
) f(x
1
) = 20 8 = 12,
2
h
f(x
0
) =

1
h

h
f(x
0
) =
h
f(x
0
)
h
f(x
1
) =
1
h
f(x
0
)
1
h
f(x
1
) = 12 5 = 7, etc.)
Atunci
0
h
f(x
0
) = 20,
1
h
f(x
0
) = 12,
2
h
f(x
0
) = 7,
3
h
f(x
0
) = 4.
Fie x R Avem q =
xx
0
h
=
x10
2
si atunci C
0
q
= 1, C
1
q
= q =
x10
2
,
C
2
q
=
q(q1)
2
=
(x10)(x8)
8
, C
3
q
=
q(q1)(q2)
6
=
(x10)(x8)(x6)
48
. Rezult a
c a:
P(f; x
0
, x
1
, x
2
, x
3
; x) =
3

i=0
(1)
i
C
i
q

i
h
f(x
0
) =
= 20 +
12
2
(x 10) +
7
8
(x 10)(x 8) +
4
48
(x 10)(x 8)(x 6)
si deci
P(f; x
0
, x
1
, x
2
, x
3
; 7) = 20 18 +
21
8
+
1
4
=
39
8
= 4, 875
9
Interpolare cu functii spline cubice
Fie [a, b] R, n N, n 3, = {x
i
| 1 i n}, unde a = x
1
< x
2
< . . . <
x
i
< x
i+1
< . . . < x
n
= b. Not am I
i
= [x
i
, x
i+1
], h
i
= x
i+1
x
i
, i 1, n 1 si
P
k
(I
i
) = {p : I
i
R| p functie polinomial a de grad k}.
Se numeste functie spline cubic a relativ a la diviziunea o functie
s : [a, b] R cu propriet atile:
a) s C
2
([a, b]); b) s|
I
i
P
3
(I
i
), i 1, n 1.
Se numeste functie spline cubic a de interpolare asociat a diviziunii
si functiei f : [a, b] R o functie spline cubic a cu proprietatea s(x
i
) = f(x
i
),
i 1, n.
Teorema -1.6 Fie f : [a, b] R derivabil a. Atunci exist a si este unic a o
func tie spline cubic a de interpolare asociat a diviziunii si func tiei f cu
proprietatea s

(a) = f

(a) si s

(b) = f

(b).
Algoritmul pentru calculul functiei spline s se realizeaz a n urm a-
toarele etape:
Se calculeaza y
i
= f(x
i
), i 1, n 1.
Se calculeaza
a
i+1
=
h
i+1
h
i
+h
i+1
, b
i+1
=
h
i
h
i
+h
i+1
,
c
i+1
=
3h
i
h
i+1
h
i
+h
i+1

_
1
h
2
i
(y
i+1
y
i
) +
1
h
2
i+1
(y
i+2
y
i+1
)
_
, i 1, n 2.
Se atribuie matricea M astfel:
- m
ij
= 0, i, j 1, n.
- m
11
= 1, m
i+1i
= a
i+1
, m
i+1i+1
= 2, m
i+1i+2
= b
i+1
, i 1, n 2, m
nn
=
1.
10
Se atribuie vectorul w astfel: w
1
= f

(x
1
), w
i
= c
i,
i 2, n 1, w
n
=
f

(x
n
).
Se rezolva sistemul de ecuatii liniare Mv = w. Rezolvarea sistemului
se poate face cu metoda Jacobi pentru matrici diagonal dominante
pe linii (deoarece se poate constata usor c a M este diagonal domi-
nant a pe linii).
Se calculeaza

i
=
3
h
2
i
(y
i+1
y
i
)
1
h
i
(2v
i
+v
i+1
), i 1, n 1

i
=
2
h
3
i
(y
i+1
y
i
) +
1
h
2
i
(v
i
+v
i+1
), i 1, n 1.
Se calculeaza valoarea functiei spline de interpolare in punctul z
astfel: pentru i 1, n 1, daca x
i
z x
i+1
atunci
s(z) = y
i
+v
i
(z x
i
) +
i
(z x
i
)
2
+
i
(z x
i
)
3
.
11