id_pos_types


                 Monte Carlo Event Position Distribution Codes
                 =============================================
 
The different types of position distributions used in INGENR and MCG_GENERATOR
are:
 
    ID      Mnemonic     Description
    --      --------     -----------
 
    -n       none        Give this particle the same position as particle n
                         (particle n must have already been generated)
    10       IDDPNT      Generate all events from a point x,y,z
    20       IDDSHL      Generate events in a shell from rmin to rmax
    30       IDDLIN      Generate events along a line connecting two points.
    40       IDDREG      Generate events within a certain region, a group of
                         regions, or a group of regions with adjustable weights.
    50       IDDEX1      Generate event with an exponentially decreasing
                         probability away from a previous particle.
    60       IDDUSR      Generate positions using user specified distribution.
    70       IDDCFX      Cosmic ray spectrum.
    80       IDDUMB      Generate an exponential distribution down the umbilical.
    90       IDDAVS      Generate events on the surface of the spherical part
                         of the AV, with the numbers inside and outside
                         proportional to the areas of the respective
                         surfaces.  "On the surface" is actually 0.02 cm
                         into the D2O or H2O.
   100       IDDPL       Generate events with directions taken from a MCPL bank
                         (see MCPL bank).
   110       IDDNCDR     Generate events on a circular locus of radius r around NCD
                         anode. The NCD string number, along with the z position, are 
			 specified by the user. 
   130       IDDLSB      Generate events on a non-pointlike laserball source, randomly 
                         picking the position on a sphere of radius r and center xyz.
   140       IDDDSK      Generate events on the surface of a disk.			 
   150       IDDMSW      Generate events in the detector distributed as the 
                         interaction targets. Only to be used with the MSW 
                         code.
   170       IDDLSBA     Generate events on a spherical laserball source with
                         distribution weighted by laserball mask and grid
                         coefficients as read from LASR bank
                         Model A ascribes anisotropies to distribution of both
                         positions and directions
                         - must be used with corresponding DIR type
   180       IDDLSBB     As above, but Model B ascribes anisotropies to distribution
                         of positions only
                         - must be used with corresponding DIR type
   190       IDDLSBC     As above, but Model C ascribes anisotropies to distribution
                         of directions only
                         - must be used with corresponding DIR type

Notes:  All of these are implemented.
 
For the different distributions there are different input parameters to be
stored in the POS_PARAM array.  These are:
 
 POS Type   Param. #   Description
 --------   --------   -----------
 
    10       1,2,3     x,y,z in detector coordinates (cm) for point.
    20       1,2       rmin,rmax for the selected shell
    30       1,2,3     x1,y1,z1 (coordinates of a point at one end of the line)
             4,5,6     x2,y2,z2 (coordinates of the point at the other end)
    40       1         Number of regions to select point from (<= 4)
             2         Region number of the first region.
             3         Weight to assign this region (otherwise by volume).
             4,5 etc.  Region number and weight of second region, etc.
    50       1         exponential decay distance
             2         number of particle to distribute around
    60       ?         User defined.
    70       none 
    80       1         Slope (cm) in the exponent.
    90       none
   100       none
   110       1         NCD string number. If < 1 or >40 picks one at random. 
             2         radial distance (b) from anode:-
                         If b>0,     b is the radius.
                         If -1<b<0,  a random position within the anode is picked (from a uniform distribution)
                         If -2<b<-1, a random position in the counter is picked.
                         If -3<b<-2, a random position from the inner nickel surface is picked, 
                                        according to an exponential distribution with mean e.
                         If -4<b<-3, same as above, except mean depth comes from the NCSP bank according to string number.
	     3         A switch (c):- 
                         If c=0, a random z position is chosen.
                         If c=1, the z position is set to d.
                         If c=2, a position within d cm of the counter ends are chosen.
	     4         z position.
   130       1,2,3     x,y,z of laserball centre.
             4         Radius of laserball.
   140       1,2,3     x,y,z of disk centre.
             4         Radius of disk.
             5         Theta (rotation about y-axis)
             6         Phi (rotation about z-axis)
   150       none
   170       1,2,3     x,y,z of laserball centre
             4         Radius of laserball
             5         azimuthal orientation of laserball SWNE=>0123
   180       1,2,3     x,y,z of laserball centre
             4         Radius of laserball
             5         azimuthal orientation of laserball SWNE=>0123
   190       1,2,3     x,y,z of laserball centre
             4         Radius of laserball
             5         azimuthal orientation of laserball SWNE=>0123

NOTE:  The parameter MISC2_PARAM also plays an important role in the position
       selection.  This tells the program what region the point selected is in.
       If it is set to -1 the program will figure it out for itself.  If it is
       set to a positive number that will be assumed to be the region the point
       is generated in.  Therefore if you are generating from a point, say, you
       can set the 7th entry in the MISC2_PARAM bank to the region number (for
       the D2O sphere it is 1000000., remember the MISC2_PARAM array is floating
       point).  It is safer, although marginally slower, to always set this to
       -1.
 

Go Back to the Snoman Companion Top Page