Muons, Inc.

G4beamline

2.01

http://g4beamline.muonsinc.com
     G4beamline
Introduction
Using the Program
Visualizing the System
Historoot - program to Create Histograms
References
Appendix: Using the OpenInventor Viewer
Appendix: Using the Wired Viewer
Appendix: G4beamline Commands
Appendix: List of Particles (QGSP)

G4beamline is a particle-at-a-time simulation program based on Geant4 [1] and optimized for the simulation of beamlines. See the G4beamline User's Guide at the above URL for a description of the program (it is also installed with this distribution).

This brief description only discusses how to use the program, it does not describe how to construct a simulation's input file; for that see the G4beamline User's Guide.

Using the Program

Select the input file using the "Browse" button above. The directory containing it will become the current directory, and the output file named above will receive the program output, as will this TextArea. Any additional Parameters used by the input file can be entered above. Pushing the "Run" button above will run the program, replacing this text with its output. While the program is running, the "Run" button above will change to "Abort" to permit you to stop the program immediately. Closing this window will also abort g4beamline. After running the simulation (with viewer=none), the simulation usually creates one or more Root files containing the NTuples. You can use the Historoot program to generate histograms from these files.

IMPORTANT NOTE: With a viewer selected, NTuple output files are not written. This includes both .root files and ASCII files from vitualdetector-s, xntuple-s, etc.

Several examples are provided in the distribution. They are located in the "examples" directory under the install directory. In Linux and Mac OS X the install directory is usually in your HOME directory; in Windows a Copy of "G4beamline examples" is placed into "My Documents" (Windows Xp) or "Documents" (Windows Vista).

Visualizing the system

viewer=none will run the simulation and write the NTuple files; any other choice will run the simulation and viewer without writing NTuple files. Each image in the viewer is a single run with the selected number of events.

viewer=best will visualize the system using OpenInventor; use its File/Escape to go to the next image. The OpenInventor viewer is part of the G4beamline program. For usage hints, see this Appendix.

The "Other" selection can be used to run any other viewer supported by G4beamline and installed on your system (if necessary). See the output from a G4beamline run with viewer=best to see the list of supported viewers. viewer=Other/Wired will visualize the system using the Wired3 viewer [2]. The "Run" button will run the selected number of runs, each generating a .heprep file. When that is complete, the Wired viewer will be opened on the first file; it considers them "events". For usage hints in Wired, see this Appendix.

Using Historoot to Create Histograms

The Historoot program is part of this G4beamline distribution. It makes it easy to generate histograms from the Root files containing NTuples. There should be a shortcut to the Historoot program right next to the shortcut for this program. Note that Root [3] must be installed to use Historoot; G4beamline can create .root files without Root being installed, and you can install Root after generating them, if necessary. Historoot has its own Help to assist you in using it.

References

 [1] http://geant4.cern.ch
 [2] http://www.slac.stanford.edu/BFROOT/www/Computing/Graphics/Wired/
 [3] http://root.cern.ch

Using the OpenInventor Viewer

Because the OpenInventor driver (OIX) is so much more useful than the other drivers, it is the driver of choice (linked to the name "best" whenever possible). This driver will permit you do to almost everything that any other driver can do. It is run synchronously from the G4beamline program, so at the end of a run the veiwer is opened. To go to the next run (image), select File/Escape -- this exits the OpenInventor viewer, and G4beamline will simulate the next run, displaying its image at the end.

Like other X-windows programs, the OpenInventor driver of G4Beamline can operate in either local or remote (networked) mode. Both the X display client and server must have the 3-D display capabilities of OpenGL installed. Operation over a network can be slow, and a good network connection (>1 megabit/sec) is required for useful results.

The Rotx and Roty wheels at the lower left rotate the image relative to the viewer, and the Dolly wheel (Z) at the lower right moves in and out with a corresponding change of scale. The buttons along the right edge do the following:
ArrowSelect pick mode and cursor
HandSelect move mode and cursor (default)
?Help (not implemented)
HouseRestore display to Home position
House with arrowSet Home position to be the current display
EyeZoom so everything is visible
GunsightNot implemented
Perspective box outlineSelect isometric or projected display

When the Hand cursor is active the mouse behaves like this:
Left ButtonClick and drag to rotate the display. It acts as if there were an invisible sphere surrounding the image, and the mouse movements rotate that sphere in any direction. This is quite different from the Rotx and Roty wheels, and takes some getting used to.
Middle ButtonClick and drag to pan the display -- this moves the visible objects around without changing perspective.
Right ButtonBrings up a menu with various functions, Draw Styles, and other items. The most useful is DrawStyles/StillDrawStyle/Wireframe which will draw in the wireframe mode rather than as solid surfaces. This permits you to look inside objects, and is considerably faster drawing. NOTE: daughters are not necessarily visible in wireframe mode -- see the Etc. menu item that makes them visible.

The File menu has several useful items:
PS (gl2ps)Save the current image in PostScript (drawing)
PS (pixmap)Save the current image as PostScript (pixel map)
IVSave the current image as an OpenInventor file
EscapeExit the OpenInventor Viewer. This causes the program to simulate the next run and display the result.

The Etc. menu has several useful items:
Set SolidSet the G4 mode to Solid (default)
Set (G4) reduced wire frameSet the G4 mode to wireframe, real edges only
Set (G4) full wire frameSet the G4 mode to wireframe, including triangles to fill surfaces
Visible mothers + invisible daughtersDaughter volumes are invisible (default)
Visible mothers + visible daughtersMake all objects visible
Note that daughter volumes are by default invisible, so to look inside a solid object you usually need to select wireframe mode and also Etc/VisibleMothers+VisibleDaughters.

The key to understanding how objects are displayed is to know that Geant4 has a solid/wireframe choice, and OpenInventor has a solid/wireframe choice, and they are different:
G4 mode
(Etc menu)
OI mode
(Right click menu)
Description
SolidSolid (as is)Draw solid surfaces
SolidWireframeDraw wireframes with triangles filling visible surfaces
Reduced WireframeEitherDraw reduced wireframes, showing only real edges
Full WireframeEitherDraw wireframes with triangles filling visible surfaces
For instance, in G4 reduced wireframe mode a sphere is invisible as it has no real edges; in G4 full wireframe mode it has triangles filling its visible surface (in such a way you can tell it is a sphere).

The OpenInventor driver has many more features, but this should get you started. It will also do animation: with the hand cursor left click and drag the image, letting go of the button while moving -- the image will continue to rotate until you left click on it (works best locally).

Using the Wired Viewer

The Wired event viewer is a reasonably flexible viewer, and can do most of what users typically need to do. Compared to OpenInventor, it has only the "reduced Wireframe" mode of drawing, and it is somewhat less intuitive how to manipulate the image to look from different perspectives.

On Windows, the Wired viewer is installed with G4beamline, and is used as the "best" viewer. On Linux and Mac OS, you must install it manually [2] and then make a symbolic link from its install directory to [g4beamline install directory]/Wired -- then you can set Other to Wired and use it.

When the Wired viewer comes up, it displays a few centimeters near the point x=0,y=0,z=0. It may happen that your system has no visible objects there and the display may look blank. On the lower left is a set of icons, and a click on the second one (a "plus sign" with 4 arrowheads) will zoom so that your entire system will be in the display.

The Wired viewer is started with the first image file loaded. At the top of the window is a toolbar with icons for "open", "reload", "previous event", "next event", "up (inactive)", "down (inactive)", "Toggle Automatic Updating (looks like a clock)", "Create New Window", and "Show/Hide Data Tree". On the right side of the window is a data visibility tree that permits you to select individual elements of the simulation and toggle their visibility.

At the bottom of the viewer subwindow are 8 icons and 2 sliders. The icons are:
RReset View
+ with arrowheadsFit in Window
+Zoom In
-Zoom Out
+ arrows pointing inReset Translation
CCW arrowRotate Counter Clockwise
CW arrowRotate Clockwise
CircleReset Rotation
The left bottom slider translates the image, and the right bottom slider rotates it. The translate slider does not immediately react to reversals of direction. The rotate slider may look like it goes forward and backwards while sliding in one direction -- this is really due to the fact that you are looking completely through the system, and a right rotation makes components behind the center move to the left (etc).

Along the right edge of the viewer are two sliders. The upper one translates the image and the lower one rotates it. The same remarks apply to these.

A right-click on the viewer window brings up a context menu with several useful choices:
Orientation ActionsPerform the above icon actions, plus more. Includes OrientationActions such as TopView, SideView, CenterInWindow, etc.
Orientation ToolbarTurn the bottom icons on or off
ProjectionSelect projection (Parallel is the default)
Mouse FunctionSelect what mouse actions do
Drawing OptionsVarious drawing options
By selecting MouseFunction/Rotation you can drag the viewer window to rotate it, as in OpenInventor (i.e. the mouse is rotating an invisible sphere containing the system). Similarly, MouseFunction/Translate lets you pan the image using the left mouse buton, as OpenInventor does with the center mouse button.

G4beamline Commands


The help command:
    help         provides interactive help.

Program control commands:
    bug1021      Workaround to improve accuracy of bug1021 in E field
    define       defines a macro (argument-expanded set of commands).
    do           Do loop.
    endgroup     ends a group definition.
    exit         exit a command file.
    g4ui         Accesses the Geant4 user interface
    geometry     Arranges to perform a geometry test.
    group        begins definition of a group.
    if           Conditional execution of command(s), and if/elseif/else/endif.
    include      includes a command file.
    list         provides interactive list of interesting internal tables.
    param        Defines parameter values.
    randomseed   control pseudo random number generator seeds
    showmaterial Set the colors for selected materials.
    trackermode  Sets mode for all trackers, manages track fitting.
    tune         Tune a variable used as argument to other elements.

Centerline layout commands:
    corner       Implement a corner in the centerline.
    cornerarc    Implement a cornerarc in the centerline.
    start        Define the initial start of centerline coordinates.

Beam definition commands:
    beam         Define the Beam.
    cosmicraybeam Define a Cosmic-Ray muon 'beam'.
    reference    Define a reference particle.

Auxiliary definition commands:
    material     construct a new material.
    particlecolor Set the colors for particle tracks.
    physics      Defines the physics processes and controls them.
    trackcolor   Alias for 'particlecolor'.

Beamline element definition commands:
    absorber     construct an absorber
    box          construct a box.
    coil         defines a coil (part of a solenoid)
    cylinder     Alias for 'tubs'.
    extrusion    construct a solid extrusion with axis along z
    fieldexpr    implements a field map, E and/or B, from expressions.
    fieldmap     implements a field map, E and/or B, from a file.
    genericbend  construct a generic bending magnet.
    genericquad  construct a generic quadrupole magnet.
    helicaldipole construct a helicaldipole magnet.
    idealsectorbend construct an ideal sector bending magnet.
    multipole    construct a generic multipole magnet.
    particlefilter Will kill particles from a list, or force particles to decay.
    pillbox      Defines a pillbox RF cavity
    polycone     construct a polycone with axis along z
    solenoid     defines a solenoid (a coil and current)
    sphere       construct a sphere (or section of one)
    torus        construct a torus.
    trap         construct a solid trapezoid with axis along z.
    tube         Alias for 'tubs'.
    tubs         construct a tube or cylinder with axis along z.

The place command:
    place        places an element into the current group (or world).

Track and Event cuts:
    eventcuts    implements cuts on event number.
    trackcuts    Specifies per-track cuts.

Data output commands:
    beamlossntuple NTuple containing particle tracks when lost.
    newparticlentuple NTuple containing particle tracks when created.
    ntuple       Define a per-event NTuple containing multiple detectors.
    printf       prints track variables and expressions
    printfield   Prints E or B fields, or writes FieldMap file.
    probefield   Prints B and E fields at specified points.
    profile      write beam profile information to a file
    timentuple   Construct an NTuple of tracks at a specified time.
    totalenergy  Print total energy deposited in selected volumes.
    trace        Specifies tracing of tracks.
    tracker      Defines a tracker.
    trackerplane Construct a tracker plane.
    usertrackfilter Construct a usertrackfilter that filters tracks via user code.
    virtualdetector Construct a VirtualDetector that generates an NTuple.
    zntuple      Generate an NTuple for each of a list of Z positions.

Other commands:
    collective   Example collective computation
    demo         demo command.
    movie        Generate movie NTuple.
    test         test random number seeds.

Program control Parameters:
    Zcl                 Last centerline Z position used (updated continuously)
    deltaChord          Geant4 tracking parameter
    deltaIntersection   Geant4 tracking parameter
    deltaOneStep        Geant4 tracking parameter
    epsMax              Geant4 tracking parameter
    epsMin              Geant4 tracking parameter
    eventTimeLimit      CPU Time Limit (sec)
    histoFile           Default (Root) NTuple output filename
    histoUpdate         Output update interval (events)
    maxStep             Maximum physics step size (mm)
    minStep             Minimum step size (mm)
    steppingFormat      Format for printing steps
    steppingVerbose     Set nonzero to print each step
    viewer              Visualization driver selected (default=none)
    worldMaterial       Material of the World volume
    zTolerance          Tolerance for Z steps (mm)
