next up previous contents
Next: 3.4 Patch SGVTRKER : Up: 3. Structure of SGV. Previous: 3.2 Patch SGVEVSIM :   Contents

3.3 Patch SGVDETSIM : Detector simulation

This patch contains the code for detector simulation. The event generated and stored in /LUJETS/ is followed through the detector to simulate the response, either as resulting smeared track parameters (with errors), or as patterns of hits in the detector elements (or a mixture of the two).

$\bullet$
SUBROUTINE ZDETSI(I, STEER, IERR) : DETector SImulation
CALLED ROUTINE(S):
ZTCNBL (decription 4.4.13, follow 3.4)

(To get number of layers in barrel.)

ZTPNBL (decription 4.4.14, follow 3.4)

(To get number of layers in forward.)

ZTTDST (decription 4.4.9, follow 3.4)

(To Follow Track helix a DiSTance)

ZDTRSP (decription 4.3.3, follow 3.3)

(To TRanSPose a matrix.)

ZDDHIT (decription 4.3.7, follow 3.3)

(To get Detector HITs (if VDSIM))

ZAMVAL (decription 4.6.9, follow 3.6)

(To get Mass VALue from particle code (If VDSIM patchy sel:ed))

ZTTRAK (decription 4.4.1, follow 3.4)

(To TRAcK a particle through the detector)

ZDKLCL (decription 4.3.8, follow 3.3)

(To KiLl Calorimter Layers)

ZDBREM (decription 4.3.9, follow 3.3)

(To generate BREMsstrahlung)

ZTERRM (decription 4.4.2, follow 3.4)

(To calculate ERRor Matrix)

ZDSMTP (decription 4.3.6, follow 3.3)

(To SMear Track Parameters)

PXTCPX (decription 4.7.4, follow 3.7)

(To transform Track parameters on Cylinder to PXpypz)

ZDEFFI (decription 4.3.4, follow 3.3)

(To simulate Detection EFFIciency.)

ZDIDEN (decription 4.3.5, follow 3.3)

(To simulate particle IDENtification.)

ZTFOLN (decription 4.4.3, follow 3.4)

(To FOLlow Neutral particle)

ZDPAIR (decription 4.3.10, follow 3.3)

(To generate PAIR production)

ZDCALO (decription 4.3.17, follow 3.3)

(To do CALOrimeter simulation.)

VZERO,VSCALE,UCOPY,VMOD,VDOTN
(CERNLIB routines)
KLU
(JETSET routine.)

$\bullet$
SUBROUTINE ZDORD(MODE, STEER) : Detector simulation ORDers
CALLED ROUTINE(S):
ZTINI (decription 4.4.55, follow 3.4)

(To do Tracking package Initialisation.)

FFKEY
(CERNLIB FFREAD routine.)

$\bullet$
SUBROUTINE ZDTRSP(X, IXF, JXF, IXL, JXL, X1DIM, Y, IYF, JYF, Y1DIM) : TRanSPose
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDEFFI(SEEN, PP, LAYLIS) : Detector EFFIciency
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDIDEN(CDSEEN, PP, CODE, LAYLIS) : Detector EFFIciency
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDSMTP( TYPSUR, CGIVEN, TPAR, ERRARR, PAR, ERROR) : SMear Track Parameters
CALLED ROUTINE(S):
ZUGAUS (decription 4.7.13, follow 3.7)

(To get a GAUSsian random numbers.)

ZUI2PI (decription 4.7.2, follow 3.7)

(To bring angle In the range 0 to 2PI.)

ZUINPI (decription 4.7.3, follow 3.7)

(To bring angle IN the range 0 to PI.)

ZTINVM (decription 4.4.11, follow 3.4)

(To invert a matrix (5X5))

VZERO,UCOPY,TRCHLU
(CERNLIB routines)

$\bullet$
SUBROUTINE ZDDHIT(PIN, VIN, MSEEN, IGEOM, NLAY, ILMV, POUT, XOUT, DOTKR, TKRP, TKR, RFLOC, Z, MODNR, IHIT, NNEW, NEWTRK, LAYLIS ) : Make DETector hit PoiNTs
CALLED ROUTINE(S):
ZTCRAD (decription 4.4.17, follow 3.4)

(To get Cylinder RADius.)

ZTCLEN (decription 4.4.18, follow 3.4)

(To get Cylinder LENgth.)

ZTCERF (decription 4.4.22, follow 3.4)

