Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
16 #include "GaudiKernel/ITHistSvc.h"
17 #include "CaloDetDescr/CaloDetDescrElement.h"
24 m_datasetID_lowPt(119995),
25 m_datasetID_highPt(119996),
26 m_weight_lowPt(39.8606),
27 m_weight_highPt(0.138128)
48 m_tree =
new TTree(
"m_tree",
"Offset ntuple");
66 return StatusCode::SUCCESS;
97 return StatusCode::SUCCESS;
106 return StatusCode::SUCCESS;
112 return StatusCode::SUCCESS;
122 const EventContext& ctx = Gaudi::Hive::currentContext();
142 return StatusCode::FAILURE;
150 std::vector<int> doneCell;
173 if (doneCell[i2]>=0) {
208 if (!eventInfo.isValid()) {
210 return StatusCode::FAILURE;
212 int channelNumber = eventInfo->mcChannelNumber();
229 ATH_MSG_WARNING(
" Neither low nor high Pt MinBias sample " << channelNumber <<
" set weight to 1.0 ");
239 for (
auto & inputHits : hitVectorHandles) {
240 if (!inputHits.isValid()) {
246 for (
const LArHit* hit : *inputHits)
249 double energy = hit->energy();
250 double time =hit->time();
253 cellID=
m_scidtool->offlineToSuperCellID(hitCellID);
259 if (index < m_ncell && index>=0 && std::fabs(
time)<25.) {
271 return StatusCode::SUCCESS;
276 if (index < m_ncell && index>=0) {
289 double Anew =
weight+oldN;
291 double deltaE =
energy-newAverage;
292 double newRMS =
frac*(oldRMS + (newAverage-oldAverage)*(newAverage-oldAverage)) +
weight*deltaE*deltaE/Anew;
294 double newAverage2 =
frac*oldAverage2 +
weight*eshift/Anew;
def retrieve(aClass, aKey=None)
SG::ReadCondHandleKey< LArMCSym > m_mcSymKey
LArMinBiasAlg(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
std::vector< double > m_eCell
IdentifierHash calo_cell_hash(const Identifier cellId) const
create hash id from 'global' cell id
int region(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
void addCell(int index, double e1, double e2, double wt=1.)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
ToolHandle< ICaloSuperCellIDTool > m_scidtool
double m_nevt[MAX_SYM_CELLS]
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
double m_offset[MAX_SYM_CELLS]
Identifier32 get_identifier32() const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
int calo_sample(const Identifier id) const
returns an int taken from Sampling enum and describing the subCalo to which the Id belongs.
double m_rms[MAX_SYM_CELLS]
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool is_tile(const Identifier id) const
test if the id belongs to the Tiles
value_type get_compact() const
Get the compact id.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
SG::ReadCondHandleKey< CaloSuperCellDetDescrManager > m_caloSCMgrKey
HWIdentifier ZPhiSymOfl(const Identifier notSymOffId) const
Find the symmetric HWID for an offline cell identifier.
std::vector< CellInfo > m_CellList
int m_identifier[MAX_SYM_CELLS]
This class initializes the Calo (LAr and Tile) offline identifiers.
virtual StatusCode finalize() override
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
virtual StatusCode initialize() override
double m_average[MAX_SYM_CELLS]
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode execute() override
~LArMinBiasAlg()
Default Destructor.
Helper class for offline supercell identifiers.
int eta(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
std::vector< int > m_symCellIndex
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
StatusCode initialize(bool used=true)
Class to store hit energy and time in LAr cell from G4 simulation.
ServiceHandle< ITHistSvc > m_thistSvc
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,...
const CaloCell_Base_ID * m_calo_id
SG::ReadHandleKeyArray< LArHitContainer > m_larHitKeys
float m_phi[MAX_SYM_CELLS]
virtual StatusCode stop() override
def time(flags, cells_name, *args, **kw)
#define ATH_MSG_WARNING(x)
int m_region[MAX_SYM_CELLS]
int m_ieta[MAX_SYM_CELLS]
int m_layer[MAX_SYM_CELLS]
float eta() const
cell eta
float phi() const
cell phi
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Helper base class for offline cell identifiers.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
float m_eta[MAX_SYM_CELLS]
StringArrayProperty m_inputKeys
size_type calo_cell_hash_max(void) const
cell 'global' hash table max size