You are on page 1of 8

INTERPOLACE

Dana ern
Katedra matematiky a didaktiky matematiky
Technick univerzita v Liberci
http://www.fp.tul.cz/kmd/

19.4.2010

Obsah
1 Interpolace
1.1 Lagrangeova interpolace . . . . . . . . . . . . . . .
1.2 Hermiteova interpolace . . . . . . . . . . . . . . . .
1.3 Interpolace pomoc splin . . . . . . . . . . . . . .
1.3.1 Konstrukce linernho interpolanho splinu
1.3.2 Konstrukce kubickho interpolanho splinu

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

3
3
5
5
6
6

Kapitola 1
Interpolace
Interpolace je aproximace funkce jinou funkc, kter v danch bodech nabv pedepsanch hodnot, ppadn pedepsanch hodnot derivac. V tto kapitole se budeme zabvat
interpolac v jedn dimenzi.

1.1

Lagrangeova interpolace

Lagrangeova interpolace je aproximace funkce pomoc polynomu, kter v danch bodech


nabv pedepsanch hodnot. Uvaujme funkci f , kter je definovna na intervalu [a, b].
Mjme dno n + 1 navzjem rznch bod x0 , x1 , . . . , xn [a, b] a k nim pslun funkn
hodnoty f (x0 ) , f (x1 ) , . . . , f (xn ). Body x0 , x1 , . . . , xn [a, b] se nazvaj uzly. Polynom P
stupn nejve n, pro kter plat
P (xi ) = f (xi ) ,

i = 0, 1, . . . , n,

(1.1)

se nazv Lagrangev interpolan polynom. Symbolem C k ([a, b]) budeme znait mnoinu
vech funkc definovanch na intervalu [a, b], kter maj spojit parciln derivace a do
du k. Nsledujc vta se zabv existenc, jednoznanost a odhadem chyby.
Vta 1. Nech je funkce f definovna na intervalu [a, b] a nech x0 , x1 , . . . , xn [a, b] jsou
navzjem rzn body. Potom existuje prv jeden polynom stupn nejve n, pro kter plat
P (xi ) = f (xi ) ,

i = 0, 1, . . . , n.

(1.2)

Tento polynom lze vyjdit ve tvaru


P (x) =

n
X

li (x) f (xi ) ,

(1.3)

i=0

kde
li (x) =

nj=0,j6=i (x xj )
.
nj=0,j6=i (xi xj )
3

(1.4)

f
P

1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
4

Obrzek 1.1: Funkce f a jej Lagrangev interpolan polynom P pro uzly 4, 3, . . . , 3, 4.


Pokud navc f C n+1 ([a, b]), potom plat
|f (x) P (x)|

maxx[a,b] |f n+1 (x)|


|n+1 (x)| ,
(n + 1)!

(1.5)

kde
n+1 (x) = nj=0 (x xj ) .

(1.6)

Z toho plyne, e odhad chyby interpolace (1.5) zvis na vlastnostech interpolovan funkce
f a tak na rozloen interpolanch uzl. Napklad pro ekvidistantn uzly xi = a + ih, h =
(b a) /n, i = 0, . . . , n, se funkce n+1 pro velk n v blzkosti okraj velmi mn a nabv
zde i velkch hodnot. Proto tak interpolan polynomy vych stup se asto zejmna
na okrajch velmi vln, viz obrzek 1.1. Z tohoto dvodu interpolace polynomem velkho
stupn vtinou nen pli vhodn, pokud interpolovan funkce nen sama polynomem.
Numerick vpoet Lagrangeova interpolanho polynomu podle Lagrangeova vzorce (1.3)
nen pli efektivn. astji se k vpotu pouv Newtonv tvar Lagrangeova interpolanho polynomu, kter pouv pomrn diference.
Pro n + 1 rznch bod x0 , . . . , xn je prvn pomrn diference definovna vzorcem
f [x0 , x1 ] =

f (x1 ) f (x0 )
x1 x0

(1.7)

a n-t pomrn diference je definovna rekurentn vzorcem


f [x0 , . . . xn ] =

f [x1 , . . . xn ] f [x0 , . . . xn1 ]


.
xn x0
4

(1.8)

Lagrangev interpolan polynom lze pst v Newtonov tvaru:


P (x) = f (x0 ) + (x x0 ) f [x0 , x1 ] + (x x0 ) (x x1 ) f [x0 , x1 , x2 ] +
+ . . . + (x x0 ) . . . (x xn1 ) f [x0 , . . . xn ] .

(1.9)

Vpoet Lagrangeova interpolanho polynomu v Newtonov tvaru vyaduje mn operac


ne vpoet pomoc Lagrangeova vzorce. Chceme-li do ji vypotenho interpolanho
polynomu zahrnout dal uzel a dal funkn hodnotu, potom v Newtonov vzorci pouze
pibyde dal len, zatmco vpoet podle Lagrangeova vzorce bychom museli provst cel
znova.

1.2

Hermiteova interpolace

