|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef FOURMOM_P4IMPLIPTCOTTHPHIM_H
8 #define FOURMOM_P4IMPLIPTCOTTHPHIM_H
14 #include "CLHEP/Vector/LorentzVector.h"
15 #include "CLHEP/Units/SystemOfUnits.h"
61 const double phi,
const double m );
99 virtual void setIPt(
const double theIPt );
101 virtual void setCotTh(
const double theCotTh );
103 virtual void setPhi(
const double thePhi );
105 virtual void setM(
const double theM );
115 virtual void set4Mom(
const CLHEP::HepLorentzVector & theHlv );
156 m_cotTh ( rhs.m_cotTh ),
167 m_iPt ( std::fabs(iPt) ),
181 m_iPt ( 1./hlv.
perp() ),
182 m_cotTh ( hlv.
pz() / hlv.
perp() ),
191 m_cotTh( p4.cotTh() ),
200 m_cotTh( p4->cotTh() ),
279 m_error = std::make_unique< ErrorType>(
err, *
this);
283 #endif // FOURMOM_P4IMPLIPTCOTTHPHIM_H
std::unique_ptr< ErrorType > m_error
error matrix pointer
virtual const I4MomentumError * errors() const
virtual void setM(const double theM)
set m data member
FourMomentumError< P4ImplIPtCotThPhiM > ErrorType
Scalar phi() const
phi method
Scalar perp() const
perp method - perpenticular length
virtual void setCotTh(const double theCotTh)
set cot(theta) data member
virtual void setPhi(const double thePhi)
set phi data member
virtual void set4Mom(const I4Momentum &theI4Mom)
set all 4-mom from another I4Momentum reference
CLHEP::HepLorentzVector hlv() const
virtual double cotTh() const =0
cottan theta
void setErrors(const ErrorMatrixPtCotThPhiM &err)
set the errors
virtual double phi() const =0
phi in [-pi,pi[
I4Momentum::Kind kind() const
virtual ~P4ImplIPtCotThPhiM()
virtual destructor needed by Pool
double m() const
{@ a la I4Momentum -like interface
P4ImplIPtCotThPhiM & operator=(const P4ImplIPtCotThPhiM &rhs)
Assignment operator.
virtual double m() const =0
mass
P4ImplIPtCotThPhiM()
Default constructor:
virtual double iPt() const =0
inverse of transverse momentum
virtual void setIPt(const double theIPt)
set inverse pT data member