Calculate and graphically display the Lyapunov exponents of an iterated map

**Authored and Contributed by**- Ronald Joe Record
**Restrictions**- Copyright 1993, 1994 Ronald Joe Record
**Availability**-
The mathrec source code is freely redistributable. The author maintains
binary distributions for Caldera OpenLinux 3.1, OpenServer, UnixWare 7
and Open UNIX 8. These distributions and the source code are available via:
Binary Distributions OpenLinux/Open UNIX ftp://ftp2.sco.com/pub/.../RPMS/mathrec-1.1c-1col.i586.rpm (no longer available) UnixWare 7 ftp://ftp2.sco.com/pub/skunkware/uw7/Packages/mathrec-1.1b.pkg OpenServer ftp://ftp2.sco.com/pub/skunkware/osr5/vols/mathrec-1.1c-VOLS.tar Source Code Distributions Source RPM ftp://ftp2.sco.com/pub/.../SRPMS/mathrec-1.1c-1col.src.rpm (no longer available) Gzip'd tar archive ftp://ftp2.sco.com/pub/skunkware/src/x11/misc/mathrec-1.1c.tar.gz **Description**- Lyap is an X11 client. The idea here is to calculate the Lyapunov exponent for a periodically forced logistic map (later i added several other nonlinear maps of the unit interval). In order to turn the 1-dimensional parameter space of the logistic map into a 2-dimensional parameter space, select two parameter values (a and b) then alternate the iterations of the logistic map using first a then b as the parameter. This program accepts an argument to specify a forcing function, so instead of just alternating a and b, you can use a as the parameter for say 6 iterations, then b for 6 iterations and so on. An interesting forcing function to look at is abbabaab (the Morse-Thue sequence, an aperiodic self-similar, self-generating sequence). Anyway, you step through all the values of a and b in the ranges you want, calculating the Lyapunov exponent for each pair of values. The exponent is calculated by iterating out a ways (specified by the variable "settle") then on subsequent iterations calculating an average of the logarithm of the absolute value of the derivative at that point. Points in parameter space with a negative Lyapunov exponent are colored one way (using the value of the exponent to index into a color map) while points with a non-negative exponent are colored differently.
**Acknowledgements**- 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 band code was adapted from Stacey Campbell's xmandel source.
**Build**-
To build the lyap binary, either use the Imakefile or one of the sample
makefiles - Makefile.ODT or Makefile.OSF. Makefile.ODT is a sample makefile
used to build lyap on an SCO ODT system. Makefile.OSF was used as a makefile
on a DECstation 3100 running OSF/1.
The manual page can be formatted by typing "nroff -man lyap.man > lyap.1".

**Install**-
To install lyap, copy the lyap binary to the desired location (the sample
makefiles put it in /usr/local/bin)
Copy the formatted man page to wherever you keep your local doc (i use
/usr/local/man/cat1 for imaging software), then add that location
to your MANPATH.
Some "interesting" runs of lyap are included as simple shell scripts in the "params" subdirectory.

**Safety**- I have used it for a couple of years without harm.
**Work Planned**- None
**Documentation**- manual page.
**Verification**- Execute any or all of the shell scripts provided in /usr/local/mathrec/lyap.
**Ideas, comments, additions, deletions, suggestions, bug reports, code review**- e-mail Ronald Record at rr@ronrecord.com