 |
ATLAS Offline Software
|
Go to the documentation of this file.
8 #ifndef COLUMNAR_CORE_MOMENTUM_HELPERS_H
9 #define COLUMNAR_CORE_MOMENTUM_HELPERS_H
31 template<ContainerIdConcept CI1,ContainerIdConcept CI2,
typename CM>
45 template<ContainerIdConcept CI1,ContainerIdConcept CI2,
typename CM>
47 double dR,
bool useRapidity=
true )
51 const double dRapidity = std::abs(
deltaRapidity(momAcc1,
p1,momAcc2,
p2,useRapidity) );
a handle to hold a IMomentumAccessors object
double deltaPhi(double phiA, double phiB)
delta Phi in range [-pi,pi[
double deltaPhi(double phiA, double phiB)
delta Phi in range [-pi,pi[
double deltaR2(double rapidity1, double phi1, double rapidity2, double phi2)
from bare rapidity,phi
bool dPhi(const xAOD::TauJet &tau, const xAOD::CaloVertexedTopoCluster &cluster, float &out)
bool greater(double a, double b)
Compare two FP numbers, working around x87 precision issues.
double rapidity(ObjectId< CI, CM > object) const
double phi(ObjectId< CI, CM > object) const
bool isInDeltaR(const MomentumAccessors< CI1, CM > &momAcc1, ObjectId< CI1, CM > p1, const MomentumAccessors< CI2, CM > &momAcc2, ObjectId< CI2, CM > p2, double dR, bool useRapidity=true)
Check if 2 particles are in a cone.
a class representing a single object (electron, muons, etc.)
std::vector< std::string > remainder(const std::vector< std::string > &v1, const std::vector< std::string > &v2)
double deltaRapidity(const MomentumAccessors< CI1, CM > &momAcc1, ObjectId< CI1, CM > p1, const MomentumAccessors< CI2, CM > &momAcc2, ObjectId< CI2, CM > p2, bool useRapidity=true)
Computes efficiently .
double eta(ObjectId< CI, CM > object) const