steppingFormat is a space- or comma-separated list of items:
        EXT       toggle extended precision (3 more digits)
        TAG       print a '>' (useful to grep output)
        N         step number
        NSTEP     Synonym of N
        GLOBAL    X,Y,Z,T in global coords
        XYZT      Synonym of GLOBAL
        CL        X,Y,Z,dxdz,dydz in CL coords
        CLX       extended precision CL
        KE        kinetic energy
        STEP      step length
        STEPLEN   Synonym of STEP
        VOL       volume name
        VOLNAME   Synonym of VOL
        PROCESS   process name
        B         magnetic field
        E         electric field
        P         3-momentum
        MAT       material name
        ID        event ID, track ID, parent ID
        PART      particle name
        SEG       centerline coord segment number
        WT        weight
        NL        
        NEWLINE   Synonym of NL
        \n        Synonym of NL


*
*
*
absorber     construct an absorber

             The absorber has two windows with beampipe and an absorber
             material. Optionally it has an additional two safety windows with
             beampipe. The WindowShape(s) are read from a file, and they
             determine the thickness and length of the beampipe(s). For
             geometry testing, acts like a cylinder enclosing the windows. For
             placing children, acts like a cylinder inside the central
             absorber.
             
             Note that section 4.5 of the User's Guide has a dimensioned
             drawing of an absorber.

             Named Arguments (#=cannot be changed in place cmd):
             absWindow     The name of the absorber window. #
             safetyWindow  The name of the safety window. #
             insideLength  Absorber length inside windows (mm) #
             absMaterial   The material of the absorber #
             windowMaterial The material of the window(s) #
             safetyMaterial The material inside the safety windows. #
             safetyDistance Distance between absorber and safety windows(mm) #
             color         The color of the absorber (''=invisible)
             maxStep       The maximum stepsize in the element (mm)

beam         Define the Beam.

             The beam is nominally headed in the +Z direction. There are these
             types of beam: gaussian, rectangular, ascii, ellipse, root, and
             histo. The command is 'beam type arg1=v1 ...' Rectangular beams
             emanate from the rectangle beamHeight by beamWidth located at
             beamX,beamY,beamZ. When reading a file, beamX and beamY are added
             to input tracks; if beamZ is set it will overwrite the z of the
             track, but if it is not set the z of the track is kept. All
             coordinates are centerline coordinates. Negative sigma means flat
             with -sigma as halfwidth. For histo, format=Study2 uses the old
             format and units. For ellipse beams, the sigmas are the
             half-axes, and tracks are generated on the ellipse with uniform
             density when plotted with scales such that the ellipse is a
             circle. The ellipses are in X&Xp, Y&Yp, T&E (meanE determined
             from meanMomentum). Multiple beam commands can be given, and they
             will generate events in the order they were used. Events are
             generated starting at firstEvent, until either nEvents have been
             generated or lastEvent would be exceeded.
             
             Some common beam particle names are: proton, anti_proton, pi+,
             pi-, mu+, mu-, e+, e-, kaon+, kaon-, kaon0, nu_e, anti_nu_e. See
             the User's Guide for a complete list of particle names.

             Named Arguments:
             particle      Beam particle name
             nEvents       Number of events to process (default=1 for
                           generating events, default=ALL for reading files)
                           set to lastEvent-firstEvent+1 if both are set.
             firstEvent    First event # to process (default is the next
                           sequential eventID, 1 if none)
             lastEvent     Last (highest) event # to process
             beamX         Beam location in X (mm)
             beamY         Beam location in Y (mm)
             beamZ         Beam location in Z (mm)
             maxR          Beam maximum radius (mm)
             rotation      Rotation of the beam
             renumber      If nonzero, renumber events sequentially.
             weight        Weight for events, overwritten by value from input
                           file (1.0).
             secondaryTrackID The next TrackID for secondaries (1001).
             meanMomentum  Gaussian Beam mean momentum (MeV/c)
             sigmaX        Gaussian Beam sigma in X (mm)
             sigmaY        Gaussian Beam sigma in Y (mm)
             sigmaXp       Gaussian Beam sigma in dxdz (slope)
             sigmaYp       Gaussian Beam sigma in dydz (slope)
             sigmaP        Gaussian Beam sigma in P (MeV/c)
             sigmaT        Gaussian Beam sigma in T (ns)
             sigmaE        Elliptical Beam sigma in E (MeV)
             meanXp        Gaussian Beam mean in Xp (slope)
             meanYp        Gaussian Beam mean in Yp (slope)
             meanT         Gaussian Beam mean in T (ns)
             beamHeight    Rectangular Beam height (mm)
             beamWidth     Rectangular Beam width (mm)
             filename      input file name
             file          synonym for filename.
             category      HistoScope category of NTuple
             uid           HistoScope uid of NTuple
             name          Root name of NTuple.
             format        ASCII/histo file format (Default=BLTrackFile)
             beamXp        Synonym for meanXp.
             beamYp        Synonym for meanYp.

beamlossntuple NTuple containing particle tracks when lost.

             The NTuple contains the same data as a virtualdetector:
                 x,y,z (mm)
                 Px,Py,Pz (MeV/c)
                 t (ns)
                 PDGid (11=e-, 13=mu-, 22=gamma, 211=pi+, 2212=proton, ...)
                 EvNum (inexact above 16,777,215)
                 TrkId (1 is first track of event)
                 Parent (0 => primary particle)
                 wt (weight, defaults to 1.0)
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             format        The NTuple format (see above for list).
             filename      The filename for the NTuple.
             file          Synonym for filename.
             require       Expression which must be nonzero to include the
                           track (default=1) #
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

box          construct a box.

             This is a direct interface to G4Box.

             Named Arguments:
             height        The height of the box (mm)
             width         The width of the box (mm)
             length        The length of the box (mm)
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the box
             color         The color of the box (''=invisible)
             kill          Set nonzero to kill every track that enters.

bug1021      Workaround to improve accuracy of bug1021 in E field

             When a charged particle turns around in an E field, a bug in the
             Geant4 transportation process can sometimes give it a
             wildly-incorrect kinetic energy. This workaround computes the
             distance to turn-around, and limits the step to half that vlue
             until minStep is reached; at that point the track is reflected.
             
             Simulations in which there are no E fields, or no charged
             particle ever gets below ~0.001 MeV in an E field, have no need
             to apply this workaround.

             Named Arguments:
             minStep       Minimum step in space (mm, default=0.002)

