| ||||||||||
|
Olivier Callot The Calorimeter digitisationThis short note describes the CaloDigitisatioAlgorithm, and the options and parameters it uses. Also some questions and issues to improve are listed. 1- Basic principlesThe digitisation algorithm takes as input a collection of objects of type MCCaloSummedDeposits, and produces a collection of MCCaloDigit objects. As this algorithm makes sense only for Monte-Carlo, there is no problem of choosing the type of output. In fact, the output is a collection of objects having the CaloDigit interface, so that they can be processed later as if it was online data. The processing has two steps, a digitisation (conversion to ADC count and back to energy) and a zero suppression. 2- DigitisationFrom the input data, a simple channel per channel processing is performed, with the following steps:
3- Zero suppressionOnce the cell is converted, one has to decide if one should output it. Three options are implemented, selected by the algorithm parameter 'ZsupMethod'.
As the Prs and Spd are read by the same FE card, the foreseen Zero Suppression will be performed is a special way: The Prs data is output is over Threshold or if the SPd in the same cell has fired the trigger (= non zero digit). To simulate that feature, the Spd has to be digitised first, and its result passed to the Prs digitisation (option TagData), which uses it to force the corresponding Prs channels to be output independently of their content. 4- ParametersAlgorithm options are in /options , with the name of the instance of the algorithm, for example 'EcalDigi.opts' for the ECAL digitisation. EcalDigi.InputData = "/Event/MC/Ecal/SummedDeposits"; EcalDigi.OutputData = "/Event/MC/Ecal/Digit"; EcalDigi.TagData = ""; EcalDigi.Detector = "/dd/Structure/LHCb/Ecal"; EcalDigi.CoherentNoise = 0.3 ; EcalDigi.IncoherentNoise = 1.4 ; EcalDigi.GainError = 0.01; EcalDigi.ZsupMethod = "2D"; EcalDigi.ZsupThreshold = 20 ; DetectorElement attributes in /Ecal/structure.xml <EtInCenter value = "12000." /> <!-- 12 GeV Et Max in centre --> <EtSlope value = "-7000." /> <!-- 12 - .3*7 = 10 GeV at 300 mrad --> <AdcMax value = "4095" /> <ActiveToTotal value = "6.1" /> 5- Problems and future evolutionThe repartition between DetectorElement attributes and algorithm options is not based on clear decisions. The gain map is defined by the first two attributes, in the future it can evolve to a calibration map, so maybe it is better to have it from the DetectorElement. The rest can be in one or the other. |