G4FieldTrackUpdator Class Reference

#include <G4FieldTrackUpdator.hh>


Static Public Member Functions

static G4FieldTrackCreateFieldTrack (const G4Track *)
static void Update (G4FieldTrack *, const G4Track *)


Detailed Description

Definition at line 43 of file G4FieldTrackUpdator.hh.


Member Function Documentation

G4FieldTrack * G4FieldTrackUpdator::CreateFieldTrack ( const G4Track  )  [static]

Definition at line 45 of file G4FieldTrackUpdator.cc.

References G4DynamicParticle::GetCharge(), G4Track::GetDynamicParticle(), G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), G4DynamicParticle::GetMass(), G4Track::GetMomentumDirection(), G4DynamicParticle::GetPolarization(), and G4Track::GetPosition().

00046 {
00047   G4FieldTrack* ftrk = new G4FieldTrack(
00048     trk->GetPosition(),
00049     trk->GetGlobalTime(),
00050     trk->GetMomentumDirection(),
00051     trk->GetKineticEnergy(),
00052     trk->GetDynamicParticle()->GetMass(),
00053     trk->GetDynamicParticle()->GetCharge(),
00054     trk->GetDynamicParticle()->GetPolarization(),
00055     0.0                   // magnetic dipole moment to be implemented
00056     );
00057   return ftrk;
00058 }

void G4FieldTrackUpdator::Update ( G4FieldTrack ,
const G4Track  
) [static]

Definition at line 60 of file G4FieldTrackUpdator.cc.

References G4DynamicParticle::GetCharge(), G4Track::GetDynamicParticle(), G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), G4DynamicParticle::GetMass(), G4Track::GetMomentumDirection(), G4DynamicParticle::GetPolarization(), G4Track::GetPosition(), G4FieldTrack::SetChargeAndMoments(), G4FieldTrack::SetRestMass(), G4FieldTrack::SetSpin(), and G4FieldTrack::UpdateState().

Referenced by G4WeightWindowProcess::AlongStepGetPhysicalInteractionLength(), G4WeightCutOffProcess::AlongStepGetPhysicalInteractionLength(), G4ParallelWorldScoringProcess::AlongStepGetPhysicalInteractionLength(), G4ParallelWorldProcess::AlongStepGetPhysicalInteractionLength(), G4ImportanceProcess::AlongStepGetPhysicalInteractionLength(), and G4FastSimulationManagerProcess::AlongStepGetPhysicalInteractionLength().

00061 {
00062   ftrk->UpdateState(
00063     trk->GetPosition(),     
00064     trk->GetGlobalTime(),
00065     trk->GetMomentumDirection(),
00066     trk->GetKineticEnergy()
00067     );
00068   const G4DynamicParticle* ptDynamicParticle= trk->GetDynamicParticle();
00069 
00070   ftrk->SetChargeAndMoments( ptDynamicParticle->GetCharge() );
00071    // The charge can change during tracking
00072   ftrk->SetSpin( ptDynamicParticle->GetPolarization() );
00073 
00074   // The following properties must be updated ONCE for each new track (at least)
00075   ftrk->SetRestMass(ptDynamicParticle->GetMass());   
00076 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:59 2013 for Geant4 by  doxygen 1.4.7