Belle II Software development
TRGCDCHelix Class Reference

TRGCDCHelix parameter class. More...

#include <Helix.h>

Public Member Functions

 TRGCDCHelix (const HepGeom::Point3D< double > &pivot, const CLHEP::HepVector &a, const CLHEP::HepSymMatrix &Ea)
 Constructor with pivot, helix parameter a, and its error matrix.
 
 TRGCDCHelix (const HepGeom::Point3D< double > &pivot, const CLHEP::HepVector &a)
 Constructor without error matrix.
 
 TRGCDCHelix (const HepGeom::Point3D< double > &position, const CLHEP::Hep3Vector &momentum, double charge)
 Constructor with position, momentum, and charge.
 
 TRGCDCHelix (const TRGCDCHelix &)=default
 Default copy constructor.
 
virtual ~TRGCDCHelix ()
 Destructor.
 
const HepGeom::Point3D< double > & center (void) const
 returns position of helix center(z = 0.);
 
const HepGeom::Point3D< double > & pivot (void) const
 returns pivot position.
 
double radius (void) const
 returns radious of helix.
 
HepGeom::Point3D< double > x (double dPhi=0.) const
 returns position after rotating angle dPhi in phi direction.
 
double * x (double dPhi, double p[3]) const
 returns position after rotating angle dPhi in phi direction.
 
HepGeom::Point3D< double > x (double dPhi, CLHEP::HepSymMatrix &Ex) const
 returns position and convariance matrix(Ex) after rotation.
 
CLHEP::Hep3Vector direction (double dPhi=0.) const
 returns direction vector after rotating angle dPhi in phi direction.
 
CLHEP::Hep3Vector momentum (double dPhi=0.) const
 returns momentum vector after rotating angle dPhi in phi direction.
 
CLHEP::Hep3Vector momentum (double dPhi, CLHEP::HepSymMatrix &Em) const
 returns momentum vector after rotating angle dPhi in phi direction.
 
CLHEP::HepLorentzVector momentum (double dPhi, double mass) const
 returns 4momentum vector after rotating angle dPhi in phi direction.
 
CLHEP::HepLorentzVector momentum (double dPhi, double mass, CLHEP::HepSymMatrix &Em) const
 returns 4momentum vector after rotating angle dPhi in phi direction.
 
CLHEP::HepLorentzVector momentum (double dPhi, double mass, HepGeom::Point3D< double > &x, CLHEP::HepSymMatrix &Emx) const
 returns 4momentum vector after rotating angle dPhi in phi direction.
 
double dr (void) const
 returns dr.
 
double phi0 (void) const
 returns phi0.
 
double kappa (void) const
 returns kappa.
 
double dz (void) const
 returns dz.
 
double tanl (void) const
 returns tanl.
 
double curv (void) const
 returns curvurture.
 
double sinPhi0 (void) const
 returns sin(phi0).
 
double cosPhi0 (void) const
 return cos(phi0).
 
const CLHEP::HepVector & a (void) const
 returns helix parameters.
 
const CLHEP::HepSymMatrix & Ea (void) const
 returns error matrix.
 
const CLHEP::HepVector & a (const CLHEP::HepVector &newA)
 sets helix parameters.
 
const CLHEP::HepSymMatrix & Ea (const CLHEP::HepSymMatrix &newdA)
 sets helix paramters and error matrix.
 
const HepGeom::Point3D< double > & pivot (const HepGeom::Point3D< double > &newPivot)
 sets pivot position.
 
void set (const HepGeom::Point3D< double > &pivot, const CLHEP::HepVector &a, const CLHEP::HepSymMatrix &Ea)
 sets helix pivot position, parameters, and error matrix.
 
void ignoreErrorMatrix (void)
 unsets error matrix. Error calculations will be ignored after this function call until an error matrix be set again. 0 matrix will be return as a return value for error matrix when you call functions which returns an error matrix.
 
