Mandelbrot set: Difference between revisions

Content added Content deleted
m (→‎Normal Map Effect, Mercator Projection and Perturbation Theory: Zoom center changed and appropriate animation linked. Order of calculations adjusted.)
m (→‎Normal Map Effect, Mercator Projection and Deep Zoom Images: Make blocking artifacts recognizable at large zoom depths for 64-bit floating point numbers.)
Line 10,929: Line 10,929:
import matplotlib.pyplot as plt
import matplotlib.pyplot as plt


d, h = 200, 1100 # pixel density (= image width) and image height
d, h = 200, 1200 # pixel density (= image width) and image height
n, r = 5000, 10000 # number of iterations and escape radius (r > 2)
n, r = 8000, 10000 # number of iterations and escape radius (r > 2)


a = -.743643887037158704752191506114774 # real coordinate of the zoom center
a = -.743643887037158704752191506114774 # real coordinate of the zoom center
Line 10,976: Line 10,976:
a = dc.Decimal("-1.256827152259138864846434197797294538253477389787308085590211144291")
a = dc.Decimal("-1.256827152259138864846434197797294538253477389787308085590211144291")
b = dc.Decimal(".37933802890364143684096784819544060002129071484943239316486643285025")
b = dc.Decimal(".37933802890364143684096784819544060002129071484943239316486643285025")

x = np.linspace(0, 2, num=d+1)
y = np.linspace(0, 2 * h / d, num=h+1)

A, B = np.meshgrid(x * np.pi, y * np.pi)
C = 8.0 * np.exp((A + B * 1j) * 1j)


S = np.zeros(n+1, dtype=np.complex128)
S = np.zeros(n+1, dtype=np.complex128)
Line 10,993: Line 10,987:
print("The reference sequence diverges within %s iterations." % k)
print("The reference sequence diverges within %s iterations." % k)
break
break

x = np.linspace(0, 2, num=d+1)
y = np.linspace(0, 2 * h / d, num=h+1)

A, B = np.meshgrid(x * np.pi, y * np.pi)
C = 8.0 * np.exp((A + B * 1j) * 1j)


E, Z, dZ = np.zeros_like(C), np.zeros_like(C), np.zeros_like(C)
E, Z, dZ = np.zeros_like(C), np.zeros_like(C), np.zeros_like(C)