1.5 Lösningar till kapitel 7

Relevanta dokument
Numerisk Analys, MMG410. Lecture 13. 1/58

Numerisk Analys, MMG410. Lecture 12. 1/24

Interpolation Modellfunktioner som satisfierar givna punkter

Tentamen i Matematik 2: M0030M.

1.6 Lösningar till kapitel 8

denna del en poäng. 1. (Dugga 1.1) och v = (a) Beräkna u (2u 2u v) om u = . (1p) och som är parallell

Tentamen i Matematik 2: M0030M.

1. Compute the following matrix: (2 p) 2. Compute the determinant of the following matrix: (2 p)

Pre-Test 1: M0030M - Linear Algebra.

och v = 1 och vektorn Svar 11x 7y + z 2 = 0 Enligt uppgiftens information kan vi ta vektorerna 3x + 2y + 2z = 1 y z = 1 6x + 6y + 2z = 4

Teknisk beräkningsvetenskap I 5DV154

Föreläsning 5. Approximationsteori

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab

. (2p) 2x + 2y + z = 4 y + 2z = 2 4x + 3y = 6

and u = och x + y z 2w = 3 (a) Finn alla lösningar till ekvationssystemet

Läsanvisningar och övningsuppgifter i MAA150, period vt Erik Darpö

(D1.1) 1. (3p) Bestäm ekvationer i ett xyz-koordinatsystem för planet som innehåller punkterna

2. (a) Skissa grafen till funktionen f(x) = e x 2 x. Ange eventuella extremvärden, inflektionspunkter

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

Module 1: Functions, Limits, Continuity

Lösningsförslag obs. preliminärt, reservation för fel

Solutions to exam in SF1811 Optimization, June 3, 2014

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

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

LUNDS TEKNISKA HÖGSKOLA Institutionen för Elektro- och Informationsteknik

Tentamen i Matematik 3: M0031M.

KOKBOKEN 1. Håkan Strömberg KTH STH

8 < x 1 + x 2 x 3 = 1, x 1 +2x 2 + x 4 = 0, x 1 +2x 3 + x 4 = 2. x 1 2x 12 1A är inverterbar, och bestäm i så fall dess invers.

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

TMV225 Kapitel 3. Övning 3.1

and Mathematical Statistics Gerold Jäger 9:00-15:00 T Compute the following matrix

= ( 1) ( 1) = 4 0.

Sammanfattning av ordinära differentialekvationer

5.7. Ortogonaliseringsmetoder

TDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 14-16

12.6 Heat equation, Wave equation

Isometries of the plane

Lösningar och kommentarer till uppgifter i 3.1

Prov 1 2. Ellips 12 Numeriska och algebraiska metoder lösningar till övningsproven uppdaterad a) i) Nollställen för polynomet 2x 2 3x 1:

Polynomanpassning i MATLAB

Svar till S-uppgifter Endimensionell Analys för I och L

Övningar. MATEMATISKA INSTITUTIONEN STOCKHOLMS UNIVERSITET Avd. Matematik. Linjär algebra 2. Senast korrigerad:

Vektorgeometri för gymnasister

Läsanvisning till Discrete matematics av Norman Biggs - 5B1118 Diskret matematik

Tentamen : Lösningar. 1. (a) Antingen har täljare och nämnare samma tecken, eller så är täljaren lika med noll. Detta ger två fall:

Interpolation. 8 december 2014 Sida 1 / 20

Svar till S-uppgifter Endimensionell Analys för I och L

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

SF1624 Algebra och geometri Lösningsförslag till tentamen Lördagen den 5 juni, 2010 DEL A

Lösningar tentamen i kurs 2D1210,

R AKNE OVNING VECKA 1 David Heintz, 31 oktober 2002

1. Find an equation for the line λ which is orthogonal to the plane

Linjära differentialekvationer av andra ordningen

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Sammanfattning (Nummedelen)

Polynom över! Till varje polynom hör en funktion DEFINITION. Grafen till en polynomfunktion

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

Module 4 Applications of differentiation

Modul 1: Komplexa tal och Polynomekvationer

, m 3 = 3. Determine for each real α and for each real β 0 the geometric meaning of the equation x 2 + 2y 2 + αz 2 + 2xz 4yz = β.

För teknologer inskrivna H06 eller tidigare. Skriv GAMMAL på omslaget till din anomyna tentamen så att jag kan sortera ut de gamla teknologerna.

SF1625 Envariabelanalys

f(x) = x 2 g(x) = x3 100