double bFieldZ (void) const
 returns z componet of the magnetic field.
 
double bFieldZ (double)
 sets and returns z componet of the magnetic field.
 
TRGCDCHelixoperator= (const TRGCDCHelix &)
 Copy operator.
 
CLHEP::HepMatrix delApDelA (const CLHEP::HepVector &ap) const
 Mathmatical functions.
 
CLHEP::HepMatrix delXDelA (double phi) const
 Mathmatical functions.
 
CLHEP::HepMatrix delMDelA (double phi) const
 Mathmatical functions.
 
CLHEP::HepMatrix del4MDelA (double phi, double mass) const
 Mathmatical functions.
 
CLHEP::HepMatrix del4MXDelA (double phi, double mass) const
 Mathmatical functions.
 

Static Public Member Functions

static void set_limits (const CLHEP::HepVector &a_min, const CLHEP::HepVector &a_max)
 set limits for helix parameters
 
static bool set_exception (bool)
 set to throw exception or not
 
static bool set_print (bool)
 set to print debug info or not
 

Static Public Attributes

static const double ConstantAlpha = 222.376063
 Constant alpha for uniform field.
 

Private Member Functions

void updateCache (void)
 update Caches
 
void checkValid (void)
 check validity
 
void debugPrint (void) const
 print debug info
 
void debugTRGCDCHelix (void) const
 function not defined
 

Private Attributes

bool m_matrixValid
 matrix validity
 
bool m_helixValid
 helix validity
 
double m_bField
 magnetic field
 
double m_alpha
 alpha parameter
 
HepGeom::Point3D< double > m_pivot
 pivot
 
CLHEP::HepVector m_a
 a HepVector parameter
 
CLHEP::HepSymMatrix m_Ea
 Ea HepSymMatrix parameter.
 
HepGeom::Point3D< double > m_center
 caches
 
double m_cp
 caches
 
double m_sp
 caches
 
double m_pt
 caches
 
double m_r
 caches
 
double m_ac [5]
 caches
 

Static Private Attributes

static CLHEP::HepVector ms_amin
 limits for helix parameters
 
static CLHEP::HepVector ms_amax
 limits for helix parameters
 
static bool ms_check_range
 range in checked or not
 
static bool ms_print_debug
 print debug info or not
 
static bool ms_throw_exception
 throw exception or not
 
static const std::string invalidhelix
 string of invalid helix
 

Detailed Description

TRGCDCHelix parameter class.

Definition at line 34 of file Helix.h.

Member Data Documentation

◆ m_a

CLHEP::HepVector m_a
private

a HepVector parameter

Definition at line 216 of file Helix.h.

◆ m_ac

double m_ac[5]
private

caches

Definition at line 232 of file Helix.h.

◆ m_alpha

double m_alpha
private

alpha parameter

Definition at line 212 of file Helix.h.

◆ m_bField

double m_bField
private

magnetic field

Definition at line 210 of file Helix.h.

◆ m_center

HepGeom::Point3D<double> m_center
private

caches

Definition at line 222 of file Helix.h.

◆ m_cp

double m_cp
private

caches

Definition at line 224 of file Helix.h.

◆ m_Ea

CLHEP::HepSymMatrix m_Ea
private

Ea HepSymMatrix parameter.

Definition at line 218 of file Helix.h.

◆ m_helixValid

bool m_helixValid
private

helix validity

Definition at line 208 of file Helix.h.

◆ m_matrixValid

bool m_matrixValid
private

matrix validity

Definition at line 206 of file Helix.h.

◆ m_pivot

HepGeom::Point3D<double> m_pivot
private

pivot

Definition at line 214 of file Helix.h.

◆ m_pt

double m_pt
private

caches

Definition at line 228 of file Helix.h.

◆ m_r

double m_r
private

caches

Definition at line 230 of file Helix.h.

◆ m_sp

double m_sp
private

caches

Definition at line 226 of file Helix.h.


The documentation for this class was generated from the following files: