Aproksimacija polinomima - PMF · Interpolacija Zadatak 1 Napišite funkciju koja ce ra´ cunati...
Transcript of Aproksimacija polinomima - PMF · Interpolacija Zadatak 1 Napišite funkciju koja ce ra´ cunati...
Taylorov polinom
Taylorov polinom
Taylorov polinom:
Tn(x) = f (x0)+f ′(x0)(x−x0)+f ′′(x0)
2!(x−x0)
2+. . .+f (n)(x0)
n!(x−x0)
n
Pogreška:
f (x)− Tn(x) =f (n+1)(ζ)
(n + 1)!(x − x0)
n+1
za neki ζ izmedu x i x0
Kada jelim
n→∞Tn(x) = f (x)?
2 / 18
Taylorov polinom
Taylorov polinom
Taylorov polinom:
Tn(x) = f (x0)+f ′(x0)(x−x0)+f ′′(x0)
2!(x−x0)
2+. . .+f (n)(x0)
n!(x−x0)
n
Pogreška:
f (x)− Tn(x) =f (n+1)(ζ)
(n + 1)!(x − x0)
n+1
za neki ζ izmedu x i x0
Kada jelim
n→∞Tn(x) = f (x)?
2 / 18
Taylorov polinom
Taylorov polinom
Taylorov polinom:
Tn(x) = f (x0)+f ′(x0)(x−x0)+f ′′(x0)
2!(x−x0)
2+. . .+f (n)(x0)
n!(x−x0)
n
Pogreška:
f (x)− Tn(x) =f (n+1)(ζ)
(n + 1)!(x − x0)
n+1
za neki ζ izmedu x i x0
Kada jelim
n→∞Tn(x) = f (x)?
2 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija: ∂P ≥ n
Jedinstvenost: ∂P = n
3 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija:
∂P ≥ n
Jedinstvenost: ∂P = n
3 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija: ∂P ≥ n
Jedinstvenost: ∂P = n
3 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija: ∂P ≥ n
Jedinstvenost:
∂P = n
3 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija: ∂P ≥ n
Jedinstvenost: ∂P = n
3 / 18
Interpolacija
Interpolacija
Problem:Za dane
x0 < x1 < x2 < . . . < xn
iy0, y1, y2, . . . , yn
odrediti polinom P koji zadovoljava (interpolacijske) uvjete
P(xi) = yi , i = 0,1,2, . . . ,n.
Egzistencija: ∂P ≥ n
Jedinstvenost: ∂P = n
3 / 18
Interpolacija
Odredivanje polinoma.
Najjednostavniji pristup:
P(x) = a0 + a1x + . . .+ anxn
iP(xi) = yi , i = 0,1,2, . . . ,n.
povlace
a0 + a1xi + . . .+ anxni = yi i , i = 0,1,2, . . . ,n.
Sustav jednadžbiVa = y
4 / 18
Interpolacija
Odredivanje polinoma.
Najjednostavniji pristup:
P(x) = a0 + a1x + . . .+ anxn
iP(xi) = yi , i = 0,1,2, . . . ,n.
povlace
a0 + a1xi + . . .+ anxni = yi i , i = 0,1,2, . . . ,n.
Sustav jednadžbiVa = y
4 / 18
Interpolacija
Odredivanje polinoma.
Najjednostavniji pristup:
P(x) = a0 + a1x + . . .+ anxn
iP(xi) = yi , i = 0,1,2, . . . ,n.
povlace
a0 + a1xi + . . .+ anxni = yi i , i = 0,1,2, . . . ,n.
Sustav jednadžbiVa = y
4 / 18
Interpolacija
V =
1 x0 x2
0 · · · xn0
1 x1 x21 · · · xn
1...
......
...1 xn−1 x2
n−1 · · · xnn−1
1 xn x2n · · · xn
n
Vandermondeova matrica
Regularna:det V =
∏1≤i<j≤n
(xj − xi)
Loše uvjetovana
5 / 18
Interpolacija
V =
1 x0 x2
0 · · · xn0
1 x1 x21 · · · xn
1...
......
...1 xn−1 x2
n−1 · · · xnn−1
1 xn x2n · · · xn
n
Vandermondeova matrica
Regularna:det V =
∏1≤i<j≤n
(xj − xi)
Loše uvjetovana
5 / 18
Interpolacija
V =
1 x0 x2
0 · · · xn0
1 x1 x21 · · · xn
1...
......
...1 xn−1 x2
n−1 · · · xnn−1
1 xn x2n · · · xn
n
Vandermondeova matrica
Regularna:det V =
∏1≤i<j≤n
(xj − xi)
Loše uvjetovana
5 / 18
Interpolacija
Lagrangeova forma
Li(x) =∏j 6=i
x − xj
xi − xj
=(x − x0)(x − x1) . . . (x − xi−1)(x − xi+1) . . . (x − xn)
(xi − x0)(xi − x1) . . . (xi − xi−1)(xi − xi+1) . . . (xi − xn)
Li(xj) = δij =
{1 za i = j0 za i 6= j
P(x) =n∑
i=0
yjLj(x)
Neprakticno. Za racunanje P(x) treba previše racunskih operacija.Koristi se za teorijska razmatranja.
6 / 18
Interpolacija
Lagrangeova forma
Li(x) =∏j 6=i
x − xj
xi − xj
=(x − x0)(x − x1) . . . (x − xi−1)(x − xi+1) . . . (x − xn)
(xi − x0)(xi − x1) . . . (xi − xi−1)(xi − xi+1) . . . (xi − xn)
Li(xj) = δij =
{1 za i = j0 za i 6= j
P(x) =n∑
i=0
yjLj(x)
Neprakticno. Za racunanje P(x) treba previše racunskih operacija.Koristi se za teorijska razmatranja.
6 / 18
Interpolacija
Lagrangeova forma
Li(x) =∏j 6=i
x − xj
xi − xj
=(x − x0)(x − x1) . . . (x − xi−1)(x − xi+1) . . . (x − xn)
(xi − x0)(xi − x1) . . . (xi − xi−1)(xi − xi+1) . . . (xi − xn)
Li(xj) = δij =
{1 za i = j0 za i 6= j
P(x) =n∑
i=0
yjLj(x)
Neprakticno. Za racunanje P(x) treba previše racunskih operacija.Koristi se za teorijska razmatranja.
6 / 18
Interpolacija
Lagrangeova forma
Li(x) =∏j 6=i
x − xj
xi − xj
=(x − x0)(x − x1) . . . (x − xi−1)(x − xi+1) . . . (x − xn)
(xi − x0)(xi − x1) . . . (xi − xi−1)(xi − xi+1) . . . (xi − xn)
Li(xj) = δij =
{1 za i = j0 za i 6= j
P(x) =n∑
i=0
yjLj(x)
Neprakticno. Za racunanje P(x) treba previše racunskih operacija.
Koristi se za teorijska razmatranja.
6 / 18
Interpolacija
Lagrangeova forma
Li(x) =∏j 6=i
x − xj
xi − xj
=(x − x0)(x − x1) . . . (x − xi−1)(x − xi+1) . . . (x − xn)
(xi − x0)(xi − x1) . . . (xi − xi−1)(xi − xi+1) . . . (xi − xn)
Li(xj) = δij =
{1 za i = j0 za i 6= j
P(x) =n∑
i=0
yjLj(x)
Neprakticno. Za racunanje P(x) treba previše racunskih operacija.Koristi se za teorijska razmatranja.
6 / 18
Interpolacija
Newtonova forma
Podijljene razlike:
f [xk ] = f (xk )
f [x0, x1, . . . , xn−1, xn] =f [x1, . . . , xn−1, xn]− f [x0, x1, . . . , xn−1]
xn − x0
Interpolacijski polinom:
P(x) = f [x0] + f [x0, x1](x − x0) + f [x0, x1, x2](x − x0)(x − x1) +
. . .+ f [x0, x1, x2, . . . , xn](x − x0)(x − x1) . . . (x − xn−1)
7 / 18
Interpolacija
Newtonova forma
Podijljene razlike:
f [xk ] = f (xk )
f [x0, x1, . . . , xn−1, xn] =f [x1, . . . , xn−1, xn]− f [x0, x1, . . . , xn−1]
xn − x0
Interpolacijski polinom:
P(x) = f [x0] + f [x0, x1](x − x0) + f [x0, x1, x2](x − x0)(x − x1) +
. . .+ f [x0, x1, x2, . . . , xn](x − x0)(x − x1) . . . (x − xn−1)
7 / 18
Interpolacija
Pogreška interpolacije
f (x)− Pn(x) =f (n+1)(ζ)
(n + 1)!(x − x0)(x − x1) . . . (x − xn−1)(x − xn)
8 / 18
Interpolacija
Zadatak 1
Napišite funkciju koja ce racunati aproksimaciju eksponencijalnefunkcije pomocu Taylorovog polinoma n-tog stupnja:
exp x ≈ 1 + x +x2
2!+
x3
3!+ . . .+
xn
n!=
n∑i=0
x i
i!
Dobiveni rezultat usporedite s egzaktnom vrijednošcu. Nacrtajterješenje i aproksimaciju na intervalu [0,10].
Nacrtajte pogrešku na intervalu [0,10].
Pomocpolyval(pol_coef,x)
9 / 18
Interpolacija
Rješenje.
tay=n:-1:0;tay= factorial(tay).(-1);t=1:0.01:10;y=polyval(tay,t);e=exp(t);err = log(e-y);plot(t,y,t,e)plot(t,err)
10 / 18
Interpolacija
Rješenje.tay=n:-1:0;tay= factorial(tay).(-1);t=1:0.01:10;y=polyval(tay,t);e=exp(t);err = log(e-y);plot(t,y,t,e)plot(t,err)
10 / 18
Interpolacija
Zadatak 2
Za ekvidistantno izabrane tocke generirajte Vandermondeovu matricu iizracunajte broj uvjetovanosti za razlicite n.
V =
1 x0 x2
0 · · · xn0
1 x1 x21 · · · xn
1...
......
...1 xn−1 x2
n−1 · · · xnn−1
1 xn x2n · · · xn
n
11 / 18
Interpolacija
Zadatak 3
Za zadane nizove tocaka x i vrijednosti y napišitefunkciju koja ce racunati podijeljene razlike f [x0, x1, x2, . . . , xk ] ,k = 0, . . . ,n;funkciju koja ce za zadani t racunati P(t), vrijednostinterpolacijskog polinoma u tocki t .
12 / 18
Interpolacija
Pomoc
Podijeljene razlike:f = yfor i=2:n+1for j= n+1:-1:if(j) = ( f(j)-f(j-1))/(x(j)-x(j-i))
endend
Hornerov algoritamp= f(n+1)for i=n:-1:1p = p *(x-x(i))+f(i)
end
13 / 18
Interpolacija
Pomoc
Podijeljene razlike:f = yfor i=2:n+1for j= n+1:-1:if(j) = ( f(j)-f(j-1))/(x(j)-x(j-i))
endend
Hornerov algoritamp= f(n+1)for i=n:-1:1p = p *(x-x(i))+f(i)
end
13 / 18
Interpolacija
Zadatak 4
Napišite funkciju koja ce racunati interpolacijski polinomeksponencijalne funkcije na intervalu [0,10] koristeci ekvidistantnetocke interpolacije.
Nacrtajte graf funkcije i interpolacijskog polinoma.
Nacrtajte graf pogreške.
Kako se pogreška ponaša povecanjem broja tocaka?
14 / 18
Interpolacija
Zadatak 5
Napišite funkciju koja ce racunati interpolacijski polinom funkcije
f (x) =1
1 + x2
na intervalu [-5,5] koristeci ekvidistantne tocke interpolacije.
Nacrtajte graf funkcije i interpolacijskog polinoma.
Nacrtajte graf pogreške.
Kako se pogreška ponaša povecanjem broja tocaka?
15 / 18
Interpolacija
Zadatak 6
Nacrtajte graf funkcije
ω(x) = (x − x0)(x − x1) . . . (x − xn)
za ekvidistantno izabrane tocke xi na intervalu [0,1];za Cebiševljeve tocke na intervalu [0,1].
Pomoc
Cebiševljeve tocke na intervalu [a,b]:
tk =a + b
2+
b − a2
cos(2(n − k) + 1)π
2n + 2, k = 0, . . .n.
16 / 18
Interpolacija
Zadatak 6
Nacrtajte graf funkcije
ω(x) = (x − x0)(x − x1) . . . (x − xn)
za ekvidistantno izabrane tocke xi na intervalu [0,1];za Cebiševljeve tocke na intervalu [0,1].
Pomoc
Cebiševljeve tocke na intervalu [a,b]:
tk =a + b
2+
b − a2
cos(2(n − k) + 1)π
2n + 2, k = 0, . . .n.
16 / 18
Interpolacija
Zadatak 7
Napišite funkciju koja ce racunati interpolacijski polinomeksponencijalne funkcije na intervalu [0,10] koristeci Cebiševljevetocke interpolacije.
Nacrtajte graf funkcije i interpolacijskog polinoma.
Nacrtajte graf pogreške.
Kako se pogreška ponaša povecanjem broja tocaka?
17 / 18
Interpolacija
Zadatak 8
Napišite funkciju koja ce racunati interpolacijski polinom funkcije
f (x) =1
1 + x2
na intervalu [-5,5] koristeci Cebiševljeve tocke interpolacije.
Nacrtajte graf funkcije i interpolacijskog polinoma.
Nacrtajte graf pogreške.
Kako se pogreška ponaša povecanjem broja tocaka?
18 / 18