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