critical(1)

critical1

Draw a system showing self-organizing criticality

Usage

critical [-display host:display.screen] [-foreground color] [-background color] [-window] [-root] [-mono] [-install] [-visual visual] [-delay seconds] [-random boolean] [-ncolors int] [-offset int]

Overview

The critical program displays a self-organizing critical system that gradually emerges from chaos.

critical performs a simulation on a two-dimensional array of integers. The array is initialized to random values. On each iteration, it draws a line to the array position with the greatest value. It then replaces that location and the eight neighboring locations with randomly-selected values.

The lines are initially random, but over time a chaotic self-organizing system evolves: areas of the screen which happen to have lower values are less likely to be updated to new values, and so the line tends to avoid those areas. Eventually, the histogram of changes approaches the power-law curve typical of such systems.

The simplest documented self-organizing system is the one-dimensional equivalent of critical.

I heard about this algorithm second-hand: apparently there was an article in Scientific American describing it sometime in 1997.

Options

critical accepts the following options:

-window

Draw on a newly-created window. This is the default.

-root

Draw on the root window.

-mono

If on a color display, pretend we're on a monochrome display.

-install

Install a private colormap for the window.

-visual visual

Specify which visual to use. Legal values are the name of a visual class, or the id number (decimal or hex) of a specific visual.

-delay usecs

Number of microseconds to wait after drawing each line.

-random boolean

Whether to use randomly selected colours rather than a cycle around the colour wheel.

-offset integer

The maximum random radius increment to use.

-ncolors integer

How many colors should be allocated in the color ramp (note that this value interacts with offset.)

-trail integer

Length of the trail: between 5 and 100 is nice.

Environment

DISPLAY

to get the default host and display number.

XENVIRONMENT

to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property.

Releases

2 releases since Debian 2.2 (Potato); the text changed 1 time.

  1. 2.2
  2. 3.0

-trail since Debian 3.0 (Woody).

Author

Martin Pool <[email protected]>, 1998-2000. Based in part on the XScreenSaver code by Jamie Zawinski <[email protected]>.

From xscreensaver 3.34-3 in Debian 3.0 (Woody). Parsed by carta from the page's man source.