coil         defines a coil (part of a solenoid)

             A coil is a geometrical tube that can carry current when part of
             a solenoid. The field is computed for a set of nSheets
             infinitely-thin current sheets evenly spread radially. The
             solenoid specifies the actual current. For tracking the
             computation is too slow, so a field map on a grid in r and z is
             computed and written to filename (defaults to coilname.dat).
             While there are lots of parameters specifying the field map it is
             recommended to simply accept the defaults for all but
             innerRadius, outerRadius, length, material, and possibly
             tolerance. The other parameters will be determined so that the
             largest error is less than tolerance times the value of Bz at the
             center of the coil. If mapFile is given, the file is read in
             BLFieldMap format. The cache file contains the parameters, and is
             a field map in a binary format; it is automatically regenerated
             if any parameter changes.
             
             Note that maxR and maxZ are by default determined to be large
             enough so that the field falls below tolerance; this can be quote
             large.

             Named Arguments (#=cannot be changed in place cmd):
             innerRadius   Inside radius of the coil (mm) #
             outerRadius   Outside radius of the coil (mm) #
             length        Length of the coil along z (mm) #
             material      The material of the conductor (default=Cu) #
             tolerance     The acceptable tolerance of the map. #
             nSheets       Number of sheets used in the computation #
             maxR          Maxmum r value for the map (automatically
                           determined by default). #
             maxZ          Maxmum z value for the map (automatically
                           determined by default). #
             dR            R interval between points of the map (automatically
                           determined by default). #
             dZ            Z interval between points of the map (automatically
                           determined by default). #
             filename      Filename for cache; deaults to name.dat. #
             mapFile       Filename for map (e.g. from TOSCA). #

collective   Example collective computation

             This command computes the mean and sigma related to the time
             stepping in BLRunManager. This class is intended to serve as an
             example for a collective computation.

             Named Arguments:
             deltaT        Time step (1 ns).
             verbose       Non-zero for verbose prints (0).

corner       Implement a corner in the centerline.

             The centerline is bent by a rotation. Every track that enters the
             volume also gets rotated. The z value is for the corner and the
             front face of the volume (if any). If the corner is paired with a
             bending magnet or other mechanism to bend the beam, no volume
             should be used.
             
             NOTE: This command is self-placing, do not use the place command;
             it also affects all following placements, and it cannot be issued
             inside a group. If radius=height=width=0 then no volume is
             associated with the corner, and a bending magnet should be placed
             nearby to bend the particles around the corner. Normally the
             bending magnet is placed before the corner, and is rotated by
             half the bend angle. For a sector bend, it's usually best to use
             the cornerarc command rather than this one.
             
             NOTE: all placements before this command must have z values
             before the corner, and all placements after this command must
             have z values after the corner. Note also that the angle is
             limited to 90 degrees.
             
             Note that the radiusCut is important to reduce or eliminate
             ambiguities in the global to centerline coordinate transform. It
             can also be used to 'shield' the beamline to prevent particles
             from taking unusual paths around the outside of beamline
             elements.

             Named Arguments:
             z             The centerline Z of the corner (mm).
             rotation      The rotation of the corner (see above).
             radiusCut     The radius cut for this following segment (mm
                           default=previous).
             radius        The radius of the circular corner volume (mm).
             height        The height of the rectangular corner volume (mm).
             width         The width of the rectangular corner volume (mm).
             length        The length of the corner volume (mm).
             maxStep       The maximum stepsize in the element (mm).
             material      The material of the corner volume.
             color         The color of the corner volume (''=invisible).

cornerarc    Implement a cornerarc in the centerline.

             The centerline is bent by a rotation. Three corners are used to
             approximate an arc; the total angle and path-length are equal to
             those for the arc. Should be used immediately after an
             idealsectorbend or a genericbend. The z value is for the front
             face of the arc.
             
             NOTE: This command is self-placing, do not use the place command;
             it also affects all following placements, and it cannot be issued
             inside a group.
             
             This command is well matched to a sector bend, but can also be
             used with a normal bending magnet -- normally the magnet is
             placed before the cornerarc and is rotated by half the bend
             angle.
             
             The only useful rotations are those around the centerline Z.
             
             NOTE: all placements before this command must have z values
             before the corner, and all placements after this command must
             have z values after the corner. Note also that the angle is
             limited to 90 degrees.
             
             Note that the radiusCut is important to reduce or eliminate
             ambiguities in the global to centerline coordinate transform. It
             can also be used to 'shield' the beamline to prevent particles
             from taking unusual paths around the outside of beamline
             elements.

             Named Arguments:
             z             The centerline Z of the cornerarc (mm).
             centerRadius  The radius of the centerline arc (mm).
             angle         The angle of bend, >0=left, <0=right (degrees).
             rotation      The rotation of the cornerarc (see above).
             radiusCut     The radius cut for this following segment (mm).

cosmicraybeam Define a Cosmic-Ray muon 'beam'.

             The muon beam is nominally headed in the +Z direction, implying
             that +Z is physically DOWN. The beam intersects a box defined by
             beamWidth, beamHeight, and beamLength, centered at X=Y=0 and
             beamZ. For each event a point is selected randomly within this
             box, angles theta and phi and the muon momentum are generated
             according to a fit to their sea-level distributions, the track is
             extended backwards to the 'celestial sphere', and that is the
             initial beam position for the event. The muon flux through the
             rectangle at Z=beamZ is used to display an estimate of the
             sea-level exposure time for the run.

             Named Arguments:
             nEvents       Number of events to process
             beamZ         Beam location in Z (mm)
             radius        Radius of celestial sphere (mm)
             beamHeight    Rectangular Beam height (mm)
             beamWidth     Rectangular Beam width (mm)
             beamLength    Rectangular Beam length (mm)

cylinder     Alias for 'tubs'.


define       defines a macro (argument-expanded set of commands).

             The first argument is the macro name, additional arguments become
             lines in the body of the expanded macro. The macro name becomes a
             command with up to 9 positional arguments. When the command is
             issued, the body is expanded and executed, with these
             substitutions:
               $0     MacroName
               $1-$9  Positional arguments of the command
               $#     # macro expansions (for generating unique names)
             NOTE: $paramname is expanded in the define command, but
             $$paramname is expanded when the macro is invoked.

demo         demo command.

             This demo command takes both positional and named args, and is
             the prototype class for all commands. All argument values are
             merely displayed. 'demo default name=value...' sets default
             values.

             Named Arguments:
             s1            a demo string argument.
             s2            a demo string argument.
             d1            a demo double argument.
             d2            a demo double argument.

do           Do loop.

             Syntax:
                 do i 1 10 [1]
                     commands ...
                 enddo
             
             Sets the parameter i to values 1, 2, 3, ... 10, and executes the
             commands. The increment is 1 by default, and negative increments
             are allowed (with limits reversed). 'do i 1 0' and 'do i 0 1 -1'
             will execute no commands. After completion, i retains its last
             value. Do-s and multi-line if-s can be nested in any manner.
             
             Note: the do command will not work from standard-input or as a
             command in a single-line if.

endgroup     ends a group definition.

             The group may then be placed as any other element. If the group
             was not given a length via an argument, endgroup computes the
             length and adjusts the offsets of all elements in the group so
             they refer to the center of the group.

eventcuts    implements cuts on event number.

             The file is ASCII, with one event number per line. Events whose
             EventID is not contained in the file will be skipped. The file is
             read at the start of every run, so it can be changed between
             runs. This is particularly useful when the file is written by
             HistoRoot (via its EventID option), because the G4beamline GUI
             and a HistoRoot window can both be left open, and the user can
             alternate between them, selecting regions of plots with
             HistoScope sliders, and then looking at the selected events with
             G4beamline and a viewer.

             Named Arguments:
             filename      The file containing a list of event numbers.
             file          Synonym for filename.

exit         exit a command file.

             The exit command ceases reading the input file, and starts the
             simulation immediately (ignoring the remainder of the input
             file).

extrusion    construct a solid extrusion with axis along z

             This is a simplified interface to G4extrudedSolid. A simple
             polygon in the X-Y plane is extruded along z, with optional
             scales in XY at the two ends (which generate a linear scaling
             along z). Note that while you cannot make an extrusion with a
             hole, you can make such an object in two parts.
             
             Note the position placed is x=0,y=0,z=0, which is centered along
             z, but need not be near the center of the polygon in XY.
             
             With scale1!=scale2 this is not really an extrusion; by making
             one of them 0.001 or so, you can construct a sharp apex.
             
             Any x or y value in vertices can be an expression using double
             constants and the usual C operators and functions.

             Named Arguments (#=cannot be changed in place cmd):
             length        Length of the extrusion (mm). #
             vertices      List of vertices of the XY polygon, clockwise (mm):
                           'x0,y0;x1,y1;...'; a line from last to first is
                           added. A 2 mm square is: '-1,-1;-1,1;1,1;1,-1' #
             scale1        The XY scale at the upstream (-z) end (1.0). #
             scale2        The XY scale at the downstream (+z) end (1.0). #
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the extrusion
             color         The color of the extrusion (''=invisible)
             kill          Set nonzero to kill every track that enters.
             vertexes      Synonym for vertices. #

fieldexpr    implements a field map, E and/or B, from expressions.

             A fieldexpr element can be either a box or a cylinder; set length
             and radius for cylinder, set length and width and height for a
             box. Units are Tesla, MegaVolts/meter, mm, and ns. Expressions
             for the field components can use {x,y,z} for a box or {z,r} for a
             cylinder; the time expression can use {t}. If present, the time
             expression multiples all components. The number of points in the
             map is increased until the largest map error divided by the
             maximum field is smaller than tolerance, or 1M points is
             exceeded. Similarly for the time dependence.
             
             For time dependence: if t-timeOffsettmax, the value at tmax is used.

             Named Arguments (#=cannot be changed in place cmd) (@=Tunable):
             factorB       Factor for the B-field (1.0). @
             factorE       Factor for the E-field (1.0). @
             timeOffset    Time offset (ns).
             Bx            Expression for Bx (Tesla), use {x,y,z}. #
             By            Expression for By (Tesla), use {x,y,z}. #
             Bz            Expression for Bz (Tesla), use {x,y,z} or {r,z}. #
             Br            Expression for Br (Tesla), use {r,z}. #
             Ex            Expression for Ex (MV/m), use {x,y,z}. #
             Ey            Expression for Ey (MV/m), use {x,y,z}. #
             Ez            Expression for Ez (MV/m), use {x,y,z} or {r,z}. #
             Er            Expression for Er (MV/m), use {r,z}. #
             time          Expression for time-dependence factor, use {t}. #
             nX            Number of grid point in x. #
             nY            Number of grid point in y. #
             nZ            Number of grid point in z. #
             nR            Number of grid point in r. #
             nT            Number of grid point in t. #
             tolerance     Required relative accuracy (0.001). #
             length        Length of field map (mm). #
             width         Width of rectangular field map (mm). #
             height        Height of rectangular field map (mm). #
             radius        Radius of cylindrical field map (mm). #
             tmin          Minimum value of t (ns). #
             tmax          Maximum value of t (ns). #

fieldmap     implements a field map, E and/or B, from a file.

             Reads an input file in BLFieldMap format to define E and/or B
             fields, optionally with time dependence. See the Users Guide for
             a description of the BLFieldMap format.

             Named Arguments (#=cannot be changed in place cmd) (@=Tunable):
             filename      Filename for the Field Map. #
             file          Synonym for filename. #
             current       Current of the B-field. @
             gradient      Gradient of the E-field. @
             timeOffset    Time offset (ns).

g4ui         Accesses the Geant4 user interface

             Each positional argument is executed as a Geant4 UI command,
             according to the when parameter. No positional arguments means
             open a UI session on stdout/stdin. For a given value of when, the
             UI commands from all g4ui commands are executed in order.

             Named Arguments:
             when          0=before reference, 1=before beam, 2=after beam,
                           3=cannot be used, 4=visualization.

genericbend  construct a generic bending magnet.

             The field region is a box with By specified. A fringe field
             computation based on the method of COSY INFINITY is included by
             default, extending the field in a rectangle extending the
             straight aperture along the local z. This is first order only,
             and assumes the magnet is infinitely wide; the fringe field
             extends outside of the magnet aperture only in a region extending
             the aperture in x and y. As the fringe field is first order only,
             it is slightly non-Maxwellian.
             
             By default, the aperture is filled with a box volume of the
             fieldMaterial; this prevents placing any object inside the
             aperture. With openAperture=1 no aperture volume is used, and
             objects can be placed into the parent volume that are inside the
             aperture.

             Named Arguments (#=cannot be changed in place cmd) (@=Tunable):
             fieldWidth    The width of the field region (mm)
             fieldHeight   The height of the field region (mm)
             fieldLength   The length of the field region (mm)
             ironWidth     The width of the iron region (mm)
             ironHeight    The height of the iron region (mm)
             ironLength    The length of the iron region (mm)
             By            The magnetic field (Tesla) @
             maxStep       The maximum stepsize in the element (mm)
             fieldMaterial The material of the field region.
             fieldColor    The color of the field region.
             ironMaterial  The material of the iron region.
             ironColor     The color of the iron region.
             kill          Set nonzero to kill particles hitting the iron.
             fringe        Fringe field computation, set to 0 to disable, or a
                           comma-separated list of 6 Enge function parameters.
             fringeFactor  Fringe depth factor (1.0).
             openAperture  Set nonzero to omit the aperture volume. #

genericquad  construct a generic quadrupole magnet.

             The field region is a tubs with gradient specified. A positive
             gradient yields a horizontally-focusing quad for positive
             particles. If apertureRadius>0 the quad has a circular aperture.
             For a 'rounded +' aperture using circles for the poles, set
             poleTipRadius, coilRadius, coilHalfwidth. Due to visualization
             bugs, in the latter case you cannot see through the aperture; it
             is solid black. A fringe field computation based on the method of
             COSY INFINITY is included by default, extending the field region.
             This is first order only, and the fringe field extends outside of
             the magnet aperture only in a cylinder extending the aperture
             straight along local z. As the fringe field is first order only,
             it is slightly non-Maxwellian.

             Named Arguments (#=cannot be changed in place cmd):
             fieldLength   The length of the field region (mm)
             ironLength    The length of the iron (mm)
             ironRadius    The outer radius of the iron (mm)
             apertureRadius The radius of the aperture (mm)
             poleTipRadius The inner radius of the pole tips (mm).
             coilRadius    The radius of the inside of the coil (mm).
             coilHalfwidth The halfwidth of the coil (mm).
             coilHalfWidth Synonym for coilHalfwidth.
             gradient      The magnetic field gradient, dBy/dx (Tesla/meter)
             maxStep       The maximum stepsize in the element (mm)
             ironMaterial  The material of the iron region.
             fieldMaterial The material of the field region.
             ironColor     The color of the iron region.
             kill          Set nonzero to kill tracks hitting the iron.
             fringe        Fringe field computation, set to 0 to disable, or a
                           comma-separated list of 6 Enge function parameters.
             fringeFactor  Fringe depth factor (1.0).
             openAperture  Set nonzero to omit the aperture volume. #

geometry     Arranges to perform a geometry test.

             The geometry test checks nPoints points on the surface of each
             element, verifying that they are inside the parent element and
             that they are not inside any sibling element. The default of 100
             points is usually sufficient; 0 means omit the geometry test. The
             first 20-40 points (depending on element) test 'corners', the
             rest are randomly distributed on the surface. The default
             tolerance is 0.002 mm.

             Named Arguments:
             nPoints       The number of surface points to test per element
             printGeometry Set nonzero to print the entire geometry.
             visual        Set nonzero to display the geometry test points.
             tolerance     Tolerance for inside/outside tests (mm).

group        begins definition of a group.

             A group is a collection of elements that can be placed together,
             preserving their relative positions. The group is a LogicalVolume
             in the geant4 geometry -- this means that a group cannot overlap
             any other group or object, even if the overlapping portion of the
             group is empty. If you need to permit overlaps, consider using a
             macro instead (the define command).
             
             If the group is given a length, then children can be placed at
             specific z offsets relative to the center of the group. If the
             group is not given a length, then children can only be placed
             sequentially along z, and the length will be computed by the
             endgroup command. Width and height are computed from the largest
             child or the argument. If radius is set to 0, the group will be a
             cylinder with radius determined by the largest width or height
             placed into it; if >0 then that is the fixed radius. If radius is
             not set then a box is used.

             Named Arguments (#=cannot be changed in place cmd):
             length        Overall group length along z (mm) #
             width         Overall group width (mm) #
             height        Overall group height (mm) #
             radius        Radius for a cylindrical group (mm) #
             material      Material of the volume outside children
             color         Color of the volume of the group
             maxStep       The maximum stepsize in the volume (mm)

helicaldipole construct a helicaldipole magnet.

             The field region is a cylinder with a helical dipole field plus a
             solenoidial field. The simple model=1 provides just a sine and
             cosine transverse dependence, while the maxwellian model=2 has
             both dipole and quadrupole terms. Both the dipole scale bD [T]
             and quadrupole scale bQ [T/m] are now at rho=0; the user must
             determine the correct values externally.
             
             Note that this Element generates a magnetic field only, and only
             within the cylinder defined by length and radius. So it has no
             solid associated with it, and is invisible.

             Named Arguments:
             radius        The radius of the field region (mm)
             model         The model of field calculated(simple=1, rpj and ysd
                           model=2, ttominaka et al model=3), modulations in
                           bd,bq,bz= 4
             length        The length of the field region (mm)
             bD            The dipole magnitude at rho=0 (Tesla).
             lambda        Helix period along the Z axis (mm).
             phi0          The phase of the XY field at the entrance (deg).
             Bsolenoid     The value of Bsolenoid (Tesla).
             bQ            The quadrupole magnitude at rho=0 (Tesla).
             bs            The sextupole magnitude at rho=0 (Tesla).
             rr            Reference radius (mm)
             psi0          The offset between the dipole term and the
                           quadrupole term (Degrees).
             ez            The base electric field inside the helix channel
                           (GV/m).

help         provides interactive help.

             help with no arguments lists all commands. 'help command' gives
             more detailed help on that command. 'help *' gives detailed help
             for all commands. If the first argument is -exit the program will
             exit after printing the help.

idealsectorbend construct an ideal sector bending magnet.

             The field region is a sector with By specified. Unlike most
             Elements, the position of the idealsectorbend is the center of
             the front face of its field (aperture). angle>0 bends to the left
             around Y; angle<0 bends right. The only useful rotations are
             around the centerline Z. Should be followed immediately by a
             cornerarc. Note that -900 (beam left) the field is purely By. Negative strengths
             are allowed and reverse the field. The fringe field computation
             is not implemented.

             Named Arguments (#=cannot be changed in place cmd):
             fieldLength   The length of the field region (mm)
             ironLength    The length of the iron (mm)
             ironRadius    The outer radius of the iron (mm)
             apertureRadius The radius of the aperture (mm)
             ironMaterial  The material of the iron region.
             fieldMaterial The material of the field region.
             dipole        Strength of dipole (Tesla)
             quadrupole    Strength of quadrupole (T/m)
             sextupole     Strength of sextupole (T/m^2)
             octopole      Strength of octopole (T/m^3)
             decapole      Strength of decapole (T/m^4)
             dodecapole    Strength of dodecapole (T/m^5)
             ironColor     The color of the iron region.
             kill          Set nonzero to kill tracks hitting the iron.
             maxStep       The maximum stepsize in the element (mm)
             fringe        Fringe field computation, set to 0 to disable
             fringeFactor  Fringe depth factor (1.0).
             openAperture  Set nonzero to omit the aperture volume. #

newparticlentuple NTuple containing particle tracks when created.

             Note that initial beam particles are included, unless require is
             set to 'Parent>0'. The NTuple contains the same data as a
             virtualdetector:
                 x,y,z (mm)
                 Px,Py,Pz (MeV/c)
                 t (ns)
                 PDGid (11=e-, 13=mu-, 22=gamma, 211=pi+, 2212=proton, ...)
                 EvNum (inexact above 16,777,215)
                 TrkId (1 is first track of event)
                 Parent (0 => primary particle)
                 wt (weight, defaults to 1.0)
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             format        The NTuple format (see above for list).
             filename      The filename for the NTuple.
             file          Synonym for filename.
             require       Expression which must be nonzero to include the
                           track (default=1) #
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

ntuple       Define a per-event NTuple containing multiple detectors.

             An ntuple holds the data from multiple virtualdetector-s in a
             single NTuple, with one row per event. Up to 64 virtualdetector-s
             can be used. If multiple tracks hit a given virtual detector
             during the event, only the first one is kept in this ntuple.
             virtualdetector-s are specified by patterns identical to UNIX
             file-matching, so '*Det*' matches any virtualdetector with 'Det'
             anywhere in its name, etc. The 'required' argument permits events
             to be omitted unless all of the matching virtualdetector-s were
             hit at least once in the event. The patterns in 'required' are
             applied only to virtualdetectors in the ntuple, so a simple '*'
             requires a hit in every one.
             
             NOTE: the name of a virtualdetector is by default the
             concatenation of its ancestors' names before its own (except
             World), unless rename=NAME was used in its place command. The
             patterns are applied to the names of the virtualdetectors as they
             were placed (including rename), not the bare name of the
             virtualdetector command. If 'rename=det#' was used to place the
             virtualdetector-s, you probably want a * to match the # or list
             them individually (det1,det2,det3...).
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments:
             category      The category of the NTuple.
             detectors     A comma-separated list of detector patterns.
             required      A comma-separated list of required detector
                           patterns(default=*).
             format        NTuple format (see above for list).
             minHit        Minimum number of detectors hit (default 0).
             require       Synonym for required.
             minHits       Synonym for minHit.

param        Defines parameter values.

             'param name=value ...' defines parameters. If no arguments are
             present, all parameters are displayed. If the first parameter is
             '-unset', this command will not overwrite parameters that are
             already set (e.g. from the command line - this permits the
             input.file to set defaults that can be overridden on the command
             line). Parameters can be used in arguments of commands: 'cmd
             argname=$paramname [...]' Parameters can be set from the command
             line, as all arguments after the first are interpreted as
             paramname=value. This is most useful for setting global things
             like viewer and histoFile, or parameters used in input.file. The
             values of parameters are strings, but if the value of a parameter
             is a valid real expression including at least one operator
             {+-*/^<>=()!~&%|?}, the parameter value will be set to the
             numerical value of the expression to 8 significant digits.
             
             NOTE: pre-defined Prograom control parameters (listed below) are
             defined before the command-line and are not affected by -unset.

Program control Parameters:
    Zcl                 Last centerline Z position used (updated continuously)
    deltaChord          Geant4 tracking parameter
    deltaIntersection   Geant4 tracking parameter
    deltaOneStep        Geant4 tracking parameter
    epsMax              Geant4 tracking parameter
    epsMin              Geant4 tracking parameter
    eventTimeLimit      CPU Time Limit (sec)
    histoFile           Default (Root) NTuple output filename
    histoUpdate         Output update interval (events)
    maxStep             Maximum physics step size (mm)
    minStep             Minimum step size (mm)
    steppingFormat      Format for printing steps
    steppingVerbose     Set nonzero to print each step
    viewer              Visualization driver selected (default=none)
    worldMaterial       Material of the World volume
    zTolerance          Tolerance for Z steps (mm)
steppingFormat is a space- or comma-separated list of items:
        EXT       toggle extended precision (3 more digits)
        TAG       print a '>' (useful to grep output)
        N         step number
        NSTEP     Synonym of N
        GLOBAL    X,Y,Z,T in global coords
        XYZT      Synonym of GLOBAL
        CL        X,Y,Z,dxdz,dydz in CL coords
        CLX       extended precision CL
        KE        kinetic energy
        STEP      step length
        STEPLEN   Synonym of STEP
        VOL       volume name
        VOLNAME   Synonym of VOL
        PROCESS   process name
        B         magnetic field
        E         electric field
        P         3-momentum
        MAT       material name
        ID        event ID, track ID, parent ID
        PART      particle name
        SEG       centerline coord segment number
        WT        weight
        NL        
        NEWLINE   Synonym of NL
        \n        Synonym of NL



particlecolor Set the colors for particle tracks.

             Arguments are of the form 'name=1,1,0', where name is the
             standard name of a particle, and 1,1,0 is the R,G,B value desired
             for its color ('' for invisible) The special names plus, minus,
             and neutral will set colors for unnamed particles of each charge.
             The name reference will apply to the reference track (defaults to
             invisible).

particlefilter Will kill particles from a list, or force particles to decay.

             A particlefilter will force the decay of certain particles when
             they enter the physical volume of the element. The list of
             affected particles is in the 'decay' argument, and the normal
             Decay process is disabled for them. In addition, the 'kill'
             argument is a list of particles to kill when they enter the
             element, and the 'keep' argument will kill all particles not
             named, if it is not empty.
             
             require is an expression invloving track parameters that will
             kill the track if it evaluates to zero (use a comparison
             operator). The variables available are:
                 x,y,z,t,Px,Py,Pz,Ptot,PDGid,TrkId,Parent
             Units are mm, ns, MeV/c.
             
             If nWait > 1, particles will not be killed until they hit this
             element nwait times; this can be used to limit the number of
             revolutions around a ring. Decays are unaffected by nWait.
             referenceWait does the same for the reference particle The
             element can be either a cylinder or a box: set length and radius,
             or set length and width and height.

             Named Arguments (#=cannot be changed in place cmd):
             radius        The radius of the cylindrical particlefilter (mm).
             innerRadius   The inner radius of the cylindrical particlefilter
                           (0 mm, solid).
             height        The height of the rectangular particlefilter (mm).
             width         The width of the rectangular particlefilter (mm).
             length        The length of the particlefilter (mm).
             maxStep       The maximum stepsize in the element (mm).
             material      The material (default=parent's).
             color         The color of the particlefilter (white).
             decay         A comma-separated list of particle names to decay.
                           #
             kill          A comma-separated list of particle names to kill. #
             keep          A comma-separated list of particle names to keep. #
             nWait         Intersection # to do the kill (default = 1)
             referenceWait Intersection # for reference (default = 1)
             require       Expression which will kill the track if zero. #
             steppingVerbose Nonzero to display track kills.
             decays        Synonym for decay. #

physics      Defines the physics processes and controls them.

             Exactly one physics command must be present. This command
             implements the geant4 physics lists of physics processes. The
             command is 'physics QGSP' for the QGSP set, and similarly for the
             other sets. With no argument it prints the available physics
             lists. Note that stochastic processes are always disabled while
             tracking the tune and reference particles. The only
             non-stochastic processes are Transportation and ionization energy
             loss (with fluctuations disabled). For muon beam studies you may
             want to disable the Decay process.
             
             NOTE: this command defines the particles used throughout the
             simulation, so this command must come before others that use
             particle names.
             
             The default all-around physics list for HEP is called
             'QGSP_BERT'.

             Named Arguments:
             disable       Comma-separated list of processes to disable (e.g.
                           'Decay,msc').
             inactivate    Synonym of disable.
             deactivate    Synonym of disable.
             doStochastics Set to zero to disable all stochastic processes.
             minRangeCut   Minimum range cut for particle production (1 mm)
             list          Nonzero to list the processes (later in output).

             ----- PHYSICS LISTS -----

             Further guidance in selecting physics lists is available at:
http://geant4.web.cern.ch/geant4/support/physicsLists/referencePL/index.shtml

             The default all-around physics list for HEP is called 'QGSP_BERT'.

             LHEP uses exclusively parameterized modeling.
             FTF lists use the FRITIOF description of string excitation
                  and fragmentation.
             QGSP lists use the quark gluon string model
             QGSC are as QGSP except applying CHIPS modeling for the nuclear
                  de-excitation.
             QGSP_BERT is like QGSP, but using Geant4 Bertini cascade.
             QGSP_BIC is like QGSP, but using Geant4 Binary cascade.
             _EMV suffix indicates a faster but less accurate EM modeling.
             _HP suffix uses the data driven high precision neutron package
                  (thermal to 20 MeV).
             _NQE suffix indicates a list for comparison with earlier release.

             List of available physics lists:
             FTFC   No synopsis available.
             FTFP   For calorimetry -- is similar to QGSP for the treatment of
                    the fragmentation, but the string excitation/fragmentation
                    is changed from quark-gluon string model to a diffractive
                    string excitation similar to that in FRITJOF, and the Lund
                    fragmentation functions.
             FTFP_BERY No synopsis available.
             FTFP_EMV No synopsis available.
             FTF_BIC No synopsis available.
             LBE    For low background experiments (e.g. underground)
             LHEP   For calorimetry -- is the fastest, when it comes to CPU.
                    It uses the LEP and HEP parametrized models for inelastic
                    scattering. The modeling parametrizes the final states
                    individual inelastic reactions, so you will not see
                    resonances, and the detailed secondary angular
                    distributions for O(100MeV) reactions may not be described
                    perfectly. The average quantities will be well described.
             LHEP_BERT For 'typical' HEP collider detectors and low-energy
                    penetration shielding (< 5 GeV) -- is as LHEP_GN for
                    energies above 3GeV. Below 3 GeV the Bertini cascade is
                    used for nucleon and pion induced reactions. The price to
                    pay is reduced CPU performance. It does not include gamma
                    and electro nuclear physics.
             LHEP_EMV No synopsis available.
             LHEP_PRECO_HPQBBB No synopsis available.
             QBBC   No synopsis available.
             QBBCG  No synopsis available.
             QBBCF  No synopsis available.
             QBBC_HP No synopsis available.
             QGSC   For calorimetry and high energy physics trackers -- is as
                    QGSP for the initial reaction, but uses chiral invariant
                    phase-space decay (multi-quasmon fragmentation) to model
                    the behavior of the system's fragmentation.
             QGSC_BERT No synopsis available.
             QGSC_EFLOW No synopsis available.
             QGSC_EMV No synopsis available.
             QGSP   For calorimetry and high energy physics trackers and
                    high-energy and medium-energy production targets -- uses
                    theory driven modeling for the reactions of energetic
                    pions, kaons, and nucleons. It employs quark gluon string
                    model for the 'punch-through' interactions of the
                    projectile with a nucleus, the string excitation
                    cross-sections being calculated in quasi-eikonal
                    approximation. A pre-equilibrium decay model with an
                    extensive evaporation phase to model the behavior of the
                    nucleus 'after the punch'. It uses current best pion
                    cross-section.
             QGSP_BERT Like QGSP, but using Geant4 Bertini cascade for primary
                    protons, neutrons, pions and Kaons below ~10GeV. In
                    comparison to experimental data we find improved agreement
                    to data compared to QGSP which uses the low energy
                    parameterised (LEP) model for all particles at these
                    energies. The Bertini model produces more secondary
                    neutrons and protons than the LEP model, yielding a better
                    agreement to experimental data.
             QGSP_BERT_DIF No synopsis available.
             QGSP_BERT_EMV No synopsis available.
             QGSP_BERT_HP No synopsis available.
             QGSP_BERT_NQE No synopsis available.
             QGSP_BERT_TRV No synopsis available.
             QGSP_BIC Like QGSP, but using Geant4 Binary cascade for primary
                    protons and neutrons with energies below ~10GeV, thus
                    replacing the use of the LEP model for protons and
                    neutrons In comparison to teh LEP model, Binary cascade
                    better describes production of secondary particles
                    produced in interactions of protons and neutrons with
                    nuclei.
             QGSP_BIC_HP No synopsis available.
             QGSP_DIF No synopsis available.
             QGSP_EMV No synopsis available.
             QGSP_EMV_NQE No synopsis available.
             QGSP_EMX No synopsis available.
             QGSP_NQE No synopsis available.
             QGSP_QEL No synopsis available.
             QGS_BIC No synopsis available.
                    No synopsis available.
             MICEPhysicsList The current MICE physics list.
             LISAPhysicsList Geant4 examples/advanced/cosmicray_charging

pillbox      Defines a pillbox RF cavity

             A Pillbox RF cavity is the basic RF element used to construct a
             linac. The phaseAcc parameter sets the phase of the tune particle
             at the center of the cavity, and the timing offset of the cavity
             is determined from that when the tune particle is tracked through
             the cavity. Zero degrees is the rising zero-crossing of the Ez
             field. If timeOffset is specified, it is used rather than setting
             it from the Tune particle.
             
             The Pipe, walls, and collars are always made of copper. Pipe,
             wall, collar, win1, and win2 can be omitted by setting their
             thickness to 0. Note that section 4.4 of the User's Guide has a
             dimensioned drawing of a pillbox.

             Named Arguments (#=cannot be changed in place cmd) (@=Tunable):
             maxGradient   The peak gradient of the cavity (MV/m) @
             color         The color of the cavity
             frequency     The frequency of the cavity (GHz) #
             innerLength   The inside length of the cavity (mm) #
             innerRadius   The inside radius of the cavity (mm) #
             pipeThick     The thickness of the pipe wall (mm) #
             wallThick     The thickness of the cavity walls (mm) #
             irisRadius    The radius of the iris (mm) #
             collarRadialThick The radial thickness of the collar (mm) #
             collarThick   The thickness of the collar along z(mm) #
             win1Thick     The thickness of the central portion of the
                           windows; zero for no window (mm) #
             win1OuterRadius The radius of the central portion of the windows
                           (mm) #
             win2Thick     The thickness of the outer portion of the windows;
                           zero for no window (mm) #
             winMat        The material of the windows
             phaseAcc      The reference phase of the cavity (degrees)
             skinDepth     The skin depth (mm) #
             timingTolerance Tolerance for timing tuning (ns)
             maxStep       The maximum stepsize in the element (mm).
             cavityMaterial Material of cavity volume (Vacuum).
             timeOffset    Time offset for cavity (default: tuned by tune
                           particle) (ns).
             timeIncrement Increment to timeOffset, applied AFTER tuning.
                           (ns).
             fieldMapFile  Filename for BLFieldMap (pillbox if null). #

place        places an element into the current group (or world).

             Every element can be placed multiple times into the beamline. For
             most elements the geometrical centerpoint is placed; for polycone
             the local x=y=z=0 point is placed. If front is nonzero then the
             front of the element is placed. If z is specified, then the
             element is placed at that z position relative to the center of
             the enclosing group. If z is not specified, then the element is
             placed immediately downstream (higher z) of the previous element
             in the group, or at the upstream edge of the group if this is the
             first element in the group. The 'rename' argument can be used to
             change the name of the element (mostly for traces, but also
             applies to other places where names are used). When multiple
             copies are placed, z refers to the first, and the rest are placed
             sequentially along z. When placing an element into the World
             group, Centerline coordinates are used unless coordinates=global
             is present. When centerline coordinates are used, the parameter
             'Zcl' is set to the highest Z value used; this is normally the Z
             value for the front of the next element when placed sequentially
             (i.e. with no z value given).
             
             Rotations: The rotation parameter can be used to rotate this
             element relative to the enclosing group. The object is rotated,
             not the axes. Rotations are specified as a comma-separated list
             of axes and angles (in degrees): rotate=Z90,X45 rotates first by
             90 degrees around Z and then by 45 degrees around X. The axes are
             the local X,Y,Z coordinate axes of the enclosing group
             (centerline or global coordinate axes for the World group);
             groups can be rotated when placed, and are rotated as a rigid
             unit (including children).
             
             If parent=name is present, then the name must be an element that
             accepts children, and it is used as the enclosing group; in this
             case the size of the group is implied by the size of the parent
             element, and z must be given (defaults to 0). Note that a given
             element cannot be the parent of any other element once it has
             been placed, so you must place children into their parent before
             placing their parent.
             
             If the special element 'OFFSET' is given, x, y, and z specify
             offsets for every following place command into the current group
             (incl. World), that gives a z position.

             Named Arguments:
             z             Z position of element's center relative to the
                           center of the enclosing group (mm).
             x             X position of element's center [default=0] (mm)
             y             Y position of element's center [default=0] (mm)
             parent        Parent element name (must accept children).
             rename        Name to use for this placement; '#' will be
                           substituted by the number of placements. If the
                           value begins with '+', it is replaced with the
                           parent's name.
             copies        Number of copies (placed sequentially along z).
             front         Nonzero to specify z for the front, not the center.
             rotation      Rotation of this object.
             coordinates   Coordinates: global or centerline (default=c).

polycone     construct a polycone with axis along z

             This is a direct interface to G4Polycone. For a solid polycone,
             omit innerRadius and it will be filled with zeroes. The number of
             entries in z, innerRadius, and outerRadius must be the same. Note
             that a polycone is placed at its z=0,r=0 point, which need not be
             its geometric center.

             Named Arguments (#=cannot be changed in place cmd):
             innerRadius   Comma-separated list of inner radii (mm) #
             outerRadius   Comma-separated list of outer radii (mm) #
             z             Comma-separated list of z positions (mm) #
             initialPhi    The initial Phi value (deg; 0 for all)
             finalPhi      The final Phi value (deg; 360 for all)
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the polycone
             color         The color of the polycone (''=invisible)
             kill          Set nonzero to kill every track that enters.

printf       prints track variables and expressions

             This is an interface to the C printf() function. The first
             positional argument is the format, and the following positional
             arguments are double expressions printed with the % fields in the
             format. Up to 16 expressions can be printed. The print is
             performed only if the 'required' expression is nonzero, as each
             track reaches one of the Z positions in the 'z' argument
             (centerline coordinates). Multiple printf commands with the same
             'file' will be combined into the file as tracks reach any of
             their Z positions. More than 16 expressions can be broken into
             multiple printf-s with noNewline=1 for all but the last.
             
             The following variables can be used in expressions:
                x,y,z,t,Px,Py,Pz
                PDGid,EvNum,TrkId,ParentId,Weight
                Bx,By,Bz, Ex,Ey,Ez
                tune (nonzero only for the Tune particle)
                reference (nonzero only for the Reference particle)
                beam (nonzero for any Beam particle)
             
             Each value in z and zloop can be an expression using double
             constants and the usual C operators and functions.
             
             Example:
              printf z=0 'Momentum is %.3f GeV/c' sqrt(Px*Px+Py*Py+Pz*Pz)/1000
             
             NOTE: if format begins 'Ptot=...' the parsing will think it is a
             named argument; put a space before the '=' to avoid that error.

             Named Arguments:
             z             Comma-separated list of Z positions for printing
                           (mm)
             zloop         Loop in z, first:last:incr (mm)
             require       logical expression for cutting (default=true)
             file          Output filename (default=stdout)
             filename      Synonym for file
             noNewline     set nonzero to omit final newline.
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

printfield   Prints E or B fields, or writes FieldMap file.

             Prints the value of the electromagnetic field components. For
             type=print, prints one component of the field in a 2-d table. Any
             coordinate plane can be printed (XY ... ZT). For type=grid or
             type=cylinder, writes a file in fieldmap format. Global
             coordinates are used. Units are Tesla for B and MV/meter for E.
             
             NOTE: This command cannot handle time dependency in the
             BLFieldMap file, but can in the printout.

             Named Arguments:
             type          print, grid, or cylinder.
             exit          Set nonzero to exit after printing field
             Arguments for type=print:
             field         The field to print (Bx,By,Bz,Ex,Ey,Ez,Btot,Etot).
             layout        Layout (RowCol) - 2 chars 'AB' each of {xyzt}.
             x             The starting value of x (mm).
             y             The starting value of y (mm).
             z             The starting value of z (mm).
             t             The starting value of time (ns).
             drow          The incr between points in each row (mm|ns).
             dcol          The incr between points in each column (mm|ns).
             nrow          The number of rows.
             ncol          The number of columns.
             Arguments for type=grid:
             file          Filename to write fieldmap to.
             comment       Comment for fieldmap.
             X0            Initial value of X (mm, default=0).
             Y0            Initial value of Y (mm, default=0).
             Z0            Initial value of Z (mm, default=0).
             nX            Number of points in X.
             nY            Number of points in Y.
             nZ            Number of points in Z.
             dX            Interval in X between points (mm).
             dY            Interval in Y between points (mm).
             dZ            Interval in Z between points (mm).
             Arguments for type=cylinder:
             file          Filename to write fieldmap to.
             comment       Comment for fieldmap.
             Z0            Initial value of Z (mm, default=0).
             nR            Number of points in R.
             dR            Interval in R between points (mm).
             nZ            Number of points in Z.
             dZ            Interval in Z between points (mm).

probefield   Prints B and E fields at specified points.

             Intended primarily for debugging. Prints Bx,By,Bz in Tesla, and
             Ex,Ey,Ez in MegaVolts/meter. Each input line is x,y,z,t separated
             by spaces or commas; omitted values are set to 0.0. Runs after
             the reference particle is tracked. Only global coordinates are
             used.

             Named Arguments:
             file          Filename for reading list of points (- = stdin)

profile      write beam profile information to a file

             This command accumulates the moments of the track distributions
             during the run, and at the end of run prints the mean, sigma,
             emittance, alpha, and beta (Twiss parameters) for the tracks.
             Each z position generates a line in the output file.
             
             Each value in z and zloop can be an expression using double
             constants and the usual C operators and functions.

             Named Arguments:
             z             Comma-separated list of Z positions for profiling
                           (mm)
             zloop         Loop in z, first:last:incr (mm)
             require       logical expression for cutting (default=true)
             particle      Name of particle to profile (default=mu+)
             file          Output filename (default=stdout)
             filename      Synonym for file
             coordinates   Coordinates: centerline or reference (default=c).

randomseed   control pseudo random number generator seeds

             This randomseed command controls the pseudo random number
             generator seed at the start of each event. The unnamed argument
             can be any of (case insensitive):
                EventNumber
                None
                Time
                Now
             EventNumber is the default and permits events to be re-run; None
             does not re-seed the PRNG at each event, and Time is like None
             after seeding with the time of day in microseconds; Now seeds the
             generator immediately with the value of the second argument (a
             long), and then acts like None.

reference    Define a reference particle.

             The reference particle is nominally headed in the +Z direction.
             Multiple reference particles can be defined, at different
             positions, momenta, particle types, etc. All coordinates are
             centerline coordinates.
             
             If desired, the referenceMomentum will be tuned to a specific
             value at a later z position in the beamline by giving values for
             tuneZ, and tuneMomentum; tolerance can be set if desired.
             
             Normally used in conjunction with a 'beam' command.

             Named Arguments:
             particle      Reference particle name
             beamX         Reference location in X (mm)
             beamY         Reference location in Y (mm)
             beamZ         Reference location in Z (mm)
             beamT         Reference time (ns)
             rotation      Rotation of the beam
             referenceMomentum Reference particle momentum (MeV/c)
             beamXp        Reference particle Xp (radians)
             beamYp        Reference particle Yp (radians)
             meanMomentum  Synonymn for referenceMomentum
             meanXp        Synonym for beamXp.
             meanYp        Synonym for beamYp.
             tuneZ         Z position for momentum tuning.
             tuneMomentum  Desired momentum for momentum tuning.
             tolerance     tolerance for momentum tuning (0.001 MeV/c).

showmaterial Set the colors for selected materials.

             Arguments are of the form 'name=1,1,0', where name is the name of
             a material, and 1,1,0 is the R,G,B value desired for its color
             ('' for invisible) Set hideOthers=1 to make all other materials
             invisible. BEWARE: 'Vacuum' and 'vacuum' are different materials,
             as are 'Iron' and 'Fe'.

solenoid     defines a solenoid (a coil and current)

             A solenoid is a coil and a current. If alternate is nonzero, then
             each placement of the solenoid (or an enclosing group) will flip
             the sign of current.

             Named Arguments (#=cannot be changed in place cmd):
             coilName      The name of the coil (must exist) #
             current       The current in the conductor (Amp/mm^2)
             color         The color of the solenoid (''=invisible).
             alternate     Set nonzero to alternate sign each placement.
             kill          Set nonzero to kill all tracks that hit the coil.
             coil          Synonym for coilName. #

sphere       construct a sphere (or section of one)

             This is a direct interface to G4Sphere.

             Named Arguments:
             innerRadius   The inside radius of the sphere (mm)
             outerRadius   The outer radius of the sphere (mm)
             initialPhi    The initial Phi value (deg; 0 for all)
             finalPhi      The final Phi value (deg; 360 for all)
             initialTheta  The initialTheta of the sphere (deg, 0 for all)
             finalTheta    The finalTheta of the sphere (deg, 180 for all)
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the sphere
             color         The color of the sphere (''=invisible)
             kill          Set nonzero to kill every track that enters.

start        Define the initial start of centerline coordinates.

             If used, this command must come before any other command that
             puts an element into the world or affects the centerline
             coordinates (place, beam, corner, cornerarc, and reference
             commands). This command may not always be needed, but it is
             needed to eliminate the ambiguities in the global to centerline
             coordinate transform, and when simulating a ring to ensure that
             sensible values of the centerline coordinates are used.
             
             Note that the radiusCut is important to reduce or eliminate
             ambiguities in the global to centerline coordinate transform. It
             can also be used to 'shield' the beamline to prevent particles
             from taking unusual paths around the outside of beamline
             elements.

             Named Arguments:
             x             The global x position of the start.
             y             The global y position of the start.
             z             The global z position of the start.
             initialZ      The initial centerline z value.
             rotation      The initial rotation of the centerline.
             radiusCut     The radius cut for the initial segment (mm).
             ring          Set nonzero to indicate a ring is present.

test         test random number seeds.

             Test

timentuple   Construct an NTuple of tracks at a specified time.

             A time NTuple generates an NTuple of every track at a specified
             global time. It uses a linear interpolation in the step that
             straddles the required time, so accuracy will suffer for large
             steps. The NTuple uses centerline coordinates, if available.
             NTuple Variables:
                 X,Y,Z (mm)
                 Px,Py,Pz (MeV/c)
                 T (ns)
                 PDGid (11=e-, 13=mu-, 22=gamma, 211=pi+, 2212=proton, ...)
                 EventNum (inexact above 16,777,215)
                 ParentID (0 => primary particle)
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             time          The global time of the sampling (ns).
             format        The NTuple format (see above for list).
             filename      The filename of the NTuple.
             file          Synonym for filename.
             require       Expression which must be nonzero to include the
                           track (default=1) #
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

torus        construct a torus.

             This is a direct interface to G4Torus. The major radius is in the
             X-Y plane, with phi=0 along X.

             Named Arguments:
             innerRadius   The inner radius of the torus (mm)
             outerRadius   The outer radius of the torus (mm)
             majorRadius   The major radius of the torus (mm)
             initialPhi    The initial phi around major radius (0 degrees).
             finalPhi      The final phi around major radius (360 degrees).
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the torus
             color         The color of the torus (''=invisible)
             kill          Set nonzero to kill every track that enters.

totalenergy  Print total energy deposited in selected volumes.

             At end of run, prints the total energy deposited in the selected
             volumes.
             
             Volume-name patterns are like UNIX filename patterns: e.g.
             '*[AB]*' matches any name containing an A or a B.

             Named Arguments:
             volumes       Comma-separated list of Volume-Name patterns (*)
             ancestors     Set nonzero to sum energy into all ancestor
                           (enclosing) volumess (0).
             enclosing     Synonym for ancestors.
             filename      Filename to write summary (stdout).
             file          Synonym for filename.

trace        Specifies tracing of tracks.

             Generates a separate NTuple for each track, with 1 row per step,
             unless oneNTuple is nonzero (in which case all tracks are put
             into a single NTuple). So format=ascii generates one file per
             track with names generated by the pattern in filename (first %d
             is replaced by event #, second %d is replaced by trackId); for
             oneNTuple, the default filename is AllTracks.txt.
             
             Note that without a trace command no traces are generated, so to
             trace just the tune and reference particles include a trace
             command with no arguments.
             
             In collective tracking mode, oneNTuple must be nonzero, and the
             entries will be generated only at collective steps (usually at a
             specified deltaT).
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             nTrace        Number of tracks to trace.
             format        Format of the NTuple (see above for list).
             oneNTuple     Nonzero to put all traces into a single NTuple.
             primaryOnly   Nonzero to trace only primary tracks.
             filename      Filename (Ev%dTrk%d.txt or AllTracks.txt).
             file          synonym for filename.
             require       Expression which must be nonzero to trace the track
                           (default=1) #
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

trackcolor   Alias for 'particlecolor'.


trackcuts    Specifies per-track cuts.

             Applied to each track before tracking, and at each step.

             Named Arguments:
             kill          List of particles to kill (comma separated).
             keep          List of particles to keep (kill all others).
             killSecondaries Set nonzero to kill all secondaries.
             kineticEnergyCut Minimum K.E. to track (0 MeV).
             kineticEnergyMax Maximum K.E. to track (infinite MeV).
             maxTime       Maximum lab time to track (1000000 ns).
             keepPrimaries Set nonzero to keep tracks with ParentID==0
                           regardless of other tests.
             steppingVerbose Set nonzero to print kills (defaults to parameter
                           value).

tracker      Defines a tracker.

             A tracker consists of several trackerplane-s and can fit a track
             to wire hits and times in the trackerplanes. This is a simple
             algorithm that does not handle backgrounds or multiple hits. It
             assumes that every track hits each trackerplane at most once. It
             is intended to be used to explore resolutions and the effects of
             survey errors. A tracker is a logical combination of its
             trackerplanes -- the tracker cannot be placed, but its
             trackerplanes must be placed into the system.
             
             The fitting algorithm used requires that all of its parameters
             have comparable scales, so the 'scaleX', 'scaleXp', 'scalePtot',
             and 'scaleT' arguments should be set to the approximate sigmas of
             the tracker. They should be within a factor of 10 of the actual
             values, but closer is better. At the end of fitting tracks a
             summary is printed that flags each parameter with 'RESCALE' if
             its scale is too different from its sigma (factor of 5 or more).
             
             NOTE: if the tracker cannot measure Ptot, then 'scalePtot' MUST
             be set to zero. If the tracker cannot measure T, then scaleT MUST
             be set to zero. Parameters with zero scales are held fixed at
             their true-track values.
             
             A tracker has 3 modes of operation:
                true      Each track of each event is written to a
                          TrackerHits NTuple if it hits all trackerplanes;
                          the NTuple includes both the true track values
                          and the individual wire hits for each trackerplane.
                fit       A track is fit to the wire hits from a previous
                          run, and the fit track is written to a TrackerFit
                          NTuple (includes true values).
                ignore    Any track is ignored.
             
             See the 'trackermode' command to control the mode of trackers.
             
             The TrackerHits NTuple written in 'true' mode contains:
               true_x, true_y, true_z, true_Px, true_Py, true_Pz, true_t, 
               true_PDGid, true_EventID, true_TrackID, true_ParentID, 
               true_Weight, ... plus 1 hit and 1 time per trackerplane.
               (the first 12 are the same as a BLTrackFile.)
             
             The TrackerFit Ntuple written in 'fit' mode contains:
               x, y, z, Px, Py, Pz, t, PDGid, EventID, TrackID, ParentID,
               Weight, ChisqPerDF, nDF, nHit, nIter, true_x, true_y, true_z, true_Px,
               true_Py, true_Pz, true_t.
             (the first 12 are from the fit and are the same as a
             BLTrackFile.)
             
             The parameters of the fit are: x, y, dxdz, dydz, Ptot, time. You
             must ensure that there are at least as many data points as free
             parameters (scaleT=0 fixes time; scalePtot=0 fixes Ptot). Each
             trackerplane with nonzero wireSpacing provides a data point; each
             trackerplane with nonzero sigmaT provides a data point;
             trackerplanes that measure both provide two data points. You must
             have enough trackerplanes to meet this requirement, and must set
             minHits large enough to meet it. The TrackerFit NTuple has a
             field nDF that gives the number of degrees of freedom for the
             fit, which is defined as (#DataPoints)-(#FreeParameters); it also
             has nHit which gives the number of trackerplane-s hit.
             
             Note the tracker can simulate survey errors -- see the
             'trackerplane' command for details (each plane can have different
             errors).
             
             Both the true and the fit tracks are reported at reportZ, which
             defaults to the Z position of the tracker.
             
             Note that beamlossntuple and newparticlentuple will get many
             entries per track when used in mode=fit -- the fit runs the track
             many times through the tracker (30-100, up to maxIter).
             
             NOTE: the trackermode command must preceed all tracker commands
             in the input file, and each tracker command must preceed all of
             its trackerplane commands. The trackerZ value must also preceed
             all trackerplane-s, but reportZ can be equal to or anywhere after
             trackerZ.
             
             Note that each trackerplane must have a unique name. This means
             you should either have a separate trackerplane command for each
             one (with unique name), or use the rename= argument to the place
             command (again with unique name). If you use groups for
             trackerplane-s, use rename=+ in the group.

             Named Arguments:
             trackerZ      The Z position of the tracker (Centerline, mm).
             reportZ       The Z position at which fit tracks are reported
                           (Centerline, mm, default=trackerZ).
             scaleX        Scale for X and Y (mm); default=1mm.
             scaleXp       Scale for dxdz and dydz (radians), default=0.001.
             scalePtot     Scale for Ptot (MeV), default=0. Set to 0.0 if
                           tracker cannot determine momentum.
             scaleT        Scale for t (ns), default=0. Set to 0.0 if tracker
                           cannot determine time.
             minPz         Minimum Pz for valid tracks (default=10 MeV/c)
             minHits       Minimum number of hits for fitting (# planes).
             tolerance     Track fitting tolerance (mm) (default=0.01 mm)
             maxIter       Maximum iterations during fitting (default=200).
             verbose       0=none, 1=result, 2=iterations, 3=detail,
                           default=0.
             format        Format of output NTuple.
             filename      Filename of output NTuple.
             for009        Set nonzero to also output TrackerFit as
                           FOR009.Dat.
             file          Synonym for filename.

trackermode  Sets mode for all trackers, manages track fitting.

             USAGE: trackermode mode [file=...]
              mode can be any of:
                 true     tracks true tracks (normal operation)
                 fit      fits tracks to previous 'true' output
                 both     does both true and fit at once
             'fit' requires the filename argument to be the output of a
             previous 'true' run (filename is ignored in other modes); each
             tracker processes all of its tracks in the file. 'true' mode
             simply denotes the standard G4beamline operation, and the
             simulated tracks are taken to be the 'true' tracks of the system;
             the response of the tracker(s) to these tracks is then simulated
             in 'fit' mode. 'both' tracks a 'true' event, and then a fit is
             peerformed in each tracker for which its first track hit all
             trackerplane-s.
             
             Note that in 'true' mode every track that hits all trackerplane-s
             is considered, but in 'both' mode only the first track of the
             event can be considered.
             
             One trackermode command controls the mode of all trackers. 'true'
             mode is normal G4beamline operation, and is the same as if no
             trackermode command was present.
             
             Note that the geometry of the system must not change between a
             'true' run and a 'fit' run. You can, however, make small
             variations in fields to explore how errors in setting them will
             affect the fitted tracks. The trackerplane command can simulate
             survey errors.
             
             NOTE: the trackermode command must preceed all tracker commands
             in the input file.

             Named Arguments:
             filename      Filename to read for fitting tracks.
             file          Synonym for filename.

trackerplane Construct a tracker plane.

             A trackerplane belongs to a specific tracker, and represents one
             measuring element of the tracker. While the term 'wire' is used,
             a trackerplane can model any planar measuring device that
             measures one dimension using equally spaced detectors that are
             either on or off (hit or not hit). A trackerplane can be circular
             (specify radius and possibly innerRadius) or rectangular (specify
             height and width).
             
             The wires are at angle theta from the vertical, so theta=0 means
             vertical wires that measure x; theta=90 means horizontal wires
             that measure y; theta=180 also measures x, but increasing x means
             decreasing wire #.
             
             Setting wireSpacing=0 means there are no wires, which is useful
             for a trackerplane that models a scintillator used for track
             timing (set sigmaTime >= 0 to indicate that).
             
             sigmaTime>0 means this plane can measure the time of the track
             with that resolution. A Gaussian random number is added to the
             true track's time at this plane when reading the TrackHit NTuple.
             
             Survey errors can be modeled using the err-arguments -- the
             values they specify are applied during trackfitting (but not for
             true tracks). errType: 'fixed' means error values given are the
             actual values, 'gaussian' means error values are the sigma of a
             Gaussian random number, 'rect' means error values are the
             half-width of a uniform random number. The random number is
             picked before the run begins; the random-number seed is set from
             the clock so every run will have different random errors.
             
             trackerplane has 3 modes:
               true    The trackerplane reports the hit wire and time to
                       the tracker;
               fit     The trackerplane reports the Chisq contribution of
                       the fit track distance to the true track's hit wire
                       center, plus survey errors (if any). The track time
                       also contributes to the chisq.
               ignore  Any track is ignored.

             Named Arguments:
             tracker       The tracker to which this plane belongs; REQUIRED.
             radius        The radius of the circular tracker plane (mm).
             innerRadius   The inner radius of the circular tracker plane (0
                           mm).
             height        The height of the rectangular tracker plane (mm).
             width         The width of the rectangular tracker plane (mm).
             length        The length of the tracker plane (mm).
             theta         Wire angle in X-Y plane (deg). 0=>x, 90=>y...
             wireSpacing   Wire spacing (mm).
             wireOffset    Wire # 0 offset (mm).
             errType       Error type: fixed, gaussian, rect.
             errTheta      Error in wire angle (deg).
             errSpacing    Error in wire spacing (mm).
             errOffset     Error in wire offset (mm).
             sigmaTime     Sigma for timing plane (ns), default=-1.
             maxStep       The maximum stepsize in the element (mm).
             material      The material of the tracker plane.
             color         The color of the tracker plane (''=invisible).

trap         construct a solid trapezoid with axis along z.

             This is a direct interface to G4Trap. The trapezoid is
             symmetrical left-right, but upper or lower width can be larger or
             smaller.

             Named Arguments:
             height        The height of the solid trapezoid (mm)
             upperWidth    The upper width solid trapezoid (mm)
             lowerWidth    The lowerWidth of the solid trapezoid (mm)
             Xul           X position of upper left corner (mm)
             Xur           X position of upper right corner (mm)
             Xll           X position of lower left corner (mm)
             Xlr           X position of lower right corner (mm)
             length        The length of the solid trapezoid (mm)
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the trapezoid
             color         The color of the trapezoid (''=invisible)
             kill          Set nonzero to kill every track that enters.

tube         Alias for 'tubs'.


tubs         construct a tube or cylinder with axis along z.

             This is a direct interface to G4Tubs, which can implement a tube
             or cylinder; either can subtend less than 360 degrees in phi.

             Named Arguments:
             innerRadius   The inside of the tube, 0.0 for cylinder (mm)
             outerRadius   The outer radius of the tube or cylinder (mm)
             initialPhi    The initial Phi value (deg; 0 for all)
             finalPhi      The final Phi value (deg; 360 for all)
             length        The length of the tube or cylinder (mm)
             maxStep       The maximum stepsize in the element (mm)
             material      The material of the tube or cylinder
             color         The color of the tube or cylinder (''=invisible)
             kill          Set nonzero to kill every track that enters.

tune         Tune a variable used as argument to other elements.

             This command samples the Tune particle track at z0, samples it
             again at z1, and varies its tune variable in order to bring the
             expression to zero. The tune variable is the first positional
             argument, and can be used in the argument expression(s) for
             tunable arguments located after z0. Due to the simple solver
             used, there should be an approximately linear dependence between
             the tune variable and the expression. This is suitable for tuning
             the By field of a genericbend or the maxGradient of a pillbox. At
             each solver step the saved Tune particle is re-started from z0,
             and when it reaches z1 the next step in the solver is taken.
             
             Note that multiple tune commands can be used together, as long as
             their z0-z1 regions are properly nested by at least 0.5 mm (i.e.
             each pair of regions must either not overlap at all, or one must
             be wholly contained in the other). This command can be
             complicated to use; see the User's Guide for more description and
             examples.

             Named Arguments:
             z0            The starting z position in CL coordinates.
             z1            The ending z position in CL coordinates.
             initial       Initial value of the variable 'name'
             initialStep   Initial step (0 to disable tuning)
             step          Synonym for initialStep
             start         An expression that must be nonzero to start tuning
                           (default=1)
             expr          The expression to tune to zero
             tolerance     The tolerance for expr to be zero
             maxIter       The maximum number of iterations (10).

usertrackfilter Construct a usertrackfilter that filters tracks via user code.

             ...

             Named Arguments:
             radius        The radius of the circular element (mm).
             innerRadius   The inner radius of the circular element (0 mm,
                           solid).
             height        The height of the rectangular element (mm).
             width         The width of the rectangular element (mm).
             length        The length of the element (mm).
             maxStep       The maximum stepsize in the element (mm).
             material      The material of the element.
             color         The color of the element (''=invisible).
             filterName    Name of the UserTrackFilter.
             filter        Synonym for filterName.
             init          Initialization string passed to user setup().

virtualdetector Construct a VirtualDetector that generates an NTuple.

             A VirtualDetector generates an NTuple of any track when it enters
             the physical volume of the VirtualDetector. It may be placed via
             multiple place commands (usually with a 'rename=det#' argument to
             distinguish the different placements). If material is not
             specified, it uses the material of the enclosing element. Every
             placement creates an individual NTuple. For a circular
             VirtualDetector give radius; for a rectangular one give height
             and width; length is usually left at 1 mm, but can be set to
             correspond to the length of a physical detector. The NTuple uses
             centerline coordinates, if available. NTuple Variables:
                 X,Y,Z (mm)
                 Px,Py,Pz (MeV/c)
                 T (ns)
                 PDGid (11=e-, 13=mu-, 22=gamma, 211=pi+, 2212=proton, ...)
                 EventNum (inexact above 16,777,215)
                 TrackID
                 ParentID (0 => primary particle)
                 Weight (defaults to 1.0)
             
             The NTuple of the virtualdetector can be included in an ntuple
             command by including a pattern that matches its name in the
             'detectors' argument to the ntuple. Note that must match the name
             as placed (i.e. includes rename=), not the name given to this
             command. The noSingles argument may be useful in this case to
             avoid a huge NTuple of singles.
             
             Note that secondari particles created in the virtualdetector will
             not get an atry until they have taken one step.
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             radius        The radius of the circular VirtualDetector (mm).
             innerRadius   The inner radius of the circular VirtualDetector (0
                           mm, solid).
             height        The height of the rectangular VirtualDetector (mm).
             width         The width of the rectangular VirtualDetector (mm).
             length        The length of the VirtualDetector (mm).
             maxStep       The maximum stepsize in the element (mm).
             material      The material of the VirtualDetector.
             color         The color of the VirtualDetector (''=invisible).
             noSingles     Set to 1 to omit the NTuple for singles.
             format        NTuple format: (see above for list).
             filename      filename ('' uses name to determine filename)
             file          alias for filename
             require       Expression which must be nonzero to include the
                           track (default=1) #
             referenceParticle Set to 1 to include the Reference Particle.
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).
             kill          Set to 1 kill all tracks after entering them into
                           NTuple(s).

zntuple      Generate an NTuple for each of a list of Z positions.

             Generates an NTuple like a virtualdetector, but without a
             physical volume. Tracks are forced to take steps within 2mm
             surrounding each desired z position, and they are interpolated to
             the desired z position. Each z position generates a separate
             NTuple named Z123 (etc.). z accepts a list of z positions, and
             zloop can generate a set of equally spaced z positions.
             
             Each value in z and zloop can be an expression using double
             constants and the usual C operators and functions.
             
             Valid Formats (ignore case): ascii bltrackfile dummy for009
             for009.dat root trackfile

             Named Arguments (#=cannot be changed in place cmd):
             z             Comma-separated list of Z positions (mm)
             zloop         Loop in z, first:last:incr (mm)
             noSingles     Set to 1 to omit the NTuple for singles.
             format        NTuple format (see above for list)
             file          Output filename ('' uses name to determine
                           filename)
             filename      Synonym for file
             require       Expression which must be nonzero to include the
                           track (default=1) #
             referenceParticle Set to 1 to include the Reference Particle.
             coordinates   Coordinates: global, centerline, or reference
                           (default=c).

List of Particles (QGSP)

             B+ PDGid=521
             B- PDGid=-521
             B0 PDGid=511
            Bs0 PDGid=531
             D+ PDGid=411
             D- PDGid=-411
             D0 PDGid=421
            Ds+ PDGid=431
            Ds- PDGid=-431
     GenericIon PDGid=0
            He3 PDGid=1000020030
          J/psi PDGid=443
       N(1440)+ PDGid=12212
       N(1440)0 PDGid=12112
       N(1520)+ PDGid=2124
       N(1520)0 PDGid=1214
       N(1535)+ PDGid=22212
       N(1535)0 PDGid=22112
       N(1650)+ PDGid=32212
       N(1650)0 PDGid=32112
       N(1675)+ PDGid=2216
       N(1675)0 PDGid=2116
       N(1680)+ PDGid=12216
       N(1680)0 PDGid=12116
       N(1700)+ PDGid=22124
       N(1700)0 PDGid=21214
       N(1710)+ PDGid=42212
       N(1710)0 PDGid=42112
       N(1720)+ PDGid=32124
       N(1720)0 PDGid=31214
       N(1900)+ PDGid=42124
       N(1900)0 PDGid=41214
       N(1990)+ PDGid=12218
       N(1990)0 PDGid=12118
       N(2090)+ PDGid=52214
       N(2090)0 PDGid=52114
       N(2190)+ PDGid=2128
       N(2190)0 PDGid=1218
       N(2220)+ PDGid=100002210
       N(2220)0 PDGid=100002110
       N(2250)+ PDGid=100012210
       N(2250)0 PDGid=100012110
      a0(1450)+ PDGid=10211
      a0(1450)- PDGid=-10211
      a0(1450)0 PDGid=10111
       a0(980)+ PDGid=9000211
       a0(980)- PDGid=-9000211
       a0(980)0 PDGid=9000111
      a1(1260)+ PDGid=20213
      a1(1260)- PDGid=-20213
      a1(1260)0 PDGid=20113
      a2(1320)+ PDGid=215
      a2(1320)- PDGid=-215
      a2(1320)0 PDGid=115
          alpha PDGid=1000020040
        anti_B0 PDGid=-511
       anti_Bs0 PDGid=-531
        anti_D0 PDGid=-421
  anti_N(1440)+ PDGid=-12212
  anti_N(1440)0 PDGid=-12112
  anti_N(1520)+ PDGid=-2124
  anti_N(1520)0 PDGid=-1214
  anti_N(1535)+ PDGid=-22212
  anti_N(1535)0 PDGid=-22112
  anti_N(1650)+ PDGid=-32212
  anti_N(1650)0 PDGid=-32112
  anti_N(1675)+ PDGid=-2216
  anti_N(1675)0 PDGid=-2116
  anti_N(1680)+ PDGid=-12216
  anti_N(1680)0 PDGid=-12116
  anti_N(1700)+ PDGid=-22124
  anti_N(1700)0 PDGid=-21214
  anti_N(1710)+ PDGid=-42212
  anti_N(1710)0 PDGid=-42112
  anti_N(1720)+ PDGid=-32124
  anti_N(1720)0 PDGid=-31214
  anti_N(1900)+ PDGid=-42124
  anti_N(1900)0 PDGid=-41214
  anti_N(1990)+ PDGid=-12218
  anti_N(1990)0 PDGid=-12118
  anti_N(2090)+ PDGid=-52214
  anti_N(2090)0 PDGid=-52114
  anti_N(2190)+ PDGid=-2128
  anti_N(2190)0 PDGid=-1218
  anti_N(2220)+ PDGid=-100002210
  anti_N(2220)0 PDGid=-100002110
  anti_N(2250)+ PDGid=-100012210
  anti_N(2250)0 PDGid=-100012110
   anti_b_quark PDGid=-5
   anti_c_quark PDGid=-4
   anti_d_quark PDGid=-1
anti_dd1_diquark PDGid=-1103
anti_delta(1600)+ PDGid=-32214
anti_delta(1600)++ PDGid=-32224
anti_delta(1600)- PDGid=-31114
anti_delta(1600)0 PDGid=-32114
anti_delta(1620)+ PDGid=-2122
anti_delta(1620)++ PDGid=-2222
anti_delta(1620)- PDGid=-1112
anti_delta(1620)0 PDGid=-1212
anti_delta(1700)+ PDGid=-12214
anti_delta(1700)++ PDGid=-12224
anti_delta(1700)- PDGid=-11114
anti_delta(1700)0 PDGid=-12114
anti_delta(1900)+ PDGid=-12122
anti_delta(1900)++ PDGid=-12222
anti_delta(1900)- PDGid=-11112
anti_delta(1900)0 PDGid=-11212
anti_delta(1905)+ PDGid=-2126
anti_delta(1905)++ PDGid=-2226
anti_delta(1905)- PDGid=-1116
anti_delta(1905)0 PDGid=-1216
anti_delta(1910)+ PDGid=-22122
anti_delta(1910)++ PDGid=-22222
anti_delta(1910)- PDGid=-21112
anti_delta(1910)0 PDGid=-21212
anti_delta(1920)+ PDGid=-22214
anti_delta(1920)++ PDGid=-22224
anti_delta(1920)- PDGid=-21114
anti_delta(1920)0 PDGid=-22114
anti_delta(1930)+ PDGid=-12126
anti_delta(1930)++ PDGid=-12226
anti_delta(1930)- PDGid=-11116
anti_delta(1930)0 PDGid=-11216
anti_delta(1950)+ PDGid=-2218
anti_delta(1950)++ PDGid=-2228
anti_delta(1950)- PDGid=-1118
anti_delta(1950)0 PDGid=-2118
    anti_delta+ PDGid=-2214
   anti_delta++ PDGid=-2224
    anti_delta- PDGid=-1114
    anti_delta0 PDGid=-2114
  anti_k(1460)0 PDGid=-100311
anti_k0_star(1430)0 PDGid=-10311
 anti_k1(1270)0 PDGid=-10313
 anti_k1(1400)0 PDGid=-20313
 anti_k2(1770)0 PDGid=-10315
anti_k2_star(1430)0 PDGid=-315
anti_k2_star(1980)0 PDGid=-100315
anti_k3_star(1780)0 PDGid=-317
anti_k_star(1410)0 PDGid=-100313
anti_k_star(1680)0 PDGid=-30313
   anti_k_star0 PDGid=-313
     anti_kaon0 PDGid=-311
    anti_lambda PDGid=-3122
anti_lambda(1405) PDGid=-13122
anti_lambda(1520) PDGid=-3124
anti_lambda(1600) PDGid=-23122
anti_lambda(1670) PDGid=-33122
anti_lambda(1690) PDGid=-13124
anti_lambda(1800) PDGid=-43122
anti_lambda(1810) PDGid=-53122
anti_lambda(1820) PDGid=-3126
anti_lambda(1830) PDGid=-13126
anti_lambda(1890) PDGid=-23124
anti_lambda(2100) PDGid=-3128
anti_lambda(2110) PDGid=-23126
 anti_lambda_c+ PDGid=-4122
   anti_neutron PDGid=-2112
      anti_nu_e PDGid=-12
     anti_nu_mu PDGid=-14
    anti_nu_tau PDGid=-16
    anti_omega- PDGid=-3334
  anti_omega_c0 PDGid=-4332
    anti_proton PDGid=-2212
   anti_s_quark PDGid=-3
anti_sd0_diquark PDGid=-3101
anti_sd1_diquark PDGid=-3103
anti_sigma(1385)+ PDGid=-3224
anti_sigma(1385)- PDGid=-3114
anti_sigma(1385)0 PDGid=-3214
anti_sigma(1660)+ PDGid=-13222
anti_sigma(1660)- PDGid=-13112
anti_sigma(1660)0 PDGid=-13212
anti_sigma(1670)+ PDGid=-13224
anti_sigma(1670)- PDGid=-13114
anti_sigma(1670)0 PDGid=-13214
anti_sigma(1750)+ PDGid=-23222
anti_sigma(1750)- PDGid=-23112
anti_sigma(1750)0 PDGid=-23212
anti_sigma(1775)+ PDGid=-3226
anti_sigma(1775)- PDGid=-3116
anti_sigma(1775)0 PDGid=-3216
anti_sigma(1915)+ PDGid=-13226
anti_sigma(1915)- PDGid=-13116
anti_sigma(1915)0 PDGid=-13216
anti_sigma(1940)+ PDGid=-23224
anti_sigma(1940)- PDGid=-23114
anti_sigma(1940)0 PDGid=-23214
anti_sigma(2030)+ PDGid=-3228
anti_sigma(2030)- PDGid=-3118
anti_sigma(2030)0 PDGid=-3218
    anti_sigma+ PDGid=-3222
    anti_sigma- PDGid=-3112
    anti_sigma0 PDGid=-3212
  anti_sigma_c+ PDGid=-4212
 anti_sigma_c++ PDGid=-4222
  anti_sigma_c0 PDGid=-4112
anti_ss1_diquark PDGid=-3303
anti_su0_diquark PDGid=-3201
anti_su1_diquark PDGid=-3203
   anti_t_quark PDGid=-6
   anti_u_quark PDGid=-2
anti_ud0_diquark PDGid=-2101
anti_ud1_diquark PDGid=-2103
anti_uu1_diquark PDGid=-2203
 anti_xi(1530)- PDGid=-3314
 anti_xi(1530)0 PDGid=-3324
 anti_xi(1690)- PDGid=-23314
 anti_xi(1690)0 PDGid=-23324
 anti_xi(1820)- PDGid=-13314
 anti_xi(1820)0 PDGid=-13324
 anti_xi(1950)- PDGid=-33314
 anti_xi(1950)0 PDGid=-33324
 anti_xi(2030)- PDGid=-13316
 anti_xi(2030)0 PDGid=-13326
       anti_xi- PDGid=-3312
       anti_xi0 PDGid=-3322
     anti_xi_c+ PDGid=-4232
     anti_xi_c0 PDGid=-4132
      b1(1235)+ PDGid=10213
      b1(1235)- PDGid=-10213
      b1(1235)0 PDGid=10113
        b_quark PDGid=5
        c_quark PDGid=4
chargedgeantino PDGid=0
        d_quark PDGid=1
    dd1_diquark PDGid=1103
   delta(1600)+ PDGid=32214
  delta(1600)++ PDGid=32224
   delta(1600)- PDGid=31114
   delta(1600)0 PDGid=32114
   delta(1620)+ PDGid=2122
  delta(1620)++ PDGid=2222
   delta(1620)- PDGid=1112
   delta(1620)0 PDGid=1212
   delta(1700)+ PDGid=12214
  delta(1700)++ PDGid=12224
   delta(1700)- PDGid=11114
   delta(1700)0 PDGid=12114
   delta(1900)+ PDGid=12122
  delta(1900)++ PDGid=12222
   delta(1900)- PDGid=11112
   delta(1900)0 PDGid=11212
   delta(1905)+ PDGid=2126
  delta(1905)++ PDGid=2226
   delta(1905)- PDGid=1116
   delta(1905)0 PDGid=1216
   delta(1910)+ PDGid=22122
  delta(1910)++ PDGid=22222
   delta(1910)- PDGid=21112
   delta(1910)0 PDGid=21212
   delta(1920)+ PDGid=22214
  delta(1920)++ PDGid=22224
   delta(1920)- PDGid=21114
   delta(1920)0 PDGid=22114
   delta(1930)+ PDGid=12126
  delta(1930)++ PDGid=12226
   delta(1930)- PDGid=11116
   delta(1930)0 PDGid=11216
   delta(1950)+ PDGid=2218
  delta(1950)++ PDGid=2228
   delta(1950)- PDGid=1118
   delta(1950)0 PDGid=2118
         delta+ PDGid=2214
        delta++ PDGid=2224
         delta- PDGid=1114
         delta0 PDGid=2114
       deuteron PDGid=1000010020
             e+ PDGid=-11
             e- PDGid=11
            eta PDGid=221
      eta(1295) PDGid=100221
      eta(1405) PDGid=9020221
      eta(1475) PDGid=100331
     eta2(1645) PDGid=10225
     eta2(1870) PDGid=10335
      eta_prime PDGid=331
       f0(1370) PDGid=10221
       f0(1500) PDGid=9030221
       f0(1710) PDGid=10331
        f0(600) PDGid=9000221
        f0(980) PDGid=9010221
       f1(1285) PDGid=20223
       f1(1420) PDGid=20333
       f2(1270) PDGid=225
       f2(1810) PDGid=9030225
       f2(2010) PDGid=9060225
 f2_prime(1525) PDGid=335
          gamma PDGid=22
       geantino PDGid=0
          gluon PDGid=21
       h1(1170) PDGid=10223
       h1(1380) PDGid=10333
       k(1460)+ PDGid=100321
       k(1460)- PDGid=-100321
       k(1460)0 PDGid=100311
 k0_star(1430)+ PDGid=10321
 k0_star(1430)- PDGid=-10321
 k0_star(1430)0 PDGid=10311
      k1(1270)+ PDGid=10323
      k1(1270)- PDGid=-10323
      k1(1270)0 PDGid=10313
      k1(1400)+ PDGid=20323
      k1(1400)- PDGid=-20323
      k1(1400)0 PDGid=20313
      k2(1770)+ PDGid=10325
      k2(1770)- PDGid=-10325
      k2(1770)0 PDGid=10315
 k2_star(1430)+ PDGid=325
 k2_star(1430)- PDGid=-325
 k2_star(1430)0 PDGid=315
 k2_star(1980)+ PDGid=100325
 k2_star(1980)- PDGid=-100325
 k2_star(1980)0 PDGid=100315
 k3_star(1780)+ PDGid=327
 k3_star(1780)- PDGid=-327
 k3_star(1780)0 PDGid=317
  k_star(1410)+ PDGid=100323
  k_star(1410)- PDGid=-100323
  k_star(1410)0 PDGid=100313
  k_star(1680)+ PDGid=30323
  k_star(1680)- PDGid=-30323
  k_star(1680)0 PDGid=30313
        k_star+ PDGid=323
        k_star- PDGid=-323
        k_star0 PDGid=313
          kaon+ PDGid=321
          kaon- PDGid=-321
          kaon0 PDGid=311
         kaon0L PDGid=130
         kaon0S PDGid=310
         lambda PDGid=3122
   lambda(1405) PDGid=13122
   lambda(1520) PDGid=3124
   lambda(1600) PDGid=23122
   lambda(1670) PDGid=33122
   lambda(1690) PDGid=13124
   lambda(1800) PDGid=43122
   lambda(1810) PDGid=53122
   lambda(1820) PDGid=3126
   lambda(1830) PDGid=13126
   lambda(1890) PDGid=23124
   lambda(2100) PDGid=3128
   lambda(2110) PDGid=23126
      lambda_c+ PDGid=4122
            mu+ PDGid=-13
            mu- PDGid=13
        neutron PDGid=2112
           nu_e PDGid=12
          nu_mu PDGid=14
         nu_tau PDGid=16
          omega PDGid=223
    omega(1420) PDGid=100223
    omega(1650) PDGid=30223
         omega- PDGid=3334
   omega3(1670) PDGid=227
       omega_c0 PDGid=4332
  opticalphoton PDGid=0
            phi PDGid=333
      phi(1680) PDGid=100333
     phi3(1850) PDGid=337
      pi(1300)+ PDGid=100211
      pi(1300)- PDGid=-100211
      pi(1300)0 PDGid=100111
            pi+ PDGid=211
            pi- PDGid=-211
            pi0 PDGid=111
     pi2(1670)+ PDGid=10215
     pi2(1670)- PDGid=-10215
     pi2(1670)0 PDGid=10115
         proton PDGid=2212
     rho(1450)+ PDGid=100213
     rho(1450)- PDGid=-100213
     rho(1450)0 PDGid=100113
     rho(1700)+ PDGid=30213
     rho(1700)- PDGid=-30213
     rho(1700)0 PDGid=30113
           rho+ PDGid=213
           rho- PDGid=-213
           rho0 PDGid=113
    rho3(1690)+ PDGid=217
    rho3(1690)- PDGid=-217
    rho3(1690)0 PDGid=117
        s_quark PDGid=3
    sd0_diquark PDGid=3101
    sd1_diquark PDGid=3103
   sigma(1385)+ PDGid=3224
   sigma(1385)- PDGid=3114
   sigma(1385)0 PDGid=3214
   sigma(1660)+ PDGid=13222
   sigma(1660)- PDGid=13112
   sigma(1660)0 PDGid=13212
   sigma(1670)+ PDGid=13224
   sigma(1670)- PDGid=13114
   sigma(1670)0 PDGid=13214
   sigma(1750)+ PDGid=23222
   sigma(1750)- PDGid=23112
   sigma(1750)0 PDGid=23212
   sigma(1775)+ PDGid=3226
   sigma(1775)- PDGid=3116
   sigma(1775)0 PDGid=3216
   sigma(1915)+ PDGid=13226
   sigma(1915)- PDGid=13116
   sigma(1915)0 PDGid=13216
   sigma(1940)+ PDGid=23224
   sigma(1940)- PDGid=23114
   sigma(1940)0 PDGid=23214
   sigma(2030)+ PDGid=3228
   sigma(2030)- PDGid=3118
   sigma(2030)0 PDGid=3218
         sigma+ PDGid=3222
         sigma- PDGid=3112
         sigma0 PDGid=3212
       sigma_c+ PDGid=4212
      sigma_c++ PDGid=4222
       sigma_c0 PDGid=4112
    ss1_diquark PDGid=3303
    su0_diquark PDGid=3201
    su1_diquark PDGid=3203
        t_quark PDGid=6
           tau+ PDGid=-15
           tau- PDGid=15
         triton PDGid=1000010030
        u_quark PDGid=2
    ud0_diquark PDGid=2101
    ud1_diquark PDGid=2103
    uu1_diquark PDGid=2203
      xi(1530)- PDGid=3314
      xi(1530)0 PDGid=3324
      xi(1690)- PDGid=23314
      xi(1690)0 PDGid=23324
      xi(1820)- PDGid=13314
      xi(1820)0 PDGid=13324
      xi(1950)- PDGid=33314
      xi(1950)0 PDGid=33324
      xi(2030)- PDGid=13316
      xi(2030)0 PDGid=13326
            xi- PDGid=3312
            xi0 PDGid=3322
          xi_c+ PDGid=4232
          xi_c0 PDGid=4132