Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
Numericka matematika
5. predavanje
Saša Singer i Nela Bosner
PMF - Matematicki odsjek, Zagreb
1 / 158
Sadržaj predavanja
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
2 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
3 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
4 / 158
Koliko je dobar interpolacijski polinom?
U praksi se obicno koristeI interpolacijski polinomi niskih stupnjeva — do 5.
Zašto?
Za neke funkcije i za neke izbore tocaka interpolacije,povecavanje stupnja interpolacijskog polinomaI može dovesti do povecanja grešaka.
Promotrimo nekoliko karakteristicnih primjera. Legenda:I crna boja — funkcija f ,I crvena boja — interpolacijski polinom pn.
Ekvidistantna mreža s n + 1 cvorova u intervalu [a,b] imacvorove x (n)
k = a + k · hn, za k = 0, . . . ,n, uz hn = (b − a)/n.
5 / 158
Primjer — logaritamska funkcija
Promotrimo grafove interpolacijskih polinoma stupnjeva 1–6 kojiinterpoliraju funkciju
f (x) = log10(x)
na ekvidistantnoj mreži za x ∈ [0.1,10].
Primijetit cete da je greška interpolacijeI najveca na prvom intervalu.
Razlog: funkcija log10(x) ima singularitet u 0, a pocetna tockainterpolacije 0.1 je vrlo blizu tog singulariteta.
Nadalje, promotrite kako se interpolacijski polinom ponašaizvan intervala interpolacije (tzv. “ekstrapolacija”).
6 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 1.
7 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 2.
8 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 3.
9 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 4.
10 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 5.
11 / 158
Logaritam — ekvidistantna mreža
1 2 3 4 5 6 7 8 9 10
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 6.
12 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.5
0.5
1
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 1.
Pratite skalu na y -osi.
13 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.5
0.5
1
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 2.
Pratite skalu na y -osi.
14 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.5
−0.25
0.25
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 3.
Pratite skalu na y -osi.
15 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.5
−0.25
0.25
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 4.
Pratite skalu na y -osi.
16 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.25
0.25
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 5.
Pratite skalu na y -osi.
17 / 158
Logaritam — ekvidistantna mreža, greška
1 2 3 4 5 6 7 8 9 10
−0.25
0.25
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 6.
Pratite skalu na y -osi.
18 / 158
Primjer Runge
Njemacki matematicar Runge (1901. g.) prvi je uocioI probleme koji nastupaju kod interpolacije polinomima na
ekvidistantnim mrežama cvorova.I Konstruirao je funkciju — poznatu kao funkcija Runge
f (x) =1
1 + x2 , na [−5,5],
takvu da niz interpolacijskih polinoma na ekvidistantnimmrežama ne konvergira prema toj funkciji.
Promotrimo interpolaciju polinomima stupnjevaI 1–6, 8, 10, 12, 14 i 16 (parnost funkcije!),
na ekvidistantnim mrežama cvorova u [−5,5].
19 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 1.
20 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 2.
21 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 3.
22 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 4.
23 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 5.
24 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 6.
25 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 8.
26 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−2
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 10.
27 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−2
−1
1
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 12.
28 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−5
−3
−1
1
3
5
7
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 14.
29 / 158
Primjer Runge — ekvidistantna mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−14
−10
−6
−2
2
6
10
x
y
1
Ekvidistantna mreža,interpolacijski polinom stupnja 16.
30 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 1.
31 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.5
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 2.
32 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 3.
33 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.5
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 4.
34 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.5
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 5.
35 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.5
0.5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 6.
36 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−1
1
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 8.
37 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−2
−1
1
2
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 10.
38 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−4
−3
−2
−1
1
2
3
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 12.
39 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−7
−5
−3
−1
1
3
5
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 14.
40 / 158
Primjer Runge — ekvidistantna mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−10
−6
−2
2
6
10
14
x
y
1
Ekvidistantna mreža,greška interpolacijskog polinoma stupnja 16.
41 / 158
Analiza
Za primjer Runge može se provesti pažljiva analiza (vidiskriptu) i pokazati daI cim je |x | > 3.63 . . ., a interpolira se u ekvidistantnim
cvorovima, niz interpolacijskih polinoma divergira.
Sljedeci primjer pokazuje da postoji još gora situacija — nizinterpolacijskih polinoma konvergira samo u 3 tocke.
Primjer. (Bernstein, 1912. g.) Neka je
f (x) = |x |
i neka je pn interpolacijski polinom u n + 1 ekvidistantnihcvorova na [−1,1]. Tada |f (x)− pn(x)| → 0, kad n→∞, samou tri tocke: x = −1, 0, 1.
42 / 158
Primjer Runge — nastavak
Može li se funkciji Runge “pomoci”? Može!
Ako umjesto ekvidistantnih cvorova interpolacije uzmemoneekvidistantne, tocnije,I tzv. Cebiševljeve tocke,
onda ce, porastom stupnja n, niz interpolacijskih polinoma pn
I konvergirati (i to uniformno) prema funkciji f .
Na intervalu [a,b], uzlazno poredane Cebiševljeve tocke su
xk =a + b
2+
b − a2· cos
(2(n − k) + 1)π2n + 2
, k = 0, . . . ,n.
O njima više — malo kasnije. Prvo primjer za funkciju Runge.
43 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 1.
44 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 2.
45 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 3.
46 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 4.
47 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 5.
48 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 6.
49 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 8.
50 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 10.
51 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 12.
52 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 14.
53 / 158
Primjer Runge — Cebiševljeva mreža
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,interpolacijski polinom stupnja 16.
54 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 1.
55 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 2.
56 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
1
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 3.
57 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.5
0.25
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 4.
58 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.25
0.5
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 5.
59 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.25
0.25
0.5
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 6.
60 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.25
0.125
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 8.
61 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.125
0.125
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 10.
62 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.075
0.075
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 12.
63 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.05
0.05
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 14.
64 / 158
Primjer Runge — Cebiševljeva mreža, greška
−6 −5 −4 −3 −2 −1 1 2 3 4 5 6
−0.025
0.025
x
y
1
Cebiševljeva mreža,greška interpolacijskog polinoma stupnja 16.
65 / 158
Jesmo li spašeni?
Sljedeci teorem ukazuje na to da jeI nemoguce naci takav izbor tocaka interpolacije
polinomima, koji bi bio dobar za svaku funkciju.
Teorem. (Faber, 1914. g.) Za svaki moguci izbor tocakainterpolacije, tj. za svaki niz skupova cvorova
X (n) = {x (n)0 , . . . , x (n)
n }, n ∈ N0,
postoji neprekidna funkcija f , za ciji niz interpolacijskihpolinoma pn, stupnja n, s cvorovima iz skupa X (n), vrijedi
‖f (x)− pn(x)‖∞ 6→ 0.�
Dakle, nema (uniformne) konvergencije, tj. “nema spasa”!
66 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
67 / 158
Greška interpolacije — što se može uciniti?
Neka je pn interpolacijski polinom za funkciju f s medusobnorazlicitim cvorovima interpolacije xk ∈ [a,b], za k = 0, . . . ,n.
U bilo kojoj tocki x ∈ [a,b] za grešku interpolacijskog polinomapn vrijedi
e(x) := f (x)− pn(x) =ω(x)
(n + 1)!f (n+1)(ξ).
za neku tocku ξ ∈ (xmin, xmax) ⊆ (a,b), uz
xmin := min{x0, . . . , xn, x}, xmax := max{x0, . . . , xn, x}.
Ako je funkcija f unaprijed zadana, onda faktor s derivacijomfunkcije f ne možemo “kontrolirati”.
68 / 158
Što možemo napraviti?
Idealno bi bilo minimizirati po apsolutnoj vrijednosti maksimalnugrešku aproksimacije, tj. ‖f − pn‖∞ → min, na željenomintervalu [a,b].I Polinom p∗n za koji je maksimalna greška minimalna se
može konstruirati.I Kad promatramo grešku e∗(x) polinoma p∗n, može se
pokazati da za dvije susjedne tocke x∗j i x∗j+1 u kojima|e∗(x)| poprima lokalne maksimume, vrijedie∗(x∗j ) = −e∗(x∗j+1).
I Jedina je nevolja da je postupak traženja takveaproksimacije iterativan (Remesov algoritam), tj. takvuaproksimaciju nije jednostavno naci.
I Takva aproksimacija zove se minimaks aproksimacijafunkcije f na intervalu [a,b].
69 / 158
Polinom cvorova — razne mreže cvorova
Umjesto egzaktne minimaks aproksimacije p∗n funkcije f naintervalu [a,b], zadovoljimo se “skromnijim” ciljem:I ako možemo birati cvorove interpolacije x0, . . . , xn,I minimizirajmo maksimalnu apsolutnu vrijednost (grešku)
polinoma cvorova
ω(x) =n∏
k=0
(x − xk ).
Pogledajmo kako izgleda polinom cvorova. Ako su cvoroviI ekvidistantni — najmanja greška je pri sredini intervala, a
raste prema rubu,I Cebiševljevi — maksimalna greška je jednaka na svakom
podintervalu izmedu cvorova, ukljucivo i rubove a, b.
70 / 158
Polinom cvorova za n = 6, ekvidistantna mreža
x
y
−3 −2 −1 1 2 3
−80
−40
40
80
1
ω(x) na [−3,3], za n = 6, ekvidistantna mreža71 / 158
Polinom cvorova za n = 6, Cebiševljeva mreža
x
y
−3 −2 −1 1 2 3
−80
−40
40
80
1
ω(x) na [−3,3], za n = 6, Cebiševljeva mreža72 / 158
Cebiševljeve tocke
Prethodne slike navode na cinjenicu da,I kad se uzmu Cebiševljevi cvorovi,I greška mijenja znak, aI susjedni maksimumi grešaka su po apsolutnoj vrijednosti
približno jednaki (v. primjer Runge).Takvu aproksimaciju zovemo skoro minimaks aproksimacija.
Sve dokaze provodit cemo na “standardnom” intervalu [−1,1].Ako je funkcija f zadana na nekom drugom intervalu, onda julinearnom (afinom) transformacijom
y = cx + d
svodimo na interval [−1,1].
73 / 158
Cebiševljeve tocke
Pokažimo da Cebiševljevi cvorovi minimiziraju maksimalnuapsolutnu vrijednost polinoma cvorova, tj. da minimiziraju
maxa≤x≤b
|(x − x0) · · · (x − xn)|.
Na intervalu [a,b], uzlazno poredane Cebiševljeve tocke su
xk =a + b
2+
b − a2· cos
(2(n − k) + 1)π2n + 2
, k = 0, . . . ,n.
Ako je a = −1, b = 1, onda su Cebiševljeve tocke xk , zak = 0, . . . ,n,I sve nultocke Cebiševljevog polinoma prve vrste Tn+1.
74 / 158
Cebiševljevi polinomi — definicija i rekurzija
Cebiševljevi polinomi prve vrste, oznaka je Tn, za n ≥ 0,definirani su relacijom
Tn(x) = cos(n arccos x), x ∈ [−1,1].
Polinomi Tn zadovoljavaju troclanu rekurzivnu relaciju
Tn+1(x)− 2xTn(x) + Tn−1(x) = 0, n ∈ N,
(dokaz = zbroj cosinusa preko produkta, za x = cosϕ), uz start
T0(x) = 1, T1(x) = x .
Iz ove rekurzivne relacije odmah slijedi da je Tn polinom stupnjan. Usput, za |x | ≥ 1 vrijedi Tn(x) = ch(nArchx).
75 / 158
Cebiševljevi polinomi — nultocke i ekstremi
Nultocke i ekstreme polinoma Tn+1 nije teško izracunati.
Njegove nultocke su (silazno indeksirane — kraca formula)
xk = cos(2k + 1)π2(n + 1)
, k = 0, . . . ,n,
dok su ekstremi na segmentu [−1,1] (opet, silazno indeksirani)
x ′k = coskπ
n + 1, k = 0, . . . ,n + 1.
Vrijednost Cebiševljevog polinoma u ekstremu je
Tn+1(x ′k ) = (−1)k , k = 0, . . . ,n + 1.
Primijetite da tih ekstrema ima tocno n + 2 (rubovi −1 i 1 suukljuceni) i da pripadne vrijednosti alterniraju po znaku.
76 / 158
Cebiševljevi polinomi — graf
Graf prvih nekoliko Cebiševljevih polinoma Tn na [−1,1].
−1 −0.75−0.5−0.25 0.25 0.5 0.75 1
−1
−0.75
−0.5
−0.25
0.25
0.5
0.75
1
x
y
T1(x)
T2(x)
T3(x)
T4(x)
1
77 / 158
Cebiševljevi polinomi — svojstvo minimizacije
Cebiševljevi polinomi Tn imaju važno svojstvo minimizacije“uniformnog otklona polinoma od nule” na segmentu [−1,1].
Teorem. Za zadani prirodni broj n, promatrajmo minimizacijskiproblem
τn := infdeg(P)≤n−1
{max−1≤x≤1
|xn + P(x)|},
gdje je P polinom. Minimum τn se dostiže samo za polinom
xn + P(x) =1
2n−1 Tn(x).
Pripadna pogreška ili “otklon od nule” je τn =1
2n−1 .
78 / 158
Cebiševljevi polinomi — svojstvo minimizacije
Dokaz. Iz troclane rekurzije, nije teško induktivno dokazati da jevodeci koeficijent u Tn jednak 2n−1, tj. da je
Tn(x) = 2n−1xn + clanovi nižeg stupnja, n ≥ 1.
Zbog toga vrijedi da je
12n−1 Tn(x) = xn + clanovi nižeg stupnja.
Tocke
x ′k = coskπn, k = 0, . . . ,n,
su lokalni ekstremi od Tn na [−1,1].
79 / 158
Cebiševljevi polinomi — svojstvo minimizacije
Ocito je
−1 = x ′n < x ′n−1 < · · · < x ′1 < x ′0 = 1.
U tim tockama je
Tn(x ′k ) = cos(kπ) = (−1)k , k = 0, . . . ,n.
Polinom1
2n−1 Tn ima vodeci koeficijent jednak 1 i vrijedi
max−1≤x≤1
∣∣∣∣ 12n−1 Tn
∣∣∣∣ = 12n−1 .
Zbog toga je
τn ≤1
2n−1 .
80 / 158
Cebiševljevi polinomi — svojstvo minimizacije
Pokažimo da je τn baš jednak desnoj strani. Pretpostavimosuprotno, tj. da je
τn <1
2n−1 .
Pokazat cemo da to vodi na kontradikciju.
Iz definicije τn preko infimuma i prethodne pretpostavke,zakljucujemo da postoji polinom M takav da je
M(x) = xn + P(x), deg(P) ≤ n − 1,
za kojeg vrijedi
τn ≤ max−1≤x≤1
|M(x)| < 12n−1 .
81 / 158
Cebiševljevi polinomi — svojstvo minimizacije
Definiramo
R(x) =1
2n−1 Tn(x)−M(x).
No, vodeci koeficijenti polinoma s desne strane se skrate, pa je
deg(R) ≤ n − 1.
Ispitajmo vrijednosti funkcije R u lokalnim ekstremima polinomaTn. Iz gornje ograde za τn, redom, izlazi
R(x ′0) = R(1) =1
2n−1 −M(1) > 0,
R(x ′1) = −1
2n−1 −M(x ′1) < 0, . . .
82 / 158
Cebiševljevi polinomi — svojstvo minimizacijetj. za polinom R vrijedi
sign(R(x ′k )) = (−1)k , k = 0, . . . ,n.
Buduci da ima bar n + 1 razliciti predznak, to mora postojati barn nultocaka, što je moguce samo ako je R = 0. Odatle odmahizlazi da je
M(x) =1
2n−1 Tn(x).
No, onda je max−1≤x≤1
|M(x)| = 1/2n−1, što je kontradikcija s < .
Sad bi još trebalo pokazati da je to jedini polinom s takvimsvojstvom. Taj dio dokaza vrlo je slican ovom što je vecdokazano. Istim argumentom izlazi opet M(x) = 1
2n−1 Tn(x).
�
83 / 158
Interpolacija u Cebiševljevim tockama
Vratimo se sad polaznom problemu optimalnog izbora cvorovainterpolacije.
Želimo izabrati cvorove interpolacije xk ∈ [−1,1] tako daminimiziraju
max−1≤x≤1
|(x − x0) · · · (x − xn)|.
Polinom cvorova ω u prethodnoj relaciji je stupnja n + 1 i imavodeci koeficijent 1. Po Teoremu o minimalnom otklonu,minimum cemo dobiti ako stavimo
ω(x) = (x − x0) · · · (x − xn) =12n Tn+1(x),
a minimalna ce vrijednost biti max−1≤x≤1
|ω(x)| = 1/2n.
84 / 158
Interpolacija u Cebiševljevim tockama
Odatle odmah citamo da su cvorovi x0, . . . , xn nultockepolinoma Tn+1. U silaznom poretku, te nultocke su
xk = cos(2k + 1)π
2n + 2, k = 0, . . . ,n.
Uzlazni poredak dobivamo zamjenom indeksa k 7→ n − k .
Afinom transformacijom intervala [−1,1] u interval [a,b],
x ∈ [−1,1] 7→ a + b2
+b − a
2· x ∈ [a,b],
izlazi i opca formula za Cebiševljeve tocke (uzlazno) u [a,b]
xk =a + b
2+
b − a2· cos
(2(n − k) + 1)π2n + 2
, k = 0, . . . ,n.
85 / 158
Jesmo li bar malo spašeni?
Problem u Bernsteinovom primjeru f (x) = |x | i Faberovomteoremu je preširoka klasa funkcija, odnosno,I premala glatkoca — samo neprekidnost za f .
Uz samo malo jacu glatkocu, ipak jesmo “spašeni”!
Teorem. Neka je f ∈ C1[−1,1]. Za svaki n ∈ N0, neka je pninterpolacijski polinom za funkciju f na Cebiševljevoj mreži sn + 1 cvorova u intervalu [−1,1].
Niz polinoma pn uniformno konvergira prema f na [−1,1], tj.vrijedi
‖f (x)− pn(x)‖∞ → 0, n→∞.�
Dakle, imamo uniformnu konvergenciju interpolacije zaneprekidno derivabilne funkcije na Cebiševljevim mrežama.
86 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
87 / 158
Hermiteova polinomna interpolacija
Osim interpolacije funkcijskih vrijednosti funkcije f u cvorovimaxk , možemo tražiti i interpolaciju derivacije f ′,I tako da derivacija h′ interpolacijskog polinoma h interpolira
derivaciju f ′ u cvorovima xk .Dakle, zahtijevamo da je
h(xk ) = f (xk ), h′(xk ) = f ′(xk ), k = 0, . . . ,n.
Takva vrsta interpolacije zove se Hermiteova interpolacija.
Prvo, treba odgovoriti na nekoliko važnih pitanja:I postoji li takav interpolacijski polinom;I ako postoji, je li jedinstven;I ako postoji i jedinstven je, kojeg je stupnja.
88 / 158
Hermiteova polinomna interpolacija
Uvedimo skracene oznake za vrijednosti f i f ′ u cvorovima
fk := f (xk ), f ′k = f ′(xk ), k = 0, . . . ,n.
Problem egzistencije i jedinstvenosti Hermiteove interpolacijekonstruktivno rješava sljedeci teorem.
Teorem. Postoji jedinstveni polinom h2n+1, stupnja najviše2n + 1, koji zadovoljava interpolacijske uvjete
h2n+1(xk ) = fk , h′2n+1(xk ) = f ′k , k = 0, . . . ,n,
gdje su xk medusobno razlicite tocke i fk , f ′k zadani realnibrojevi.
Dokaz. Ideja = konstrukcija baze nalik na Lagrangeovu.
89 / 158
Hermiteova polinomna interpolacija
Tražimo “bazicne polinome” hk ,0 i hk ,1, za k = 0, . . . ,n, za kojevrijede tzv. “kardinalni” uvjeti interpolacije
hk ,0(xi) =
{0, za i 6= k ,1, za i = k ,
h′k ,0(xi) = 0,
hk ,1(xi) = 0, h′k ,1(xi) =
{0, za i 6= k ,1, za i = k .
Ako nademo takve polinome hk ,0 i hk ,1, onda je
h2n+1(x) =n∑
k=0
(fkhk ,0(x) + f ′khk ,1(x)
).
90 / 158
Hermiteova polinomna interpolacija
Provjera (prije dokaza): Deriviranjem polinoma h2n+1(x) izlazi
h′2n+1(x) =n∑
k=0
(fkh′k ,0(x) + f ′kh′k ,1(x)
),
pa lako vidimo da su ispunjeni svi uvjeti interpolacije
h2n+1(xi) =n∑
k=0
(fkhk ,0(xi) + f ′khk ,1(xi)
)= fk ,
h′2n+1(xi) =n∑
k=0
(fkh′k ,0(xi) + f ′kh′k ,1(xi)
)= f ′k .
Ostaje još konstruirati polinome hk ,0 i hk ,1.
91 / 158
Hermiteova polinomna interpolacija
Tvrdimo da se hk ,0 i hk ,1 mogu napisati kao
hk ,0(x) = [1− 2(x − xk )`′k (xk )] `
2k (x)
hk ,1(x) = (x − xk ) `2k (x),
gdje je `k odgovarajuci polinom Lagrangeove baze.
Provjera da vrijednosti hk ,0(xi), h′k ,0(xi), hk ,1(xi) i h′k ,1(xi)zadovoljavaju tražene uvjete vrši se direktno — uvrštavanjem.
Buduci da je `k polinom stupnja n,I onda su hk ,0 i hk ,1 stupnja 2n + 1,I pa je h2n+1 stupnja najviše 2n + 1.
Time smo dokazali egzistenciju. Preostaje još jedinstvenost.
92 / 158
Hermiteova polinomna interpolacija
Primijetite da funkcija pogreške polinoma h
eh(x) = f (x)− h2n+1(x)
ima dvostruke nultocke u cvorovima x0, . . . , xn, jer i funkcija eh, injezina derivacija e′h imaju nultocke u xi , tj.
eh(xi) = 0, e′h(xi) = 0.
Neka je q2n+1 bilo koji drugi polinom koji zadovoljava uvjeteinterpolacije. Za razliku p tih polinoma onda vrijedi
p(x) = h2n+1(x)− q2n+1(x)= (f (x)− q2n+1(x))− (f (x)− h2n+1(x))= eq(x)− eh(x).
93 / 158
Hermiteova polinomna interpolacija
Polinom p je stupnja najviše 2n + 1 iI ima dvostruke nultocke u cvorovima xi , za i = 0, . . . ,n,
odnosno, ukupno ima barem 2n + 2 nultocke.Zakljucak. Polinom p je nul-polinom, pa je h2n+1 jedinstven.
�
Zato što greška Hermiteovog interpolacijskog polinoma imadvostruke nultocke u x0, . . . , xn, polinom cvorova ωh jednak je
ωh(x) = (x − x0)2(x − x1)
2 · · · (x − xn)2 = ω2(x),
pri cemu je ω polinom cvorova Lagrangeove interpolacije.
Grešku Hermiteove interpolacije dobivamo na slican nacin kao ikod Lagrangeove interpolacije.
94 / 158
Greška Hermiteove interpolacije
Jedine razlike: ovdje je h2n+1 stupnja 2n + 1, a polinom cvorovaje ωh(x) = ω2(x).
Teorem. Neka je f funkcija definirana na segmentu [a,b]. Nekaje n ∈ N ∪ {0} iI neka su xk ∈ [a,b], za k = 0, . . . ,n, medusobno razliciti
cvorovi interpolacije, tj. xi 6= xj za i 6= j ,I neka prva derivacija f ′ postoji u cvorovima x0, . . . , xn,I neka je eh greška Hermiteovog interpolacijskog polinoma
h2n+1 za funkciju f na mreži cvorova x0, . . . , xn.Za bilo koju tocku x ∈ [a,b], takvu da je x 6= x0, . . . , xn, tj. cim xnije cvor interpolacije, za grešku interpolacije vrijedi
eh(x) = f (x)− h2n+1(x) = ω2(x) f [x0, x0, x1, x1, . . . , xn, xn, x ].
95 / 158
Greška Hermiteove interpolacije — nastavak
Ako f (2n+2) postoji na [a,b], onda za svaku tocku x ∈ [a,b],postoji tocka ξ ∈ (xmin, xmax), gdje je
xmin := min{x , x0, . . . , xn}, xmax := max{x , x0, . . . , xn},
takva da je
eh(x) = f (x)− h2n+1(x) = ω2(x)f (2n+2)(ξ)
(2n + 2)!.
�
Napomena. Ako želimo da prva formula (s podijeljenomrazlikom) vrijedi i u cvorovima interpolacije, ondaI treba pretpostaviti da druga derivacija f ′′ postoji u svim
cvorovima,I jer dobivamo trostruke cvorove na desnoj strani (v. iza).
96 / 158
Hermiteova interpolacija — Newtonova forma
Hermiteov interpolacijski polinom može se zapisati i uNewtonovoj bazi — što je zgodnije za racunanje.I Tocke interpolacije su x0, x0, x1, x1, . . . , xn, xn, tj. svaka od
njih je dvostruki cvor. U tablici podijeljenih razlika ovumrežu oznacavamo s t0, t1, t2, t3, . . . , t2n, t2n+1.
Pokazali smo da za podijeljene razlike s dvostrukim cvoromvrijedi
f [xk , xk ] = limh→0
f [xk , xk + h]
= limh→0
f (xk + h)− f (xk )
h= f ′(xk ).
Dakle, f [xk , xk ] = f ′k su baš zadani podaci! Uz tu modifikaciju,podijeljene razlike se racunaju na uobicajeni nacin (rekurzija).
97 / 158
Podijeljene razlike
Tablica svih potrebnih podijeljenih razlika ima ovaj oblik:
tj f [tj ] f [tj , tj+1] f [tj , tj+1, tj+2] · · · f [t0, . . . , t2n+1]
x0 f [x0]f ′(x0)
x0 f [x0] f [x0, x0, x1]f [x0, x1]
. . .x1 f [x1] f [x0, x1, x1]
f ′(x1) · · ·x1 f [x1] f [x1, x1, x2]...
......
... . ..
xn f [xn] f [xn−1, xn, xn]f ′(xn)
xn f [xn]
98 / 158
Newtonov oblik interpolacijskog polinoma
Konacni izgled Hermiteovog interpolacijskog polinoma uNewtonovoj bazi je
h2n+1(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 − xn−1)
2(x − xn).
Naziv “Hermiteova interpolacija” koristi se i za opcenitiju, tzv.proširenu Hermiteovu (ili Hermite–Birkhoff) interpolaciju.I Ovdje se mogu interpolirati i više derivacije od prvih.I Bitno: u svakom cvoru xi , “redom” se interpoliraju
funkcijska vrijednost i prvih nekoliko uzastopnih derivacija,a broj podataka po cvoru može varirati.
99 / 158
Proširena Hermiteova interpolacija
I za proširenu Hermiteovu interpolaciju postoji jedinstveniinterpolacijski polinom stupnja najviše n = broj podataka− 1.
Primjer. Nadite interpolacijski polinom koji interpolira redomzadane vrijednosti f , f ′, . . . , f (n) u cvoru x0.
U ovom primjeru, x0 je (n + 1)-struki cvor interpolacije. Zapodijeljene razlike višeg reda s istim cvorovima vrijedi
f [x0, . . . , x0︸ ︷︷ ︸(k + 1) puta
] =f (k)(x0)
k !, k = 0, . . . ,n,
cim f (k)(x0) postoji, pa je interpolacijski polinom pn jednakTaylorovom polinomu stupnja n, za funkciju f oko tocke x0.
100 / 158
Preskakanje derivacija u interpolaciji
Ako dozvolimo “preskakanje” nekih derivacija u nekim tockama,problem interpolacijeI ne mora uvijek imati jedinstveno rješenje.
Primjer. Nadite nužne i dovoljne uvjete za egzistenciju ijedinstvenost interpolacijskog polinoma p ∈ P2, za kojeg vrijedi
p(x0) = f0, p′(x1) = f ′1, p(x2) = f2,
gdje su (x0, f0), (x1, f ′1) i (x2, f2) zadane tocke, uz pretpostavkuda je x0 6= x2 (dozvoljeno je x1 = x0 ili x1 = x2).
Rješenje. Mora biti x1 6= (x0 + x2)/2⇐⇒ regularnost matricesustava za interpolaciju.
101 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
102 / 158
Interpolacija polinomima — zakljucci
Polinomna interpolacija visokog stupnjaI može imati vrlo loša svojstva — izmedu cvorova,I i u praksi se ne smije koristiti.
Umjesto toga, koristi seI po dijelovima polinomna interpolacija, tj. na svakom
podintervalu koristi se polinom fiksnog, niskog stupnja.
Pretpostavka: cvorovi interpolacije su uzlazno numerirani,
a = x0 < x1 < · · · < xn = b.
i baš u njima su rubovi podintervala za pojedine polinome.Može i drugacije (cvorovi su razliciti od rubova). Medutim, ovoje zgodno za neparne stupnjeve polinoma.
103 / 158
Po dijelovima polinomna interpolacija
Na svakom podintervalu [xk−1, xk ] koristimo polinom fiksnogstupnja m, tj. tražimo da je
ϕ∣∣∣[xk−1,xk ]
= pk , k = 1, . . . ,n,
gdje je pk ∈ Pm.
Svaki polinom pk (stupnja najviše m)I odreden je s m + 1 koeficijenata, iI moramo odrediti koeficijente n takvih polinoma — na
svakom intervalu po jedan.Dakle, ukupan broj koeficijenata koje treba odrediti je
(m + 1) · n.
104 / 158
Po dijelovima polinomna interpolacija
Interpolacijski uvjeti su
ϕ(xk ) = fk , k = 0, . . . ,n.
Gledano na [xk−1, xk ], za svaki polinom pk imamo po 2 uvjeta
pk (xk−1) = fk−1,
pk (xk ) = fk ,za k = 1, . . . ,n.
Dakle, ukupno imamo 2n uvjeta interpolacije (ne samo n + 1).
Digresija. Ovi uvjeti interpolacije osiguravaju neprekidnostfunkcije ϕ u svim “unutarnjim” cvorovima mreže x1, . . . , xn−1, jerje
pk (xk ) = pk+1(xk ) = fk , k = 1, . . . ,n − 1.
105 / 158
Po dijelovima polinomna interpolacija
Zakljucak.I Uvjeta interpolacije je 2n, aI treba naci (m + 1) · n koeficijenata.
Bez dodatnih uvjeta, to je moguce jedinstveno napravitiI samo za m = 1,I tj. za po dijelovima linearnu interpolaciju.
Za m > 1,I dodaju se uvjeti na glatkocu interpolacijske funkcije ϕ u
(unutarnjim) cvorovima mreže za podintervale.Uz naš dogovor, to su upravo i cvorovi interpolacije.
106 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
107 / 158
Po dijelovima linearna interpolacija
Osnovna ideja po dijelovima linearne interpolacije je:I umjesto jednog polinoma visokog stupnja,I koristi se više polinoma, ali stupnja 1.
Na svakom podintervalu [xk−1, xk ], polinom pk je stupnja 1I i jedinstveno je odreden iz uvjeta interpolacije.
Zapisujemo ga relativno obzirom na pocetnu tocku intervala(stabilnost) u obliku
pk (x) = c0,k + c1,k (x − xk−1),
gdje je x ∈ [xk−1, xk ], za k = 1, . . . ,n.
108 / 158
Po dijelovima linearna interpolacija
Interpolacijski polinom pk zapisujemo u Newtonovoj formi
pk (x) = f [xk−1] + f [xk−1, xk ] · (x − xk−1),
pa je ocito
c0,k = f [xk−1] = fk−1,
c1,k = f [xk−1, xk ] =fk − fk−1
xk − xk−1,
k = 1, . . . ,n.
Za aproksimaciju vrijednosti funkcije f u jednoj tocki x ∈ [a,b],trebaI prvo pronaci indeks k takav da vrijedi x ∈ [xk−1, xk ],I a onda izracunati vrijednost pk (x) pripadnog linearnog
polinoma pk na tom podintervalu.
109 / 158
Po dijelovima linearna interpolacija
Za traženje tog intervala koristimo binarno pretraživanje.
Binarno pretraživanje
low = 0;high = n;dok je (high - low) > 1 radi {/* U sljedecoj liniji cjelobrojno / */mid = (low + high) / 2;ako je x < x[mid] ondahigh = mid;
inacelow = mid;
};
Trajanje ovog algoritma je proporcionalno s log2(n).
110 / 158
Greška po dijelovima linearne interpolacije
Ako je funkcija f klase C2[a,b], onda je pogreška takveinterpolacije, zapravo,I maksimalna pogreška od n linearnih interpolacija.
Na svakom podintervalu [xk−1, xk ], pogreška jeI greška linearne interpolacije polinomom pk .
Ocjena lokalne pogreške, ovisna o tocki x , je
|f (x)− pk (x)| ≤ |ωk (x)|M(k)
22!
,
pri cemu je
ωk (x) = (x − xk−1)(x − xk ), M(k)2 = max
x∈[xk−1,xk ]|f ′′(x)|.
111 / 158
Greška po dijelovima linearne interpolacije
Nadimo maksimum po apsolutnoj vrijednosti za ωk (x), nazatvorenom intervalu [xk−1, xk ].
Funkcija |ωk | može imati maksimum samo na otvorenomintervalu (xk−1, xk ) — u rubovima je vrijednost 0 (minimum).
Deriviranjem dobivamo da se lokalni ekstrem funkcije
ωk (x) = (x − xk−1)(x − xk ),
postiže u polovištu xe = (xk−1 + xk )/2 (tjeme parabole).
Vrijednost funkcije ωk u lokalnom ekstremu je
ωk (xe) = (xe − xk−1)(xe − xk ) = −(xk − xk−1)
2
4.
112 / 158
Greška po dijelovima linearne interpolacije
Za bilo koji x ∈ (xk−1, xk ) je ωk (x) < 0, pa je xe
I tocka lokalnog minimuma za ωk , odnosno,I tocka lokalnog maksimuma za |ωk |, tj. vrijedi
|ωk (x)| ≤ |ωk (xe)| =(xk − xk−1)
2
4, ∀x ∈ [xk−1, xk ].
Neka je h maksimalni razmak cvorova po svim podintervalima
h := maxk=1,...,n
{hk := xk − xk−1},
i neka je M2 maksimum apsolutne vrijednosti f ′′ na cijelomintervalu [a,b]
M2 := maxk=1,...,n
{M(k)2 } = max
x∈[a,b]|f ′′(x)|.
113 / 158
Greška po dijelovima linearne interpolacije
Na cijelom intervalu [a,b], onda možemo pisati
|f (x)− ϕ(x)| ≤ h2
4· M2
2!=
18
h2M2.
Zakljucak. Ako ravnomjerno povecavamo broj cvorova n, takoda maksimalni razmak cvorova h→ 0 (kad n→∞),I onda i maksimalna greška teži u 0, tj.I dobivamo uniformnu konvergenciju!
Na primjer, za ekvidistantne mreže, za koje je
xk = a + kh, h =b − a
n,
pogreška je reda velicine h2, odnosno, n−2.
114 / 158
Komentar na po dijelovima linearnu interpolaciju
Mane po dijelovima linearne interpolacije:I Potrebno je dosta podintervala da se dobije umjerena
tocnost aproksimacije.I Na primjer, za h = 0.01, tj. za n = 100, greška
aproksimacije je reda velicine 10−4, do na faktor M2/8.I Funkcija ϕ nije dovoljno glatka — samo je neprekidna.
115 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
116 / 158
Primjer — po dijelovima linearna interpolacija
Primjer. Funkciju
f (x) = ln x
na intervalu [1,100] aproksimiramo po dijelovima linearnominterpolacijom, s tocnošcu ε = 10−4, koju tražimo na cijelomintervalu.
Nadite broj cvorova interpolacije n + 1 potrebnih da se postigneta tocnost ε, uz(a) ekvidistantnu mrežu na cijelom intervalu,(b) interval [1,100] podijelimo na tri podintervala [1,2], [2,7],
[7,100] i na svakom od njih koristimo posebnuekvidistantnu mrežu.
Po obje metode nadite aproksimaciju za ln 2.
117 / 158
Primjer — po dijelovima linearna interpolacija
Rješenje. Za po dijelovima linearnu interpolaciju ϕ vrijedisljedeca ocjena pogreške
|f (x)− ϕ(x)| ≤ 18
h2M2.
Ako je mreža ekvidistantna na [a,b], onda je
h =b − a
n,
pri cemu je n broj podintervala interpolacije.
Tražimo li tocnost ε, onda mora biti
|f (x)− ϕ(x)| ≤ ε.
118 / 158
Primjer — po dijelovima linearna interpolacija
Da bi se to postiglo, dovoljno je zatražiti da je
18
h2M2 =18
(b − a
n
)2
M2 ≤ ε.
Odatle odmah slijedi da mora biti
n ≥ (b − a)
√M2
8ε.
Sada još samo treba izracunati M2. Deriviranjem dobivamo
f ′′(x) = − 1x2 .
119 / 158
Primjer — po dijelovima linearna interpolacija
Buduci da je f ′′ negativna, strogo rastuca funkcija, onda jemaksimum njezine apsolutne vrijednosti na lijevom rubu, tj.
M2 = maxx∈[a,b]
∣∣∣∣− 1x2
∣∣∣∣ = 1a2 .
Rješenje za (a). Na intervalu [1,100] je M2 = 1. Dobivamo
n ≥ (100− 1)
√1
8 · 10−4 =9900√
8≈ 3500.1785667,
pa je n = 3501, dok je broj cvorova n + 1 = 3502.
Da bismo odredili aproksimaciju za ln 2, moramo naci u kojempodintervalu se nalazi tocka x∗ = 2.
120 / 158
Primjer — po dijelovima linearna interpolacija
Ako je x∗ u podintervalu [xk−1, xk ], mora biti
a + (k − 1) · b − an≤ x∗ ≤ a + k · b − a
n.
U našem slucaju je x∗ = 2. Onda dobivamo
1 + (k − 1) · 993501
≤ 2 ≤ 1 + k · 993501
(k − 1) · 993501
≤ 1 ≤ k · 993501
(k − 1) ≤ 350199
≤ k
(k − 1) ≤ 35.36 ≤ k .
121 / 158
Primjer — po dijelovima linearna interpolacijaPrema tome, k = 36, x35 ≈ 1.9897172240,x36 ≈ 2.0179948590, pa imamo tablicu podijeljenih razlika
xj f [xj ] f [xj , xj+1]
1.9897172240 0.68799253010.4990461264
2.0179948590 0.7021043744
Interpolacijski polinom na tom podintervalu onda glasi:
p36(x) = 0.6879925301 + 0.4990461264(x − 1.9897172240),
pa je
p36(2) = 0.6931241097, | ln(2)− p36(2)| = 0.0000230709.
122 / 158
Primjer — po dijelovima linearna interpolacija
Rješenje za (b). Na intervalu [1,2] je M2 = 1, odakle dobivamo
n1 ≥ (2− 1)
√1
8 · 10−4 =100√
8≈ 35.3535,
pa je n1 = 36.
Na intervalu [2,7] je M2 =14
, odakle dobivamo
n2 ≥ (7− 2)
√14
8 · 10−4 =5002√
8≈ 88.388834765,
pa je n2 = 89.
123 / 158
Primjer — po dijelovima linearna interpolacija
Na intervalu [7,100] je M2 =149
, odakle dobivamo
n3 ≥ (100− 7)
√149
8 · 10−4 =93007√
8≈ 469.7209334,
pa je n3 = 470.
Ukupan broj podintervala je n = n1 + n2 + n3 = 595, što jeskoro 6 puta manje nego u (a). Broj cvorova je 596.
Buduci da je 2 cvor interpolacije, onda nemamo što racunati, ivrijednost u cvoru je upravo ln 2 ≈ 0.6931471806.
124 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
125 / 158
Po dijelovima kubicna interpolacija
Kod po dijelovima kubicne interpolacije na [a,b], restrikcijaaproksimacijske funkcije ϕ na svaki podinterval [xk−1, xk ] jekubicni polinom
ϕ∣∣∣[xk−1,xk ]
= pk , k = 1, . . . ,n,
gdje je pk ∈ P3.
Ove polinome pk obicno zapisujemo relativno obzirom napocetnu tocku intervala xk−1, u obliku
pk (x) = c0,k + c1,k (x − xk−1)
+ c2,k (x − xk−1)2 + c3,k (x − xk−1)
3,
za x ∈ [xk−1, xk ], i za k = 1, . . . ,n. Razlog za ovaj zapis jeznacenje koeficijenata (Taylor u xk−1) i stabilno racunanje.
126 / 158
Broj nepoznatih parametara i broj uvjeta
Ukupno imamo n kubicnih polinoma.I Za svakog od njih treba odrediti po 4 koeficijenta,I dakle, ukupno moramo odrediti 4n koeficijenata.
Uvjeta interpolacije je 2n, jer svaki kubicni polinom pk
I mora interpolirati funkciju f u rubovima svog podintervala[xk−1, xk ],
tj. mora vrijediti
pk (xk−1) = fk−1,
pk (xk ) = fk ,k = 1, . . . ,n.
Ovi uvjeti automatski osiguravaju neprekidnost funkcije ϕ usvim unutrašnjim cvorovima mreže x1, . . . , xn−1.
127 / 158
Dodatni uvjeti interpolacije na derivaciju
Obicno želimo da interpolacijska funkcija ϕ bude glada:I barem klase C1[a,b], odakle slijedi zahtjev daI derivacija funkcije ϕ mora biti neprekidna i u cvorovima.
Najlakši nacin da to dobijemo = dodamo tocno još 2n uvjeta“interpolacije”, kao da interpoliramo i derivaciju, tj.I za svaki kubicni polinom pk dodajemo još po dva uvjeta
p′k (xk−1) = sk−1,
p′k (xk ) = sk ,k = 1, . . . ,n,
pri cemu su sk neki brojevi. Njihovo stvarno znacenje može bitirazlicito, pa cemo ga detaljno opisati kasnije.I Ideja = brojeve sk možemo birati/zadati na razne nacine.
128 / 158
Neprekidnost derivacije interpolacijske funkcije
Zasad, možemo zamišljati da su brojevi sk
I neke aproksimacije derivacije funkcije f u cvorovima.Oznaka sk dolazi od engleske rijeci “slope” = nagib.
Primijetite da je takvim izborom dodatnih uvjetaI osigurana neprekidnost prve derivacije funkcije ϕ u svim
unutrašnjim cvorovima,jer je
p′k (xk ) = p′k+1(xk ) = sk , k = 1, . . . ,n − 1.
Ako pretpostavimo da su sk nekako zadani brojevi, dobivamoproblem Hermiteove interpolacije za svaki polinom pk .
Nadimo koeficijente interpolacijskog polinoma pk .
129 / 158
Zapis po dijelovima kubicne interpolacije
Za ovaj problem Hermiteove interpolacijeI najzgodnije je koristiti Newtonov oblik interpolacijskog
polinoma pk ,I s tzv. dvostrukim cvorovima xk−1 i xk .
Razlog. U oba cvora xk−1 i xk zadajemo po dva podatka:I vrijednost funkcije i derivacije.
Razmak susjednih razlicitih cvorova oznacavamo kao i prije
hk := xk − xk−1, k = 1, . . . ,n.
Ponovimo što, zapravo, znaci da je xk dvostruki cvor zaHermiteovu interpolaciju u Newtonovom obliku.
130 / 158
Dvostruki cvorovi u podijeljenim razlikama
Ako se u podijeljenoj razlici f [xk , xk + h], drugi cvor približavaprvom, onda na limesu kad h→ 0 dobivamo
limh→0
f [xk , xk + h] = limh→0
f (xk + h)− f (xk )
h= f ′(xk ),
naravno, pod uvjetom da f ima derivaciju u tocki xk . Drugimrijecima, tada vrijedi
f [xk , xk ] = f ′(xk ).
U našem slucaju, ako u tocki xk
I derivaciju f ′(xk ) zadajemo ili aproksimiramo sa sk ,onda je zadano
f [xk , xk ] = sk .
131 / 158
Tablica podijeljenih razlika za polinom pk
Tablica podijeljenih razlika za Hermiteov interpolacijski polinompk , koji ima dva dvostruka cvora xk−1 i xk , je
tj f [tj ] f [tj , tj+1] f [tj , tj+1, tj+2] f [tj , tj+1, tj+2, tj+3]
xk−1 fk−1sk−1
xk−1 fk−1f [xk−1, xk ]− sk−1
hk
f [xk−1, xk ]sk + sk−1 − 2f [xk−1, xk ]
h2k
xk fksk − f [xk−1, xk ]
hksk
xk fk
132 / 158
Newtonov oblik polinoma pk
Newtonov oblik Hermiteovog interpolacijskog polinoma pk , kojiima dva dvostruka cvora xk−1 i xk , je
pk (x) = f [xk−1] + f [xk−1, xk−1] · (x − xk−1)
+ f [xk−1, xk−1, xk ] · (x − xk−1)2
+ f [xk−1, xk−1, xk , xk ] · (x − xk−1)2(x − xk ),
s tim da je
f [xk−1, xk−1] = sk−1,
f [xk−1, xk−1, xk ] =f [xk−1, xk ]− sk−1
hk,
f [xk−1, xk−1, xk , xk ] =sk + sk−1 − 2f [xk−1, xk ]
h2k
.
133 / 158
Newtonov oblik polinoma pk
Uvrštavanjem cvorova xk−1 i xk u prethodnu formulu za pk ,odmah možemo provjeriti da je
pk (xk−1) = fk−1,
pk (xk ) = fk ,p′k (xk−1) = sk−1,
p′k (xk ) = sk .
Drugim rijecima, našli smo traženi polinom pk na svakompodintervalu [xk−1, xk ], za k = 1, . . . ,n.
Za nalaženje koeficijenata ci,k u standardnom zapisu, treba jošI Newtonov oblik polinoma pk “preurediti” tako da bude
napisan po potencijama od (x − xk−1).
134 / 158
Standardni oblik polinoma pk
Posljednji clan Newtonovog oblika polinoma pk možemonapisati kao
(x − xk−1)2(x − xk ) = (x − xk−1)
2(x − xk−1 + xk−1 − xk )
= (x − xk−1)2(x − xk−1 − hk )
= (x − xk−1)3 − hk (x − xk−1)
2.
Zapis polinoma pk onda glasi
pk (x) = f [xk−1] + f [xk−1, xk−1] · (x − xk−1)
+(f [xk−1, xk−1, xk ]− hk f [xk−1, xk−1, xk , xk ]
)· (x − xk−1)
2
+ f [xk−1, xk−1, xk , xk ] · (x − xk−1)3.
135 / 158
Standardni oblik polinoma pk
Usporedivanjem koeficijenata uz odgovarajuce potencije od(x − xk−1), dobivamo
c0,k = pk (xk−1) = fk−1,
c1,k = p′k (xk−1) = sk−1,
c2,k =p′′k (xk−1)
2= f [xk−1, xk−1, xk ]− hk f [xk−1, xk−1, xk , xk ],
c3,k =p′′′k (xk−1)
6= f [xk−1, xk−1, xk , xk ].
Promotrimo li posljednje dvije relacije, vidimo da se isplatiI prvo izracunati koeficijent c3,k ,I a zatim ga upotrijebiti za racunanje c2,k .
136 / 158
Standardni oblik polinoma pk
Na kraju, dobivamo sljedece relacijeI za koeficijente ci,k u standardnom zapisu polinoma pk ,
napisane redom kako se racunaju iz zadanih podataka:
c0,k = fk−1,
c1,k = sk−1,
c3,k =sk + sk−1 − 2f [xk−1, xk ]
h2k
,
c2,k =f [xk−1, xk ]− sk−1
hk− hkc3,k .
za k = 1, . . . ,n.
137 / 158
Po dijelovima kubicna interpolacija — komentar
Drugim rijecima, ako znamo sk , ondaI nije problem naci koeficijente po dijelovima kubicne
interpolacije.
Ostaje nam samo pokazati kako bismo mogli birati brojeve sk .
Tu postoje dva bitno razlicita nacina.I sk su prave vrijednosti derivacije funkcije f u cvorovima,
ako ih znamo, tj. sk = f ′(xk ).I sk su neke aproksimacije za f ′(xk ). Takve aproksimacije
možemo lako naci numerickim deriviranjem iz zadanihvrijednosti fk .
Zato nema smisla proizvoljno zadati sk , ili tražiti samoneprekidnost ϕ′ u cvorovima, jer daju lošu aproksimaciju za f .
138 / 158
Interpolacija polinomimaKoliko je “dobar” interpolacijski polinom?Interpolacija u Cebiševljevim tockamaHermiteova polinomna interpolacija
Po dijelovima polinomna interpolacijaPo dijelovima linearna interpolacijaPrimjer za linearnu splajn interpolacijuPo dijelovima kubicna interpolacijaPo dijelovima kubicna Hermiteova interpolacija
139 / 158
Po dijelovima kubicna Hermiteova interpolacija
Vrijednosti sk možemo izabrati tako da su one baš jednakederivaciji zadane funkcije u odgovarajucoj tocki, tj. da vrijedi
sk = f ′(xk ).
U tom slucaju, svaki kubicni polinom pk jeI odreden lokalno — iz podataka na svom podintervalu, tj.
ne ovisi o drugim kubicnim polinomima.I Razlog = na rubovima su zadane 2 funkcijske vrijednosti i
2 vrijednosti derivacija.Takva se interpolacija zove po dijelovima kubicna Hermiteovainterpolacija.
Naziv “Hermiteova” znaci: sk = f ′k su zadani ulazni podaci.
140 / 158
Greška po dijelovima kubicne Hermiteove interp.
Neka je funkcija f ∈ C4[a,b]. Za svaki podinterval [xk−1, xk ],ocjena lokalne greške za Hermiteovu kubicnu interpolaciju pk je
|f (x)− pk (x)| ≤ |ωk (x)|M(k)
44!
,
pri cemu je
ωk (x) = (x − xk−1)2(x − xk )
2, M(k)4 = max
x∈[xk−1,xk ]|f (4)(x)|.
Uocite da je ovdje ωk jednak kvadratu polinoma cvorova ωlink za
po dijelovima linearnu interpolaciju na istoj mreži.
Za svaki x vrijedi ωk (x) ≥ 0, pa je |ωk | = ωk . Ostaje samo jošpronaci maksimum funkcije ωk na intervalu [xk−1, xk ].
141 / 158
Greška po dijelovima kubicne Hermiteove interp.
Dovoljno je naci sve lokalne ekstreme funkcije ωk u otvorenomintervalu, jer je na rubovima vrijednost jednaka 0.
Deriviranjem izlazi da se ekstrem (i to lokalni maksimum) opetdostiže u polovištu xe = (xk−1 + xk )/2.
Vrijednost ωk u tocki xe je kvadrat vrijednosti ωlink (xe) za po
dijelovima linearnu interpolaciju na istoj mreži cvorova
ωk (xe) = (xe − xk−1)2(xe − xk )
2 =(xk − xk−1)
4
16=
h4k
16.
Iz |ωk | = ωk slijedi da je xe tocka lokalnog maksimuma za |ωk | i
|ωk (x)| ≤ |ωk (xe)| =h4
k16, ∀x ∈ [xk−1, xk ].
142 / 158
Greška po dijelovima kubicne Hermiteove interp.
Kao i prije, neka je h maksimalni razmak susjednih cvorova
h = maxk=1,...,n
{hk = xk − xk−1}.
Onda, na citavom intervalu [a,b], možemo pisati
|f (x)− ϕ(x)| ≤ h4
16· M4
4!=
1384
h4M4,
pri cemu je
M4 = maxk=1,...,n
{M(k)4 } = max
x∈[a,b]|f (4)(x)|.
Drugim rijecima, ako ravnomjerno povecavamo broj cvorova,tako da h→ 0, onda i maksimalna greška teži u 0, tj. dobivamouniformnu konvergenciju. To vrijedi i za derivacije!
143 / 158
Greška po dijelovima kubicne Hermiteove interp.
Neka je f ∈ C1[a,b] i pretpostavimo daI f ima ogranicenu i integrabilnu cetvrtu derivaciju na
svakom podintervalu [xk−1, xk ].Tada je
‖f (x)− ϕ(x)‖∞ ≤1
384h4 ‖f (4)‖∞,
‖f ′(x)− ϕ′(x)‖∞ ≤√
3216
h3 ‖f (4)‖∞,
‖f ′′(x)− ϕ′′(x)‖∞ ≤1
12h2 ‖f (4)‖∞,
‖f ′′′(x)− ϕ′′′(x)‖∞ ≤12
h ‖f (4)‖∞.
144 / 158
Primjer — po dij. kubicna Hermiteova interp.
Primjer. Nadite po dijelovima kubicnu Hermiteovu interpolacijuza sljedece podatke
xk 0 1 2fk 1 2 0f ′k 0 1 1
.
Ocito, treba naci dva kubicna polinomaI p1 na intervalu [0,1],I p2 na intervalu [1,2].
Oba polinoma pišemo u standardnom obliku — oko pocetnetocke odgovarajuceg intervala.
145 / 158
Primjer — po dij. kubicna Hermiteova interp.Za polinom p1 imamo sljedecu tablicu podijeljenih razlika
tj f [tj ] f [tj , tj+1] f [tj , tj+1, tj+2] f [tj , . . . , tj+3]
0 10
0 1 11 −1
1 2 01
1 2
Iz nje dobivamo
p1(x) = 1 + 0(x − 0) + (x − 0)2 − (x − 0)2(x − 1)
= 1 + (1 + 1)(x − 0)2 − 1(x − 0)3
= 1 + 2x2 − x3.
146 / 158
Primjer — po dij. kubicna Hermiteova interp.Na slican nacin, za p2 dobivamo tablicu podijeljenih razlika
tj f [tj ] f [tj , tj+1] f [tj , tj+1, tj+2] f [tj , . . . , tj+3]
1 21
1 2 −3−2 6
2 0 31
2 0
pa je
p2(x) = 2 + (x − 1)− 3(x − 1)2 + 6(x − 1)2(x − 2)
= 2 + (x − 1) + (−3− 6)(x − 1)2 + 6(x − 1)3
= 2 + (x − 1)− 9(x − 1)2 + 6(x − 1)3.
147 / 158
Demo — po dij. kubicna Hermiteova interp.
Pokazat cemo kako izgleda po dijelovima kubicna Hermiteovainterpolacija na primjeru funkcije Runge:
f (x) =1
1 + x2 , x ∈ [−5,5],
na ekvidistantnim mrežama s parnim brojem podintervala.
Slike interpolacija i grešaka su na sljedecim stranicama.
148 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
0
0.5
1
1.5
-4 -2 0 2 4
f(x)
x
Po dijelovima kubicna Hermiteova interpolacija s 2 podintervala
funkcijainterpolacija
149 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
-0.45
-0.4
-0.35
-0.3
-0.25
-0.2
-0.15
-0.1
-0.05
0
-4 -2 0 2 4
gres
ka
x
Greska s 2 podintervala
greska
150 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
0
0.5
1
1.5
-4 -2 0 2 4
f(x)
x
Po dijelovima kubicna Hermiteova interpolacija s 4 podintervala
funkcijainterpolacija
151 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
-4 -2 0 2 4
gres
ka
x
Greska s 4 podintervala
greska
152 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
0
0.5
1
1.5
-4 -2 0 2 4
f(x)
x
Po dijelovima kubicna Hermiteova interpolacija sa 6 podintervala
funkcijainterpolacija
153 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.1
-0.09
-0.08
-0.07
-0.06
-0.05
-0.04
-0.03
-0.02
-0.01
0
0.01
-4 -2 0 2 4
gres
ka
x
Greska sa 6 podintervala
greska
154 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
0
0.5
1
1.5
-4 -2 0 2 4
f(x)
x
Po dijelovima kubicna Hermiteova interpolacija s 8 podintervala
funkcijainterpolacija
155 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.04
-0.035
-0.03
-0.025
-0.02
-0.015
-0.01
-0.005
0
0.005
-4 -2 0 2 4
gres
ka
x
Greska s 8 podintervala
greska
156 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.5
0
0.5
1
1.5
-4 -2 0 2 4
f(x)
x
Po dijelovima kubicna Hermiteova interpolacija s 10 podintervala
funkcijainterpolacija
157 / 158
Po dij. kubicna Hermiteova interp. — Runge
-0.014
-0.012
-0.01
-0.008
-0.006
-0.004
-0.002
0
0.002
-4 -2 0 2 4
gres
ka
x
Greska s 10 podintervala
greska
158 / 158