ÖVN 2 - DIFFERENTIALEKVATIONER OCH TRANSFORMMETODER - SF1683. Inofficiella mål

ODE av andra ordningen, och system av ODE

TATM79: Föreläsning 1 Notation, ekvationer, polynom och summor

3 differensekvationer med konstanta koefficienter.

Modul 1: Funktioner, Gränsvärde, Kontinuitet

Modul 1: Funktioner, Gränsvärde, Kontinuitet

9 Skissa grafer. 9.1 Dagens Teori

Hjälpmedel: Inga, inte ens miniräknare Göteborgs Universitet Datum: 2018 kl Telefonvakt: Jonatan Kallus Telefon: ankn 5325

Enklare matematiska uppgifter

f(x) = x 2 g(x) = x3 100 h(x) = x 4 x x 2 x 3 100

Moment 4.11 Viktiga exempel 4.32, 4.33 Övningsuppgifter Ö4.18-Ö4.22, Ö4.30-Ö4.34. Planet Ett plan i rummet är bestämt då

TATM79: Föreläsning 1 Notation, ekvationer, polynom och olikheter

Euklides algoritm för polynom

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 ( )(

TDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 17-19

1. Varje bevissteg ska motiveras formellt (informella bevis ger 0 poang)

TATA42: Föreläsning 9 Linjära differentialekvationer av ännu högre ordning

Kompletterande räkneuppgifter i Spektrala Transformer Komplex analys, sampling, kvantisering, serier och filter Laura Enflo & Giampiero Salvi

Kurskod: TAMS28 MATEMATISK STATISTIK Provkod: TEN1 05 June 2017, 14:00-18:00. English Version

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Lösningsförslag envariabelanalys

1 Linjära ekvationssystem. 2 Vektorer

1. Find for each real value of a, the dimension of and a basis for the subspace

TAYLORS FORMEL VECKA 4

konstanterna a och b så att ekvationssystemet x 2y = 1 2x + ay = b

ALA-a Innehåll RÄKNEÖVNING VECKA 7. 1 Lite teori Kapitel Kapitel Kapitel Kapitel 14...

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

8.5 Minstakvadratmetoden

1 Find the area of the triangle with vertices A = (0,0,1), B = (1,1,0) and C = (2,2,2). (6p)

Tentamen del 1 SF1511, , kl , Numeriska metoder och grundläggande programmering

3.6 De klassiska polynomens ortogonalitetsegenskaper.

SKRIVNING I VEKTORGEOMETRI Delkurs

där x < ξ < 0. Eftersom ξ < 0 är högerledet alltid mindre än Lektion 4, Envariabelanalys den 30 september 1999 r(1 + 0) r 1 = r.

SF1625 Envariabelanalys Tentamen Lördagen den 11 januari, 2014

8(x 1) 7(y 1) + 2(z + 1) = 0

Transkript:

2011 39 1.5 Lösningar till kapitel 7 1: Nej, det säger bara att q(t) = p(t)r(t) där r är ett polynom. Nej, det säger att q(t) = p(t)α där α är ett reellt tal. Ja, ty nu gäller det att p(r k ) q(r k ) = 0 och att p(ρ) q(ρ) = 0, så att polynomet p q, av grad n, har n + 1 nollställen. Det måste alltså vara nollpolynomet. 2: p(t) = (t r) m q(t) där q(r) 0. För att beräkna derivatorna kan man t.ex. använda Leibniz formel: p (k) (t) = k [( k j j=0 ) ] π j (t r) m j q (k j) (t), π j = m(m 1) (m j + 1), π 0 = 1 Vi noterar att det ingår en faktor t r, i alla termerna i summan, så länge som k < m. Svaret på den andra frågan är nej, ty: p (m) (t) = m [( m j j=0 ) ] π j (t r) m j q (m j) (t) p (m) (r) = m!q(r) Om p (m) (r) = så är således q(r) = 0 vilket strider mot förutsättningarna. 3: Om p inte är konstant så kan det skrivas p(t) = a n t n + där a n 0 och n > 0. Då gäller tydligen p(t) = a n t n [ 1 + a n 1 t 1 +... + a 0 t n] så att p uppför sig som a n t n för stora t. 4: Antag att p(t) = c för alla t [a, b] med a < b. Eftersom det finns oändligt många reella tal i [a, b] så har p(t) c oändligt många distinkta nollställen. p(t) c kan då bara vara nollpolynomet varför p är konstant lika med c. 5: Tag k = 1. Enligt medelvärdessatsen så existerar ξ (t 1, t 2 ) så att p (ξ) = (y 2 y 1 )/(t 2 t 1 ) < 0. Analogt för de övriga intervallen. Vi har alltså en uppsättning ξ k (t k, t k+1 ), k = 1,...,n 1 så att sign(p (ξ k )) = ( 1) k. Detta medför att derivatan, p (t), (som inte kan vara konstant noll) har minst n 2 distinkta nollställen i (t 1, t n ). Alltså måste grad(p ) n 2 varför grad(p) n 1. 6: a) Låt p(t) = x 3 t 2 + x 2 t + x 1. Vi får ekvationssystemet 1 1 1 1 0 0 1 1 1 x 1 x 2 x 3 = Om vi löser systemet får vi x = [3, 2, 1] T, så att p(t) = t 2 + 2t + 3. b) För Lagranges form skriver vi: p(t) = 2 2 3 6 (t 0)(t 1) (t ( 1))(t 1) (t ( 1))(t 0) + 3 + 6 ( 1 0)( 1 1) (0 ( 1))(0 1) (1 ( 1))(1 0) Vilket efter förenkling blir samma som i a). Slutligen Newtons form. 1 0 0 1 1 0 1 2 2 x 1 x 2 x 3 ger x = [2, 1, 1] T så att polynomet ges av: p(t) = 2 + 1 (t ( 1)) + 1 (t ( 1))(t 0) = t 2 + 2t + 3. Det vanligaste sättet att beräkna Newtons form är att använda dividerade differenser (se boken). Så här ser = 2 3 6

