Numerisk beräkning av Pi


Talet pi kan beräknas med godtycklig noggrannhet med hjälp av olika oändliga serier där man får ökad noggrannhet ju fler termer man tar med i serien. Här ges några smakprov på Pythonkod för att beräkna pi.

Exempel på detta är Gottfried Wilhelm Leibniz serieutveckling motsvarande Taylorserien av arctan(pi/4):

pi=4 – 4/3 + 4/5 – 4/7 + 4/9 -…….

Koden för denna serieutveckling blir:

pi=0

f=1

for i in range(1,100000):

      pi=pi+f/(2*i-1)

print(4*pi)

John Wallis serieutveckling är en oändlig produkt:

pi=1

for i in range(2, 100000, 2):

pi= pi *i*i/((i-1)*(i+1))

print(2*pi)

 

Eulers oändliga serietuveckling av 1/i^2:

from math import sqrt

pi=0

for i in range(1,100000, 2):

       pi= pi+1/(i*i)

print(sqrt(6*pi))

Francois Viétes produkt av nästlade rötter av roten ur 2.

pi=1

num=sqrt(2)

for i in range(100000):

       pi = pi*num/2

      num = sqrt(2+num)

print(2/pi)

 

 

 

 

 

 

 

Annonser

Om mattelararen

Licentiate of Philosophy in atomic Physics Master of Science in Physics
Det här inlägget postades i matematik 1c, Pythonprogrammering, Uncategorized. Bokmärk permalänken.

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut /  Ändra )

Google+-foto

Du kommenterar med ditt Google+-konto. Logga ut /  Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut /  Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut /  Ändra )

Ansluter till %s