In [1]:
%pylab inline
In [52]:
x = arange(0, 2*pi, 0.1)
In [30]:
x = linspace(0, 2*pi, 101)
In [31]:
y = sin(x)
In [37]:
plot(x, sin(x), "g")
plot(x, cos(x), "r")
plot(x, x**2/20)
Out[37]:
In [39]:
plot(cos(x), sin(x))
Out[39]:
In [45]:
[10,2,3,4]
Out[45]:
In [46]:
[x**2 for x in range(1, 11)]
Out[46]:
In [54]:
from random import random
x = arange(0, 2*pi, 0.1)
a=[2*random()-1 for i in range(100)]
b=[2*random()-1 for i in range(100)]
plot(a,b, "x")
plot(cos(x), sin(x), "r")
Out[54]:
In [76]:
s =0
N = 1000000
for i in range(N):
a, b = random(), random()
if a**2 + b**2 <=1:
s += 1
print s*4./N
In [81]:
def error(N):
s =0
for i in range(N):
a, b = random(), random()
if a**2 + b**2 <=1:
s += 1
return abs(s*4./N - pi)
In [92]:
def avg_error(N):
s = 0
for i in range(1000):
s+=error(N)
return s/100.
In [93]:
plot([1/avg_error(N)**2 for N in range(10, 1000, 10)])
Out[93]:
In [95]:
x = linspace(0, pi, 101)
plot(x, sin(x))
Out[95]:
In [121]:
x = linspace(0, pi, 100001)
delta_x = x[1]-x[0]
print sin(x[1:]).sum()*delta_x
In [122]:
x = linspace(0, pi, 100001)
delta_x = x[1]-x[0]
s = sin(x).sum()
s -= (sin(x[0]) + sin(x[-1]))/2
print s*delta_x
In [125]:
x = linspace(0, 1, 1001)
plot(x, x**2)
delta_x = x[1]-x[0]
s = (x[1:]**2).sum()
print s*delta_x
s = (x[:-1]**2).sum()
print s*delta_x
In [124]:
x = linspace(0, 1, 1001)
plot(x, x**2)
delta_x = x[1]-x[0]
s = (x**2).sum()
s -= ((x[0]**2) + (x[-1]**2))/2
print s*delta_x
In [127]:
x = linspace(0, 1, 101)
plot(x, x**2)
delta_x = x[1]-x[0]
s = 4*(x**2)[1:-1:2].sum()
s += 2*(x**2)[2:-1:2].sum()
s += x[0]**2 + x[-1]**2
print s/3*delta_x
In [130]:
x = linspace(0, pi, 10001)
plot(x, sin(x))
delta_x = x[1]-x[0]
s = 4*(sin(x))[1:-1:2].sum()
s += 2*(sin(x))[2:-1:2].sum()
s += sin(x[0]) + sin(x[-1])
print s/3*delta_x
In [106]:
s =0
N = 100000
for i in range(N):
a, b = random()*pi, random()
if b <= sin(a):
s += 1
print s*pi/N
In [ ]: