NAME
ca - simulate arbitrary one-dimensional cellular automata
SYNOPSIS
ca -help
or
ca [-width integer] [-height integer] [-states inte-
ger] [-radius integer] [-seed integer] [-wrap]
[-rules string] [-init string] [-lambda double]
[-sq] [-bin] [-inv] [-mag integer] [-term string]
DESCRIPTION
Computes a one-dimensional cellular automata. The evolu-
tion of the CA is determined by the number of states, the
radius size, the initial state, and the supplied rule. A
rule is specified by a (states - 1) * (radius * 2 + 1)
length string. At each time step a sum of each cell plus
all of its neighbors within the radius is computed. That
sum is used as an index into the rules string which deter-
mines the next step For example, with radius = 1 and
states = 2 the rule that sums of 0 and 3 map to the 0
state, and sums of 1 and 2 map to the 1 state. A negative
init string randomly initializes the starting states. If
the init string is of being non-zero.
OPTIONS
-width integer
Width of the plot in pixels.
-height integer
Height of the plot in pixels.
-states integer
Number of CA states.
-radius integer
Radius of CA neighborhood.
-seed integer
Random seed.
-wrap Use a wrap-around space?
-rules string
CA rules to use.
-init string
Starting state (< 0 is random).
-lambda double
Lambda value for random rules.
-sq Enforce strong quiescence?
-bin Binary colors?
-inv Invert all colors?
-mag integer
Magnification factor.
-term string
How to plot points.
MISCELLANY
When supplying a lambda value for a random rule, it may
not be possible to find a string with that lambda value
because one may not exist. In this case, the program will
do its best to find one as close as possible. In any
event, the algorithm for finding random rules strings for
a specified lambda value is non-deterministic and may not
always find a perfect match even if one exists. However,
it will work well with high probability, and even when it
doesn't find a perfect match it almost always gets close.
BUGS
No sanity checks are performed to make sure that any of
the options make sense.
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