Calling sequence:
call gep_* ( irq_typ, iprm_typ, iprm_opr, isrf_base, prm_data, xyz_de, uvw_de )
Parameters (all input only)
irq_typ Request type: see mnemonics Request Types (will
only be _NEXT, _NEAR or _PICK).
iprm_typ Primitive type: see mnenomics Primitive Types.
iprm_opr Primitive operation: see mnemonics flags.
isrf_base Base number for surfaces: add to internal surface
number before storing in gep_current.inc
prm_data Primitive data: see Companion/Titles Banks/GEDS
xyz_de Particle position in detector element coordinates
uvw_de Particle direction cosines in detector element coordinates.
*IF GE_DEBUG THEN Check request type, primitive type and operation. As far as reasonable, check primitive data. *ENDIF
call geb_add_gep( irq_typ, iprm_opr )
Notes
The following section lists the primitives available and their characteristics. The data words for each refer to the primitive data section of a GEDS bank and the location of the origin of the primitive coordinate system is also specified. On the diagrams the origin is marked by a cross within a circle, the surface numbers (used within the geometry code) by S1, S2 etc. and the lengths and angles corresponding to data words by simple numbers. See section 13 for a set of formulae that underpin the implimentation of these primitives.
Sphere |
Notes:- None needed
Cylinder |
Notes:- None needed.
Elliptical Cylinder |
Notes:- None needed
Block |
Notes:- None needed
Octahedron |
Notes:- None needed
Half Torus |
Notes:- None needed
Half Elliptical Torus |
Notes:- None needed
Half Square Torus |
Notes:- None needed
Spherical Tile |
Notes:- The spherical tile is a section of a sphere between two constant azimuthal and two constant polar angles. the polar angles are taken from the XY plane, however, not from the Z axis.
Frustum of Cone |
Notes:- The functionality of the code requires
that the radius of the top plane be greather than the radius
of the bottom plane i.e. . The desired orientation
of the primitive is achived with the rotation matrix.