Fractals[EscapeTime] - Maple Programming Help

Home : Support : Online Help : Mathematics : Fractals : Fractals/EscapeTime/Mandelbrot

Fractals[EscapeTime]

 Mandelbrot
 Mandelbrot fractal generator

 Calling Sequence Mandelbrot( n, zbl, zur ) Mandelbrot( n, zbl, zur, opts )

Parameters

 n - positive integer; specifies the dimensions of the square Array output zbl - complex(realcons); the bottom left corner of a box in the complex plane zur - complex(realcons); the upper right corner of a box in the complex plane opts - (optional) keyword options of the form opt=value where opt and value are described below

Options

 • output : keyword option of the form output=value where value is a name or list of names denoting the returned Array image(s). The accepted names are layer1, layer2, color, or raw. The default value is color.
 • iterationlimit : keyword option of the form iterationlimit=value where value is a positive integer specifying the number of iterations the formula is applied. The default value is 25.
 • cutoff : keyword option of the form cutoff=value where value is positive and of type realcons. The iterative process is stopped for each complex input point when the absolute value exceeds the cutoff value. The default value is 100.0.
 • container : An n-by-n-by-2 Array with datatype=float[8] and order=Fortran_order used in-place to store the raw data.

Description

 • The Mandelbrot command generates Array images which provide a visualization of the Mandelbrot set. The entries of the image are shaded according to the behavior of complex input points under a particular iterative rational map. Taking an initial point z[0]=0+0*I then for each complex input point c a sequence of points z[i] are computed until abs(z[i]) exceeds the cutoff value (ie. escapes).

${z}_{i}={z}_{i-1}^{2}+c,{z}_{0}=0$

 • For each entry point in the designated complex box the iterative process is repeated until either the iteration limit or the cutoff value is exceeded.
 • The 2-dimensional grayscale Array image returned by supplying the option output=layer1 contains data denoting the number of iterations required for each entry to escape. The grayscale image returned by supplying the option output=layer2 contains the absolute values of the final values for entries which escape. For either layer the real data is scaled to 0.0 .. 1.0 before being returned as an image.
 • The 3-dimensional color Array image returned by supplying the option output=color contains data where the three layers corresponding to red, green, and blue have been computed using the raw escape data.
 • The 3-dimensional Array returned by supplying the option output=raw contains the unscaled data of layer1 and layer2. This Array can be used to generate a customized color image using the Colorize command.

Examples

 > $\mathrm{with}\left(\mathrm{Fractals}:-\mathrm{EscapeTime}\right)$
 $\left[{\mathrm{BurningShip}}{,}{\mathrm{Colorize}}{,}{\mathrm{HSVColorize}}{,}{\mathrm{Julia}}{,}{\mathrm{LColorize}}{,}{\mathrm{Lyapunov}}{,}{\mathrm{Mandelbrot}}{,}{\mathrm{Newton}}\right]$ (5.1)
 > $\mathrm{with}\left(\mathrm{ImageTools}\right):$
 > $M≔\mathrm{Mandelbrot}\left(500,-2.0-1.35I,0.7+1.35I\right)$
 ${{\mathrm{_rtable}}}_{{18446884432475762806}}$ (5.2)
 > $\mathrm{Embed}\left(M\right)$

 > $\mathrm{Embed}\left(\mathrm{Mandelbrot}\left(500,-2.0-1.35I,0.7+1.35I,\mathrm{output}=\mathrm{layer1}\right)\right)$

 > $\mathrm{Embed}\left(\left[\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{iterationlimit}=10,\mathrm{output}=\mathrm{layer1}\right),\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{iterationlimit}=25,\mathrm{output}=\mathrm{layer1}\right),\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{iterationlimit}=125,\mathrm{output}=\mathrm{layer1}\right)\right]\right)$

 > $\mathrm{Embed}\left(\mathrm{Mandelbrot}\left(500,-0.1515+1.032I,-0.1575+1.043I,\mathrm{iterationlimit}=300,\mathrm{cutoff}=50.0\right)\right)$

 > $\mathrm{Embed}\left(\mathrm{Mandelbrot}\left(500,-2.0-1.35I,0.7+1.35I,\mathrm{output}=\mathrm{layer2}\right)\right)$

 > $\mathrm{Embed}\left(\left[\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{cutoff}=4.0,\mathrm{output}=\mathrm{layer2}\right),\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{cutoff}=100.0,\mathrm{output}=\mathrm{layer2}\right),\mathrm{Mandelbrot}\left(200,-2.0-1.35I,0.7+1.35I,\mathrm{cutoff}=10000.0,\mathrm{output}=\mathrm{layer2}\right)\right]\right)$

 > $R≔\mathrm{Array}\left(1..500,1..500,1..2,\mathrm{datatype}=\mathrm{float}\left[8\right]\right):$
 > $\mathrm{Mandelbrot}\left(500,-0.1025+0.95I,-0.095+0.96I,\mathrm{iterationlimit}=200,\mathrm{cutoff}=50.0,\mathrm{output}=\mathrm{raw},\mathrm{container}=R\right):$
 > $\mathrm{Embed}\left(\left[\mathrm{FitIntensity}\left(R\left[..,..,1\right]\right),\mathrm{FitIntensity}\left(R\left[..,..,2\right]\right)\right]\right)$

 > $P≔\mathrm{Colorize}\left(500,R,\mathrm{Array}\left(\left[11,3,2\right],\mathrm{datatype}=\mathrm{integer}\left[4\right]\right),\mathrm{Array}\left(\left[0.256,0.859,0.256\right],\mathrm{datatype}=\mathrm{float}\left[8\right]\right),\mathrm{rgb}=0,\mathrm{mode}=4,\mathrm{layer}=2\right):$
 > $\mathrm{Embed}\left(P\right)$

 > 

Compatibility

 • The Fractals:-EscapeTime:-Mandelbrot command was introduced in Maple 18.