next up previous
Next: Numeerinen integrointi Up: No Title Previous: Tiistai 8.2

Torstai 10.2

1.
Työarkilla Lv5.mws on annettu USA:n väestölaskentadataa vuosina 1940 - 1990. Muodosta interpolaatiopolynomi ja laske sen avulla arviot väkiluvulle vuosina 1930, 1965, 2000, 2020. Mitä arvelet tulosten luotettavuudesta/tarkkuudesta? Havainnollista kuvilla, joissa datapisteet ja interpolaatiopolynomi.

2.
Muodosta interpolaatiopolynomi pisteistölle, joka saadaan laskemalla funktion $\cos (1+x^2)$ arvot tasavälisessä x-pisteistössä, jossa on 7 pistettä välillä [0,3]. Piirrä samaan kuvaan funktio, datapisteet ja interpolaatiopolynomi.

Käytä valmiita -funktioita polyfit, polyval.

Arvioi Lagrangen interpolaatiokaavan virhetermin avulla interpolaatiovirheen yläraja yo. välillä. Huom! Kaavassa esiintyvän tulomuotoisen polynomin ylärajan voit arvioida kuvasta tai Matlab-funktiolla max (riittävän tiheästi valitun x-datan (kuten 100 osaa, vrt. linspace) perusteella).

Huom! Muista, että interpolaatiopolynomi kulkee kaikkien datapisteiden kautta. Sinun tulee tietää, mikä on oikea asteluku, ei ajattele puolestasi.

3.
Tasavälisen polynomi-interpolaation vaaroja voi demonstroida ns Rungen funktiolla. (Funktio ei ole mitenkään Rungen omaisuutta, kyseessä on ``Rungen kokeena'' tunnettu ilmiö.)

\begin{displaymath}f(x)={1\over 1+25 x^2}\ \ x\in[-1,1].
\end{displaymath}

Kirjoita ensin funktio runge tiedostoon runge.m. Valitse n pistettä tasavälisesti määrittelyväliltä ja muodosta niiden kautta kulkeva interpolaatiopolynomi. Piirrä se samaan kuvaan Rungen funktion ja interpolaatiopisteiden kanssa.

Kokeile eri n:n arvoja, esim. n=5,10,15. Mitä havaitset?

4.
[Pikku projekti] Käänteinen interpolaatio. Oletetaan, että derivoituvalla funktiolla f on yksi 0-kohta välillä [a,b] ja $f'(x)\ne 0$ koko välillä. Funktion nollakohta x0=f-1(0). Eräs idea on approksimoida käänteisfunktiota interpoloimalla. Tätä varten valitaan pisteet $x_1, \ldots x_n$väliltä [a,b], lasketaan $y_k=f(x_k), k=1 \ldots n$ ja muodostetaan interpolaatiopolynomi niin, että vaihdetaan x- ja y-pisteiden roolit. (Tämä on maailman helpointa Matlabissa (ja maailman toiseksi helpointa Maplessa.))

Suunnittele algoritmi, jota voidaan kutsua iteroiduksi käänteiseksi interpolaatioksi, jossa lähdetään jostain alkupistejoukosta, suoritetaan käänteinen interpolaatio ja toistetaan menettely valiten parempi alkuopistejoukko. Tässä on harkittavia parametrejä mm. alkpisteiden lukumäärä ja sijainti. Implementoi Matlabilla ja testaa nyt ensin vaikka funktion x-e-x0-kohdan hakemiseen.

5.
Miten suuri n tulee valita a) puolisuunnikaskaavassa, b) Simpsonin kaavassa, jotta |virhe| laskettaessa $\int_0^2 e^{2x}\sin 3x dx$ olisi korkeintaan 10-5. Mikä on tällöin integraalin likiarvo?


next up previous
Next: Numeerinen integrointi Up: No Title Previous: Tiistai 8.2
Laura Astola
2000-02-07