Interpolation Modellfunktioner som satisfierar givna punkter

Relevanta dokument
Interpolation. 8 december 2014 Sida 1 / 20

Numerisk Analys, MMG410. Lecture 12. 1/24

OH till Föreläsning 5, Numme K2, Läsa mellan raderna. Allmän polynom-interpolation, S Ch 3.1.0

m Animering m Bilder m Grafik m Diskret representation -> kontinuerlig m En interpolerande funktion anvšnds fšr att

Numerisk Analys, MMG410. Lecture 13. 1/58

OH till Föreläsning 5, Numme K2, GNM Kap 4-4.4A / GKN Kap 4.1A,(D),E Interpolation. Läsa mellan raderna. Allmän polynom-interpolation

Föreläsning 5. Approximationsteori

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab

LAB 3. INTERPOLATION. 1 Inledning. 2 Interpolation med polynom. 3 Splineinterpolation. 1.1 Innehåll. 3.1 Problembeskrivning

NUMPROG, 2D1212, vt Föreläsning 1, Numme-delen. Linjära ekvationssystem Interpolation, Minstakvadratmetoden

Ansvariga lärare: Yury Shestopalov, rum 3A313, tel (a) Problem 1. Använd Eulers metod II (tre steg) och lös begynnelsevärdesproblemet

Numeriska metoder. Kompendiet. Lektor: Yury Shestopalov. Tel Karlstads Universitet

Lösningar till Tentamen i Beräkningsvetenskap II, 5.0 hp, Del A. 1. (a) ODE-systemet kan skrivas på formen

Del I: Lösningsförslag till Numerisk analys,

Teorifrågor. 6. Beräkna konditionstalet för en diagonalmatris med diagonalelementen 2/k, k = 1,2,...,20.

TANA09 Föreläsning 8. Kubiska splines. B-Splines. Approximerande Splines. B-splines. Minsta kvadrat anpassning. Design av kurvor och ytor.

Tentamen, del 2 Lösningar DN1240 Numeriska metoder gk II F och CL

Approximerande Splines. B-splines. Minsta kvadrat anpassning. Design av kurvor och ytor.

a = a a a a a a ± ± ± ±500

Sammanfattning (Nummedelen)

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Felfortplantning och kondition

Linjär Algebra och Numerisk Analys TMA 671, Extraexempel

Polynomanpassning i MATLAB

Fel- och störningsanalys