40 Thomas Ericsson 2011 standarduppställningen ut med fyra punkter: t 1 f 1 f[t 1, t 2 ] t 2 f 2 f[t 1, t 2, t 3 ] f[t 2, t 3 ] f[t 1, t 2, t 3, t 4 ] t 3 f 3 f[t 2, t 3, t 4 ] f[t 3, t 4 ] t 4 f 4 och där Så, i exemplet Så polynomet blir: f[t i, t i+1,..., t k 1, t k ] = f[t i+1,..., t k 1, t k ] f[t i, t i+1,...,t k 1 ] t k t i 1 2 1 = (3 2)/(0 ( 1)) 0 3 1 = (3 1)/(1 ( 1)) 3 = (6 3)/(1 0) 1 6 p(t) = f 1 + f[t 1, t 2 ](t t 1 ) + f[t 1, t 2, t 3 ](t t 1 )(t t 2 ) = 2 + 1 (t ( 1)) + 1 (t ( 1))(t 0) = t 2 + 2t + 3 7: Jag föredrar att skriva konstantermen längst till vänster, så: 2 + 7t 3t 2 + 5t 3 = 2 + t(7 + t( 3 + 5t)) Ett litet program kan se ut som (detta skrivs givetvis normalt som en loop där koefficienterna lagras i en vektor). p = 5 p = -3 + t * p p = 7 + t * p p = -2 + t * p 8: Låt oss betrakta specialfallet, n = 4: A = 1 t 1 t 2 1 t 3 1 1 t 2 t 2 2 t 3 2 1 t 3 t 2 3 t 3 3 1 t 4 t 2 4 t 3 4 Man kan resonera utifrån interpolationspolynomets existens och entydighet. Om p(t k ) = y k, k = 1,..., n så gäller att polynomets koefficienter ges av Ax = y. A måste därmed vara ickesingulär. Ett annat bevis går direkt på determinanten av A. Man kan bevisa (se kursen i linjär algebra) att det(a) = (t 1 t 2 )(t 1 t 3 )(t 1 t 4 )(t 2 t 3 )(t 2 t 4 )(t 3 t 4 ) i exemplet. Eftersom t j t k om j k så är determinanten skild från noll. 9: Vi har andragradspolynom p k (t), k = 1,...,n 1 och kräver att p 1 (t 1 ) = y 1, p k (t k ) = p k+1 (t k ) = y k, k = 2,...,n 2 samt p n 1 (t n ) = y n. n 1 andragradspolynom ger oss 3(n 1) parametrar (koefficienter). Kontinuiteten (interpolationen) ger 2(n 1) ekvationer. Om vi kräver kontinuerlig förstaderivata får vi dessutom de

