TGeant3 Notes

List of G3 user routines defined in TGeant3gu.cxx, and their mapping to methods defined on the interface.
void gudigi -- no ops
void guhadr -- branches to hadronic response code in geant3
void guout  -- no ops
void guphad -- branches to had response print in geant3
void gudcay -- performs decays ala VMC decayer in VMC
void guiget -- no ops
void guinme -- returns -1
void guinti -- no ops 
void gunear -- no ops
void guskip -- returns iskip=0
void guswim -- implements a routine which swims the particle
void guview -- no ops
void gupara -- no ops
void gutrak -- VMC pretrack, g3track(), VMC posttrack :: calls pre and post trak on VMC interface, g3track() in geant3
void gutrev -- calls gtreveroot() defined in geant3/gtrak/gtreveroot.F
void gufld  -- gets B field from VMC 
void gufld  -- ... double
void eustep -- geane routine.  Meh.
void gustep -- user end of each tracking step
void gukine -- generate primaries by VMC

List of G3 routines defined in TGeant3f77.cxx
TGeant3f77       TGeant3                                          TGeant3TGeo
----------       ----------------------------------------------   ------------
void gfile   --> TGeant3::Gfile          --> void                 
void  gpcxyz --> TGeant3::Gpcxyz         --> g3pcxyz
void  ggclos --> TGeant3::FinishGeometry --> Ggclos --> g3gclos   TGeant3TGeo::Ggclos
void glast   --> TGeant3::Glast          --> g3last
void  gprint --> TGeant3::Gprint         --> g3print              TGeant3TGeo::Gprint --> void
void grun    --> TGeant3::Grun           --> g3run                
void gtrig   --> TGeant3::Gtrig          --> g3trig
void gtrigc  --> TGeant3::Gtrigc         --> g3tric
void gtrigi  --> TGeant3::Gtrigi         --> g3trigi
void gfmate  --> TGeant3::Gfmate         --> ... --> g3fmate
void gfpart  --> TGeant3::Gfpart         --> g3fpart
void gftmed  --> TGeant3::Gftmed         --> g3ftmed
void gftmat  --> TGeant3::Gftmat         --> g3ftmat
void gsdk    --> TGeant3::Gsdk           --> g3sdk
void gsmate  --> TGeant3::Gsmate         --> g3smate [warn]       TGeant3TGeo::Gsmate --> g3smate & TGeoManager::Material
void gsmixt  --> TGeant3::Gsmixt         --> g3smixt              TGeant3TGeo::Gsmixt --> g3smixt & fMCGeo->Mixture
void gspart  --> TGeant3::Gspart         --> g3spart
void gstmed  --> TGeant3::Gstmed         --> g3stmed              TGeant3TGeo::Gstmed --> g3stmed & gGeoManager->Medium 
void gsckov  --> TGeant3::Gsckov         --> g3sckov
void gstpar  --> TGeant3::Gstpar         --> g3stpar
void gfkine  --> TGeant3::Gfkine         --> g3fkine
void gfvert  --> TGeant3::Gfvert         --> g3fvert
void gskine  --> TGeant3::Gskine         --> g3skine
void gsvert  --> TGeant3::Gsvert         --> g3svert
void gphysi  --> TGeant3::Gphysi         --> g3physi
void gdebug  --> TGeant3::Gdebug         --> g3debug
void gsking  --> TGeant3::Gsking         --> g3sking
void gskpho  --> TGeant3::Gskpho         --> g3skpho
void gsstak  --> TGeant3::Gsstack        --> g3sstack 
void gsxyz   --> TGeant3::Gsxyz          --> g3xyz
void gtrack  --> TGeant3::Gtrack         --> g3track
void gtreve  --> TGeant3::Gtreve         --> g3treve             TGeant3TGeo::Gtreve     --> g3treve
                                                                 TGeant3TGeo::GtreveRoot --> gtreveroot
void gdxyz   --> void

GGEOM

void gdtom  --> TGeant3::Gdtom                                   TGeant3TGeo maps these calls onto TGeo geometry
void glmoth --> TGeant3::Glmoth
void gmtod  --> TGeant3::Gmtod
void gsdvn  --> TGeant3::Gsdvn
void gsdvn2 --> TGeant3::Gsdvn2
void gsdvs  --> TGeant3::Gsdvs
void gsdvs2 --> TGeant3::Gsdvs2
void gsdvt  --> TGeant3::Gsdvt
void gsdvt2 --> TGeant3::Gsdvt2
void gsord  --> TGeant3::Gsord
void gspos  --> TGeant3::Gspos
void gsposp --> TGeant3::Gsposp
void gsrotm --> TGeant3::Gsrotm 
void gsvolu --> TGeant3::Gsvolu

DRAWING

void gsatt  --> TGeant3::Gsatt                    TGeant3TGeo::Gsatt --> gGeoManger ...                     
void gfpara --> TGeant3::Gfpara
void gckmat --> TGeant3::Gckmat
void gdelete --> void
void gdopen --> TGeant3::Gdopen
void gdclose --> void
void gdshow --> void
void gdopt  --> TGeant3::Gdopt
void gdraw --> TGeant3::Gdraw
void gdrawc --> TGeant3::Gdrawc
void gdrawx --> TGeant3::Gdrawx
void gdhead --> TGeant3::Gdhead
void gdman --> TGeant3::Gdman
void gdspec --> TGeant3::Gdspec
void gdtree --> TGeant3::Gdtree
void gekbin  --> TGeant3::Gekbin
void ginit --> void
void gdinit --> void
void gpvolu --> g3pvolu
void gprotm --> g3protm
void gpmate --> g3pmate
void gptmed --> g3ptmed
void gppart --> g3ppart
void gpsets --> g3psets
void gpvert --> g3pvert
void gpkine --> g3pkine
void gpjxyz --> g3pjxyz
void gphits --> g3phits
void gpart  --> g3part
void gmate  --> g3mate
void gbhsta --> g3bhsta
void gscank --> g3scank
void gscanu --> g3scanu
void gzinit --> TGeant3::Gzinit

Navigation functions in TGeant3 vs TGeant3TGeo
  TGeant3                                 TGeant3TGeo                     
  fginvol = g3invol;                   |  fginvol = ginvolTGeo;           -- replace gtrak/ginvol.F     
  fgtmedi = g3tmedi;                   |  fgtmedi = gtmediTGeo;           -- replace gtrak/gtmedi.F    
  fgtmany = g3tmany;                   |  fgtmany = gtmanyTGeo;           -- replace gtrak/gtmany.F
  fgtonly = gtonlyg3;                  |  fgtonly = gtonlyTGeo;           -- replace gtrak/gtolny.F
  fgmedia = g3media;                   |  fgmedia = gmediaTGeo;           -- replace gtrak/gmedia.F
  fglvolu = g3lvolu;                   |  fglvolu = glvoluTGeo;           -- replace gtrak/glvolu.F
  fgtnext = g3tnext;                   |  fgtnext = gtnextTGeo;           -- replace gtrak/gtnext.F
  fggperp = g3gperp;                   |  fggperp = ggperpTGeo;           -- replace gtrak/ggperp.F