CMS 3D CMS Logo

ParametrizationHelper.h
Go to the documentation of this file.
1 #ifndef DataFormats_PatCandidates_interface_ParametrizationHelper_h
2 #define DataFormats_PatCandidates_interface_ParametrizationHelper_h
3 
5 #include <string>
6 
7 namespace pat {
8  namespace helper {
9  namespace ParametrizationHelper {
10 
13  return (static_cast<uint32_t>(parametrization) & 0x0F);
14  }
15 
18 
21 
27  const math::PtEtaPhiMLorentzVector &initialP4);
28 
34  const math::XYZTLorentzVector &initialP4);
35 
39 
43 
46  AlgebraicVector4 &pars,
48 
51  AlgebraicVector4 &pars,
53 
55  template <typename T>
57  AlgebraicVector4 &pars,
58  const T &p4);
59 
61 
70  const math::XYZTLorentzVector &p4ini,
71  const math::XYZTLorentzVector &p4fin);
72 
74 
83  const math::PtEtaPhiMLorentzVector &p4ini,
84  const math::PtEtaPhiMLorentzVector &p4fin);
85 
88 
91 
94 
101  const AlgebraicVector4 &v4,
102  const math::PtEtaPhiMLorentzVector &initialP4);
103  } // namespace ParametrizationHelper
104  } // namespace helper
105 } // namespace pat
106 
107 #endif
pat::helper::ParametrizationHelper::diffToParameters
AlgebraicVector4 diffToParameters(pat::CandKinResolution::Parametrization parametrization, const math::XYZTLorentzVector &p4ini, const math::XYZTLorentzVector &p4fin)
Expresses the difference between two 4-momentum vectors as a shift in coordinates in a given frame.
Definition: ParametrizationHelper.cc:366
pat::helper::ParametrizationHelper::dimension
uint32_t dimension(pat::CandKinResolution::Parametrization parametrization)
Returns the number of free parameters in a parametrization (3 or 4)
Definition: ParametrizationHelper.h:12
pat::helper::ParametrizationHelper::setParametersFromAnyVector
void setParametersFromAnyVector(pat::CandKinResolution::Parametrization parametrization, AlgebraicVector4 &pars, const T &p4)
For internal use only, so we provide only the interface. Use the 'setParametersFromP4'.
Definition: ParametrizationHelper.cc:214
pat::helper::ParametrizationHelper::setParametersFromP4
void setParametersFromP4(pat::CandKinResolution::Parametrization parametrization, AlgebraicVector4 &pars, const math::XYZTLorentzVector &p4)
Set the values of the parameters for a given 4-momentum.
Definition: ParametrizationHelper.cc:309
CandKinResolution.h
pat::helper::ParametrizationHelper::isMassConstrained
bool isMassConstrained(pat::CandKinResolution::Parametrization parametrization)
If this parametrization has a mass constraint (including the 'isAlwaysMassless' case)
Definition: ParametrizationHelper.cc:467
parameters
parameters
Definition: BeamSpot_PayloadInspector.cc:14
pat::helper::ParametrizationHelper::p4fromParameters
math::XYZTLorentzVector p4fromParameters(pat::CandKinResolution::Parametrization parametrization, const AlgebraicVector4 &parameters, const math::XYZTLorentzVector &initialP4)
Definition: ParametrizationHelper.cc:161
pat::helper::ParametrizationHelper::isAlwaysMassive
bool isAlwaysMassive(pat::CandKinResolution::Parametrization parametrization)
Is this parametrization usable only with massive objects?
Definition: ParametrizationHelper.cc:442
pat::helper::ParametrizationHelper::fromString
pat::CandKinResolution::Parametrization fromString(const std::string &name)
Convert a name into a parametrization code.
Definition: ParametrizationHelper.cc:14
pat::CandKinResolution::Parametrization
Parametrization
Definition: CandKinResolution.h:35
pat::helper::ParametrizationHelper::name
const char * name(pat::CandKinResolution::Parametrization param)
Convert a number into a string.
Definition: ParametrizationHelper.cc:39
stringResolutionProvider_cfi.parametrization
parametrization
specify parametrization (see SWGuidePATKinematicResolutions for more details)
Definition: stringResolutionProvider_cfi.py:6
pat::helper::ParametrizationHelper::parametersFromP4
AlgebraicVector4 parametersFromP4(pat::CandKinResolution::Parametrization parametrization, const math::XYZTLorentzVector &p4)
Returns a vector of coordinates values given a coordinate frame and a 4-vector.
Definition: ParametrizationHelper.cc:322
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
pat::helper::ParametrizationHelper::isPhysical
bool isPhysical(pat::CandKinResolution::Parametrization parametrization, const AlgebraicVector4 &v4, const math::PtEtaPhiMLorentzVector &initialP4)
Definition: ParametrizationHelper.cc:492
helper
Definition: helper.py:1
p4
double p4[4]
Definition: TauolaWrapper.h:92
pat
Definition: HeavyIon.h:7
pat::helper::ParametrizationHelper::isAlwaysMassless
bool isAlwaysMassless(pat::CandKinResolution::Parametrization parametrization)
Is this parametrization usable only with massless objects?
Definition: ParametrizationHelper.cc:417
AlgebraicVector4
ROOT::Math::SVector< double, 4 > AlgebraicVector4
Definition: AlgebraicROOTObjects.h:13
T
long double T
Definition: Basic3DVectorLD.h:48
math::XYZTLorentzVector
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
math::PtEtaPhiMLorentzVector
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
Definition: LorentzVector.h:25
pat::helper::ParametrizationHelper::polarP4fromParameters
math::PtEtaPhiMLorentzVector polarP4fromParameters(pat::CandKinResolution::Parametrization parametrization, const AlgebraicVector4 &parameters, const math::PtEtaPhiMLorentzVector &initialP4)
Definition: ParametrizationHelper.cc:74