Pi_30K.gif(500 × 500 pixlar, filstorlek: 476 kbyte, MIME-typ: image/gif, upprepad, 10 bildrutor, 2,0 s)

Sammanfattning

 
Den här GIF bilden skapades med Matplotlib
Beskrivning
English: As points are randomly scattered inside the unit square, some fall within the unit circle. The fraction of points inside the circle over all points approaches pi/4 as the number of points goes toward infinity. This animation represents this method of computing pi out to 30,000 iterations.
Källa Eget arbete
Skapare nicoguaro
Källkod
InfoField

Python code

from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
import matplotlib.animation as animation
from matplotlib import rcParams

# In Windows the next line should provide the full path to convert.exe
# since convert is a Windows command
#rcParams['animation.convert_path'] = "C:\Program Files\ImageMagick-6.9.3\convert.exe"
rcParams['mathtext.fontset'] = 'cm'
rcParams['font.size'] = 14


red = "#e41a1c"
blue = "#377eb8"
gray = "#eeeeee"


def update(n):
    ax.cla()
    pts = np.random.uniform(low=0, high=1, size=(2, n))
    circ = pts[:, pts[0, :]**2 + pts[1, :]**2 <= 1]
    out_circ = pts[:, pts[0, :]**2 + pts[1, :]**2 > 1]
    pi_approx = 4*circ.shape[1]/n
    circle = mpatches.Wedge((0, 0), 1, 0, 90,  color=gray)
    ax.add_artist(circle)
    plt.plot(circ[0, :], circ[1, :], marker='.', markersize=1,
             linewidth=0, color=red)
    plt.plot(out_circ[0, :], out_circ[1, :], marker='.',markersize=1,
             linewidth=0, color=blue)
    plt.title(r"$n = {}, \pi \approx {:.4f}$".format(n, pi_approx))
    plt.axis("square")
    plt.xlim(0, 1)
    plt.ylim(0, 1)


nvec = np.round(np.logspace(2, 5, 10))
nvec = [3000, 4000, 5000, 6500, 8500, 10000, 15000, 18000, 24000, 30000]
fig = plt.figure(figsize=(5, 5))
ax = fig.add_subplot(111)
ani = animation.FuncAnimation(fig, update, frames=nvec, blit=False)
ani.save("monte_carlo_pi.gif", writer='imagemagick',
         savefig_kwargs={'delay': 6})

Licensiering

Jag, upphovsrättsinnehavaren av detta verk, publicerar härmed det under följande licens:
w:sv:Creative Commons
erkännande
Denna fil har gjorts tillgänglig under licensen Creative Commons Erkännande 3.0 Generisk
Du är fri:
  • att dela – att kopiera, distribuera och sända verket
  • att remixa – att skapa bearbetningar
På följande villkor:
  • erkännande – Du måste ge lämpligt erkännande, ange en länk till licensen och indikera om ändringar har gjorts. Du får göra det på ett lämpligt sätt, men inte på ett sätt som antyder att licensgivaren stödjer dig eller din användning.

Bildtexter

Ingen bildtext har definierats

Objekt som porträtteras i den här filen

motiv

image/gif

Filhistorik

Klicka på ett datum/klockslag för att se filen som den såg ut då.

Datum/TidMiniatyrbildDimensionerAnvändareKommentar
nuvarande16 februari 2017 kl. 18.00Miniatyrbild för versionen från den 16 februari 2017 kl. 18.00500 × 500 (476 kbyte)NicoguaroMake the plot square and increase gif delay.
16 februari 2017 kl. 17.38Miniatyrbild för versionen från den 16 februari 2017 kl. 17.38640 × 480 (476 kbyte)NicoguaroBigger text in the axes, and colors from ColorBrewer. Code in Python.
7 november 2011 kl. 20.29Miniatyrbild för versionen från den 7 november 2011 kl. 20.29500 × 500 (373 kbyte)RayhemSlowed animation to avoid looking like a blinky page element, improved resolution, added counter for number of points, shaded points inside/outside the circle. ==Mathematica 7.0 Source== <pre> tinyColor[color_, point_] := {PointSize[Small], color, Point[
15 mars 2011 kl. 01.12Miniatyrbild för versionen från den 15 mars 2011 kl. 01.12360 × 369 (363 kbyte)CaitlinJo{{Information |Description ={{en|1=As points are randomly scattered inside the unit square, some fall within the unit circle. The fraction of points inside the circle over all points approaches pi as the number of points goes toward infinity. This ani

Följande sida använder den här filen:

Global filanvändning

Följande andra wikier använder denna fil: