xlyap - display an array of Lyapunov exponents graphically
xlyap [-BLps][-W width][-H height][-o filename][-a
n ] [-b
n ] [-w
n ] [-h
n ] [-i xstart] [-M
n ] [-R
p ] [-S
n ] [-D
n ] [-F string][-f string][-r
n ]
[-O
n ] [-C
n ] [-c
n ] [-m
n ] [-x xpos] [-y
ypos]
[-fps]
xlyap generates and graphically displays an array of Lyapunov exponents
for a variety of iterated periodically forced non-linear maps of the unit
interval.
- -random
- A good choice for use with xscreensaver: picks random parameters from a
built-in list.
- -C n
- Specifies the minimum color index to be used for negative exponents
- -D n
- Specifies the "dwell" or number of iterations over which to
average in order to calculate the Lyapunov exponent. Default is 50.
- -H n
- Specifies the height of the window. Default is 256.
- -L
- Indicates use log(x) + log(y) rather than log(xy).
- -M r
- Specifies the real value to compare exponent values to for indexing into a
color wheel. The default value is 1.0.
- -O n
- Specifies the minimum color index to be used for positive exponents
- -R p
- Specifies pseudo-random forcing with probability p of using
parameter value 'a'.
- -S n
- Specifies the "settle" or number of iterations prior to the
beginning of the calculation of the Lyapunov exponent. Default is 50.
- -a r
- Specifies the real value to use as the minimum parameter value of the
horizontal axis. Default is 2.0 for the logistic map.
- -b n
- Specifies the real value to use as the minimum parameter value of the
vertical axis. Default is 2.0 for the logistic map.
- -c n
- Selects one of six different color wheels to use. The default color wheel
is a rainbow palette.
- -F 10101010
- Specifies the "Function" forcing function to use. The example
above would alternate between iterating the circle and logistic maps. An
argument of "-F 2323" would alternate between left and right
logistic maps. The default is to only use the single specified map (see
the description of -m).
- -f abbabaab
- Specifies the forcing function to use. The default is to alternate between
the "a" parameter and the "b" parameter.
- -h r
- Specifies the real value to be used as the range over which the vertical
parameter values vary. The default is 1.0.
- -i r
- Specifies the real value of the initial condition to use. Default is
0.65.
- -m n
- Selects between available non-linear maps of the unit interval. A value of
0 specifies the logistic map. A value of 1, the circle map. A value of 2,
the left-logistic. A value of 3, the right-logistic. A value of 4, the
double-logistic. The default is 0, the logistic map.
- -o filename
- Specifies the output filename to be used. If the -o option is given, this
file will automatically be written out at the completion of the drawing.
If it is not specified, a default filename of lyap.out is used and only
written if the 'f' or 'F' keys are pressed during a run. The format of the
output file is PPM for color and PGM for monochrome. The parameters used
to calculate the picture are included as comments at the beginning of the
output file.
- -p
- Switches color indices for negative and positive exponents. Generally,
causes negative exponents to be displayed in more detail while darkening
and narrowing the color range for positive exponents. This can be toggled
during runtime by pressing the 'p' key.
- -r n
- Specifies the maximum rgb value to be used. Default is 65000.
- -s n
- Specifies the length of the color wheel spin.
- -v
- Prints out the various values to be used and exits.
- -w r
- Specifies the real value to be used as the range over which the horizontal
parameter values vary. The default is 1.0.
During display, pressing any mouse button allows you to select the area to be
investigated with the mouse. The upper left hand corner of the desired area is
the location of the cursor when the button is pressed. The lower right hand
corner is specified by the cursor when the button is released.
Use of the keys
bBeEfFkKjJmnrRsSwWxXqQ indicates:
(<) Halve dwell value. (>) Double dwell value. ([) Halve settle value. (])
Double settle value. (B or b) Toggle button display on/off (E or e)
Recalculate the indices into the color wheel using a different method (F or f)
Save current screen to ouput file (not yet implemented) (H or h or ?) Display
brief help message (i) Decrement the interval between stripes for the striped
color map. (I) Increment the interval between stripes for the striped color
map. (K) Decrease value exponents are compared against by 0.05. (J) Increase
value exponents are compared against by 0.05. (M) Decrease value exponents are
compared against by 0.005. (N) Increase value exponents are compared against
by 0.005. (m) Increment the map index, changing the map to be iterated. (P or
p) Toggle positive/negative exponent display. (r) Redraw the window using
previously calculated exponents. (R) Redraw the window using the newly set
dwell and/or settle values. (S) Spin the color wheel (s) Halve the length of
the spin and spin the color wheel (u) Go up to the window just prior to the
most recent zoom. (U) Go all the way up to the original window. (V or v)
Display values of various parameters currently in use (W or w) Use next color
map. (X or x) Clear window (Q or q) quit
Ronald Joe Record
The Santa Cruz Operation
P.O. Box 1900
Santa Cruz, CA 95061
rr@sco.com
The algorithm was taken from the September 1991 Scientific American article by
A. K. Dewdney who gives credit to Mario Markus of the Max Planck Institute for
its creation. Additional information and ideas were gleaned from the
discussion on alt.fractals involving Stephen Hall, Ed Kubaitis, Dave Platt and
Baback Moghaddam. Assistance with colormaps and spinning color wheels and X
was gleaned from Hiram Clawson. Rubber banding code was adapted from an
existing Mandelbrot program written by Stacey Campbell.
Viciously hacked for xscreensaver by Jamie Zawinski, 20-Nov-97.