Every Detector systems RCP file must have an RCP ARRAY named DETECTOR_LIST. Here we show the list as was defined in CALORIMETER.RCP used for the muon collider detector simulation. It illustrates the general principles however.
\ARRAY DETECTOR_LIST'DET_CCAL' !CENTRAL CALORIMETER'DET_ECAL' !END CALORIMETER\END
This array declares to MU_GEANT the detector sets to be defined in this RCP
file. In the calorimeter, we choose to define two detector sets called DET_CCAL
and DET_ECAL for the CENTRAL and END calorimeter respectively. The detector set
DET_CCAL is specified in an RCP ARRAY called DET_CAL as shown below.
The parameters in this array closely follow the arguments in the GEANT
subroutine call GSDET. The first argument CHSET defines the set of detectors, in
this example CCAL. NWHI and NWDI are the initial sizes of the HITS and DIGI
banks in our example both set equal to 1024. This is followed by the number of
detectors belonging to this set, namely 5. This is followed by the parameters
IDTYPE, CHDET, NV,CHNMSMV(1:NV) and NBITSV which are documented in GSDET. The integer IDTYPE provides a quick way of identifying the
detector and follows the same convention in range allowed as rotation
matrices. This is followed by a character*4 variable CHIT which tells
MU_GEANT that the HITS definition for this detector is contained in an RCP
ARRAY CHIT.
\ARRAY DET_CCAL!!Arguments for multi-calls to GSDET! CHSET NWHI NWDI 'CCAL' 1024 1024! Number of detectors belonging to this CHSET 5! IDTYPE CHDET NV CHNSMV(1:nv) NBITSV Hits definition pointer3001 'CMP1' 3 'CCEM' 'CEM1' 'CMP1' 16 'CHIT'3002 'CMP2' 3 'CCEM' 'CEM2' 'CMP2' 16 'CHIT'3003 'CMP3' 3 'CCEM' 'CEM3' 'CMP3' 16 'CHIT'3004 'CMP4' 3 'CCEM' 'CEM4' 'CMP4' 16 'CHIT'3005 'CFHP' 3 'CCFH' 'CFHR' 'CFHP' 16 'CHIT'\END
\ARRAY CHIT!!HITS DEFINITION. Arguments for GSDETH! NH6!CHNAMH(1:NH) followed by NH values of NBITSH, ORIG and FACT 'TOFN' 'SLEN' 'DEDX' 'X' 'Y' 'Z' 32 32 32 32 32 32 0.0 0.0 0.0 1.E4 1.E4 1.E4 1.E5 1.E5 1.E5 1.E5 1.E5 1.E5\END
The RCP ARRAY CHIT defines the HIT quantities that go into defining the
detector . They follow closely the arguments to the GEANT subroutine GSDETH. CHSET and CHDET are already known from the ARRAY DET_CAL.
So the first argument in CHIT is NH, the number of hits that go into defining
this detector, in our example NH=6. CHNAMH(1:NH) are character*4 variables that
are the names of the hit quantites, in our case TOFN, SLEN, DEDX, X,Y and Z
denoting time of flight, length of track in volume, dedx energy in GeV
deposited by track in detector and the position of the track at entry into
detector volume. This is followed by NH values of NBITSH, ORIG and FACT which
are quantities used to pack the detector hits as explained in GSDETH.
We still need to write the code to fill in the hits at tracking time and this is done in the routine STEP_DETECTORS. When hits definition is changed in the RCP file, the user must also release a new version of the routine STEP_DETECTORS.FOR.