Profiling added.
8 print "duration: %fs" % float(t2-t1)
13 if c.real == float("inf") or c.real == float("-inf"):
15 if c.imag == float("inf") or c.imag == float("-inf"):
23 def __init__(self, c, value, iterations):
26 self.iterations = iterations
28 class Mandelbrot(object):
29 def __init__(self, range, resolution):
31 self.resolution = resolution
32 def iterate(self, z, c):
34 def test(self, c, max_iter):
36 for i in xrange(max_iter):
37 z.append(self.iterate(z[-1], c))
38 if isDivergent(z[-1]):
40 if isPeriodic(z[-10:-1]):
44 def resolve(self, max_iter):
46 x_diff = (self.range[1].real - self.range[0].real) / self.resolution[0]
47 y_diff = (self.range[1].imag - self.range[0].imag) / self.resolution[1]
48 c_diff = complex(x_diff, y_diff)
50 for y in xrange(self.resolution[1]):
51 for x in xrange(self.resolution[0]):
52 c = self.range[0] + c_diff * complex(x, y)
54 #print self.test(c, max_iter)