FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairRKPropagator Class Reference

#include <FairRKPropagator.h>

Inheritance diagram for FairRKPropagator:
FairPropagator

Public Member Functions

double Step (double Charge, double *vecRKIn, double *vecOut)
 
double OneStepRungeKutta (double charge, double step, double *vect, double *vout)
 
 FairRKPropagator (FairField *field)
 
void Propagate (double Charge, double *vecRKIn, double *Pos)
 
void PropagateToPlane (double Charge, double *vecRKIn, double *vec1, double *vec2, double *vec3, double *vecOut)
 
virtual bool SetDestinationPlane (const TVector3 &v0, const TVector3 &v1, const TVector3 &v2)
 
virtual bool SetOriginPlane (const TVector3 &v0, const TVector3 &v1)
 
virtual bool SetDestinationVolume (std::string volName, int copyNo, int option)
 
virtual bool SetDestinationLength (float length)
 
virtual bool SetPropagateOnlyParameters ()
 
virtual bool Propagate (FairTrackParH *TStart, FairTrackParH *TEnd, int PDG)
 
virtual bool Propagate (FairTrackParP *TStart, FairTrackParH *TEnd, int PDG)
 
virtual bool Propagate (FairTrackParP *TStart, FairTrackParP *TEnd, int PDG)
 
virtual bool Propagate (FairTrackParH *TStart, FairTrackParP *TEnd, int PDG)
 
virtual bool Propagate (float *x1, float *p1, float *x2, float *p2, int PDG)
 
virtual bool SetPCAPropagation (int pca, int dir=1, FairTrackParP *par=nullptr)
 
virtual PCAOutputStruct FindPCA (int PCA, int PDGCode, TVector3 Point, TVector3 Wire1, TVector3 Wire2, double MaxDistance)
 
virtual ~FairRKPropagator ()
 
 ClassDef (FairRKPropagator, 2)
 
- Public Member Functions inherited from FairPropagator
 FairPropagator ()
 
 FairPropagator (const TString &name, const TString &title)
 
virtual ~FairPropagator ()
 
virtual void Init (FairTrackPar *)
 
virtual bool SetDestinationPlane ([[gnu::unused]] const TVector3 &v0, [[gnu::unused]] const TVector3 &v1, [[gnu::unused]] const TVector3 &v2)
 
virtual bool SetOriginPlane ([[gnu::unused]] const TVector3 &v0, [[gnu::unused]] const TVector3 &v1)
 
virtual bool SetDestinationVolume ([[gnu::unused]] std::string volName, [[gnu::unused]] int copyNo, [[gnu::unused]] int option)
 
virtual bool SetDestinationLength ([[gnu::unused]] float length)
 
virtual bool Propagate ([[gnu::unused]] FairTrackParH *TStart, [[gnu::unused]] FairTrackParH *TEnd, [[gnu::unused]] int PDG)
 
virtual bool Propagate ([[gnu::unused]] FairTrackParP *TStart, [[gnu::unused]] FairTrackParH *TEnd, [[gnu::unused]] int PDG)
 
virtual bool Propagate ([[gnu::unused]] FairTrackParP *TStart, [[gnu::unused]] FairTrackParP *TEnd, [[gnu::unused]] int PDG)
 
virtual bool Propagate ([[gnu::unused]] FairTrackParH *TStart, [[gnu::unused]] FairTrackParP *TEnd, [[gnu::unused]] int PDG)
 
virtual bool Propagate ([[gnu::unused]] float *x1, [[gnu::unused]] float *p1, [[gnu::unused]] float *x2, [[gnu::unused]] float *p2, [[gnu::unused]] int PDG)
 
virtual bool SetPCAPropagation ([[gnu::unused]] int pca, [[gnu::unused]] int dir=1, [[gnu::unused]] FairTrackParP *par=nullptr)
 
virtual PCAOutputStruct FindPCA ([[gnu::unused]] int PCA, [[gnu::unused]] int PDGCode, [[gnu::unused]] TVector3 Point, [[gnu::unused]] TVector3 Wire1, [[gnu::unused]] TVector3 Wire2, [[gnu::unused]] double MaxDistance)
 
 ClassDef (FairPropagator, 1)
 

Detailed Description

Definition at line 37 of file FairRKPropagator.h.

Constructor & Destructor Documentation

FairRKPropagator::FairRKPropagator ( FairField field)

Definition at line 28 of file FairRKPropagator.cxx.

FairRKPropagator::~FairRKPropagator ( )
virtual

Definition at line 44 of file FairRKPropagator.cxx.

Member Function Documentation

