# TO COMPILE

  make

should compile the program sym_cages

###############################################################
# USAGE
###############################################################

Example:
sym_cages -P 9 -N 0 -q1 2 -q2 2 -q3 2 -cc 100 -T0 0.004 -Tmin 1e-8 -track 1000 -n_sweep 450 -nr 10 -ncla 100 -dx_min 1e-13 -use_grad_mc -cla_mc -type TYPE

Find p-cages for 200 values of cl and ca such that  c_l+c_a =2
-P 9 : use nanogons
-N 0 : used for prism and antiprism only
-qi : the value of each qi (1 = 1 to 5 depending of the solid)
-cc 100 : Convexity weight for the face. Keep as is
-T0 0.004 : Initial MC temperature. Can require tweaking
-Tmin 1e-8 : Minimum MC temperature.
-track 1000 :  MC parameter.
-n_sweep 450 : MC parameter. Keep or increase
-nr 10 : preform 10 full relaxation and keep next value.
-ncla 100 : number of ca  values between 1 and 0.001 and then cl between 1
            and 0.001. SO 200 values in total.
-dx_min 1e-13 : leave as is
-use_grad_mc : use gradient MC
-cla_mc  : relax each value of cl, ca using MC
-type TYPE : the type of solid as listed below

SOLID               TYPE  SOLID                 TYPE
Triangular Prism     tp   Tetrahedron            Pte
Square Prism (cube)  sp   Octahedron             Poc 
Pentagonal Prism     pp   Dodecahedron           Pdo 
Hexagonal Prism      hp   Icosahedron            Pic 
Heptagonal Prism     7p   Truncated Cube         Atc 
Octagonal Prism      8p   Truncated Tetrahedron  Att 
Nonagonal Prism      9p   Truncated Octahedron   Ato 
Decagonal Prism      10p  Truncated Dodecahedron Atd 
Triangular Antiprism ta   Truncated Icosahedron  Ati 
Square Antiprism     sa   Snub Cube              Asc 
Pentagonal Antiprism pa   Snub Dodecahedron      Asd 
Hexagonal Antiprism  ha   Cuboctahedron          Aco 
Heptagonal Antiprism 7a   Rhombicuboctahedron    Arco 
Octagonal Antiprism  8a   Rhombicosidodecahedron Arcd 
Nonagonal Antiprism  9a   Icosidodecahedron      Aid 
Decagonal Antiprism  10a  

The program generates text files with the coordinates of the data.

Use p_cage_off.py to convert the file to an off file.

  p_cage_off.py FILE.txt

The "off" files can be viewed with  antiview or geomview 

###############################################################
# GENERATING ALL THE CAGES
###############################################################
One can generate all the potential p-cages of a given type and P-gone
using the python program

    mk_all_cages.py

The syntax is

    mk_all_cages.py -P=p -t=TYPE [-N=n]

where p is the number of edges for the polygon
      t is "p" for prism, "a" for antiprism or a type as in the table above.
      N is the polygon size of the base of the prism or antiprism

The program creates a directory for each p-cage as well as a shell file named
"run.csh", in that directory, with the parameters set for that p-cage.
The relaxation parameters sometimes have to be tweaked for some p-cages.

Example
  All square prism p-cages with octagonal faces
      mk_all_cages.py -P=8 -t=p -N=4
      
  All octagonal anti-prism p-cages with decagonal faces
      mk_all_cages.py -P=10 -t=a -N=8

  All octahedron p-cage with nanogonal faces
      mk_all_cages.py -P=9 -t=Poc2 

  All snub cube p-cage with hendecagonal faces
      mk_all_cages.py -P=11 -t=Asc 
