Hermiteova Interpolacija

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

SVEUCILISTE U MOSTARU

FAKULTET PRIRODOSLOVNO-MATEMATICKIH I
ODGOJNIH ZNANOSTI
Matematika-informatika

HERMITEOVA INTERPOLACIJA
Seminarski rad

Studentica: Andrea Bokovi


s
c
Profesor: dr.sc. Bojan Crnkovi
c

Mostar, lipnja 2014.

Sadraj
z
1 Uvod

2 Hermiteova polinomna interpolacija


2.1 Pogreka Hermiteove interpolacije . . . . . . . . . . . . . . . . .
s

4
6

3 Hermiteova interpolacija-Newtonova forma

Uvod

Charles Hermite je roden u Dieuze, Moselle 24. prosinca 1822., a umro je


14. sijenja 1901. u Parizu. Njegov otac je bio Ferdinand Hermite, a njegova
c
majka je Madeleine Lallemand. Roden je sa defektom u desnoj nozi koji mu je
poprilino oteavao ivot, ali, unato tome, on je uvijek bio dobro raspoloen
c
z
z
c
z
i borio se sa svojom invalidnosti s osmijehom na licu kao to vidimo na slici.
s

Slika 1: Charles Hermite (1822.-1901.)


Hermiteova interpolacija je samo jedan od naziva u njegovu ast. Za
c
standardnu interpolaciju polinoma traimo da su zadovoljeni uvjeti oblika
z
pxi yi , i 0, ..., n
gdje je yi funkcijska vrijednost. Ako je sve to znamo funkcijska vrijednost,
s
to je razuman pristup. No, ponekad imamo vie informacija. Hermiteova ins
terpolacija, osim za funkcijsku vrijednost, pogodna je i za derivaciju funkcije.
Interpolacijski polinom Pm koji zadovoljava uvjete oblika

Pm xi yi , Pm xi yi , i 0, ..., n

naziva se Hermiteov interpolacijski polinom.


Ipak, treba odgovoriti na nekoliko vanih pitanja:
z
postoji li takav interpolacijski polinom;
ako postoji je li jedinstven;
ako postoji kojeg je stupnja;

Odgovori na ova i na neka druga pitanja, poput nalaenja Hermiteova interz


polacijskog polinoma, su tema ovog seminarskog rada i ekaju vas u nastavku.
c

Hermiteova polinomna interpolacija

Teorem 1 Postoji jedinstven polinom h2n1 stupnja najvie 2n 1, koji zas


dovoljava interpolacijske uvjete

h 1 xk fk ,
2n

h2n1 xk fk ,

k 0, ..., n,

c
c
gdje su xk medusobno razliite toke i fk ,fk zadani realni brojevi.
1 Dokaz.

Ideja: konstrukcija baze nalik na Lagrangeovu.


Traimo bazine polinome hk,0 i hk,1 za koje vrijedi
z
c
hk,0 xi

za i x k
za i k.

h xi 0,
k,0

za i x k
1 za i k.

0
h xi
k,1

hk,1 xi 0,
Ako nademo hk,0 i hk,1 , onda je
h2n1 x

Q f h
n

k0

k k,0 x

fk hk,1 x.

Deriviranjem polinoma h2n1 x izlazi


h 1 x
2n

Qf h
n

k0

k k,0 x

fk h x,
k,1

pa lako vidimo da su ispunjeni svi uvjeti interpolacije


h2n1 xi
h 1 xi
2n
1

Q f h

fk hk,1 xi fk ,

Qf h

fk h xi fk .
k,1

k0

k k,0 xi

k0

k k,0 xi

NumMat 2010,6.predavanje-str. 27/103, Saa Singer


s

Ostaje jo konstruirati polinome hk,0 i hk,1 . Tvrdimo da se hk,0 i hk,1 mogu


s
denirati kao
hk,0 x 1  2x  xk xk
k
hk,1 x x  xk 2 x
k

2
k x

gdje je k odgovarajui polinom Lagrangeove baze.


c
Provjera da vrijednosti hk,0 xi , h xi , hk,1 xi i h xi zadovoljavaju
k,0
k,1
traeno vri se direktno, uvrtavanjem.
z
s
s
Budui da je k polinom stupnja n,onda
c
su hk,0 i hk,1 stupnja 2n 1,
pa je h2n1 stupnja najvie 2n 1.
s

Primijetite da funkcija pogreke polinoma h


s
eh x f x  h2n1 x
ima dvostruke nultoke u vorovima x0 , ..., xn , jer i funkcija eh , i njezina
c
c
imaju nultoke u x , tj.
derivacija eh
c
i
e xi 0.
h

eh xi 0,

Ostaje jo pokazati jedinstvenost.


s
Neka je q2n1 bilo koji drugi polinom koji ispunjava uvjete teorema. Za
razliku p tih polinoma onda vrijedi
px h2n1 x  q2n1 x
f x  q2n1 x  f x  h2n1 x
eq x  eh x.
Polinom p
je stupnja ne veeg od 2n 1
c
i p ima dvostruke toke u xi , za i 0, ..., n, odnosno, ukupno ima barem
c
2n 2 nultoaka.
c

Zakljuak. Polinom stupnja najvie 2n 1 koji ima barem 2n 2 nultoke je


