En Taylor -serien er en representasjon av en funksjon ved hjelp av en uendelig sum. Datamaskiner ofte gjør tilnærmelser av verdier på en trigonometriske , eksponential eller annen transcendental funksjon ved å summere et endelig antall av vilkårene i sin Taylor -serien, og du kan gjenskape denne prosessen i Python . Vilkårene i sum er basert på suksessive derivater av funksjon, slik at du trenger å identifisere et mønster i verdiene av disse derivater for å skrive en formel for hvert ledd i serien. Deretter bruker en løkke for å akkumulere summen , kontrollere nøyaktigheten av tilnærmingen din med antallet gjentakelser av sløyfen. Instruksjoner
en
Consult definisjonen av Taylor -serien for å forstå hvordan hver sikt kan beregnes . Hvert ledd i rekken er indeksert , vanligvis ved "n ", og dens verdi er relatert til den n-te deriverte av funksjonen blir representert. For enkelhets skyld , bruk 0 for verdien av "a" på første forsøk . Denne spesielle versjonen av Taylor serien kalles Maclaurinrekker . Prøv sinusfunksjonen , siden den påfølgende derivater er lett å avgjøre .
2
Skriv ned flere verdier av n-te deriverte av sinus funksjon evalueres 0 . Hvis n er 0 , er verdien 0 . Hvis n er 1 , verdien er 1. . Hvis n er 2, er verdien 0 . Hvis n er 3, er verdien -1 . Herfra mønsteret gjentar seg , så se bort fra alle selv -indeksert løpetid Taylor serien siden det er multiplisert med 0 . En formel for hvert ledd i den resulterende serien er :
( -1 ) ^ n /(2n +1 ) * x ^ (2n +1 )
" 2n +1" er anvendt i stedet for "n " til re- indeks serien , effektivt å kaste de selv -indeksert betingelser uten å endre indeksen selv. De ( -1 ) ^ n faktor som bidrar til veksling mellom positive og negative av påfølgende vilkår . Denne foreløpige regnestykket arbeidet kan virke overflødig , men Python -kode vil være langt enklere å skrive og bruke på andre Taylor serien hvis indeksen alltid starter på 0 og teller oppover i trinn på 1 .
3 < p> Åpne Python tolk. Begynn med å skrive inn følgende kommandoer for å definere flere variabler : en
sum = 0
x = 0,5236
" sum " variable vil bli brukt til å samle summen av Taylor serie som hvert semester er beregnet. Variabelen " x " er vinkelen ( i radianer ) hvor du vil omtrentlig sinusfunksjonen . Sett den til hva du vil
4
Import av " regnestykket " modul med følgende kommando slik at du har tilgang til " pow " og " fakultet " funksjoner : .
Import math
5
Start en "for" loop, innstilling av antall iterasjoner med "range" -funksjon : en
for n in range ( 4 ) : en
vil føre til at indeksen variabel, n, til å begynne ved null og teller opp til fire . Selv denne lille antall iterasjoner vil gi en overraskende nøyaktig resultat. Løkken ikke utfører umiddelbart og vil ikke begynne før du har angitt hele blokken med kode for å iterere over
6
Skriv inn følgende kommando for å legge verdien av hver påfølgende sikt til " sum. : "
sum + = Math.pow ( -1 , n ) /math.factorial ( 2 * n +1 ) * Math.pow ( x , 2 * n +1 )
Notice at kommandoen er innrykket med en fane , som angir til Python at det er en del av " for" loop. Legg også merke til hvordan " pulver " og " faktoriell " brukes i stedet for "^ " og " ! " notasjon . Formelen til høyre for "+ =" oppdrag operatør er identisk med den i trinn 2 , men skrevet i Python syntaks.
7
Trykk " Enter" for å legge til en tom linje. Til Python , tyder dette på avslutning av "for" loop, slik at beregningen blir utført. Skriv inn kommandoen " sum" for å avsløre resultatet. Hvis du brukte verdien av x gitt i trinn 3 , er resultatet svært nær 0,5 , sinus av pi /6 . Prøv prosessen på nytt for forskjellige verdier av x og for forskjellige antall gjentakelser av loopen , sjekke dine resultater mot " math.sin ( x ) "-funksjon. Du har implementert i Python selve prosessen mange datamaskiner bruker til å beregne verdier for sinus og andre transcendentale funksjoner.