P4IPtCotThPhiM is a concrete class with 4-momentum behavior for which 1/Pt, cottan(tehta), phi and M are data members.
More...
#include <P4IPtCotThPhiM.h>
|
| | P4IPtCotThPhiM (const double iPt, const double cotTh, const double phi, const double m) |
| | constructor with all data members
|
| | P4IPtCotThPhiM () |
| | default constructor
|
| | P4IPtCotThPhiM (const CLHEP::HepLorentzVector &theHlv) |
| | constructor from hlv to allow conversion from hlv
|
| | P4IPtCotThPhiM (const I4Momentum &theI4M) |
| | constructor from any I4Momentum reference
|
| | P4IPtCotThPhiM (const I4Momentum *const pI4M) |
| | constructor from any I4Momentum pointer
|
| virtual double | iPt () const |
| | get inverse pT data member
|
| virtual double | cotTh () const |
| | get cot(theta) data member
|
| virtual double | phi () const |
| | get phi data member
|
| virtual double | m () const |
| | get m data member
|
| virtual void | setIPt (double theIPt) |
| | set inverse pT data member
|
| virtual void | setCotTh (double theCotTh) |
| | set cot(theta) data member
|
| virtual void | setPhi (double thePhi) |
| | set phi data member
|
| virtual void | setM (double theM) |
| | set m data member
|
| virtual void | set4Mom (const I4Momentum &theI4Mom) |
| | set all 4-mom from another I4Momentum reference
|
| virtual void | set4Mom (const I4Momentum *const theI4Mom) |
| | set all 4-mom from another I4Momentum pointer
|
| virtual void | set4Mom (const CLHEP::HepLorentzVector &theHlv) |
| | set all 4-mom from CLHEP HepLorentzVector
|
| virtual const I4MomentumError * | errors () const |
| | Access to errors, if available; returns 0 if no errors.
|
| virtual double | e () const |
| | energy
|
| virtual double | eta () const |
| | pseudo rapidity
|
| virtual double | px () const |
| | x component of momentum
|
| virtual double | py () const |
| | y component of momentum
|
| virtual double | pz () const |
| | z component of momentum
|
| virtual double | et () const |
| | transverse energy defined to be e*sin(theta)
|
| virtual double | m2 () const |
| | mass squared
|
| virtual double | p () const |
| | momentum magnitude
|
| virtual double | p2 () const |
| | square of momentum magnitude
|
| virtual double | pt () const |
| | transverse momentum
|
| virtual double | rapidity () const |
| | rapidity
|
| virtual double | cosPhi () const |
| | cosinus phi
|
| virtual double | sinPhi () const |
| | sinus phi
|
| virtual double | tanTh () const |
| | tan theta
|
| virtual double | cosTh () const |
| | cosinus theta
|
| virtual double | sinTh () const |
| | sinus theta
|
| virtual CLHEP::HepLorentzVector | hlv () const |
| | CLHEP HepLorentzVector.
|
| I4Momentum::Kind | kind () const |
| | tells what kind of P4XYZT this is
|
| virtual std::ostream & | dump (std::ostream &out) const |
| | Print I4Momentum content.
|
P4IPtCotThPhiM is a concrete class with 4-momentum behavior for which 1/Pt, cottan(tehta), phi and M are data members.
- Author
- David Rousseau rouss.nosp@m.eau@.nosp@m.lal.i.nosp@m.n2p3.nosp@m..fr
Definition at line 25 of file P4IPtCotThPhiM.h.
◆ Kind
| Enumerator |
|---|
| P4EETAPHIM | |
| P4IPTCOTTHPHIM | |
| P4PTETAPHIM | |
| P4PXPYPZE | |
| UNKNOWN | |
Definition at line 33 of file I4Momentum.h.
◆ P4IPtCotThPhiM() [1/5]
| P4IPtCotThPhiM::P4IPtCotThPhiM |
( |
const double | iPt, |
|
|
const double | cotTh, |
|
|
const double | phi, |
|
|
const double | m ) |
constructor with all data members
Definition at line 7 of file P4IPtCotThPhiM.cxx.
7 :
9{
10
12
13
14
15
16
17
18}
virtual double m() const
get m data member
virtual double cotTh() const
get cot(theta) data member
virtual double phi() const
get phi data member
virtual double iPt() const
get inverse pT data member
◆ P4IPtCotThPhiM() [2/5]
| P4IPtCotThPhiM::P4IPtCotThPhiM |
( |
| ) |
|
|
inline |
default constructor
Definition at line 80 of file P4IPtCotThPhiM.h.
80 :
81 P4IPtCotThPhiMBase( ),
82 m_iPt ( 0./CLHEP::GeV ),
86{}
◆ P4IPtCotThPhiM() [3/5]
| P4IPtCotThPhiM::P4IPtCotThPhiM |
( |
const CLHEP::HepLorentzVector & | theHlv | ) |
|
|
inline |
constructor from hlv to allow conversion from hlv
Definition at line 88 of file P4IPtCotThPhiM.h.
89{
91}
virtual void set4Mom(const I4Momentum &theI4Mom)
set all 4-mom from another I4Momentum reference
◆ P4IPtCotThPhiM() [4/5]
| P4IPtCotThPhiM::P4IPtCotThPhiM |
( |
const I4Momentum & | theI4M | ) |
|
|
inline |
◆ P4IPtCotThPhiM() [5/5]
| P4IPtCotThPhiM::P4IPtCotThPhiM |
( |
const I4Momentum *const | pI4M | ) |
|
|
inline |
◆ cosPhi()
| double P4IPtCotThPhiMBase::cosPhi |
( |
| ) |
const |
|
virtualinherited |
◆ cosTh()
| double P4IPtCotThPhiMBase::cosTh |
( |
| ) |
const |
|
virtualinherited |
cosinus theta
Implements I4Momentum.
Definition at line 47 of file P4IPtCotThPhiMBase.cxx.
48{
49 const double theCotTh=this->
cotTh();
50 const double theCotTh2=theCotTh*theCotTh;
51 const double theCosTh=std::sqrt(theCotTh2/(1.+theCotTh2));
52 if (theCotTh>=0) {
53 return theCosTh;
54 }
55 else{
56 return -theCosTh;
57 }
58}
virtual double cotTh() const =0
cottan theta
◆ cotTh()
| double P4IPtCotThPhiM::cotTh |
( |
| ) |
const |
|
inlinevirtual |
◆ dump()
| std::ostream & P4IPtCotThPhiMBase::dump |
( |
std::ostream & | out | ) |
const |
|
virtualinherited |
Print I4Momentum content.
Implements I4Momentum.
Definition at line 126 of file P4IPtCotThPhiMBase.cxx.
127{
128
129 std::stringstream outx;
130 outx << "[ipt,cotTh,phi,m] ="
131 << std::right << std::scientific << std::setprecision(8)
132 << std::setw(16) << this->
iPt()
133 << std::setw(16) << this->
cotTh()
134 << std::setw(16) << this->
phi()
135 << std::setw(16) << this->
m();
136
138
140}
virtual double m() const =0
mass
virtual double iPt() const =0
inverse of transverse momentum
◆ e()
| double P4IPtCotThPhiMBase::e |
( |
| ) |
const |
|
virtualinherited |
energy
Implements I4Momentum.
Definition at line 61 of file P4IPtCotThPhiMBase.cxx.
62{
63 const double theM=this->
m();
64 const double theP=this->
p();
65 if (theM==0.) return theP ;
66 else return std::sqrt(theP*theP+theM*theM);
67}
virtual double p() const
momentum magnitude
◆ errors()
◆ et()
| double P4IPtCotThPhiMBase::et |
( |
| ) |
const |
|
virtualinherited |
transverse energy defined to be e*sin(theta)
Implements I4Momentum.
Definition at line 69 of file P4IPtCotThPhiMBase.cxx.
70{
71 const double theCotTh=this->
cotTh();
72 return this->
e()/std::sqrt(1+theCotTh*theCotTh);
73}
virtual double e() const
energy
◆ eta()
| double P4IPtCotThPhiMBase::eta |
( |
| ) |
const |
|
virtualinherited |
pseudo rapidity
Implements I4Momentum.
Definition at line 76 of file P4IPtCotThPhiMBase.cxx.
77{
78 const double theCotTh=this->
cotTh();
79 const double aux=std::sqrt(1+theCotTh*theCotTh);
80 return -0.5*
log((aux-theCotTh)/(aux+theCotTh));
81 }
◆ hlv()
| CLHEP::HepLorentzVector P4IPtCotThPhiMBase::hlv |
( |
| ) |
const |
|
virtualinherited |
CLHEP HepLorentzVector.
Implements I4Momentum.
Definition at line 113 of file P4IPtCotThPhiMBase.cxx.
114{
115
116 const double thePt=this->
pt();
117 const double theM=this->
m();
118 const double thePx=thePt*this->
cosPhi();
119 const double thePy=thePt*this->
sinPhi();
120 const double thePz=thePt*this->
cotTh();
121 const double theE=std::sqrt(thePt*thePt+thePz*thePz+theM*theM);
122
123 return CLHEP::HepLorentzVector(thePx,thePy,thePz,theE);
124}
virtual double pt() const
transverse momentum
virtual double sinPhi() const
sinus phi
virtual double cosPhi() const
cosinus phi
◆ iPt()
| double P4IPtCotThPhiM::iPt |
( |
| ) |
const |
|
inlinevirtual |
◆ kind()
◆ m()
| double P4IPtCotThPhiM::m |
( |
void | | ) |
const |
|
inlinevirtual |
◆ m2()
| double P4IPtCotThPhiMBase::m2 |
( |
| ) |
const |
|
virtualinherited |
◆ p()
| double P4IPtCotThPhiMBase::p |
( |
| ) |
const |
|
virtualinherited |
◆ p2()
| double P4IPtCotThPhiMBase::p2 |
( |
| ) |
const |
|
virtualinherited |
square of momentum magnitude
Implements I4Momentum.
Definition at line 24 of file P4IPtCotThPhiMBase.cxx.
25{
26 const double theCotTh=this->
cotTh();
27 const double theI_Pt=this->
iPt();
28 return (1+theCotTh*theCotTh)/(theI_Pt*theI_Pt) ;
29}
◆ phi()
| double P4IPtCotThPhiM::phi |
( |
void | | ) |
const |
|
inlinevirtual |
◆ pt()
| double P4IPtCotThPhiMBase::pt |
( |
| ) |
const |
|
virtualinherited |
◆ px()
| double P4IPtCotThPhiMBase::px |
( |
| ) |
const |
|
virtualinherited |
◆ py()
| double P4IPtCotThPhiMBase::py |
( |
| ) |
const |
|
virtualinherited |
◆ pz()
| double P4IPtCotThPhiMBase::pz |
( |
| ) |
const |
|
virtualinherited |
◆ rapidity()
| double P4IPtCotThPhiMBase::rapidity |
( |
| ) |
const |
|
virtualinherited |
rapidity
Implements I4Momentum.
Definition at line 84 of file P4IPtCotThPhiMBase.cxx.
85 {
86 const double theE=this->
e();
87 const double thePz=this->
pz();
88 return 0.5*std::log((theE+thePz)/(theE-thePz));
89 }
virtual double pz() const
z component of momentum
◆ set4Mom() [1/3]
| void P4IPtCotThPhiM::set4Mom |
( |
const CLHEP::HepLorentzVector & | theHlv | ) |
|
|
inlinevirtual |
◆ set4Mom() [2/3]
| void P4IPtCotThPhiM::set4Mom |
( |
const I4Momentum & | theI4Mom | ) |
|
|
inlinevirtual |
◆ set4Mom() [3/3]
| void P4IPtCotThPhiM::set4Mom |
( |
const I4Momentum *const | theI4Mom | ) |
|
|
inlinevirtual |
◆ setCotTh()
| void P4IPtCotThPhiM::setCotTh |
( |
double | theCotTh | ) |
|
|
inlinevirtual |
◆ setIPt()
| void P4IPtCotThPhiM::setIPt |
( |
double | theIPt | ) |
|
|
inlinevirtual |
◆ setM()
| void P4IPtCotThPhiM::setM |
( |
double | theM | ) |
|
|
inlinevirtual |
◆ setPhi()
| void P4IPtCotThPhiM::setPhi |
( |
double | thePhi | ) |
|
|
inlinevirtual |
◆ sinPhi()
| double P4IPtCotThPhiMBase::sinPhi |
( |
| ) |
const |
|
virtualinherited |
◆ sinTh()
| double P4IPtCotThPhiMBase::sinTh |
( |
| ) |
const |
|
virtualinherited |
◆ tanTh()
| double P4IPtCotThPhiMBase::tanTh |
( |
| ) |
const |
|
virtualinherited |
◆ m_cotTh
| double P4IPtCotThPhiM::m_cotTh |
|
protected |
◆ m_iPt
| double P4IPtCotThPhiM::m_iPt |
|
protected |
◆ m_m
| double P4IPtCotThPhiM::m_m |
|
protected |
◆ m_phi
| double P4IPtCotThPhiM::m_phi |
|
protected |
The documentation for this class was generated from the following files: