Taylors formel
Generelt er Taylors formel beskrevet slik:
Her er f(k) funksjonen f derivert k ganger, f(0) er funksjonen selv. Dersom vi kjenner n deriverte av en funksjon, f, i x0, kan vi beregne en tilnærmet verdi for funksjonen i x. Feilen er R. Det er mulig å vise at R er mindre eller lik ledd n+1 (neste ledd) i det polynomet som beskrives av Taylors formel.
Dette forutsetter at f er n ganger deriverbar og kontinuerlig i det aktuelle området. (Dersom dette er tilfelle for Dovrebanen vil vi ved å måle på Sentralbanestasjonen, x0, kunne si så nøyaktig vi vil hvor linja passerer Lillehammer, x.)
I praktisk arbeid med grafisk databehandling i planet og i rommet er de kravene vi stiller for å kunne utvikle et polynom etter Taylors formel ganske spesielle. Vi finner en mer generell og anvendbar strategi for å beskrive kurver med ønskede egenskaper i modulen Polynomer.
La oss kort se på noen anvendelser av Taylors formel.
Sinus
Vi bruker sinus som eksempel på f. Vi vet at sinus(x) er kontinuerlig og deriverbar så mange ganger vi vil for alle x.
f(0)(x)=sin(x)
f(1)(x)=cos(x)
f(2)(x)=-sin(x)
f(3)(x)=-cos(x)
...osv
Vi setter inn i Taylors formel med x0=0 og n=5. x gis i radianer.
Generelt kan vi skrive:
Merk at: , altså feilen er mindre enn neste ledd.
Vi kan plotte denne tilnærmingen til sinus med 1 til 9 ledd. Prøv deg fram med antall ledd nedenfor:
Denne måten å beregne sinus på er ganske interessant numerisk. Vi kan se på en tabell over noen vinkelverdier og sammenligne sinus slik vi får den fra en kalkulatorfunksjon med de verdiene vi får fra Taylors formel med ulike antall ledd.
Vinkel | Kalkulator | Taylor | |||
---|---|---|---|---|---|
1 ledd | 2 ledd | 3 ledd | 4 ledd | ||
45 | 0.70710 | 0.78539 | 0.70465 | 0.70714 | 0.70709 |
90 | 1.00000 | 1.57079 | 0.92483 | 1.00452 | 0.99984 |
Når vi tar i betraktning symmetriegenskapene for sinus, ser vi at vi kan redusere alle vinkler til området 0..90 grader. Vi kan oppnå en presisjon med mindre enn 1% feil i forhold til kalkulatoren for alle vinkler ved å utvikle 3 ledd etter Taylos formel.
F.eks.:
// angle v in degrees sgn=1 v=v % 360 // reduce to [0..360] if (v>180) { v=360-v // reduce to [0..180] sgn=-1 } if (v>90) v=180-v // reduce to [0..90] v=v*(pi/180) // to radians return sgn*(v-v*v*v/6 + v*v*v*v*v/120)
Polynom
Hva dersom funksjonen er et polynom av typen:
f(x)=knxn + kn-1xn-1+ ... + k1x +k0
Vi kan se på et eksempel:
f(0)(x)=3x3+x2+4x+6
f(1)(x)=9x2+2x+4
f(2)(x)=18x+2
f(3)(x)=18
f(4)(x)=0
og den deriverte forblir 0 for alle n-deriverte, n>3
Vi utvikler omkring 0, ifølge Taylors formel:
uten feil, hvilket ikke bør være overraskende.