XScreenSaver(1) XScreenSaver(1) NNAAMMEE critical - Draw a system showing self-organizing critical- ity SSYYNNOOPPSSIISS ccrriittiiccaall [-display _h_o_s_t_:_d_i_s_p_l_a_y_._s_c_r_e_e_n] [-foreground _c_o_l_o_r] [-background _c_o_l_o_r] [-window] [-root] [-mono] [-install] [-visual _v_i_s_u_a_l] [-delay _s_e_c_o_n_d_s] [-random _b_o_o_l_e_a_n] [-ncolors _i_n_t] [-offset _i_n_t] DDEESSCCRRIIPPTTIIOONN The _c_r_i_t_i_c_a_l program displays a self-organizing critical system that gradually emerges from chaos. _c_r_i_t_i_c_a_l 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 _c_r_i_t_i_c_a_l. I heard about this algorithm second-hand: apparently there was an article in _S_c_i_e_n_t_i_f_i_c _A_m_e_r_i_c_a_n describing it some- time in 1997. OOPPTTIIOONNSS _c_r_i_t_i_c_a_l accepts the following options: --wwiinnddooww Draw on a newly-created window. This is the default. --rroooott Draw on the root window. --mmoonnoo If on a color display, pretend we're on a monochrome display. --iinnssttaallll Install a private colormap for the window. --vviissuuaall _v_i_s_u_a_l 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. X Version 11 13-Nov-98 1 XScreenSaver(1) XScreenSaver(1) --ddeellaayy _u_s_e_c_s Number of microseconds to wait after drawing each line. --rraannddoomm _b_o_o_l_e_a_n Whether to use randomly selected colours rather than a cycle around the colour wheel. --ooffffsseett _i_n_t_e_g_e_r The maximum random radius increment to use. --nnccoolloorrss _i_n_t_e_g_e_r How many colors should be allocated in the color ramp (note that this value interacts with _o_f_f_s_e_t.) EENNVVIIRROONNMMEENNTT DDIISSPPLLAAYY to get the default host and display number. XXEENNVVIIRROONNMMEENNTT to get the name of a resource file that overrides the global resources stored in the RESOURCE_MAN- AGER property. SSEEEE AALLSSOO XX(1), xxssccrreeeennssaavveerr(1) xxssccrreeeennssaavveerr--ccoommmmaanndd(1) xxssccrreeeenn-- ssaavveerr--ddeemmoo(1) CCOOPPYYRRIIGGHHTT Copyright (C) 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, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is pro- vided "as is" without express or implied warranty. AAUUTTHHOORR Martin Pool , 13-Nov-1998. Based in part on the XScreenSaver code by Jamie Zawinski . X Version 11 13-Nov-98 2