2011 41 n 2 ekvationerna p k 1 (t k) = p k (t k), k = 2,...,n 1, dvs. totalt 2(n 1) + n 2 = 3n 4 ekvationer. Detta borde alltså gå att lösa, ty antalet ekvationer, 3n 4, är mindre än antalet parametrar, 3n 3. Om vi dessutom kräver kontinuerlig andraderivata får vi ytterligare n 2 ekvationer. Om inte n = 2 (ett polynom) får vi flera ekvationer än obekanta. Detta problem är, i allmänhet, inte lösbart. Givetvis existerar en lösning ibland. Om t.ex. y k = 0, k = 1,...,n, så kommer alla derivator att vara kontinuerliga (interpolanten är ju nollfunktionen). 10: Vi skriver polynomet på Lagranges form: j k L k (t) = (t t j) n j k (t k t j ), p(t) = ( 1) k ǫl k (t) Eftersom ǫ multiplicerar alla termerna kan vi lika gärna studera fallet när ǫ = 1, vilket vi antar från och med nu. Vill vi få med ǫ är det bara att multiplicera det slutgiltiga polynomet med ǫ. Vi beräknar nu p(0): p(0) = n k (0 1)(0 2) (0 (k 1))(0 (k + 1)) (0 n) n ( 1) (k 1)(k 2) (k (k 1))(k (k + 1)) (k n) = ( 1) k ( 1) n 1 k(k 1)!(n k)!( 1) n k = n ( ) n = (2 k n 1) Motsvarande gäller för p(n + 1) (förutom tecken om n är jämnt). Detta visar att polynomet ändrar sig mycket snabbt utanför intervallet, [1, n]. Det brukar vara farligt att extrapolera. 300 p(x), x [0, n+1], då n = 8; 6 p(x), x [1, n], då n = 8; 200 4 100 2 p(x) 0 p(x) 0 100 2 200 4 300 0 2 4 6 8 x 6 2 4 6 8 x

42 Thomas Ericsson 2011 11: Matlabkoden består av två rutiner, den första, inter quad, konstruerar koefficienterna i polynomen och den andra, eval quad, evaluerar splinefunktionen. function C = inter_quad(t, y, v) Given n points (t(k), y(k)), k = 1,..., n, n >= 2, this functions computes a piecewise quadratic polynomial, q, consisting of the n-1 quadratic polynomials q_1, q_2,... q interpolates the given data and has a continous first derivative. t should contain distinct values sorted in ascing order, so t(1) < t(2) <... < t(n). v is used to specify the following -point condition for the derivatives: v(1) q (t(1)) + v(2) q (t(n)) = v(3). v should be a non-zero array. The function returns a 3xn-matrix C where C(:, k) contains the three coefficients defining the quadratic polynomial on sub-interval number k (k = 1 is the left-most interval etc.). So, q_k(t) = C(1, k)*t^2 + C(2, k)*t + C(3, k) Thomas Ericsson, Nov. 15 2001. Some sanity checks.. if nargin < 2 error( Not enough input arguments. ) if length(t) < 2 length(y) < 2 error( Not enough points. ) if length(t) ~= length(y) error( Unequal length of input arrays. ) if all(v == 0) error( v is the zero vector. ) Number of polynomials = n - 1 q_k(t) = a_k t^2 + b_k t + c_k, k = 1,..., num_polys Equations of continuity (interpolation) q_1(t(1)) = y(1) q_1(t(2)) = y(2) q_2(t(2)) = y(2) q_2(t(3)) = y(3)... q_(n-1)(t(n-1)) = y(n-1) q_(n-1)(t(n)) = y(n) This gives us 2(n-1) conditions

2011 43 Equations of continuity of q (t) q_1 (t(2)) = q_2 (t(2)) q_2 (t(3)) = q_3 (t(3)) etc., an additional n-2 conditions v(1) q (t(1)) + v(2) q (t(n)) = v(3) gives us the last condition. So, we have 2(n-1) + n-2 + 1 = 3(n-1) conditions, which equals the number of coefficients. Let x = [a_1 b_1 c_1 a_2 b_2 c_2...] then the system, A x = b, is given by the following code: n = length(t); A = zeros(3 * (n - 1)); b = zeros(3 * (n - 1), 1); Continuity This can be coded in a MORE EFFICIENT way, but I have opted for clarity. row = 1; for k = 1:n-1 for each q_k... cols = 3 * (k - 1) + [1:3]; columns in A A(row, cols) = [t(k)^2 t(k) 1]; A(row+1, cols ) = [t(k+1)^2 t(k+1) 1]; b(row) = y(k); b(row + 1) = y(k + 1); row = row + 2; Continuity of q. b(row) = 0 from above for k = 1:n-2 cols = 3 * (k - 1) + [1:6]; A(row, cols) = [2*t(k+1) 1 0-2*t(k+1) -1 0]; row = row + 1; v(1) q (t(1)) + v(2) q (t(n)) = v(3). v = v / norm(v); for stability A(, 1:3) = [2*v(1)*t(1) v(1) 0]; A(, -2:) = [2*v(2)*t() v(2) 0]; b() = v(3); x = A \ b; cond_a = cond(a); if cond_a > 1e10 warning( A is ill-conditioned, cond(a) > 1e10. q may not be unique. ) cond_a One column for each poly C = reshape(x, 3, n-1);

