ATLAS Offline Software
JetHistoLeadingJetsRelations.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
9 
10 
11 JetHistoLeadingJetsRelations::JetHistoLeadingJetsRelations( const std::string& type, const std::string & name ,const IInterface* parent):
13 {
14  declareInterface<IJetHistoFiller>(this);
15 
16 }
17 
18 
20 
21  return StatusCode::SUCCESS;
22 }
23 
25  if(jets.empty()) return StatusCode::SUCCESS;
26  //
27 
28  if(jets.size()==1) return StatusCode::SUCCESS;
29 
30 
31  // consider the two jets with the highest pt
32  const xAOD::Jet* j1 = jets[0];
33  const xAOD::Jet* j2 = jets[1];
34 
35  // define deta, dphi and dr so that they are known to be monitored
36  auto dEta= Monitored::Scalar<float>("dEta",0.0);
37  // alternative way
38  //Monitored::Scalar<float>dEta("dEta")
39  auto dPhi= Monitored::Scalar<float>("dPhi",0.0);
40  // alternative way
41  //Monitored::Scalar<float>dEta("dPhi")
42  auto dR = Monitored::Scalar<float>("dR",0.0);
43  // Monitored::Scalar<float>dR("dR")
44 
45  dEta= j1->eta() - j2->eta();
46  dPhi = fabs(j1->phi() - j2->phi() );
47  if(dPhi > 2*3.14159) dPhi -= 2*3.14159;
48  dR = sqrt( dPhi*dPhi + dEta*dEta);
49 
50  // ToolHandle<GenericMonitoringTool> grpT =
51  parentAlg.fill(m_group,dEta,dPhi,dR);
52 
53  return StatusCode::SUCCESS;
54 }
55 
56 
JetHistoLeadingJetsRelations.h
GenericMonitoringTool.h
doubleTestComp.j1
j1
Definition: doubleTestComp.py:21
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TauGNNUtils::Variables::Track::dPhi
bool dPhi(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
Definition: TauGNNUtils.cxx:530
JetHistoLeadingJetsRelations::processJetContainer
virtual StatusCode processJetContainer(const JetMonitoringAlg &parentAlg, const xAOD::JetContainer &jets, const EventContext &ctx) const
Definition: JetHistoLeadingJetsRelations.cxx:24
test_pyathena.parent
parent
Definition: test_pyathena.py:15
AthMonitorAlgorithm::fill
void fill(const ToolHandle< GenericMonitoringTool > &groupHandle, std::vector< std::reference_wrapper< Monitored::IMonitoredVariable >> &&variables) const
Fills a vector of variables to a group by reference.
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
JetHistoLeadingJetsRelations::m_group
Gaudi::Property< std::string > m_group
Definition: JetHistoLeadingJetsRelations.h:35
JetMonitoringAlg
Definition: JetMonitoringAlg.h:26
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
JetMonitoringAlg.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
JetHistoLeadingJetsRelations::JetHistoLeadingJetsRelations
JetHistoLeadingJetsRelations(const std::string &type, const std::string &name, const IInterface *parent)
Definition: JetHistoLeadingJetsRelations.cxx:11
Monitored::Scalar
Declare a monitored scalar variable.
Definition: MonitoredScalar.h:34
AthAlgTool
Definition: AthAlgTool.h:26
TauGNNUtils::Variables::Track::dEta
bool dEta(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
Definition: TauGNNUtils.cxx:525
doubleTestComp.j2
j2
Definition: doubleTestComp.py:22
JetHistoLeadingJetsRelations::initialize
virtual StatusCode initialize()
Definition: JetHistoLeadingJetsRelations.cxx:19