NAME
mandel - make a plot the Mandelbrot set
SYNOPSIS
mandel -help
or
mandel [-width integer] [-height integer] [-maxit integer]
[-levels integer] [-bail double] [-ulx double]
[-uly double] [-lly double] [-box integer] [-bulx
double] [-buly double] [-blly double] [-idiv inte-
ger] [-rev] [-inv] [-mag integer] [-term string]
DESCRIPTION
The Mandelbrot set is drawn according to the specified
parameters. The image is computed by iterating the com-
plex equation z(t) = (z(t-1))^2 + c, where c is the com-
plex point (x + yi) that corresponds to an (x, y) screen
coordinate and the initial value of z(0) = 0. If the sys-
tem diverges at time k (i.e., |z(k)| > BAIL) then a point
at (x, y) is plotted with the grayscale color (k / IDIV +
(k % IDIV) * (LEVELS / IDIV)) % LEVELS), which reduces to
(k % LEVELS) with an IDIV of 1.
OPTIONS
-width integer
Width of the plot in pixels.
-height integer
Height of the plot in pixels.
-maxit integer
Maximum number of iterations before automatic bail-
out.
-levels integer
Number of plot (gray) levels to use.
-bail double
Value of |z| to end iteration, i.e., the bailout
value.
-ulx double
Upper-left corner x-coordinate.
-uly double
Upper-left corner y-coordinate.
-lly double
Lower-left corner y-coordinate.
-box integer
Line width for a box. If zero, no box is drawn.
-bulx double
Box's upper-left x-coordinate.
-buly double
Box's upper-left y-coordinate.
-blly double
Box's lower-left y-coordinate.
-idiv integer
Iteration divisor. When greater than one, this
creates a banding effect.
-rev Reverse all colors but first?
-inv Invert all colors?
-mag integer
Magnification factor.
-term string
How to plot points.
COLORS
The four permutations of using or not using -rev and -inv
will yield four different coloring schemes. Try it and
see.
MISCELLANY
The method for choosing the viewable region may seem
counter-intuitive at first, but it has some nice proper-
ties. In particular, selecting the exact (x, y) coordi-
nates for the upper-left corner and only selecting the
lower right y coordinate forces both the x and y scales to
be identical since all scales are uniquely determined by
these values along with the plot width and height. If you
then change the width or height of the plot, the relative
scales will still match up. The options for making a box
work similarly.
BUGS
No sanity checks are performed to make sure that any of
the options make sense. In particular, the bounding cor-
ners can be screwed up, and division by zero can occur
with a malicious setting of IDIV.
AUTHOR
Copyright (c) 1997, Gary William Flake.
Permission granted for any use according to the standard
GNU ``copyleft'' agreement provided that the author's com-
ments are neither modified nor removed. No warranty is
given or implied.
Man(1) output converted with
man2html