XScreenSaver(1)                                                XScreenSaver(1)


       critical - Draw a system showing self-organizing criticality


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


       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 arti-
       cle in Scientific American describing it sometime in 1997.


       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 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

       -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.


       DISPLAY to get the default host and display number.

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


       X(1), xscreensaver(1) xscreensaver-command(1) xscreensaver-demo(1)


       Copyright © 1998 by Martin Pool.

       Permission to use, copy, modify, distribute, and sell this software and
       its documentation for any purpose is hereby granted without  fee,  pro-
       vided  that  the  above  copyright notice appear in all copies and that
       both that copyright notice and this permission notice  appear  in  sup-
       porting documentation.  No representations are made about the suitabil-
       ity of this software for any purpose.  It is provided "as  is"  without
       express or implied warranty.


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

X Version 11                      08 Feb 2000                  XScreenSaver(1)

Man(1) output converted with man2html