c
s
c
nul-polinom, pa je h2n1 jedinstven.
5

2.1

Pogreka Hermiteove interpolacije


s

Hermitov interpolacijski polinom ima dvostruke nultoke u x0 , ..., xn , te je


c
polinom vorova h jednak
c
h x x  x0 2 x  x1 2 x  xn 2 2 x,
pri emu je polinom vorova Lagrangeove interpolacije.
c
c
Teorem 2 Greka kod interpolacije Hermiteovim polinomom h2n1 funkcije
s
2n2 a, b u n 1 medusobno razliitih vorova x , ..., x ima oblik
c
c
f x b C
0
n
ex f x  h2n1 x
gdje je b a, be i x

L x  x .
n
i 0

f 2n2 2
x ,
2n 2!

Hermiteova interpolacija-Newtonova forma

Hermiteov interpolacijski polinom osim u Lagrangeovom obliku, moemo


z
zapisati i u Newtonovom obliku koristei podijeljene razlike, ali sada i s
c
dvostrukim vorovima.
c
Neka su x0 i x1 x0 h dva vora i pustimo da h 0. Tada je
c

f x0 , x0 lim f x0 , x0

h 0

lim

h  f x0
f x 0 .
h

f x 0

h 0

Uz tu modikaciju, podijeljene razlike se raunaju na uobiajan nain.


c
c
c
Tablica svih potrebnih podijeljenih razlika ima ovaj oblik:
xk
x0

f xk
f x0

x0

f xk , xk1

f x0

f xk , xk1 , xk2

f x1

x1

f x0 , x0 , x1

f x1

xn

f xn

xn

f x0 , ..., xn

f x0
f x0 , x1

x1

f xn

f x1

f x0 , x1 , x1

f x1 , x1 , x2

f xn

f xn1 , xn , xn

Tablica 1: Podijeljene razlike

Konani izgled Hermiteovog interpolacijskog polinoma u Newtonovoj bazi


c
h2n1 x f x0 f x0 x  x0 f x0 , x0 , x1 x  x0 2
f x0 , x0 , x1 , x1 x  x0 2 x  x1
f x0 , x0 , ..., xn , xn x  x0 2 x  xn1 2 x  xn .

Primjer 1. Odredite Hermiteov interpolacijski polinom za funkciju za koju


je poznato:
f 0 1, f 0 2, f 1 10, f 1 20
Rjeenje.
s
Tablica podijeljenih razlika za ovaj primjer izgleda ovako:
f xk
xk
x0 0 f x0 1
x0 0 f x0 1
x1 1 f x1 10
x1 1 f x1 10

f xk , xk1

f xk , xk1 , xk2

f x0 , x0 f x0 2

f x0 , x1 1001 9
1

f x1 , x1 f x1 20

f xk , xk1 , xk2 , xk3

f x0 , x0 , x1 92 7
10
f x0 , x1 , x1

209
10

11


f x0 , x0 , x1 , x1 1107 4
1

Hermiteov interpolacijski polinom je:


h3 x f x0 f x0 , x0 x  x0 f x0 , x0 , x1 x  x0 2
1 2x  0 7x  02 4x  02 x  1
1 2x 7x2 4x3  4x2
4x3 3x2 2x 1

f x0 , x0 , x1 , x1 x  x0 2 x  x1

Sada u prethodni primjer demonstrirat u Python-u. U Python-u krec


iramo polje 4 ! 4 u koje unosimo podatke iz prethodne tablice:

10

10

20

11

Dakle, kod bi izgledao ovako:


from numpy import *
f=zeros([4,4])
x=array([0.,1.])
x0=0.
x1=1.
f[0,0]=1.
f[1,0]=1.
f[2,0]=10.
f[3,0]=10.
f[1,1]=2
f[2,1]=(f[2,0]-f[0,0])/(x[1]-x[0])
f[3,1]=20
f[2,2]=(f[2,1]-f[1,1])/(x[1]-x[0])
f[3,2]=(f[3,1]-f[2,1])/(x[1]-x[0])
9

f[3,3]=(f[3,2]-f[2,2])/(x[1]-x[0])
print f
def hermite(t):
return f[0,0] + f[1,1]*(t-x0) + f[2,2]*(t-x0)**2 + f[3,3]*(t-x0)**2*(t-x1)
def derivacija(f,x,delta):
return ((f(x+delta)-f(x))/delta)
der=lambda x: derivacija(hermite,x,0.000001)
#Provjera da li su zadovoljeni poznati uvjeti iz zadatka:
print hermite(x[0])
print hermite(x[1])
print der(x[0])
print der(x[1])

Popis slika
1

Charles Hermite (1822.-1901.) . . . . . . . . . . . . . . . . . . .

Popis tablica
1

Podijeljene razlike . . . . . . . . . . . . . . . . . . . . . . . . . .

10

Literatura
[1] Singer
Saa,
s
Numerika
c
matematika,
http://web.math.pmf.unizg.hr/singer/, 2014.

Predavanje

06,

[2] Zoli A., Numerika matematika 1, Matematiki fakultet, Beograd


c
c
c
[3] Markovi Darija, Predavanja 04, http://www.mathos.unios.hr/pim/Materijali/,
c
2014.

11

You might also like