44 Thomas Ericsson 2011 Här följer eval quad: function qt = eval_quad(t, C, ts) Evalute a piecewise quadratic polynomial, in ts(1),..., given the coefficient matrix C and the abscissas t. C and t must be unchanged from the call of inter_quad. If ts(k) < t(1) or t() < ts(k) extrapolation will be used. qt = zeros(size(ts)); Extrapolate if points < t(1) i = find(ts < t(1)); if ~isempty(i) qt(i) = polyval(c(:, 1), ts(i)); Extrapolate if points >= t() i = find(ts >= t()); if ~isempty(i) qt(i) = polyval(c(:, ), ts(i)); Interpolate if points in [t(k), t(k+1)] for k = 2:length(t) i = find(t(k-1) <= ts & ts < t(k)); if ~isempty(i) qt(i) = polyval(c(:, k-1), ts(i)); 12: Låt e(t) = (t t 1 )(t t 2 ) (för fixa t 1 och t 2 ). Funktionen är en parabel med e( 1) 0 och e(1) 0 eftersom t 1, t 2 skall ligga i intervallet [ 1, 1]. Derivatan av e(t) är noll när då t = m, där m = (t 1 + t 2 )/2 och e(m) = (t 2 t 1 ) 2 /4. Det verkar mycket rimligt att kräva att e( 1) = e(1) = e(m) (notera minustecknet). Ty om t.ex. e( 1) < e(1) borde man kunna få ett mindre max-värde genom att justera t 1, t 2. Den första likheten medför att t 1 + t 2 = 0. Detta i den andra likheten ger t 2 = 1/ 2 och därmed t 1 = 1/ 2. Kan man få något bättre? Nej, spännvidden i y-led år minst ett (p( 1) p(m)) + (p(1) p(m)) = 2 + (t 1 + t 2 ) 2 Med våra värden blir just summan av dessa avstånd två. 4 2 13: Vi vet att f(t) p n (t) = f(n) (θ) Nu är n-te derivatan av e t funktionen själv varför: (t t k ), θ int(t, t 1,..., t n ) e t p n (t) e (t t k ) e ( )

2011 45 eftersom t t k 1. Observera att det ger oss ett konvergensresultat för varje funktion vars alla derivator är begränsade på [0, 1], så f (n) (t) M, 0 t 1. Om vi väljer t k -punkterna på ett dåligt sätt får vi inte bättre konvergens än så här. Ett dåligt sätt är att låta värdena hopa sig i ändarna av intervallet (nära noll och ett). Man kan få snabbare konvergens med ett lämpligt val av punkter. Ett sådant är Chebyshevpunkterna, c k = cos((2k 1)π/(2n)), k = 1,...n. Vi vet att dessa minimerar Π n t t k när t 1 och minvärdet är 1/2 n 1. Nu har vi ju intervallet [0, 1] så vi får transformera punkterna c k. Den linjära transformationen 2t 1 avbildar [0, 1] på [ 1, 1]. Så tag t k = (c k + 1)/2 (den inversa avbildningen). Vi får: max 0 t 1 Πn t t k = max 0 t 1 Πn Detta tillsammans med ( ) visar olikheten. t c k + 1 2 = max 0 t 1 Πn 2t 1 c k 2 = 1 2 n max 1 s 1 Πn s c k = 1 Låt f(t) vara en funktion vars alla derivator begränsas av M då a t b. Vi bestämmer interpolationspolynomet, p n, på [a, b] som interpolerar f(t) i punkterna a = t 0 < t 1 <... < t n = b. Oavsett hur vi väljer t k -punkterna (i övrigt) så gäller att ty så att lim n f(t) p n (t) = f(n) (θ) f(t) p n (t) M max f(t) p n(t) = 0 a t b (t t k ), θ int(t, t 1,..., t n ) t t k M(b a)n 2 2n 1