|
ATLAS Offline Software
|
The aim of this algorithm is the simulation of the LAr analogue Super-Cell sums.
More...
#include <LArSCL1Maker.h>
|
| LArSCL1Maker (const std::string &name, ISvcLocator *pSvcLocator) |
| constructor More...
|
|
| ~LArSCL1Maker () |
| destructor More...
|
|
StatusCode | initialize () |
| Read ascii files for auxiliary data (puslse shapes, noise, etc...) More...
|
|
StatusCode | execute (const EventContext &context) const |
| Create LArSCL1 object save in TES (2 containers: 1 EM, 1 hadronic) More...
|
|
StatusCode | finalize () |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual bool | isClonable () const override |
| Specify if the algorithm is clonable. More...
|
|
virtual unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. More...
|
|
virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
virtual bool | filterPassed (const EventContext &ctx) const |
|
virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
template<class T > |
const T * | retrieve (const EventContext &context, SG::ReadCondHandleKey< T > handleKey) const |
|
std::vector< float > | computeSignal (const Identifier towerId, const int Ieta, const int specialCase, std::vector< float > visEnergy, const int refTime) const |
| initialize hit map More...
|
|
std::vector< float > | computeNoise (const Identifier towerId, const int Ieta, std::vector< float > &inputV) |
|
void | printConditions (const HWIdentifier &hwSC) |
| Method to print SuperCell Conditions. More...
|
|
void | ConvertHits2Samples (const EventContext &context, const HWIdentifier &hwSC, CaloGain::CaloGain igain, const std::vector< std::pair< float, float > > &TimeE, std::vector< float > &samples) const |
| Method for converting Hits from samples (simplified version of the same method in LarPileUpTool) More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
|
SG::ReadCondHandleKey< LArOnOffIdMapping > | m_cablingKeySC |
|
SG::ReadCondHandleKey< ILArShape > | m_shapesKey |
| Property: Pulse shape (conditions input). More...
|
|
SG::ReadCondHandleKey< ILArfSampl > | m_fracSKey |
| Property: Fraction of Energy Sampled (conditions input). More...
|
|
SG::ReadCondHandleKey< ILArPedestal > | m_pedestalSCKey |
| Property: Pedestal offset (conditions input). More...
|
|
SG::ReadCondHandleKey< ILArNoise > | m_noiseSCKey |
| Property: Electronics Noise (conditions input). More...
|
|
SG::ReadCondHandleKey< LArAutoCorrNoise > | m_autoCorrNoiseSCKey |
| Property: AutoCorr Noise (conditions input). More...
|
|
SG::ReadCondHandleKey< LArADC2MeV > | m_adc2mevSCKey |
| Property: ADC2MeV conversion (conditions input). More...
|
|
IChronoStatSvc * | m_chronSvc |
|
Gaudi::Property< std::string > | m_randomStreamName |
|
ServiceHandle< IAthRNGSvc > | m_atRndmGenSvc {this, "RndmSvc", "AthRNGSvc", ""} |
|
Gaudi::Property< uint32_t > | m_randomSeedOffset {this, "RandomSeedOffset", 2, ""} |
|
Gaudi::Property< bool > | m_useLegacyRandomSeeds |
|
bool | m_useTriggerTime |
| Alorithm property: use trigger time or not. More...
|
|
int | m_BeginRunPriority |
| pointer to the TriggerTimeTool More...
|
|
ToolHandle< ICaloSuperCellIDTool > | m_scidtool |
|
const CaloCell_SuperCell_ID * | m_scHelper |
| pointer to the offline TT helper More...
|
|
const CaloCell_ID * | m_OflHelper = nullptr |
| pointer to the offline id helper
More...
|
|
const LArOnline_SuperCellID * | m_OnlSCHelper |
| pointer to the online LAr helper More...
|
|
ServiceHandle< IIncidentSvc > | m_incSvc |
|
std::vector< std::vector< float > > | m_autoCorrHec |
| auxiliary HEC data: auto-correlation matrix More...
|
|
SG::ReadHandleKey< LArHitEMap > | m_hitMapKey |
| hit map More...
|
|
SG::ReadHandleKey< LArDigitContainer > | m_bkgDigitsKey {this, "BkgDigitKey", ""} |
| Background Digit Overlay, default key is Bkg_LArDigitSCL2. More...
|
|
SG::WriteHandleKey< LArDigitContainer > | m_sLArDigitsContainerKey |
| output Lar Digits SC container More...
|
|
std::vector< std::string > | m_HitContainer |
| list of hit containers More...
|
|
std::string | m_SubDetectors |
| algorithm property: sub-detectors to be simulated More...
|
|
bool | m_NoiseOnOff |
| algorithm property: noise (in all sub-detectors) is on if true
More...
|
|
bool | m_PileUp |
| algorithm property: pile up or not More...
|
|
bool | m_noEmCalibMode |
| algorithm property: no calibration mode for EM towers More...
|
|
bool | m_noHadCalibMode |
| algorithm property: no calibration mode for had towers More...
|
|
bool | m_chronoTest |
| algorithm property: switch chrono on More...
|
|
unsigned int | m_nSamples |
| output number of samples More...
|
|
unsigned int | m_firstSample |
| output first samples More...
|
|
std::string | m_saveHitsContainer |
|
DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. More...
|
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
The aim of this algorithm is the simulation of the LAr analogue Super-Cell sums.
It includes correct allocation of cells to Super-Cell, pulse profile as a function of time, saturation, appropriate noise addition, pile-up.
The resulting signals are an input to the Preprocessor (which in turn performs digitization, filtering, bunch crossing id., noise suppression,...)
Since it needs hits, the simulation only takes "simul" datasets as input, NOT digitized datasets.
- Warning
- although the output is not digitized, LArSCL1Maker is part of the digitization simulation.
- Author
- Denis O. Damazio (BNL)
Definition at line 60 of file LArSCL1Maker.h.
◆ StoreGateSvc_t
◆ LArSCL1Maker()
LArSCL1Maker::LArSCL1Maker |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~LArSCL1Maker()
LArSCL1Maker::~LArSCL1Maker |
( |
| ) |
|
◆ cardinality()
unsigned int AthReentrantAlgorithm::cardinality |
( |
| ) |
const |
|
overridevirtualinherited |
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Override this to return 0 for reentrant algorithms.
Definition at line 55 of file AthReentrantAlgorithm.cxx.
◆ computeNoise()
std::vector<float> LArSCL1Maker::computeNoise |
( |
const Identifier |
towerId, |
|
|
const int |
Ieta, |
|
|
std::vector< float > & |
inputV |
|
) |
| |
|
private |
◆ computeSignal()
std::vector<float> LArSCL1Maker::computeSignal |
( |
const Identifier |
towerId, |
|
|
const int |
Ieta, |
|
|
const int |
specialCase, |
|
|
std::vector< float > |
visEnergy, |
|
|
const int |
refTime |
|
) |
| const |
|
private |
◆ ConvertHits2Samples()
Method for converting Hits from samples (simplified version of the same method in LarPileUpTool)
Definition at line 473 of file LArSCL1Maker.cxx.
495 nsamples_der = ShapeDer.size();
498 std::cout <<
" No samples for cell = " << hwSC << std::endl;
502 std::vector<std::pair<float, float> >::const_iterator
first = TimeE.begin();
503 std::vector<std::pair<float, float> >::const_iterator last = TimeE.end();
508 while (
first != last) {
510 time = (*first).second;
515 int ishift = (
int)(rint(
time * (1. / 25)));
516 double dtime =
time - 25. * ((
double)(ishift));
521 if (j < nsamples_der && std::fabs(ShapeDer[j]) < 10.)
522 samples[
i] += (Shape[j] - ShapeDer[j] * dtime) *
energy;
524 samples[
i] += Shape[j] *
energy;
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode LArSCL1Maker::execute |
( |
const EventContext & |
context | ) |
const |
Create LArSCL1 object save in TES (2 containers: 1 EM, 1 hadronic)
Definition at line 222 of file LArSCL1Maker.cxx.
234 std::map<HWIdentifier, size_t> IDtoIndexMap;
238 bkgDigitsPtr = bkgDigits.cptr();
239 unsigned int digitCount(0);
240 for (
const auto*
const bkgDigit : *bkgDigitsPtr) {
241 IDtoIndexMap.insert({bkgDigit->channelID(), digitCount});
245 if ((
unsigned int)bkgDigitsPtr->at(0)->nsamples() !=
m_nSamples) {
248 "Uncompatible background and signal LArDigit size : Overlay "
249 "requested but will not be performed");
271 auto scContainer = std::make_unique<LArDigitContainer>();
274 scContainer->reserve(nbSC);
281 return StatusCode::FAILURE;
297 std::vector<std::vector<float> >
299 std::vector<std::vector<float> >
301 sumEnergy.resize(nbSC);
302 sumTime.resize(nbSC);
303 std::vector<float> scSumE;
304 int scSumEvecSize = 5;
306 scSumE.reserve(scSumEvecSize);
307 std::vector<std::vector<float> > scFloatContainerTmp;
311 scContainer->reserve(nbSC);
312 const std::vector<float> base_vec(0);
313 scFloatContainerTmp.assign(nbSC, base_vec);
314 std::vector<bool> alreadyThere;
315 alreadyThere.resize(nbSC);
316 alreadyThere.assign(nbSC,
false);
318 std::vector<float> truthE;
320 truthE.assign(nbSC, 0);
322 std::vector<HWIdentifier> hwid;
330 std::vector<float> samples;
332 std::vector<short> samplesInt;
336 for (;
it != it_end; ++
it) {
338 const std::vector<std::pair<float, float> >& timeE = hitlist.
getData();
339 if (!timeE.empty()) {
343 if (scHash.
value() == 999999)
348 hwid[scHWHash] = hwSC;
351 if ((adc2mev->ADC2MEV(hwSC, scGain)).size() < 2) {
354 factor = (adc2mev->ADC2MEV(hwSC, scGain))[1];
355 factor = 1.0 / fracS->FSAMPL(hwSC) / factor;
359 std::vector<float>&
vec = scFloatContainerTmp.at(scHWHash);
360 if (!alreadyThere[scHWHash]) {
361 alreadyThere[scHWHash] =
true;
362 for (
unsigned int i = 0;
i < samples.size();
i++) {
363 vec.push_back(factor * samples[
i]);
366 for (
unsigned int i = 0;
i < samples.size();
i++) {
367 vec[
i] += (factor * samples[
i]);
378 std::vector<float> zeroSamp;
387 CLHEP::HepRandomEngine* rndmEngine = rngWrapper->
getEngine(context);
388 for (;
it != it_end; ++
it) {
389 std::vector<float>* vecPtr = &zeroSamp;
390 if (alreadyThere[
it])
391 vecPtr = &(scFloatContainerTmp.at(
it));
392 std::vector<float>&
vec = *vecPtr;
400 size_t backGroundIdx = 999999;
401 if (addBkg && (IDtoIndexMap.find(
id) != IDtoIndexMap.end()))
402 backGroundIdx = IDtoIndexMap.find(
id)->second;
409 float SigmaNoise = (larnoise->noise(
id, 0));
411 const std::vector<float>& CorrGen = (autoCorrNoise->autoCorrSqrt(
id, 0));
413 RandGaussZiggurat::shootArray(rndmEngine,
static_cast<int>(
m_nSamples),
418 for (
int j = 0; j <=
i; j++) {
426 if (backGroundIdx < 999999) {
428 const std::vector<short>& bkgSamples =
429 bkgDigitsPtr->at(backGroundIdx)->samples();
430 samplesInt.assign(bkgSamples.begin(), bkgSamples.end());
432 int ped = pedestal->pedestal(
id, 0);
435 for (
unsigned int i = 0;
i <
vec.size();
i++) {
439 if (samplesInt[
i] < 0)
443 scContainer->push_back(dig);
446 ATH_CHECK(scContainerHandle.record(std::move(scContainer)));
449 IDtoIndexMap.clear();
452 m_chronSvc->chronoStop(
"LArSCL1Mk hit loop ");
453 m_chronSvc->chronoPrint(
"LArSCL1Mk hit loop ");
454 m_chronSvc->chronoStart(
"LArSCL1Mk SC loop ");
457 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
const DataObjIDColl & AthReentrantAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 79 of file AthReentrantAlgorithm.cxx.
86 return Algorithm::extraOutputDeps();
◆ filterPassed()
virtual bool AthReentrantAlgorithm::filterPassed |
( |
const EventContext & |
ctx | ) |
const |
|
inlinevirtualinherited |
◆ finalize()
StatusCode LArSCL1Maker::finalize |
( |
| ) |
|
◆ initialize()
StatusCode LArSCL1Maker::initialize |
( |
| ) |
|
Read ascii files for auxiliary data (puslse shapes, noise, etc...)
Definition at line 115 of file LArSCL1Maker.cxx.
127 ATH_MSG_INFO(
"***********************************************");
128 ATH_MSG_INFO(
"* Steering options for LArSCL1Maker algorithm *");
129 ATH_MSG_INFO(
"***********************************************");
136 "Electronic noise will be added in each SC for selected "
163 " In case of pileup, the trigger time subtraction is done in "
165 ATH_MSG_INFO(
" => LArSCL1Maker will not apply Trigger Time ");
193 ATH_MSG_ERROR(
"Could not access CaloCell_SuperCell_ID helper");
194 return StatusCode::FAILURE;
196 ATH_MSG_DEBUG(
"Successfully accessed CaloCell_SuperCell_ID helper");
219 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ isClonable()
bool AthReentrantAlgorithm::isClonable |
( |
| ) |
const |
|
overridevirtualinherited |
Specify if the algorithm is clonable.
Reentrant algorithms are clonable.
Reimplemented in Simulation::BeamEffectsAlg, InDet::SiTrackerSpacePointFinder, InDet::SCT_Clusterization, InDet::SiSPSeededTrackFinder, SCTRawDataProvider, InDet::GNNSeedingTrackMaker, SCT_PrepDataToxAOD, RoIBResultToxAOD, SCT_CablingCondAlgFromCoraCool, SCT_ReadCalibDataTestAlg, SCT_CablingCondAlgFromText, InDet::SiSPGNNTrackMaker, SCT_ReadCalibChipDataTestAlg, SCT_TestCablingAlg, SCT_ConfigurationConditionsTestAlg, ITkPixelCablingAlg, ITkStripCablingAlg, SCTEventFlagWriter, SCT_ConditionsSummaryTestAlg, SCT_ModuleVetoTestAlg, SCT_MonitorConditionsTestAlg, SCT_LinkMaskingTestAlg, SCT_MajorityConditionsTestAlg, SCT_RODVetoTestAlg, SCT_SensorsTestAlg, SCT_TdaqEnabledTestAlg, SCT_SiliconConditionsTestAlg, SCTSiLorentzAngleTestAlg, SCT_ByteStreamErrorsTestAlg, SCT_ConditionsParameterTestAlg, SCT_FlaggedConditionTestAlg, SCT_StripVetoTestAlg, SCT_RawDataToxAOD, and SCTSiPropertiesTestAlg.
Definition at line 44 of file AthReentrantAlgorithm.cxx.
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ printConditions()
◆ renounce()
◆ renounceArray()
◆ retrieve()
Definition at line 112 of file LArSCL1Maker.h.
115 if (not handle.isValid()) {
119 return handle.cptr();
◆ setFilterPassed()
virtual void AthReentrantAlgorithm::setFilterPassed |
( |
bool |
state, |
|
|
const EventContext & |
ctx |
|
) |
| const |
|
inlinevirtualinherited |
◆ sysExecute()
StatusCode AthReentrantAlgorithm::sysExecute |
( |
const EventContext & |
ctx | ) |
|
|
overridevirtualinherited |
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Definition at line 67 of file AthReentrantAlgorithm.cxx.
69 return Gaudi::Algorithm::sysExecute (ctx);
◆ sysInitialize()
StatusCode AthReentrantAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.
Reimplemented in InputMakerBase, and HypoBase.
Definition at line 96 of file AthReentrantAlgorithm.cxx.
107 if ( cs.retrieve().isFailure() ) {
109 return StatusCode::SUCCESS;
111 if (cs->regHandle(
this,*
h).isFailure()) {
112 sc = StatusCode::FAILURE;
113 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_adc2mevSCKey
Initial value:{
this, "LArADC2MeVKey", "LArADC2MeVSC", "SGKey of LArADC2MeV object"}
Property: ADC2MeV conversion (conditions input).
Definition at line 108 of file LArSCL1Maker.h.
◆ m_atRndmGenSvc
◆ m_autoCorrHec
std::vector<std::vector<float> > LArSCL1Maker::m_autoCorrHec |
|
private |
auxiliary HEC data: auto-correlation matrix
Definition at line 190 of file LArSCL1Maker.h.
◆ m_autoCorrNoiseSCKey
Initial value:{
this, "LArAutoCorrKey", "LArAutoCorrNoiseSC",
"SGKey of LArAutoCorrNoise object"}
Property: AutoCorr Noise (conditions input).
Definition at line 103 of file LArSCL1Maker.h.
◆ m_BeginRunPriority
int LArSCL1Maker::m_BeginRunPriority |
|
private |
◆ m_bkgDigitsKey
◆ m_cablingKeySC
Initial value:{
this, "ScCablingKey", "LArOnOffIdMapSC",
"SG Key of SC LArOnOffIdMapping object"}
Definition at line 83 of file LArSCL1Maker.h.
◆ m_chronoTest
bool LArSCL1Maker::m_chronoTest |
|
private |
◆ m_chronSvc
IChronoStatSvc* LArSCL1Maker::m_chronSvc |
|
private |
◆ m_detStore
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthReentrantAlgorithm::m_extendedExtraObjects |
|
privateinherited |
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 153 of file AthReentrantAlgorithm.h.
◆ m_firstSample
unsigned int LArSCL1Maker::m_firstSample |
|
private |
◆ m_fracSKey
Initial value:{
this, "FracSKey", "LArfSamplSC", "SG Key of fSamplS conditions object"}
Property: Fraction of Energy Sampled (conditions input).
Definition at line 91 of file LArSCL1Maker.h.
◆ m_HitContainer
std::vector<std::string> LArSCL1Maker::m_HitContainer |
|
private |
◆ m_hitMapKey
Initial value:{this, "LArHitEMapKey",
"LArHitEMap"}
hit map
Definition at line 193 of file LArSCL1Maker.h.
◆ m_incSvc
◆ m_noEmCalibMode
bool LArSCL1Maker::m_noEmCalibMode |
|
private |
algorithm property: no calibration mode for EM towers
Definition at line 223 of file LArSCL1Maker.h.
◆ m_noHadCalibMode
bool LArSCL1Maker::m_noHadCalibMode |
|
private |
algorithm property: no calibration mode for had towers
Definition at line 225 of file LArSCL1Maker.h.
◆ m_NoiseOnOff
bool LArSCL1Maker::m_NoiseOnOff |
|
private |
algorithm property: noise (in all sub-detectors) is on if true
Definition at line 219 of file LArSCL1Maker.h.
◆ m_noiseSCKey
Initial value:{
this, "LArNoiseKey", "LArNoiseSC", "SGKey of LArNoise object"}
Property: Electronics Noise (conditions input).
Definition at line 99 of file LArSCL1Maker.h.
◆ m_nSamples
unsigned int LArSCL1Maker::m_nSamples |
|
private |
◆ m_OflHelper
◆ m_OnlSCHelper
◆ m_pedestalSCKey
Initial value:{
this, "PedestalKey", "LArPedestalSC", "SGKey of LArPedestal object"}
Property: Pedestal offset (conditions input).
Definition at line 95 of file LArSCL1Maker.h.
◆ m_PileUp
bool LArSCL1Maker::m_PileUp |
|
private |
◆ m_randomSeedOffset
Gaudi::Property<uint32_t> LArSCL1Maker::m_randomSeedOffset {this, "RandomSeedOffset", 2, ""} |
|
private |
◆ m_randomStreamName
Gaudi::Property<std::string> LArSCL1Maker::m_randomStreamName |
|
private |
Initial value:{this, "RandomStreamName",
"LArSCL1Maker", ""}
Definition at line 151 of file LArSCL1Maker.h.
◆ m_saveHitsContainer
std::string LArSCL1Maker::m_saveHitsContainer |
|
private |
◆ m_scHelper
◆ m_scidtool
◆ m_shapesKey
Initial value:{
this, "ShapeKey", "LArShapeSC", "SG Key of Shape conditions object"}
Property: Pulse shape (conditions input).
Definition at line 87 of file LArSCL1Maker.h.
◆ m_sLArDigitsContainerKey
Initial value:{
this, "SCL1ContainerName", "LArDigitSCL1", "Output LArDigit container"}
output Lar Digits SC container
Definition at line 198 of file LArSCL1Maker.h.
◆ m_SubDetectors
std::string LArSCL1Maker::m_SubDetectors |
|
private |
algorithm property: sub-detectors to be simulated
Definition at line 205 of file LArSCL1Maker.h.
◆ m_useLegacyRandomSeeds
Gaudi::Property<bool> LArSCL1Maker::m_useLegacyRandomSeeds |
|
private |
Initial value:{
this, "UseLegacyRandomSeeds", false,
"Use MC16-style random number seeding"}
Definition at line 155 of file LArSCL1Maker.h.
◆ m_useTriggerTime
bool LArSCL1Maker::m_useTriggerTime |
|
private |
Alorithm property: use trigger time or not.
Definition at line 160 of file LArSCL1Maker.h.
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ s_MAXSAMPLES
const short LArSCL1Maker::s_MAXSAMPLES = 24 |
|
staticprivate |
◆ s_NBDEPTHS
const short LArSCL1Maker::s_NBDEPTHS = 4 |
|
staticprivate |
◆ s_NBENERGIES
const short LArSCL1Maker::s_NBENERGIES = 12 |
|
staticprivate |
number of energies at which saturation is described (em)
Definition at line 187 of file LArSCL1Maker.h.
◆ s_NBETABINS
const short LArSCL1Maker::s_NBETABINS = 15 |
|
staticprivate |
◆ s_NBSAMPLES
const short LArSCL1Maker::s_NBSAMPLES = 7 |
|
staticprivate |
◆ s_PEAKPOS
const short LArSCL1Maker::s_PEAKPOS = 3 |
|
staticprivate |
The documentation for this class was generated from the following files:
SeedingOptionType
Options for seeding option=0 is setSeed as in MC20 option=1 is setSeedLegacy as in MC16 option=2 is s...
unsigned int m_nSamples
output number of samples
bool m_useTriggerTime
Alorithm property: use trigger time or not.
IdentifierHash channel_Hash(HWIdentifier channelId) const
Create channel_hash from channel_Id.
IdentifierHash calo_cell_hash(const Identifier cellId) const
create hash id from 'global' cell id
bool m_NoiseOnOff
algorithm property: noise (in all sub-detectors) is on if true
unsigned int value() const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
void setSeedLegacy(const std::string &algName, size_t slot, uint64_t ev, uint64_t run, uint64_t offset, SeedingOptionType seeding, EventContext::ContextEvt_t evt=EventContext::INVALID_CONTEXT_EVT)
Set the random seed using a string (e.g.
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)
const LArOnline_SuperCellID * m_OnlSCHelper
pointer to the online LAr helper
bool m_noHadCalibMode
algorithm property: no calibration mode for had towers
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
SG::ReadHandleKey< LArDigitContainer > m_bkgDigitsKey
Background Digit Overlay, default key is Bkg_LArDigitSCL2.
std::string m_saveHitsContainer
std::vector< size_t > vec
bool empty() const
Test if the key is blank.
const CaloCell_SuperCell_ID * m_scHelper
pointer to the offline TT helper
bool m_noEmCalibMode
algorithm property: no calibration mode for EM towers
bool m_PileUp
algorithm property: pile up or not
const LArHitList & GetCell(const unsigned int index) const
const T * retrieve(const EventContext &context, SG::ReadCondHandleKey< T > handleKey) const
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
SG::ReadCondHandleKey< LArAutoCorrNoise > m_autoCorrNoiseSCKey
Property: AutoCorr Noise (conditions input).
Gaudi::Property< std::string > m_randomStreamName
const LARLIST & getData() const
AthReentrantAlgorithm()
Default constructor:
This class initializes the Calo (LAr and Tile) offline identifiers.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
Liquid Argon digit base class.
SG::ReadCondHandleKey< ILArNoise > m_noiseSCKey
Property: Electronics Noise (conditions input).
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadCondHandleKey< ILArPedestal > m_pedestalSCKey
Property: Pedestal offset (conditions input).
void ConvertHits2Samples(const EventContext &context, const HWIdentifier &hwSC, CaloGain::CaloGain igain, const std::vector< std::pair< float, float > > &TimeE, std::vector< float > &samples) const
Method for converting Hits from samples (simplified version of the same method in LarPileUpTool)
HWIdentifier channel_Id(int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
create channel identifier from fields
SG::ReadCondHandleKey< ILArfSampl > m_fracSKey
Property: Fraction of Energy Sampled (conditions input).
#define CHECK(...)
Evaluate an expression and check for errors.
ServiceHandle< IIncidentSvc > m_incSvc
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
int m_BeginRunPriority
pointer to the TriggerTimeTool
IChronoStatSvc * m_chronSvc
DataObjIDColl m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
bool m_chronoTest
algorithm property: switch chrono on
A wrapper class for event-slot-local random engines.
size_type channelHashMax(void) const
Define channel hash tables max size.
virtual StatusCode sysInitialize() override
Override sysInitialize.
ServiceHandle< IAthRNGSvc > m_atRndmGenSvc
StatusCode initialize(bool used=true)
Identifier cell_id(const int subCalo, const int barec_or_posneg, const int sampling_or_fcalmodule, const int region_or_dummy, const int eta, const int phi) const
Make a cell (== channel) ID from constituting fields and subCalo index; for (Mini)FCAL,...
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKeySC
CLHEP::HepRandomEngine * getEngine(const EventContext &ctx) const
Retrieve the random engine corresponding to the provided EventContext.
ToolHandle< ICaloSuperCellIDTool > m_scidtool
def time(flags, cells_name, *args, **kw)
#define ATH_MSG_WARNING(x)
Gaudi::Property< bool > m_useLegacyRandomSeeds
unsigned int m_firstSample
output first samples
Gaudi::Property< uint32_t > m_randomSeedOffset
const CaloCell_SuperCell_ID * getCaloCell_SuperCell_ID(void) const
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Container class for LArDigit.
std::string m_SubDetectors
algorithm property: sub-detectors to be simulated
SG::ReadCondHandleKey< ILArShape > m_shapesKey
Property: Pulse shape (conditions input).
SG::WriteHandleKey< LArDigitContainer > m_sLArDigitsContainerKey
output Lar Digits SC container
int GetNbCells(void) const
SG::ReadHandleKey< LArHitEMap > m_hitMapKey
hit map
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
const CaloCell_ID * m_OflHelper
pointer to the offline id helper
SG::ReadCondHandleKey< LArADC2MeV > m_adc2mevSCKey
Property: ADC2MeV conversion (conditions input).
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Proxy for accessing a range of float values like a vector.
size_type calo_cell_hash_max(void) const
cell 'global' hash table max size