Jump to content

Mandelbrot set: Difference between revisions

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: Zoom center changed and appropriate animation linked. Order of calculations adjusted.)
m (→‎Normal Map Effect, Mercator Projection and Perturbation Theory: Zoom center changed and appropriate animation linked. Order of calculations adjusted.)
Line 8,000:
savefig("Mandelbrot_normal_map_2.png")</syntaxhighlight>
 
A small change in the code above creates Mercator maps and zoom images of the Mandelbrot set. See also the album [https://www.flickr.com/photos/arenamontanus/albums/72157615740829949 Mercator Mandelbrot Maps] by Anders Sandberg. See also [https://commons.wikimedia.org/wiki/File:Mandelbrot_sequence_new.gif ''Mandelbrot sequence new''] (Wikimedia) for a zoom animation to the given coordinates.
<syntaxhighlight lang="julia">using Plots
gr(aspect_ratio=:equal, axis=true, ticks=true, legend=false, dpi=200)
 
d, h = 200, 12001100 # pixel density (= image width) and image height
n, r = 8005000, 100010000 # number of iterations and escape radius (r > 2)
 
a = -.743643887037158704752191506114774 # real coordinate of the zoom center
b = 0.131825904205311970493132056385139 # imaginary coordinate of the center
 
x = range(0, 2, length=d+1)
Line 8,011 ⟶ 8,014:
 
A, B = collect(x) .* pi, collect(y) .* pi
C = (- 8.0im)0 .* exp.((A' .+ B .* im) .* im) .+ (- 0.7436636774a + 0.1318632144imb * im)
 
Z, dZ = zero(C), zero(C)
Line 8,024 ⟶ 8,027:
D[N] = log.(abs.(Z[N])) .* abs.(Z[N]) ./ abs.(dZ[N])
 
heatmap(D' .^ 0.105, c=:nipy_spectral)
savefig("Mercator_Mandelbrot_map.png")
 
Line 8,050 ⟶ 8,053:
a = BigFloat("-1.256827152259138864846434197797294538253477389787308085590211144291")
b = BigFloat(".37933802890364143684096784819544060002129071484943239316486643285025")
 
x = range(0, 2, length=d+1)
y = range(0, 2 * h / d, length=h+1)
 
A, B = collect(x) .* pi, collect(y) .* pi
C = (- 48.0) .* exp.((A' .+ B .* im) .* im)
 
S = zeros(Complex{Float64}, n+1)
Line 8,063 ⟶ 8,072:
end
end
 
x = range(0, 2, length=d+1)
y = range(0, 2 * h / d, length=h+1)
 
A, B = collect(x) .* pi, collect(y) .* pi
C = (- 4.0) .* exp.((A' .+ B .* im) .* im)
 
E, Z, dZ = zero(C), zero(C), zero(C)
305

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.