(To get Cylinder Error in R-Fi)

ZTCEZ (decription 4.4.23, follow 3.4)

(To get Cylinder Error in Z)

ZTTISC (decription 4.4.5, follow 3.4)

(To get TRacK InterSeCtions with cylinders.)

ZULETD (decription 4.7.1, follow 3.7)

(To get multiple scattering using Lynch ET Dahl's formulae.)

ZUGAUS (decription 4.7.13, follow 3.7)

(To get a GAUSsian random number.)

ZUI2PI (decription 4.7.2, follow 3.7)

(To bring an angle In the range 0 to 2 PI.)

PXTCPX (decription 4.7.4, follow 3.7)

(To transform Track parameters on Cylinder to PXpypz)

VZERO,UCOPY,VDOT
(CERNLIB routines)

$\bullet$
SUBROUTINE ZDKLCL( LAYLIS) : KiLl Calorimter Layers
CALLED ROUTINE(S):
ZTISCB (decription 4.4.26, follow 3.4)

(To check if layer IS a Calorimeter (Barrel))

ZTISCF (decription 4.4.27, follow 3.4)

(To check if layer IS a Calorimeter (Forward))

ZDELLY (decription 4.3.16, follow 3.3)

(To DELete LaYers)

$\bullet$
SUBROUTINE ZDBREM(LAYLIS, PP, VERT, PMINBR, PTLOSLIM, IPRF, IPZ, PHIIP, KKK, IGEO, DST, NNEW) generate BREMsstrahlung
CALLED ROUTINE(S):
ZTTINF (decription 4.4.48, follow 3.4)

(To get Track INFo at a layer)

ZTPX0 (decription 4.4.45, follow 3.4)

(To get number of X0:s of a plane)

ZTCX0 (decription 4.4.44, follow 3.4)

(To get number of X0:s of a cylinder)

ZTPANB (decription 4.4.47, follow 3.4)

(To get Plane Atom number)

ZTCANB (decription 4.4.46, follow 3.4)

(To get Cylinder Atom number)

ZDLBRM (decription 4.3.11, follow 3.3)

(To get Lambda for BRemsStrahlung)

ZTTISC (decription 4.4.5, follow 3.4)

(To get TRacK InterSections with Cylinder.)

ZTTISP (decription 4.4.7, follow 3.4)

(To get TRacK InterSections with Plane.)

ZDMBRM (decription 4.3.13, follow 3.3)

(To Make a BReMs gamma)

ZDELLY (decription 4.3.16, follow 3.3)

(To DELete LaYers)

VMOD
(CERNLIB routine)

$\bullet$
SUBROUTINE ZDPAIR(LAYLIS, PP, PMINPA, KKK, DST, NNEW) generate PAIR production
CALLED ROUTINE(S):
ZTTINF (decription 4.4.48, follow 3.4)

(To get Track INFo at a layer)

ZTPX0 (decription 4.4.45, follow 3.4)

(To get number of X0:s of a plane)

ZTCX0 (decription 4.4.44, follow 3.4)

(To get number of X0:s of a cylinder)

ZTPANB (decription 4.4.47, follow 3.4)

(To get Plane Atom number)

ZTCANB (decription 4.4.46, follow 3.4)

(To get Cylinder Atom number)

ZDLPAR (decription 4.3.12, follow 3.3)

(To get Lambda for PAiR-production)

ZDMPAR (decription 4.3.14, follow 3.3)

(To Make a e+e- PAiR)

ZDELLY (decription 4.3.16, follow 3.3)

(To DELete LaYers)

VMOD
(CERNLIB routine)

$\bullet$
SUBROUTINE ZDLBRM(MOM, PMINBR, ATMNB, LAMBDA) : Lambda for BRemsStrahlung
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDLPAR(EGAMMA, ATMNB, LAMBDA) : Lambda for PAiR-production
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDMBRM(P, PMINBR, ATMNB, NEWTRK, ERROR) : Make BReMsstrahlung
CALLED ROUTINE(S):
ZURECT (decription 4.7.14, follow 3.7)

(To get a RECTangular random-number)

ZDROPA (decription 4.3.15, follow 3.3)

(To Rotate the generated Gamma-Electron Pair.)

$\bullet$
SUBROUTINE ZDMPAR(P, ATMNB, NEWTRK, ERROR) : Make e+e- PAiR
CALLED ROUTINE(S):
ZURECT (decription 4.7.14, follow 3.7)

(To get a RECTangular random-number)

ZDROPA (decription 4.3.15, follow 3.3)

(To ROtate the generated PAir.)

$\bullet$
SUBROUTINE ZDROPA(FIRST, PB, ABSPA, COSTHE, SINTHE, POUT) : ROtate PAir
CALLED ROUTINE(S):
ZURECT (decription 4.7.14, follow 3.7)

(To get a RECTangular random-number)

VDOT,VSCALE,VUNIT
(CERNLIB routines)

$\bullet$
SUBROUTINE ZDELLY(REFPSD, LL, LAYLIS) : DELete LaYers
CALLED ROUTINE(S):
none

$\bullet$
SUBROUTINE ZDCALO(IGEOM, PP, VERT, DSTMAX, CODE, SHOAX, PSMEAR, ESMEAR, CDSEEN, TCAL, IERR) : CALOrimeter simulation
CALLED ROUTINE(S):
ZUGAUS (decription 4.7.13, follow 3.7)

(To get a GAUSsian random number.)

ZURECT (decription 4.7.14, follow 3.7)

(To get a RECTANGULAR random number.)

ZTCALO (decription 4.4.4, follow 3.4)

(To Track a particle to intersections with CALOrimeters)

ZTCEFF (decription 4.4.36, follow 3.4)

(To get Calorimeter EFFeiciency)

ZTCTHR (decription 4.4.35, follow 3.4)

(To get Calorimeter THResholds)

ZTCRES (decription 4.4.37, follow 3.4)

(To get Calorimeter resolution )

ZTCMSI (decription 4.4.40, follow 3.4)

(To get Calorimeter Mip ave. SIgnal)

ZTCMWI (decription 4.4.41, follow 3.4)

(To get Calorimeter Mip resp. WIdth)

ZTCTHM (decription 4.4.38, follow 3.4)

(To get Calorimeter THReshold for Mips)

ZTCEFM (decription 4.4.38, follow 3.4)

(To get Calorimeter EFficiency for Mips)

VMOD
(CERNLIB routine)

$\bullet$
SUBROUTINE ZDCLSA (ICAL,CTYP,SHOAXT,SHOAX) : CaLorimeter Shower Axis
CALLED ROUTINE(S):
ZUGAUS (decription 4.7.13, follow 3.7)

(To get a GAUSsian random number.)

ZUI2PI (decription 4.7.2, follow 3.7)

(To bring angle In the range 0 to 2PI.)

ZUINPI (decription 4.7.3, follow 3.7)

(To bring angle IN the range 0 to PI.)

ZUINPI (decription 4.7.3, follow 3.7)

(To bring angle IN the range 0 to PI.)

ZTCSMC (decription 4.4.30, follow 3.4)

(To get Calorimeter Shower Meassurement Code)

ZTCSDE (decription 4.4.31, follow 3.4)

(To get Calorimeter Shower Direction Errors)

ZTCMOS (decription 4.4.34, follow 3.4)

(To get Calorimeter MOdule Size)

ZDCCVL (decription 4.3.19, follow 3.3)

(To get Calorimeter Cell VaLue)

ZDCCCC (decription 4.3.20, follow 3.3)

(To get Calorimeter Cell Centre Coordinates)

$\bullet$
SUBROUTINE ZDCCVL(ICAL,CTYP,SHOAX,VAL) : Calorimeter Cell VaLue
CALLED ROUTINE(S):
ZTCSMC (decription 4.4.30, follow 3.4)

(To get Calorimeter Shower Meassurement Code)

ZTCRAD (decription 4.4.17, follow 3.4)

(To get Cylinder RADius.)

$\bullet$
SUBROUTINE ZDCCCC(ICAL,CTYP,CELLCENT,SHOAX) : Calorimeter Cell Centre Coordinates
CALLED ROUTINE(S):
ZTCSMC (decription 4.4.30, follow 3.4)

(To get Calorimeter Shower Meassurement Code)

ZTCRAD (decription 4.4.17, follow 3.4)

(To get Cylinder RADius.)

ZTPLAZ (decription 4.4.20, follow 3.4)

(To get a PLAne Z)

VMOD
(CERNLIB routine)


next up previous contents
Next: 3.4 Patch SGVTRKER : Up: 3. Structure of SGV. Previous: 3.2 Patch SGVEVSIM :   Contents
Mikael Berggren 2003-03-27