#include <G4FieldTrackUpdator.hh>
Static Public Member Functions | |
static G4FieldTrack * | CreateFieldTrack (const G4Track *) |
static void | Update (G4FieldTrack *, const G4Track *) |
Definition at line 43 of file G4FieldTrackUpdator.hh.
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 }