HH/ITE/BN Taylors formel och Mathematica Något om Taylors formel och Mathematica Bertil Nilsson 207-0-0 I am the best Ett av Brooks många ödmjuka inlägg i den infekterade striden som under början av 700 talet utkämpades mellan den engelska och den tyska skolan inom matematisk analys. Taylors formel Brook Taylor 685 73 Polynom är i många avseenden de enklaste funktionerna vi har i matematiken. Operationer som addition, subtraktion, multiplikation, derivation samt integration av polynom är ju odramatiska och ger som resultat ett nytt polynom. Dessutom är de enkla att beräkna, för detta behövs bara vanlig addition, subtraktion och multiplikation. Detta gäller inte för övriga elementära funktioner som x, x Α, ln x, cos x, sin x, där funktionsvärden nästan alltid måste anges som närmevärden. Det ligger då nära till hands att approximera krångliga funktioner med hjälp av polynom. I själva verket bevisade Karl Weierstrass (85-897) att alla kontinuerliga funktioner kan approximeras till godtycklig noggrannhet med polynom, så vi står på stabil mark. Det approximerande polynomet kan givetvis väljas på olika sätt. Om vi vill ha en bra approximation av en funktion f x i närheten av en punkt a så kan vi ju välja polynomet p x av grad n så att p a f a, p' a f ' a, p'' a f '' a,, p n a f n a. Det finns då anledning att förmoda att p x är en bra approximation av f x inte bara för a, där det ju är exakt p a f a, utan också för värden i närheten av a och att den blir allt bättre med ökande n. Detta sätt att bestämma p x av gradtal n kan visas med partiell integration och resulterar i Taylors formel. Vi säger att vi Taylorutvecklar f x kring (stöd)punkten a. f x f a f ' a a 2 f '' a a 2 n f n a a n n f n Ξ a n () n där sista termen är en restterm R x f ' n Ξ a n och Ξ är ett tal mellan x och a. De andra termerna kallar vi för Taylorpolynomet p n x av grad n till f x i punkten a. Specialfallet a 0 är så vanligt att det fått namn efter en annan engelsk matematiker, Maclaurins formel. Uttrycket n! känner vi igen från beräkning av Binomialkoefficienter som n-fakultet, vilket för icke-negativa heltal definieras som n n n n 2 2 med 0. Resttermen ska uppfattas som ett mått på det fel man får då man approximerar f x med p n x. Datorer använder på ett strategiskt sätt olika Taylorpolynom i olika intervall för att med given feltolerans så snabbt som möjligt kunna leverera funktionsvärden till de tidigare nämnda elementära funktionerna. I Mathematica levereras Taylorutvecklingen av funktionen Series[f[x],{x, a, n}]. För att bli av med resttermen, det vill säga få Taylorpolynomet, används Normal. En vanlig användning är att linearisera en funktion kring en given punkt a, det vill säga att i punktens omgivning approximera f x funktionen med dess tangent i punkten a. En annan är då man för hand ska bestämma besvärliga gränsvärden lim som är av x 0 g x typen 0. Med hjälp av Maclaurins formel kan man nämligen härleda den så nyttiga l Hospitals regel: Antag att f x och g x är två 0
2 Taylors formel och Mathematica HH/ITE/BN gånger kontinuerligt deriverbara i en omgivning av 0 samt att f 0 g 0 0, det vill säga vi har ett gränsvärde av typen 0. Om 0 dessutom g ' 0 0 gäller f x f ' x lim lim x 0 g x x 0 g' x Funktionen Limit i Mathematica är naturligtvis bestyckad med denna kunskap. Exempel: Bestäm Taylorpolynomet av grad till f x x i punkten 0. Lösningsförslag: Vi får direkt Taylorpolynomet, eller Maclaurinpolynomet eftersom a 0. p x f 0 f ' 0 0 Detta är inget annat än enpunktsformeln y y 0 f ' x 0 x 0, så Taylorpolynomet av grad i en punkt är inget annat än tangenten till kurvan i punkten. Eftersom alla derivator f k 0 0 får vi direkt p x 0 x I Mathematica har vi Taylorutvecklingen. Symbolen O x n kallas stort Ordo och representerar här resttermen, det vill säga termer innehållande x m, m n. Tu Series x, x, 0, O x 2 och Taylorpolynomet p Normal Tu En liten bild kan inte skada Plot x,p, x,,, PlotStyle Red, Blue, AxesLabel "x", " x,p x " x, p x 2.5 2.0.5.0 0.5.0 0.5 0.5.0 x Exempel: Då x är litet har man ofta användning för uppskattningarna sin x x och cos x x2. Visa dessa med Taylors 2 formel samt uppskatta felet då 0 Π. (Vinkeln Π rad motsvarar 5 ). 36 36 Lösningsförslag: Vi börjar med sin x. Efter lite deriverande får vi direkt med () Taylorutvecklingen kring a 0. sin x sin 0 cos 0 0 2 sin 0 0 2 3 cos 0 0 2 n f n Ξ 0 n Eftersom sin 0 0 och cos 0 och önskar termer av högst grad har vi därmed visat att sin x sin 0 cos 0 x 0 sin 0 2 0 2 cos Ξ 3 0 3 cos Ξ x3 3 Felet i uppskattningen sin x x i angivet intervall ges av resttermen På samma sätt får vi för uppskattningen cos x x2 2 3 cos Ξ x3 3 cos 0 Π 36 3 0.0002 cos x cos 0 sin 0 0 2 cos 0 0 2 3 sin 0 0 3 4 cos Ξ 0 4 2 x2 cos Ξ x4 4
HH/ITE/BN Taylors formel och Mathematica 3 Med feluppskattningen 4 cos Ξ x4 4 cos 0 Π 36 4 0.0000025 Exempel: Som tidigare antytts kan man med ökat gradtal förvänta sig allt bättre överensstämmelse mellan funktionen och Taylorpolynomet allt längre bort från stödpunkten. Vi illustrerar med sin x utvecklat kring 0 med stigande gradtal,, 3, 5. f Sin x, Table Normal Series Sin x, x, 0, i, i,, 5, 2 Flatten sin x, x, x 3 6, x5 20 x3 x 6 Plot Evaluate f, x, 2 Π, 2Π, PlotStyle Red, Orange, Cyan, Blue, AxesLabel x, "sin x,p x,p 3 x,p 5 x " sin x, p x, p 3 x, p 5 x 0 5 6 4 2 2 4 6 5 x 0 Exempel: Bestäm Taylorpolynomet av grad 5 till f x x i punkten 0. Lösningsförslag: Vi får direkt Taylorpolynomet, eller Maclaurinpolynomet eftersom a 0. p 5 x f 0 f ' 0 0 2 f '' 0 0 2 3 f 3 0 0 3 4 f 4 0 0 4 5 f 5 0 0 5 Eftersom alla derivator f k 0 0 får vi direkt I Mathematica har vi Taylorutvecklingen Tu Series x, x, 0, 5 x 2 x3 2 6 och Taylorpolynomet p 5 Normal Tu x 5 20 x4 x5 24 20 O x6 x4 x3 x2 24 6 2 p 5 x 2 x2 6 x3 24 x4 20 x5 Exempel: Här kommer några exempel på Taylorutvecklingar som man hittar i standard tabellverk och som kommer till användning lite då och då. Med Mathematica är det naturligtvis enkelt att utveckla "vad man vill" till valfritt gradtal och kring valfri punkt. Series Sin x, x, 0, 3 x 3 6 O x4 Series Cos x, x, 0, 2 x 2 2 O x3 Series Tan x, x, 0, 3 x 3 3 O x4 Series Log x, x, 0, 2
4 Taylors formel och Mathematica HH/ITE/BN x 2 2 O x3 Series x, x, 0, 3 x 2 x3 2 6 O x4 Series x n, x, 0, nx O x 2 Exempel: Bestäm Taylorpolynomet av grad 7 till f x cos sin2 x tan x i punkten.2. Lösningsförslag: I gamla tider hade man väsentligen två vägar att välja på. Antingen tog man fram sitt tabellverk över standardutvecklingar enligt föregående exempel och komponerade sedan med mödosamt handarbete ihop den sammansatta utvecklingen, eller så gick man direkt på definitionen () och kände en stark olustkänsla över alla derivator som väntade. Har man upplevt detta är det en sann njutning att använda Mathematica som inte räds hårt arbete p 7 Normal Series Cos Sin x 2 Tan x, x,.2, 7 3 223.4.2 7 7540.0.2 6 2656.63.2 5 70.322.2 4 8.624.2 3 7.56893.2 2 8.95382.2 0.2464 Expand p 7 3 223.4 x 7 03 537. x 6 348 246. x 5 652 28. x 4 734 30. x 3 496 745. x 2 87 04. 30 229.3 Exempel: Man har funnit att en av rötterna till x 4 2x 3 4 20 0 är ungefär 3. Förbättra detta närmevärde! Lösningsförslag: En bild över situationen får man som vanligt genom just en bild. Plot x 4 2x 3 4x 20, x, 2, 3, PlotStyle Red 20 5 0 5 5 0 2.2 2.4 2.6 2.8 3.0 Verkar ok! Låt nu f x x 4 2x 3 4 20 och x 0 3. För något h har vi då f x 0 h 0. Taylorutveckla kring x 0 så får vi 0 f x 0 h f x 0 f ' x 0 x 0 h x 0 och lös ut h f x 0. Alltså bör x f ' x x 0 0 h x 0 f x 0 vara ett bättre närmevärde till f ' x 0 roten än vad x 0 är. För att få ett ännu bättre upprepar vi naturligtvis med x, och får en följd x 0, x, x 2, med allt bättre närmevärde. Av konstruktionen, se fig nedan, ser vi att x n är nollställe till tangenten i punkten x n, f x n. f x,väg x 2 x x 0 x Denna metod kallas Newton-Raphson's metod och kan sammanfattas att med givet x 0 upprepa (iterera) x n x n f x n f ' x n tills dess önskad noggrannhet x n x n Ε uppnåts. Vi provar på vårt specifika bekymmer f x : x 4 2x 3 4x 20 NewRap x : f x f' x
HH/ITE/BN Taylors formel och Mathematica 5 väg NestList NewRap, 3.0, 5 3., 2.6724, 2.57844, 2.574, 2.5738, 2.5738 Som synes har vi redan efter några iterationer nått gott resultat, detta kallas för konvergens. Newton-Raphsons metod som beskriven ovan är själva embryot som ur ett flertal aspekter kan effektiviseras och ge upphov till en hel familj med lösningsmetoder. Att ha effektiva numeriska algoritmer är helt avgörande för all modern tillämpad matematik. Mathematica är ett utmärkt exempel på detta. FindRoot f x 0, x, 3 2.5738 Exempel: Använd Newton-Raphsons metod för att dra roten ur ett positivt tal. Lösningsförslag: Detta är precis vad datorer gör när man beställer kvadratroten ur ett positivt tal! Strategin är att istället för en direkt beräkning av a med Taylorutveckling till lämpligt gradtal söker vi den positiva roten till f x x 2 a 0 med Newton- Raphsons metod. Vi får x n x n f x n f ' x n x n n 2 a x 2x n 2 n a x n Som startvärde x 0 kan man i brist på bättre använda a själv. Vi provar på 00 NewRap x : 2 00.0 x NestList NewRap, 00, 0 00, 50.5, 26.240, 5.0255, 0.8404, 0.0326, 0.000, 0., 0., 0., 0. Exempel: Ibland ser man att Taylorutveckling används för att finna approximativa lösningar till besvärliga differentialekvationer eller integraler. Som exempel tar vi 0 x 2 x. Lösningsförslag: Integralen som dyker upp i så vitt skilda områden som statistik, design av kameralinser eller avfarter till motorvägar är inte elementär, så det går inte att konstruera en primitiv funktion med hjälp av våra "vanliga" elementära funktioner. Vi provar med att Taylorutveckla integranden kring mittpunkten i intervallet. Kör på med stigande gradtal n, 3, 6, för att bli något övertygade om att det fungerar. Tu Series x2, x, 0.5, &, 3, 6, 9 Normal Expand.682 0.77880 x, 0.64900 x 3.3629 x 2 0.097350 0.989726, 0.033537 x 6 0.366685 x 5 0.82342 x 4 0.64954 x 3 0.95078 x 2 0.0083532.00059, 0.039093 x 9 0.0453045 x 8 0.05203 x 7 0.90757 x 6 0.08777 x 5 0.4909 x 4 0.00287036 x 3.00058 x 2 0.0000675288 0.999996 Plot Evaluate Join x2,tu, x, 0,, PlotStyle Red, Orange, Green, Blue, Magenta, AxesLabel "x", " x2,p x,p 3 x,p 6 x,p 9 x " x2, p x, p 3 x, p 6 x, p 9 x.2.0 0.8 0.6 0.4 0.2 0.4 0.6 0.8.0 x Sedan är det bara att integrera mängder av x n. Tu x 0 0.77880, 0.74635, 0.74683, 0.746824
6 Taylors formel och Mathematica HH/ITE/BN Numera använder man sig av mera sofistikerade metoder för att finna approximativa lösningar både till differentialekvationer och integraler. Avslutningsvis låter vi Mathematica komma till tals i ärendet N x2 x 0 0.746824 Exempel: Om nyttan av Taylorutveckling när man leker snickare! Antag att vi skall sätta lister längs golvet i ett rum och att den aktuella väggen är L lång. Att mäta upp listen till rätt längd om denna är flera meter ger nästan garanterat en list som efter sågning är något för lång eller något för kort. Ett betydligt mindre fel gör vi om vi istället använder Pytagoras sats och Taylorutveckling! Såga först till listen så att den blir något för lång och lägg den "på plats". Vi har då situationen a L+x där a är avståndet på den mötande väggen och x det stycke vi ska kapa av på listen för att den ska passa finfint! Vi har då med Pytagoras sats att L 2 a 2 L x 2 L 2 a 2 L x 2 0. Utnyttja nu att x är litet i förhållande till L och Taylorutveckla vänsterledet till grad listig Series L 2 a 2 L x 2, x, 0, a 2 2 Lx O x 2 Nu är det bara att lösa ut x och få en "passande" formel. Vi ser av konstruktionen att den dessutom är mycket förlåtande mot mätfel i såväl L som a. Solve Normal listig 0, x a 2 2 L L Exempel: Bestäm gränsvärdet lim x 0 x2 2 cos x x 4 Lösningsförslag: Detta är ett gränsvärde av typen 0 0. Eftersom vi har x4 i nämnaren provar vi med att Maclaurinutveckla till grad 4. 2 Series x2 Cos x, x, 0, 4 x 4 7 x2 3 x4 2 360 5040 O x5 Här är det odramatiskt att låta 0, så gränsvärdet är. Naturligtvis är det ännu smidigare att skicka in uttrycket i näbbet på 2 Limit 2 Limit x2 Cos x,x 0 2 x 4