Interpolan polynom stupn 2n + 1, kter v danch uzlech nabv pedepsanch funknch hodnot a jeho prvn derivace nabv pedepsanch hodnot, se nazv Hermitev
interpolan polynom.
Vta 2. Jestlie x0 , x1 , . . . , xn [a, b] jsou navzjem rzn body a funkce f je definovna
a diferencovateln na intervalu [a, b], potom existuje prv jeden polynom stupn nejve
2n + 1, pro kter plat
P (xi ) = f (xi ) , i = 0, 1, . . . , n,
(1.10)
a
P 0 (xi ) = f 0 (xi ) ,

i = 0, 1, . . . , n.

(1.11)

Pokud navc f C 2n+2 ([a, b]), potom plat


|f (x) P (x)|

1.3

maxx[a,b] |f 2n+2 (x)|


|n+1 (x)| .
(2n + 2)!

(1.12)

Interpolace pomoc splin

Spline je po stech polynomiln funkce, kter m spojit derivace do uritho du.


Nech x0 , x1 , . . . , xn [a, b] jsou navzjem rzn body, pro kter plat
(1.13)

x0 < x1 < . . . < xn .

Funkci, kter je na kadm intervalu [xi , xi+1 ], i = 0, . . . , n, polynomem stupn k a kter


m v intervalu [x0 , xn ] spojit derivace a do du k 1, nazvme (obyejnm) splinem
du k.
Pro danou funkci f definovanou na intervalu [x0 , xn ] je pslun interpolan spline s du
k uren podmnkami:
f (xi ) = s (xi ) ,

j = 1, . . . k 1,
5

i = 0, . . . n.

(1.14)

f
s

0.8

0.6

0.4

0.2

0.2
4

Obrzek 1.2: Funkce f a pslun linern interpolan spline s pro uzly 4, 3, . . . , 3, 4.


a
(j)

(j)

si (xi ) = si+1 (xi ) ,

j = 1, . . . k 1,

i = 0, . . . n 1,

(1.15)

kde si = s|[xi1 ,xi] .


Takto definovan spline du k nen pro danou funkci f uren jednoznan. Spline je uren
k + 1 parametry na kadm intervalu [xi , xi+1 ], i = 0, . . . n 1, tedy celkem n (k + 1)
parametry. Pro interpolaci pomoc splinu mme vak pouze n + 1 podmnek na funkn
hodnoty a k (n 1) podmnek na spojitost a spojitost derivac, chyb k 1 podmnek.

1.3.1

Konstrukce linernho interpolanho splinu

Linern interpolan spline interpolujc danou funkci f uzlech x0 , . . . , xn , kter jsou seazeny vzestupn, je dn vztahem:

s (x) = f (xi ) + (x xi )

f (xi+1 ) f (xi )
,
xi+1 xi

x [xi , xi+1 ] ,

i = 0, . . . , n 1.

(1.16)

f
s

0.8

0.6

0.4

0.2

0.2
4

Obrzek 1.3: Funkce f a pslun kubick interpolan spline s pro uzly 4, 3, . . . , 3, 4.

1.3.2

Konstrukce kubickho interpolanho splinu

Jednm z nejpouvanjch splin je kubick spline, to je spline tetho du. Jak ji bylo
zmnno, spline du vtho ne jedna nen uren jednoznan. V ppad kubickho splinu
je teba pidat dv podmnky. Pidme-li podmnky s0 (x0 ) = f 0 (x0 ), s0 (xn ) = f 0 (xn ),
dostaneme obyejn kubick spline. Pidme-li msto nich podmnky s00 (x0 ) = s00 (xn ) = 0,
dostaneme pirozen kubick spline.
Spliny meme zkonstruovat pmo z podmnek na spojitost a spojitost derivac a z interpolanch podmnek. Zde si uvedeme metodu konstrukce kubickho interpolanho splinu,
kter je mn asov nron. Budeme konstruovat kubick spline splujc podmnku
s00 (x0 ) = f0 ,

s00 (xn ) = fn ,

(1.17)

kde f0 a fn jsou dan hodnoty.


Ozname Mi = s00 (xi ), hi = xi+1 xi , i = 0, . . . , n. Potom M0 = f0 , Mn = fn a ostatn
hodnoty Mi urme eenm soustavy:

hi1 Mi1 + 2 (hi + hi1 ) Mi + hi Mi+1

f (xi+1 ) f (xi ) f (xi ) f (xi1 )


=6

hi
hi1


, (1.18)

kde i = 1, . . . n 1. Matice soustavy je tdiagonln, oste diagonln dominantn a tedy


regulrn. Soustava m proto prv jedno een a lze ji efektivn vyeit napklad pomoc
Gaussovy eliminace. Po nalezen hodnot Mi urme spline pomoc vztahu:
7

(x xi )3
(xi+1 x)3
Mi+1 +
Mi + (x xi ) Ai + Bi ,
6hi
6hi
kde i = 0, . . . , n 1,
s (x) =

Ai =

f (xi+1 ) f (xi ) Mi+1 hi Mi hi

,
hi
6

x [xi , xi+1 ] ,

(1.19)

(1.20)

a
Bi = f (xi )

Mi h2i
.
6

(1.21)

You might also like