To compile GAMGI, check the library paths in
$GAMGI/src/make_local and type 
make, 
as described in the file 
$GAMGI/INSTALL. If problems 
arise, see: 
http://www.gamgi.org/documentation/install.html.
To start GAMGI, type 
gamgi in a terminal. To see how 
GAMGI works, press 
Help on the window. To see how GAMGI 
Help works, select 
Help->Topic->Help on the window.
Unless stated otherwise, 
$GAMGI represents the 
actual GAMGI root directory, for example 
/opt/gamgi, 
/usr/local/gamgi or 
/home/carlos/gamgi/gamgi0.11.11.  
GAMGI source code is in the directory 
$GAMGI/src,
distributed over the sub-directories 
engine, 
gtk, 
mesa, 
math, 
chem, 
phys, 
io, 
expat and 
global.
To understand GAMGI control flow, the first file to check
is 
$GAMGI/src/global/gamgi_global_main.c, where GAMGI 
starts and ends. To understand GAMGI data flow, the first file 
to check is 
$GAMGI/src/engine/gamgi_engine.h, which 
contains the primary data types and definitions.
Each 
.c file has a corresponding 
.h file and each 
directory has a general 
.h file. All local functions start 
with the name 
static and all global functions start with 
the name of the file containing them. All functions in a 
.c
file are listed in the corresponding 
.h file, including
local (commented) functions and argument names, plus a rationale
describing the control flow. GAMGI has one (redundant) global
variable, called 
gamgi.
Unless stated otherwise, 
$GAMGI represents the 
actual GAMGI root directory, for example 
/opt/gamgi, 
/usr/local/gamgi or 
/home/carlos/gamgi/gamgi0.11.11.