Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SwimParticle Class Reference

#include <SwimParticle.h>

List of all members.

Public Member Functions

 SwimParticle ()
virtual ~SwimParticle ()
 SwimParticle (const TVector3 position, const TVector3 momentum, double mass=0.105658357 *Munits::GeV, double charge=-1.0)
const TVector3 GetInitPosition () const
const TVector3 GetPosition () const
const TVector3 GetMomentum () const
TVector3 GetDirection () const
double GetMomentumModulus () const
double GetEnergy () const
double GetMass () const
double GetCharge () const
double GetS () const
double GetRange () const
double GetVxB () const
void SetPosition (const TVector3 position)
void SetMomentum (const TVector3 momentum)
void SetMass (double mass)
void SetCharge (double charge)
void AddS (double s)
void AddRange (double range)
void AddVxB (double VxB)

Private Attributes

TVector3 fInitPosition
TVector3 fPosition
TVector3 fMomentum
double fMass
double fCharge
double fS
double fRange
double fVxB


Constructor & Destructor Documentation

SwimParticle::SwimParticle  )  [inline]
 

Definition at line 26 of file SwimParticle.h.

00026 {;}

virtual SwimParticle::~SwimParticle  )  [inline, virtual]
 

Definition at line 27 of file SwimParticle.h.

00027 {;}

SwimParticle::SwimParticle const TVector3  position,
const TVector3  momentum,
double  mass = 0.105658357 *Munits::GeV,
double  charge = -1.0
 

Definition at line 14 of file SwimParticle.cxx.

00017                                                   :
00018   fInitPosition(position),
00019   fPosition(position),
00020   fMomentum(momentum),
00021   fMass(mass),
00022   fCharge(charge),
00023   fS(0),
00024   fRange(0),
00025   fVxB(0)
00026 {}


Member Function Documentation

void SwimParticle::AddRange double  range  ) 
 

Definition at line 152 of file SwimParticle.cxx.

References fRange.

Referenced by SwimStepOnceAction::Perform(), SwimDefStepper::StepOnce(), GeoSwimmer::SwimBackward(), and GeoSwimmer::SwimForward().

00153 {
00154   fRange += range;
00155 }

void SwimParticle::AddS double  s  ) 
 

Definition at line 145 of file SwimParticle.cxx.

References fS.

Referenced by SwimStepOnceAction::Perform(), SwimDefStepper::StepOnce(), GeoSwimmer::SwimBackward(), and GeoSwimmer::SwimForward().

00146 {
00147   fS += s;
00148 }

void SwimParticle::AddVxB double  VxB  ) 
 

Definition at line 157 of file SwimParticle.cxx.

References fVxB.

Referenced by SwimDefStepper::StepOnce().

00158 {
00159   fVxB += VxB;
00160 }

double SwimParticle::GetCharge  )  const
 

Definition at line 89 of file SwimParticle.cxx.

Referenced by SwimG4Stepper::StepOnce(), SwimDefStepper::StepOnce(), AlgFitTrackSR::Swim(), AlgFitTrackCam::Swim(), DataFT::SwimAsSwimmer(), GeoSwimmer::SwimBackward(), and GeoSwimmer::SwimForward().

00090 { 
00091   return fCharge; 
00092 } 

TVector3 SwimParticle::GetDirection  )  const
 

Definition at line 51 of file SwimParticle.cxx.

References fMomentum, and GetMomentumModulus().

Referenced by SwimStepOnceAction::Perform(), SwimG4Stepper::StepOnce(), SwimZCondition::StepSize(), SwimSwimmer::Swim(), AlgFitTrackSR::Swim(), AlgFitTrackCam::Swim(), DataFT::SwimAsSwimmer(), and SwimObj3::SwimTo().

00052 {
00053   double modulus = SwimParticle::GetMomentumModulus();  
00054   if (modulus!=0.0)
00055     return TVector3(fMomentum.X()/modulus,
00056                     fMomentum.Y()/modulus,
00057                     fMomentum.Z()/modulus);
00058   else return TVector3(0.0,0.0,0.0);
00059 }

double SwimParticle::GetEnergy  )  const
 

Definition at line 72 of file SwimParticle.cxx.

References fMass, and fMomentum.

Referenced by TestSwimmer::Ana(), SwimPrintStepAction::Perform(), and SwimdEdxAction::Perform().

00073 {
00074   double momentumSqr = fMomentum.X()*fMomentum.X()
00075                      + fMomentum.Y()*fMomentum.Y()
00076                      + fMomentum.Z()*fMomentum.Z();
00077   return TMath::Sqrt(fMass*fMass+momentumSqr);
00078 }

const TVector3 SwimParticle::GetInitPosition  )  const
 

Definition at line 30 of file SwimParticle.cxx.

Referenced by SwimZCondition::Satisfied().

00031 {
00032   return fInitPosition;
00033 } 

double SwimParticle::GetMass  )  const
 

Definition at line 82 of file SwimParticle.cxx.

Referenced by SwimG4Stepper::StepOnce().

00083 { 
00084   return fMass; 
00085 } 

const TVector3 SwimParticle::GetMomentum  )  const
 

Definition at line 44 of file SwimParticle.cxx.