0.31 = f(x 2 ) = b 1 + b 2 (x 3 x 1 ) + b 3 (x 3 x 1 )(x 3 x 2 ) = ( ) + b 3 ( )(

Fel- och störningsanalys

TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1/TM1, TMA

TANA19 NUMERISKA METODER

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Varning!!! Varning!!!

Fö4: Kondition och approximation. Andrea Alessandro Ruggiu

Akademin för utbildning, kultur och kommunikation MMA132 Numeriska Metoder Avdelningen för tillämpad matematik Datum: 2 juni 2014

Konvergens för iterativa metoder

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Omtentamen i DV & TDV

KTH 2D1240 OPEN vt 06 p. 1 (5) J.Oppelstrup

1.1 MATLABs kommandon för matriser

Envariabelanalys 5B1147 MATLAB-laboration Derivator

DATORLABORATION FÖR KURSEN ENVARIABELANALYS 2

3.6 De klassiska polynomens ortogonalitetsegenskaper.

f(x + h) f(x) h f(x) f(x h) h

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 26 november 2015 Sida 1 / 28

Lösningsförslag envariabelanalys

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Institutionen för Matematik. F1 - Linjär algebra och numerisk analys, TMA671 Svar till övningar i Heath s bok och extraövningar

Optimering, exempel. Funktionens enda stationära punkt är alltså origo. Den ligger också i det inre av mängden.

Linjärisering, Jacobimatris och Newtons metod.

3.3. Interpolationsmetoder

1 Föreläsning 12, Taylors formel, och att approximera en funktion med ett polynom

Sidor i boken f(x) = a x 2 +b x+c

Tillämpning: Bildinterpolation. Ekvationslösning. Integraler. Tillämpning: En båt. Räkning med polynom. Projekt. Tentamensinformation.

Icke-linjära ekvationer

Matlab övningsuppgifter

OH till Föreläsning 15, Numme K2, God programmeringsteknik

4 McLaurin- och Taylorpolynom

= = i K = 0, K =

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

3 differensekvationer med konstanta koefficienter.

KTH Matematik Tentamensskrivning i Differentialekvationer I, SF1633.

Komplettering till kursboken i Numeriska beräkningar. 1 Beräkningsfelsanalys. 1.1 Uttryck med kancellation

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Fredag 16 januari 2009 TID:

Lösningsförslag till tentamensskrivningen i Numerisk analys

7 Extremvärden med bivillkor, obegränsade områden

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28

DEL I. Matematiska Institutionen KTH

x f (x) dx 1/8. Kan likhet gälla i sistnämnda relation. (Torgny Lindvall.) f är en kontinuerlig funktion på 1 x sådan att lim a

Newtons metod. 1 Inledning. CTH/GU LABORATION 3 MVE /2014 Matematiska vetenskaper

F 4 Ch Numerisk integration, forts.; Ch.4 Numerisk derivering.

Gamla tentemensuppgifter

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

Tentamensskrivning i Differentialekvationer I, SF1633(5B1206).

TMA226 datorlaboration

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 2

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Teknisk-Vetenskapliga Beräkningar

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Föreläsningen ger en introduktion till differentialekvationer och behandlar stoff från delkapitel 18.1, 18.3 och 7.9 i Adams. 18.

Uppsala Universitet Matematiska Institutionen Bo Styf. Lösningar till kryssproblemen 1-5. Uppgifter till lektion 1: = 10 x. = x 10.

6 Derivata och grafer

SF1513 NumProg för Bio3 HT2013 LABORATION 4. Ekvationslösning, interpolation och numerisk integration. Enkel Tredimensionell Design

SF1625 Envariabelanalys

8. Euklidiska rum 94 8 EUKLIDISKA RUM

Polynomanpassningsprogram

Uppgift 1 R-S. Uppgift 2 R-M. Namn:...

Institutionen för Matematiska Vetenskaper TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1/TM1, TMA

5 Om f (r) = 0 kan andraderivatan inte avgöra vilken typ av extrempunkt det handlar om. Återstår att avgöra punktens typ med teckenstudium.

Moment Viktiga exempel Övningsuppgifter I Ö5.1b, Ö5.2b, Ö5.3b, Ö5.6, Ö5.7, Ö5.11a

Tentamen: Numerisk Analys MMG410, GU

8.5 Minstakvadratmetoden

Kapitel 7. Numerisk derivering och integration

Maclaurins och Taylors formler. Standardutvecklingar (fortsättning), entydighet, numerisk beräkning av vissa uttryck, beräkning

Moment Viktiga exempel Övningsuppgifter

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

TAYLORS FORMEL VECKA 4

Föreläsning 3: Dekomposition. Dekomposition

Kort sammanfattning av Beräkningsvetenskap I. Varning!!! Varning!!!

Frågorna 1 till 6 ska svaras med sant eller falskt och ger vardera 1

Något om Taylors formel och Mathematica

Modul 4 Tillämpningar av derivata

Transkript:

Interpolation Modellfunktioner som satisfierar givna punkter

Några tillämpningar Animering rörelser, t.ex. i tecknad film Bilder färger resizing Grafik Diskret representation -> kontinuerlig 2

Interpolation Vi känner f(t) i n punkter y i = f (t i ) i = 1,.., n Vi söker en funktion P(t) så att P(t i ) = y i P(t) interpolerar f i punkterna t i Pkanvarapolynom,trigonometriska funktioner 3

Basfunktioner En interpolerande funktion väljs som linjärkomb. av basfunktioner f ( t) = n j= 1 x j Φ ( t) j Φ 1 (t) Φ n (t) x j är de param. som ska bestämmas Att kräva att f interpolerar ( t i,y i ) i = 1 n betyder att vilket ger ett system av linjära ekvationer Ax = y Elementen i A ges av n j =1 f (t i ) = x j Φ j (t i ) = y i a ij =Φ j (t i ) 4

Kvadratiskt system Genom att välja antalet basfunktioner = antalet mätpunkter får vi ett kvadratiskt system så att punkterna satisfieras exakt Valet av basfunktioner påverkar konditionen hos Ax = y 5

Definitioner En interpolerande funktion används för att uppskatta värdet av f i en punkt t. Om t tillhör det intervall som bildas av t 1 t n görs en interpolation Ligger t utanför intervallet görs en extrapolation Att arbeta med polynom är fördelaktigt eftersom de är enkla att derivera och integrera 6

Polynominterpolation Enklast och vanligast att välja ett polynom som interpolerande funktion Till n punkter (t i,y i )finnsettentydigt bestämt polynom av grad n-1 Polynomet kan representeras och evalueras på olika sätt, men alla måste ge samma matematiska funktion 7

Basfunktionerna för polynom Φ j (t) = t j 1 j =1 n Φ 1 (t) = 1 Φ 2 (t) = t Φ 3 (t) = t 2 Φ n (t) = t n 1 P(t) = c 0 + c 1 t + c 2 t 2 + +c n 1 t n 1 8

Koefficienterna c i bestäms av det linj. ekvationssystemet 1 t t 2 1 1 1 t t 2 2 2 K t n 1 1 K t n 1 2 M M M O M 1 t n t n 2 K t n n 1 c 0 c 1 M c n 1 = y 1 y 2 M y n Vandermonde-matris, ofta illakonditionerad 9

Exempel Bestäm det andragradspolynom som interpolerar Ansats : ger ekvationen 1 90 8100 1 100 10000 1 110 12100 c = [0.42-0.003 0.0001] T P(t) = c 0 + c 1 t + c 2 t 2 c 0 c 1 = 0.96 1.12 1.30 c 2 ger t f 90 0.96 100 1.12 110 1.30 Illakond. problem : κ(a) = 2 10 6 P(t) = 0.42 0.003t + 0.0001t 2 Om man lägger till en punkt måste hela systemet lösas på nytt. 10

Newtons allmänna interpolationsformel Ansätt P n-1 (t) som ett interpolationspol. av grad n-1 P n 1 (t) = c 0 + c ( 1 t t 1 )+ c ( 2 t t 1 )t ( t 2 )+ P(t i )=f i, i=1,2,, n måste gälla insättning av (t i,f i ) ger + +c ( n 1 t t 1 )t ( t 2 ) t t n 1 ( ) c 0 = f 1 c + c (t t ) 0 1 2 1 = f 2 c 0 + c 1 (t 3 t 1 )+c 2 (t 3 t 1 )(t 3 t 2 ) = f 3 L 11

t f 90 0.96 100 1.12 110 1.30 i exemplet P (t) = c + c ( t 90)+ c ( t 90) ( t 100) 2 0 1 2 ger ekvationerna 1 0 0 1 10 0 1 20 200 c 0 c 1 c 2 0.96 = 1.12 1.30 Ger nollorna κ(a) = 2 10 2 12

exempel Den nya formuleringen ger c = [0.96 0.016 0.0001] T P 2 (t) = 0.96 + 0.016( t 90)+ 0.0001( t 90)t ( 100)= = 0.42 0.003t + 0.0001t 2 Endast en ekvation behöver lösas om ytterligare en punkt läggs till 13

koefficienterna c 0 = f 1 c 1 = f 2 f 1 t 2 t 1 c 2 = f f t t 3 1 3 1 t t 2 1 ( ) ( ( ) f f ) 2 1 ( t t )t ( t ) 3 1 2 1 och allt mer komplicerat (för!) 14

Dividerade differenser f[]= x i f (x i ) f[ x i,, x i+ n ]= fx [ i,, x i +n ] f x i,, x i + n x i +n x i [ ] f[ x 1, x 2 ]= f (x 2) f (x 1 ) f[ x 2, x 3 ]= f (x 3) f (x 2 ) x 2 x 1 x 3 x 2 f[ x 1, x 2,x 3 ]= f [ x, x 2 3] fx 1, x 2 = x 3 x 1 [ ] f (x 3 ) f (x 2 ) x 3 x 2 f (x 2 ) f (x 1 ) x 2 x 1 x 3 x 1 15

Bättre sätt att beräkna c i c t 1 f 1 t 2 f 2 t 3 f 3 t 4 f 4 0 f[t 1,t 2 ] f[t 2,t 3 ] f[t 3,t 4 ] c 1 c 2 f[t 1,t 2,t 3 ] f[t 2,t 3,t 4 ] c 3 f[t 1,t 2 t 3,t 4 ] R T kan uppskattas med första försummade term ty f[t 1,t 2,, t k+1 ] =f (k) (ξ) k! 16

Nytt exempel t f f[,] f[,,] 21 0.36406 22 0.36434 23 0.36461 24 0.36488 0.00028/1 0.00027/1 0.00027/1-0.00001/2 0/2=0 t f 20 0.36379 21 0.36406 22 0.36434 23 0.36461 24 0.36488 0.00001/6 P 3 (x) = c 0 +c 1 (t-t 1 )+c 2 (t-t 1 )(t-t 2 )+c 3 (t-t 1 )(t-t 2 )(t-t 3 )= = 0.36406 + 0.00028(t-21) - 0.000005(t-21)(t-22) + + 0.00001/6(t-21)(t-22)(t-23) 17

Hur stort blir modellfelet? Sats : Låt f vara en funktion med n kontinuerliga derivator inom det intervall som bildas av punkterna t 1,t 2,, t n. Om P är det entydigt bestämda polynom av grad n-1 som uppfyller P(t i )=f(t i ) i= 1,,n Då gäller att f (n) (ξ) f(t)-p(t)= n! (t-t 1 )(t-t 2 ) (t - t n ) för något ξ inom det intervall som bildas av t 1,t 2,, t n. Så f (n) (ξ) n! kan alltså skattas med nästa koefficient 18

Polynom av grad n-1 som interpolerar (t i,f i )i=1, n Felkällor P n 1 (t) = c 0 + c 1 ( t t 1 )+ c 2 ( t t 1 )t ( t 2 )+ +c n 1 ( t t 1 ) ( t t n 1 ) R XX : Felet i interpolationspunkten ( t ± t )gerupphov till fel i approximationen av f(t) R XF R B R T : Fel i de angivna funktionsvärden följer med till ber. av c i och därmed till P : Avrundningsfel i beräkningarna : Approximation med polynom = modellfel Se särskilt häfte om felen 19

Trunkeringsfelet R T Newtons allmänna interpolationspolynom trunkeringsfelet uppskattas med första försummade termen Felet i interpolationspunkterna är noll Observera Runges fenomen! lågt gradtal vid polynominterpolation Fig. 5(8) 20

Fortplantade fel R XX & R XF När polynomet evalueras följer fel i indata med genom beräkningen och fortpantar sig till det evaluerade värdet P n 1 (t) = c 0 + c 1 ( t t 1 )+ c 2 ( t t 1 )t ( t 2 )+ +c n 1 ( t t 1 ) ( t t n 1 ) Felet i P(t) beräknas med hjälp av maximalfelsuppsk. P P c 0 c 0 + P c 1 c 1 + + P c c n 1 + P n 1 t t 21

Hur stort är felet i c i? När koefficienterna beräknas följer ev. fel i indata (funktionsvärdena) med genom beräkningarna. Låt felet i f följa samma beräkning som f c 0 t 1 ε 1 t 2 ε 2 t 3 ε 3 t 4 ε 4 ε 2 + ε 1 t 2 t 1 ε 3 + ε 2 t 3 t 2 ε 4 + ε 3 t 4 t 3 c 1 Felen adderas!! O.s.v. 22

Avrundningsfelet R B Normalt litet i förhållande till övriga fel. Tänk dock på att en ev. avrundning av den slutliga approximationen måste adderas till övriga fel. (Presentationsavrundningen) 23

Linjär interpolation f approximeras med rätlinje genom (t 1,f 1 )och(t 2,f 2 ): P(t) = f 1 + ( f 2 f 1 ) (t 2 t 1 ) (t t 1) 24

Det gamla exemplet Approximera f(97) med linjär interpolation t 90 100 110 120 f 0.96 1.12 1.30 1.51 Sedan tidigare vet vi att c = [0.96 0.016 0.0001] T med polynomet P(t) = 0.96 + 0.016(t-90) Formeln ger P(97) = 0.96 + (1.12 0.96) (100 90) (97 90) =1.072 = 0.016 25

Trunkeringsfel - linjär interpolation om f interpoleras linjärt genom (t 1,f 1 )och(t 2,f 2 ), t 1 t t 2 =t 1 +h kan trunkeringsfelet uppskattas med R T h 2 8 max f (t) Härledning s.5(15) Om man inte känner funktionen f, hur skattar man f (t)? Approximera f med interpolationspolynom av en grad högre och derivera detta. (Lägg till en term) 26

i vårt exempel P(t) = 0.96 + 0.016(t-90) ( P(97) = 1.072) Q(t) = P(t) + 0.0001(t-90)(t-100) Q (t) = 0.0002, h=t 2 -t 1 =10 R T 10 2 8 Värdena kommer från 0.0002 = 0.0025 f(97) = 1.07112 så felet 0.0009 f (t) = 0.25e 0.015t Hygglig feluppskattning 27

R XX vid linjär interpolation felet i punkten som interpoleras, t, fortplantas i beräkningen av P(t) mv-satsen ger att detta begränsas enligt f f (t) t eftersom f inte är känd, skattas f med P (t) = c 1 " R XX < c 1 t 28

R XF vid linjär interpolation felet i de givna funktionsvärdena, f, fortplantas i beräkningen av P(t) Detta fel kan skattas med R XF ε där f i ε Se s.5(7) 29

R B vid linjär interpolation R B avrundningsfelen i beräkningarna är normalt litet i jämförelse med övriga fel (imatlab10-16 ) 30

f i korrekt avr. f i = 0.5E-5 a = 21.4 ± 0.05 Bestäm f(a) med f 0.3E-4 t f 20 0.36379 21 0.36406 22 0.36434 23 0.36461 24 0.36488 Exempel Vi provar linjär interpolation : P 1 (t) = c 0 +c 1 (t- t 1 ) för (21, 0.36406) och (22, 0.36434) P 1 (t i )=f i ger c 0 +c 1 (21-21) = 0.36406 (c 0 fås direkt) c 0 +c 1 (22-21) = 0.36434 c 0 = 0.36406 och c 1 =0.00028 31

exempel P 1 (t) = 0.36406 + 0.00028 (t - 21) P 1 (21.4) = 0.36406 + 0.00028 (t - 21) = 0.364172 R B =0 här,allaräkningarexakta R XF 0.5E-5 ty alla f i korrekt avrundade R XX < c 1 t = 0.28E-3 0.5E-1 = 0.14E-4 så återstår ~ R T h 2 max f (t), h= t 2 -t 1 t [t 1,t 2 ] 8 32

R T h= t 2 -t 1 =22-21=1!skatta f (t) med ett andragradspolynom ta nästa punkt (23,0.36461) och ansätt P 2 (t) = P 1 (t) + c 2 (t-t 1 )(t-t 2 ) P 1 (23) + c 2 (23-21)(23-22) = f 3 0.36462 + 2c 2 = 0.36461 c 2 =-0.5E-5 P 2 = 2 c 2 =-E-5 h 2 R T E-5 = 0.125E-5 8 33

Det totala felet R TOT R XX + R XF + R T + R B = = 1.4E-5 + 0.5E-5 + 0.125E-5 + 0 = = 2.025E-5 2.1E-5 Linjär interpolation duger alltså! 34

f (x) = 1 1 + 25x 2 Runges funktion 35

Styckvis polynominterpolation Att anpassa ett enda polynom till ett stort antal punkter ger mest troligt upphov till oscillering Istället interpolerar man med polynom av lägre grad på mindre intervall Linjär interpolation - rät linje mellan varje par av succ. punkter. Den totala interpolerande funktionen har då disk. derivata i alla inre punkter Man kan välja polynom så att den sammansatta funktionen är kontinuerligt deriverbar 36

Kubiska splines 1 0.8 0.6 x = 0:10; y = sin(x); xi = 0:.25:10; yi = spline(x,y,xi); plot(x,y,'o',xi,yi) 0.4 0.2 0-0.2-0.4-0.6-0.8-1 0 1 2 3 4 5 6 7 8 9 10 37

Skiftning/skalning För att förbättra kan man använda en annan upps. basfunktioner, som ger samma polynom men annan representation t-c Φ j (t) = ( ) d j-1 där c = ( t 1 +t n )/2 och d = ( t n -t 1 )/2 c innebär en skiftning och d en skalning de nya ober. variablerna ligger i intervallet [-1, 1] 38

t f 90 0.96 100 1.12 110 1.30 c=100 ochd=10 Φ j (t) = ( t-100 ) 10 j-1 t-100 10 t-100 10 P(t) = c 0 +c 1 +c 2 ( ) 2 exemplet igen Φ 1 (t) = 1 1-1 1 1 0 0 1 1 1 κ(a) = 3.2255 Φ t-100 2 (t) = 10 Φ t-100 3 (t) = ( ) 10 2 39

Lagrange interpolation P(t) = (t - t 2 ) (t - t 3 ) y 1 (t 1 -t 2 ) (t 1 -t 3 ) + (t - t 1 ) (t - t 3 ) y 2 (t 2 -t 1 ) (t 2 -t 3 ) + (t - t 1 ) (t - t 2 ) y 3 (t 3 -t 1 ) (t 3 -t 2 ) Polynomet framför y 1 blir = 0 för t= t 2 &t 3 och = 1 för t = t 1 Valet av Φ j (t) medför att A = I och alltså x=y 40