#################################################################################################### # Class: CbmTofDigiBdfPar # Context: TestDefaultContext #################################################################################################### [CbmTofDigiBdfPar] // ----------------------------------------------------------------------------------------// // --------------------------- General switches -------------------------------------------// // Digi type to use: // 1 = expanded digis (faster), // 0 = reDigitized digis (probably closer to what could be transported in CBMnet UseExpDigi: Int_t 1 // Switch to use only primary tracks // 0 = all tracks, 1 = only primary UseOnlyPrim: Int_t 0 // Switch method to try avoiding counting all gaps/TofPoint from same track // with different time/charge UseOneGapPerTrk: Int_t 1 // ----------------------------------------------------------------------------------------// // ------------------------------ Cluster Model -------------------------------------------// //******************************// // Cluster Model selector // //******************************// // 0 -> Directly Cluster Size // ------- Convert TofPoints in input TClonesArray to Tof Digis using directly the // ------- cluster size distribution from beamtime. The charge is encoded as ToT in ns and // ------- shared among strips using a gauss distribution centered on the TofPoints. // ------- Works only for strip RPC !!!!! // ------- Quite slow due to the integration over a TF1 for charge. // 1 -> A simple "Flat disc" cluster approximation // ------- Convert TofPoints in input TClonesArray to Tof Digis using an approximation of the // ------- cluster charge distribution by a "Flat disc". The charge is encoded as ToT in ns. // 2 -> A 2D Gauss cluster approximation // ------- Convert TofPoints in input TClonesArray to Tof Digis using an approximation of the // ------- cluster charge distribution by a 2D symetric Gauss function, with the approx. that // ------- sigmaX = sigmaY = cluster size/2. // ------- Really slow due to the integration over a TF2. ClusterModel: Int_t 1 // Width of the electronic channels gain distribution // A value of 0 or smaller set all channels to gain 1 FeeGainSigma: Double_t 0.01 // "Charge" Threshold in ToT[ps], cut channels with too small values //FeeTotThr: Double_t 0.01 FeeTotThr: Double_t 0.1 // Time resolution of the digitizer channels in [ps] TimeResElec: Double_t 0.04 // Time resolution of the digitizer channels in [ps] TimeResStart: Double_t 0.04 // Propagation speed of the signal in the readout electrodes, in [cm/ns]] SignalPropSpeed: Double_t 18.0E-3 // ----------------------------------------------------------------------------------------// // ------- Geometry variables, text to be generated in the CreateGeometry macros ----------// // Number of Super Module types (1) // !!!! this parameter HAS to match the value used in the geometry !!!! NbSmTypes: Int_t 9 // Number of SMs for each SM type // The number of entries should match (1), the number of types // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 NbSm: Int_t \ 1 1 4 1 1 3 1 1 1 // Number of RPCs for each SM type (2) // The number of entries should match (1), the number of types // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 NbRpc: Int_t \ 1 1 1 1 1 1 1 1 6 // Number of gaps per RPC for each SM type // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 NbGaps000: Int_t \ 8 8 8 8 8 NbGaps001: Int_t \ 8 8 8 8 8 NbGaps002: Int_t \ 8 8 8 NbGaps003: Int_t \ 8 8 8 8 8 NbGaps004: Int_t \ 8 8 8 8 8 NbGaps005: Int_t \ 8 8 NbGaps006: Int_t \ 8 8 NbGaps007: Int_t \ 8 8 NbGaps008: Int_t \ 12 12 12 12 12 12 // Gap Size in mm per RPC for each SM type, including the glass type // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 GapSize000: Double_t \ 1.25 1.25 1.25 1.25 1.25 GapSize001: Double_t \ 1.25 1.25 1.25 1.25 1.25 GapSize002: Double_t \ 1.25 1.25 1.25 GapSize003: Double_t \ 1.25 1.25 1.25 1.25 1.25 GapSize004: Double_t \ 1.25 1.25 1.25 1.25 1.25 GapSize005: Double_t \ 1.25 1.25 GapSize006: Double_t \ 1.25 1.25 GapSize007: Double_t \ 1.25 1.25 GapSize008: Double_t \ 1.25 1.25 1.25 1.25 1.25 1.25 // Signal velocity in cm/ps per RPC for each SM type, including the glass type // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SigVel000: Double_t \ 0.018 0.018 0.018 0.018 0.018 SigVel001: Double_t \ 0.012 0.012 0.012 0.012 0.015 SigVel002: Double_t \ 0.015 0.015 0.015 0.015 SigVel003: Double_t \ 0.0166 0.018 0.018 0.018 0.018 SigVel004: Double_t \ 0.014 0.018 0.018 0.018 0.018 SigVel005: Double_t \ 0.01 0.01 0.01 SigVel006: Double_t \ 0.016 0.018 SigVel007: Double_t \ 0.018 0.018 SigVel008: Double_t \ 0.01 0.01 0.01 0.01 0.01 0.01 // Number of channels per RPC for each SM type // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 NbCh000: Int_t \ 56 56 NbCh001: Int_t \ 72 72 NbCh002: Int_t \ 1 1 1 1 NbCh003: Int_t \ 32 32 NbCh004: Int_t \ 16 16 NbCh005: Int_t \ 16 16 16 NbCh006: Int_t \ 64 64 NbCh007: Int_t \ 16 16 NbCh008: Int_t \ 8 8 8 8 8 8 // Type of readout channel for each rpc for each SM type // 0 = strip (readout on both end), 1 = pad (readout on 1 side) // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ChType000: Int_t \ 0 0 0 0 0 ChType001: Int_t \ 0 0 0 0 0 ChType002: Int_t \ 0 0 0 ChType003: Int_t \ 0 0 0 0 0 ChType004: Int_t \ 0 0 0 0 0 ChType005: Int_t \ 0 0 0 ChType006: Int_t \ 0 0 ChType007: Int_t \ 0 0 ChType008: Int_t \ 0 0 0 0 0 0 // Orientation of the channels/rpc // 0 = Vertical strips or horizontal pad row // 1 = Horizontal strips or vertical pad row // ASCII example for pad case: // ----------------- // row 1 | 7 | 6 | 5 | 4 | y // ----------------- ^ // row 0 | 0 | 1 | 2 | 3 | | // ----------------- --> x // or vertical --------- // | 4 | 3 | // --------- // | 5 | 2 | // --------- // | 6 | 1 | // --------- // | 7 | 0 | // --------- // row 1 0 // 1 line per SM type, the number of entries for each line should match // the number of RPCs defined in (2) // !!!! this parameter HAS to match the value used in the geometry !!!! // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ChOrientation000: Int_t \ 0 0 0 0 0 ChOrientation001: Int_t \ 0 0 0 0 0 ChOrientation002: Int_t \ 0 0 0 0 ChOrientation003: Int_t \ 0 0 0 0 0 ChOrientation004: Int_t \ 0 0 0 0 0 ChOrientation005: Int_t \ 0 0 0 ChOrientation006: Int_t \ 0 0 ChOrientation007: Int_t \ 0 0 ChOrientation008: Int_t \ 0 0 0 0 0 0 // ----------------------------------------------------------------------------------------// // ------------------------- Beamtime variables -------------------------------------------// // Name of the root file holding the values/histograms extracted from beamtime data BeamInputFile: Text_t ../digitizer/test_bdf_input.root // Model to use for the cluster radius distribution // (not used for Cluster Model 0) // -1 = Fixed value at 0.0002 to get a cluster size as close to 1 as possible, // Combined with a MaxTimeDistClust at clustering of 0.0001ns, should emulate hit producer // 0 = fixed value from beam data mean, // 1 = Landau distrib. with fixed param, // 2 = Landau distrib. with params extracted from fit on beam data ClusterRadiusModel: Int_t 1 // Mapping between geometry SM type and SM types in the beamtime file // The number of entries should match (1), the number of types in geometry // 0 1 2 3 4 5 6 7 8 9 SmTypeInpMapp: Int_t \ 0 0 0 0 0 0 0 0 0 // "Most Probable Value" setting of the Landau distribution used to modelize the cluster radius // Used if ClusterRadiusModel = 1 and as default in case of fit failure if ClusterRadiusModel = 2 // The number of entries should match (1), the number of types in geometry RadiusLandauMpv: Double_t \ 0.06 0.06 0.06 0.06 0.06 0.06 0.06 0.06 0.06 // "Sigma (scale)" setting of the Landau distribution used to modelize the cluster radius // Used if ClusterRadiusModel = 1 and as default in case of fit failure if ClusterRadiusModel = 2 // Empirical best: 1/3 of MPV // The number of entries should match (1), the number of types in geometry RadLandauSigma: Double_t \ 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 // ----------------------------------------------------------------------------------------// // ------------------------- Simple clusterizer -------------------------------------------// // Switch what to use for the multiplicity flag in TofHit // 0 = number of different TofPoints generating the cluster // 1 = number of different TrackId generating the cluster // Both should be equivalent when using MulUseTrkId: Int_t 0 // Maximal Time distance between current Digi pair (L+R) and the last Digi pair (L+R) in cluster // in [ns] // If -1 a values of 5*0.08 = 0.4 will be used instead (5*Nominal System Resolution) //MaxTimeDistClust: Double_t 1.0 //MaxTimeDistClust: Double_t 0.6 MaxTimeDistClust: Double_t 0.000 // Maximal distance along the channel direction (Y for vertical strips) between current // Digi pair (L+R) and the last Digi pair (L+R) in cluster // in [cm along channel] // "Nominal" Res. (80ps) * Prop. speed ~ 1.44 // sqrt(2)*Fee Res. (40ps) * Prop. speed ~ 1 MaxSpaceDistClust: Double_t 10.5 ####################################################################################################