Numeeriset menetelmät Luento 8 To 29.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 1/36 p. 1/36
Interpolointi kuutiosplinillä Osavälit: I i = [t i 1,t i ], i = 1,2,...,n Osavälien pituudet: h i = t i t i 1, i = 1,2,...,n Datapisteistö: (t i,y i ), i = 0,1,...,n Interpolointiehdot: s(t i ) = y i, i = 0,1,...,n Kuutiosplini: s paloittain kuutiollinen s paloittain neliöllinen s paloittain lineaarinen s, s ja s jatkuvia koko välillä Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 2/36 p. 2/36
Interpolointi kuutiosplinillä Valitaan s siten että s (t i ) = M i, i = 0,1,...,n Integroidaan kahdesti Integrointivakiot määrätään interpolointiehtojen s(t i 1 ) = y i 1 ja s(t i ) = y i avulla Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 3/36 p. 3/36
Interpolointi kuutiosplinillä s(x) = M i 1 (t i x) 3 6h i + M i (x t i 1 ) 3 + + ( h 2 i y i 1 M i 1 6 ( y i M i h 2 i 6 6h i ) ti x h i ) x ti 1 h i, x I i Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 4/36 p. 4/36
Interpolointi kuutiosplinillä Derivoidaan kerran s (t i x) 2 (x t i 1 ) 2 (x) = M i 1 + M i 2h i 2h i 1 h (y 2 ) i i 1 M i 1 h i 6 + 1 h (y 2 ) i i M i, x I i h i 6 s jatkuva s (t i ) = s (t + i ), i = 1,2,...,n 1 Saadaan n 1 ehtoa Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 5/36 p. 5/36
Interpolointi kuutiosplinillä s (t i ) = (s :n kaava välillä I i ) (t i t i 1 ) 2 = M i 1 ( h 2 i y i 1 M i 1 2h i h i 6 + 1 h (y 2 ) i i M i h i 6 = h i 6 M i 1 + h i 3 M i + y i y i 1 h i ) Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 6/36 p. 6/36
Interpolointi kuutiosplinillä s (t i + ) = (s :n kaava välillä I i+1 ) (t i+1 t i ) 2 = M i 1 ( h 2 ) i+1 y i M i 2h i+1 h i+1 6 + 1 ( h 2 ) i+1 y i+1 M i+1 h i+1 6 = h i+1 3 M i h i+1 6 M i+1 + y i+1 y i h i+1 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 7/36 p. 7/36
Interpolointi kuutiosplinillä s (t i ) = s (t + i ) h i 6 M i 1 + h i+1 + h i M i + h i+1 3 6 M i+1 = y i+1 y i h i+1 }{{} =σ i+1 y i y i 1 h i }{{} =σ i h i 6 M i 1 + h i+1 + h i M i + h i+1 3 6 M i+1 = σ i+1 σ i 6 h i+1 + h i Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 8/36 p. 8/36
Interpolointi kuutiosplinillä h i h i+1 + h i }{{} =µ i M i 1 + 2M i + h i+1 M i+1 h i+1 + h }{{} i =λ i = 6 h i+1 + h i (σ i+1 σ i ) }{{} =d i µ i M i 1 + 2M i + λ i M i+1 = d i Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 9/36 p. 9/36
Interpolointi kuutiosplinillä Tuntemattomia n+1 kpl: M i, i = 0,1,...,n Yhtälöitä n 1 kpl: µ i M i 1 + 2M i + λ i M i+1 = d i, i = 1,2,...,n 1 Tarvitaan vielä kaksi lisäehtoa: 2M 0 + λ 0 M 1 = d 0 µ n M n 1 + 2M n = d n Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 10/36 p. 10/36
Interpolointi kuutiosplinillä Tridiagonaalinen yhtälöryhmä 2 λ 0 µ 1 2 λ 1 µ 2 2 λ 2......... µ n 2 2 λ n 2 µ n 1 2 λ n 1 µ n 2 M 0 M 1 M 2. M n 2 M n 1 M n = d 0 d 1 d 2. d n 2 d n 1 d n Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 11/36 p. 11/36
Luonnollinen kuutiosplini 2M 0 + λ 0 M 1 = d 0 µ n M n 1 + 2M n = d n Luonnollinen kuutiosplini: s (a) = s (b) = 0 M 0 = M n = 0 Saadaan kun valitaan λ 0 = d 0 = µ n = d n = 0 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 12/36 p. 12/36
Derivaattaehto Derivaattaehto pisteessä a: s (a) = y 0 s (a) = s (t + 0 ) = h 1 3 M 0 h 1 6 M 1 + y 1 y 0 h 1 = y 0 6 h 1 2M 0 + M 1 = 6 ( y1 y ) 0 y 0 h 1 h 1 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 13/36 p. 13/36
Derivaattaehto jatkuu Derivaattaehto pisteessä b: s (b) = y n s (b) = s (t n ) = h n 6 M n 1 + h n 3 M n + y n y n 1 h n = y n 6 h n M n 1 + 2M n = 6 ( y n y n y ) n 1 h n h n Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 14/36 p. 14/36
Derivaattaehto jatkuu Derivaattaehto: s (a) = y 0 ja s (b) = y n Saadaan kun valitaan λ 0 = µ n = 1 d 0 = 6 ( y1 y ) 0 y 0 h 1 h 1 d n = 6 ( y n y n y ) n 1 h n h n Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 15/36 p. 15/36
Not a knot -ehto Not a knot -ehto: Vain sisäsolmut t i, i = 1,2,...,n 1 splinin määritteleviä solmuja Tuntemattomia n 1 kpl: M i, i = 1,2,...,n 1 Yhtälöitä n 3 kpl: Kuten edellä, i = 2,3,...,n 2 Lisäksi ehdot s(a) = y 0 ja s(b) = y n Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 16/36 p. 16/36
Not a knot -ehto jatkuu Ehdot s(a) = y 0 ja s(b) = y n Vakiot λ 1, d 1, µ n 1 ja d n 1 voidaan laskea Ehdot saadaan samaan muotoon kuin muutkin ehdot Yhtälöitä yhteensä n 1 kpl Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 17/36 p. 17/36
Yhtälöryhmän ratkaisu Diagonaalialkiot 2 0 < λ i < 1 ja 0 < µ i < 1, i = 1,2,...,n 1 Jos λ 0 < 2 ja µ n < 2 Kerroinmatriisi diagonaalisti dominantti Yhtälöryhmällä yksikäsitteinen ratkaisu Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 18/36 p. 18/36
Esimerkki Datapisteistö: (1,1), (2, 2 1), (3, 3 1), (4, 4 1) Muodostetaan luonnollinen kuutiosplini M 0 = M 3 = 0 Yhtälöryhmä [ 2 λ 1 µ 2 2 ][ M 1 M 2 ] = [ ] d 1 d 2 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 19/36 p. 19/36
Esimerkki jatkuu h i = t i t i 1, i = 1,2,3 h 1 = h 2 = h 3 = 1 λ i = h i+1 h i + h i+1, i = 1,2 λ 1 = λ 2 = 1 2 µ i = h i h i + h i+1 = 1 λ i, i = 1,2 µ 1 = µ 2 = 1 2 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 20/36 p. 20/36
Esimerkki jatkuu σ i = y i y i 1 h i, i = 1,2,3 σ 1 = 1 2 1 1 = 1 2 σ 2 = σ 3 = 1 3 1 2 1 1 4 1 3 1 = 1 6 = 1 12 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 21/36 p. 21/36
Esimerkki jatkuu d i = 6(σ i+1 σ i ) h i + h i+1, i = 1,2 d 1 = 6( 1 6 ( 1 2 )) = 1 1+1 d 2 = 6( 12 1 ( 1 6 )) = 1 1+1 4 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 22/36 p. 22/36
Esimerkki jatkuu [ ][ ] 2 1/2 M 1 1/2 2 M 2 = M 1 = 1 2, M 2 = 0 [ ] 1 1/4 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 23/36 p. 23/36
Esimerkki jatkuu Sijoitetaan s(x) = M i 1 (t i x) 3 6h i + M i (x t i 1 ) 3 + + ( h 2 i y i 1 M i 1 6 ( y i M i h 2 i 6 6h i ) ti x h i ) x ti 1 h i, x I i M 0 = 0, M 1 = 1/2, M 2 = 0, M 3 = 0 (t 0,y 0 ) = (1,1), (t 1,y 1 ) = (2,1/2), (t 2,y 2 ) = (3,1/3), (t 3,y 3 ) = (4,1/4) Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 24/36 p. 24/36
Esimerkki jatkuu I 1 = [1,2] s(x) = 0+ 1 (x 1)3 2 6 +(1 0) 2 x ( 1 1 + 2 1 2 1 ) x 1 6 1 = 1 12 x3 1 4 x2 1 3 x+ 3 2 Muut osavälit vastaavasti Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 25/36 p. 25/36
Esimerkki jatkuu s(x) = 1 12 x3 4 1x2 1 3 x+ 2 3, 1 x 2 12 1 x3 + 4 3x2 3 7 17 x+ 6, 2 x 3 12 1 x+ 12 7, 3 x 4 Huomaa, että myös s ja s ovat jatkuvia koko välillä [1, 4] Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 26/36 p. 26/36
Luonnollinen kuutiosplini Olkoon f kaksi kertaa jatkuvasti derivoituva [a, b]:llä, ja olkoon s luonnollinen kuutiosplini, joka interpoloi f :ää Lause: b a [s (x)] 2 dx b a [ f (x)] 2 dx Tarkoittaa: Suora, hoikka ja taipuisa metallitanko pakotetaan kulkemaan datapisteiden kautta Luonnollinen kuutiosplini minimoi taivutusenergian lausekkeen Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 27/36 p. 27/36
Luonnollinen kuutiosplini Olkoon f kaksi kertaa jatkuvasti derivoituva [a, b]:llä, ja olkoon s luonnollinen kuutiosplini, joka interpoloi f :ää Lause: max f(x) s(x) a x b h3/2 E( f) max f (x) s (x) h 1/2 E( f) a x b missä h = maxh i ja E( f) = ( b a ) 1/2 [ f (x)] 2 dx Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 28/36 p. 28/36
Funktion approksimointi Etsitään p siten, että p f, mutta ei vaadita, että p(x) = f(x) tietyissä pisteissä x Normiavaruus V ja sen äärellisulotteinen aliavaruus Ṽ Esimerkiksi: V = C([a,b]) = jatkuvat funktiot välillä [a,b] Ṽ = P n = astetta n olevat polynomit Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 29/36 p. 29/36
Funktion approksimointi Etsitään annetulle f V approksimaatio p Ṽ siten, että f p f q q Ṽ Lause: Jokaiselle f V on olemassa ainakin yksi p Ṽ Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 30/36 p. 30/36
Tasainen polynomiapproksimaatio Tasainen approksimaatio eli minimax-approksimaatio Jatkuvan funktion f polynomiapproksimaatio p siten, että virheen maksiminormi minimoituu f p = max f(x) p(x) a x b Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 31/36 p. 31/36
Maksimivirheen alternointi Jatkuvalla funktiolla on täsmälleen yksi minimax-polynomi p n on f :n minimax-polynomi, jos ja vain jos on olemassa n+2 pistettä a x 0 < x 1 < < x n < x n+1 b siten, että ( 1) i [ f(x i ) p n (x i )] = σ f p n missä σ = sign( f(x 0 ) p n (x 0 )) ja i = 0,1,...,n+1 Jos f C (n+1) ([a,b]) ja f (n+1) ei vaihda merkkiään välillä [a,b], niin a = x 0 ja b = x n+1 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 32/36 p. 32/36
Esimerkki [a,b] = [0,π/2], f(x) = cosx, p 1 (x) = c 0 + c 1 x Pisteet 0 x 0 < x 1 < x 2 π/2 f (x) = cosx ei vaihda merkkiään välillä [0, π/2] x 0 = 0 ja x 2 = π/2 Merkitään d = f p 1 Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 33/36 p. 33/36
Esimerkki jatkuu Tuntemattomat: c 0, c 1, x 1 ja d Lause kolme yhtälöä ( 1) i [ f(x i ) p 1 (x i )] = d, i = 0,1,2 cos0 c 0 c 1 0 = d cosx 1 + c 0 + c 1 x 1 = d cos π 2 c 0 c 1 π 2 = d Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 34/36 p. 34/36
Esimerkki jatkuu Neljäs yhtälö: f (x 1 ) = p 1 (x 1) sinx 1 = c 1 Ratkaistaan yhtälöt c 1 = 2 π 0.636620 x 1 = arcsin 2 π 0.690107 d = 1 2 (cosx 1 c 1 x 1 1) 0.105257 c 0 = d + 1 1.10526 p 1 (x) 1.10526 0.636620 x Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 35/36 p. 35/36
Minimax-polynomit Yleisesti minimax-polynomia ei voi muodostaa analyyttisesti Tarvitaan iteratiivisia menetelmiä (ei käsitellä) Minimax-polynomi interpolaatiopolynomi Tšebyševin interpolaatiopisteitä käyttäen Numeeriset menetelmät Syksy 2011 Luento 8 To 29.9.2011 p. 36/36 p. 36/36