FairRKPropagator::ClassDef ( FairRKPropagator  ,
 
)
PCAOutputStruct FairRKPropagator::FindPCA ( int  PCA,
int  PDGCode,
TVector3  Point,
TVector3  Wire1,
TVector3  Wire2,
double  MaxDistance 
)
virtual

Definition at line 235 of file FairRKPropagator.cxx.

double FairRKPropagator::OneStepRungeKutta ( double  charge,
double  step,
double *  vect,
double *  vout 
)

  • *
  • Runge-Kutta method for tracking a particle through a magnetic *
  • field. Uses Nystroem algorithm (See Handbook Nat. Bur. of *
  • Standards, procedure 25.5.20) *
  • *
  • Input parameters *
  • CHARGE Particle charge *
  • STEP Step size *
  • VECT Initial co-ords,direction cosines,momentum *
  • Output parameters *
  • VOUT Output co-ords,direction cosines,momentum *
  • User routine called *
  • CALL GUFLD(X,F) *
  • *
  • ==>Called by : <USER>, GUSWIM *
  • Authors R.Brun, M.Hansroul ********* *
  • V.Perevoztchikov (CUT STEP implementation) *
  • *
  • *

Definition at line 506 of file FairRKPropagator.cxx.

void FairRKPropagator::Propagate ( double  Charge,
double *  vecRKIn,
double *  Pos 
)

Propagate to closest approach of a point Particle charge maximum Step size Initial co-ords,direction cosines,momentum Output co-ords,direction cosines,momentum

Definition at line 444 of file FairRKPropagator.cxx.

bool FairRKPropagator::Propagate ( FairTrackParH TStart,
FairTrackParH TEnd,
int  PDG 
)
virtual

Definition at line 55 of file FairRKPropagator.cxx.

bool FairRKPropagator::Propagate ( FairTrackParP TStart,
FairTrackParH TEnd,
int  PDG 
)
virtual

Definition at line 84 of file FairRKPropagator.cxx.

bool FairRKPropagator::Propagate ( FairTrackParP TStart,
FairTrackParP TEnd,
int  PDG 
)
virtual

Definition at line 113 of file FairRKPropagator.cxx.

bool FairRKPropagator::Propagate ( FairTrackParH TStart,
FairTrackParP TEnd,
int  PDG 
)
virtual

Definition at line 142 of file FairRKPropagator.cxx.

bool FairRKPropagator::Propagate ( float *  x1,
float *  p1,
float *  x2,
float *  p2,
int  PDG 
)
virtual

Definition at line 171 of file FairRKPropagator.cxx.

void FairRKPropagator::PropagateToPlane ( double  Charge,
double *  vecRKIn,
double *  vec1,
double *  vec2,
double *  vec3,
double *  vecOut 
)

Propagate to closest approach of a plane Particle charge Initial co-ords,direction cosines,momentum vector on the plane vector on the plane point on the plane Output co-ords,direction cosines,momentum

vec1 & vec2 are vectors on the plane vec3 a point on the plane

Definition at line 359 of file FairRKPropagator.cxx.

bool FairRKPropagator::SetDestinationLength ( float  length)
virtual

New method to set the length to propagate particles to Track length

Definition at line 215 of file FairRKPropagator.cxx.

bool FairRKPropagator::SetDestinationPlane ( const TVector3 &  v0,
const TVector3 &  v1,
const TVector3 &  v2 
)
virtual

New method to set the plane to propagate particles to v1 v2 Plane defining vectors

Definition at line 192 of file FairRKPropagator.cxx.

bool FairRKPropagator::SetDestinationVolume ( std::string  volName,
int  copyNo,
int  option 
)
virtual

New method to set the volume to propagate particles to Volume name Copy number Option

Definition at line 207 of file FairRKPropagator.cxx.

bool FairRKPropagator::SetOriginPlane ( const TVector3 &  v0,
const TVector3 &  v1 
)
virtual

New method to set the plane to propagate particles from v1 Plane defining vectors

Definition at line 201 of file FairRKPropagator.cxx.

bool FairRKPropagator::SetPCAPropagation ( int  pca,
int  dir = 1,
FairTrackParP par = nullptr 
)
virtual

Definition at line 222 of file FairRKPropagator.cxx.

virtual bool FairRKPropagator::SetPropagateOnlyParameters ( )
inlinevirtual

New method to set to propagate only parameters

Reimplemented from FairPropagator.

Definition at line 107 of file FairRKPropagator.h.

double FairRKPropagator::Step ( double  Charge,
double *  vecRKIn,
double *  vecOut 
)

Definition at line 483 of file FairRKPropagator.cxx.


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