Referenced by TestSwimmer::Ana(), main(), SwimPrintStepAction::Perform(), SwimdEdxAction::Perform(), SwimDefStepper::StepOnce(), SwimSwimmer::Swim(), GeoSwimmer::SwimBackward(), GeoSwimmer::SwimForward(), and SwimObj3::SwimTo().

00045 {
00046   return fMomentum;
00047 } 

double SwimParticle::GetMomentumModulus  )  const
 

Definition at line 63 of file SwimParticle.cxx.

References fMomentum.

Referenced by TestSwimmer::Ana(), SwimdEdxTable::GetdEdx(), GetDirection(), SwimStepOnceAction::Perform(), SwimPrintStepAction::Perform(), SwimdEdxAction::Perform(), SwimMomentumCondition::Satisfied(), SwimG4Stepper::StepOnce(), SwimSwimmer::Swim(), AlgFitTrackSR::Swim(), AlgFitTrackCam::Swim(), DataFT::SwimAsSwimmer(), and SwimObj3::SwimTo().

00064 {
00065   return TMath::Sqrt(fMomentum.X()*fMomentum.X()
00066             + fMomentum.Y()*fMomentum.Y()
00067             + fMomentum.Z()*fMomentum.Z());
00068 } 

const TVector3 SwimParticle::GetPosition  )  const
 

Definition at line 37 of file SwimParticle.cxx.

Referenced by TestSwimmer::Ana(), main(), SwimStepOnceAction::Perform(), SwimPrintStepAction::Perform(), SwimZCondition::Satisfied(), SwimG4Stepper::StepOnce(), SwimDefStepper::StepOnce(), SwimZCondition::StepSize(), SwimSwimmer::Swim(), AlgFitTrackSR::Swim(), AlgFitTrackCam::Swim(), DataFT::SwimAsSwimmer(), GeoSwimmer::SwimBackward(), GeoSwimmer::SwimForward(), and SwimObj3::SwimTo().

00038 {
00039   return fPosition;
00040 } 

double SwimParticle::GetRange  )  const
 

Definition at line 103 of file SwimParticle.cxx.

Referenced by AlgFitTrackCam::Swim(), and DataFT::SwimAsSwimmer().

00104 { 
00105   return fRange; 
00106 } 

double SwimParticle::GetS  )  const
 

Definition at line 96 of file SwimParticle.cxx.

Referenced by AlgFitTrackCam::Swim(), and DataFT::SwimAsSwimmer().

00097 { 
00098   return fS; 
00099 } 

double SwimParticle::GetVxB  )  const
 

Definition at line 110 of file SwimParticle.cxx.

Referenced by MoqQuantities::SwimToGetVxB().

00111 {
00112   return fVxB;
00113 }

void SwimParticle::SetCharge double  charge  ) 
 

Definition at line 138 of file SwimParticle.cxx.

References fCharge.

Referenced by AlgFitTrackSR::Swim(), AlgFitTrackCam::Swim(), DataFT::SwimAsSwimmer(), and SwimObj3::SwimTo().

00139 {
00140   fCharge = charge;
00141 }

void SwimParticle::SetMass double  mass  ) 
 

Definition at line 131 of file SwimParticle.cxx.

References fMass.

00132 {
00133   fMass = mass;
00134 }

void SwimParticle::SetMomentum const TVector3  momentum  ) 
 

Definition at line 124 of file SwimParticle.cxx.

References fMomentum.

Referenced by SwimdEdxAction::Perform(), SwimG4Stepper::StepOnce(), SwimDefStepper::StepOnce(), GeoSwimmer::SwimBackward(), and GeoSwimmer::SwimForward().

00125 {
00126   fMomentum = momentum;
00127 }

void SwimParticle::SetPosition const TVector3  position  ) 
 

Definition at line 117 of file SwimParticle.cxx.

References fPosition.

Referenced by SwimStepOnceAction::Perform(), SwimG4Stepper::StepOnce(), SwimDefStepper::StepOnce(), GeoSwimmer::SwimBackward(), and GeoSwimmer::SwimForward().

00118 { 
00119   fPosition = position;
00120 }


Member Data Documentation

double SwimParticle::fCharge [private]
 

Definition at line 57 of file SwimParticle.h.

Referenced by SetCharge().

TVector3 SwimParticle::fInitPosition [private]
 

Definition at line 53 of file SwimParticle.h.

double SwimParticle::fMass [private]
 

Definition at line 56 of file SwimParticle.h.

Referenced by GetEnergy(), and SetMass().

TVector3 SwimParticle::fMomentum [private]
 

Definition at line 55 of file SwimParticle.h.

Referenced by GetDirection(), GetEnergy(), GetMomentumModulus(), and SetMomentum().

TVector3 SwimParticle::fPosition [private]
 

Definition at line 54 of file SwimParticle.h.

Referenced by SetPosition().

double SwimParticle::fRange [private]
 

Definition at line 59 of file SwimParticle.h.

Referenced by AddRange().

double SwimParticle::fS [private]
 

Definition at line 58 of file SwimParticle.h.

Referenced by AddS().

double SwimParticle::fVxB [private]
 

Definition at line 60 of file SwimParticle.h.

Referenced by AddVxB().


The documentation for this class was generated from the following files:
Generated on Mon Feb 15 11:10:21 2010 for loon by  doxygen 1.3.9.1