|
ATLAS Offline Software
|
Go to the documentation of this file.
19 #if defined(XAOD_STANDALONE) || defined(XAOD_ANALYSIS)
66 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS)
73 return StatusCode::SUCCESS;
101 std::string termName =
"";
102 for(
int i=0;
i<3; ++
i) {
104 case 0: termName =
"AllCells";
break;
105 case 1: termName =
"Cells_Abs2S";
break;
106 case 2: termName =
"Cells_Abs2S_m5S";
break;
121 #if defined(XAOD_STANDALONE) || defined(XAOD_ANALYSIS)
126 return StatusCode::SUCCESS;
137 return StatusCode::SUCCESS;
147 if(!currentTerm)
continue;
149 ", source " << currentTerm->
source() <<
150 ", mpx " << currentTerm->
mpx() <<
151 ", mpy " << currentTerm->
mpy() <<
152 ", met " << currentTerm->
met() <<
153 ", sumet " << currentTerm->
sumet()
161 return StatusCode::SUCCESS;
171 return metContainer->
at(
EMB);
176 return metContainer->
at(
EME);
181 return metContainer->
at(
FCAL);
187 return metContainer->
at(
HEC);
190 return metContainer->
at(
PEMB);
193 return metContainer->
at(
PEME);
204 return metContainer->
at(
TILE);
206 default:
return nullptr;
214 #if defined (XAOD_STANDALONE) || defined(XAOD_ANALYSIS)
215 ATH_MSG_WARNING(
"Cell information is only available in athena framework");
226 double e_cell =
cell->energy();
227 double et_cell = e_cell/cosh(
cell->eta());
228 double phi_cell =
cell->phi();
238 metTerm->
add(et_cell*
cos(phi_cell),
239 et_cell*
sin(phi_cell),
244 #if defined(XAOD_STANDALONE) || defined(XAOD_ANALYSIS)
245 double noise_cell = 0;
251 et_cell*
sin(phi_cell),
254 if( fabs(e_cell) < 2.0*noise_cell )
continue;
256 et_cell*
sin(phi_cell),
259 if( e_cell < -5.0*noise_cell )
continue;
261 et_cell*
sin(phi_cell),
266 return StatusCode::SUCCESS;
275 for(
const auto *iClus : *caloClusContainer) {
283 if(fabs(iClus->eSample(
sample))>0) {
286 double et_sample = iClus->eSample(
sample)/cosh(iClus->etaSample(
sample));
287 double phi_sample = iClus->phiSample(
sample);
297 metTerm->
add(et_sample*
cos(phi_sample),
298 et_sample*
sin(phi_sample),
303 return StatusCode::SUCCESS;
const_pointer_type cptr()
Dereference the pointer.
float sumet() const
Returns.
MissingET_v1 MissingET
Version control by type defintion.
MissingETContainer_v1 MissingETContainer
const std::string & key() const
Return the StoreGate ID for the referenced object.
uint64_t bitmask_t
Type for status word bit mask.
Class providing the definition of the 4-vector interface.
float getNoise(const IdentifierHash h, const int gain) const
Accessor by IdentifierHash and gain.
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.
::StatusCode StatusCode
StatusCode definition for legacy code.
@ Calo
Indicator for MET terms reconstructed from calorimeter signals alone.
Principal data object for Missing ET.
float mpx() const
Returns .
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
const std::string & name() const
Identifier getters.
Athena::TPCnvVers::Old Athena::TPCnvVers::Old MissingET
virtual bool isValid() override final
Can the handle be successfully dereferenced?
void add(const IParticle *particle)
Add particle kinematics to MET.
Container for xAOD::MissingET_v1 objects.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
StatusCode initialize(bool used=true)
MissingETBase::Types::bitmask_t source() const
MET object source tag.
Container class for CaloCell.
Data object for each calorimeter readout cell.
#define ATH_MSG_WARNING(x)
static Types::bitmask_t clusterEM(Region reg=Region::FullAcceptance)
Bit mask for MET term from EMTopo signal objects.
const T * at(size_type n) const
Access an element, as an rvalue.
const SG::AuxVectorData * container() const
Return the container holding this element.
float mpy() const
Returns .
float met() const
Returns .