44 : ext_sourceEMax(0.), start_event(false),
45 did_adj_part_reach_ext_source(false), last_ekin(0.), last_weight(0.),
46 prim_weight(0.), last_part_def(0), theUserAdjointSteppingAction(0)
61 if (theUserAdjointSteppingAction) theUserAdjointSteppingAction->
UserSteppingAction(aStep);
74 did_adj_part_reach_ext_source=
false;
80 if ( (weight_factor>0 && weight_factor<=0) || weight_factor<= 1e-290 || weight_factor>1.e200)
84 did_adj_part_reach_ext_source=
false;
100 if (surface_name ==
"ExternalSource") {
102 did_adj_part_reach_ext_source=
true;
109 last_pos = crossing_pos;
112 else if (surface_name ==
"AdjointSource" && GoingIn) {
113 did_adj_part_reach_ext_source=
false;
120 did_adj_part_reach_ext_source=
true;
125 last_pos = crossing_pos;
G4bool CrossingOneOfTheRegisteredSurface(const G4Step *aStep, G4String &surface_name, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn)
static G4AdjointCrossSurfChecker * GetInstance()
~G4AdjointSteppingAction()
void UserSteppingAction(const G4Step *)
G4AdjointSteppingAction()
const G4String & GetParticleType() const
G4int GetBaryonNumber() const
G4StepStatus GetStepStatus() const
G4Track * GetTrack() const
G4StepPoint * GetPostStepPoint() const
void SetTrackStatus(const G4TrackStatus aTrackStatus)
G4double GetWeight() const
G4ThreeVector GetMomentum() const
G4ParticleDefinition * GetDefinition() const
G4double GetKineticEnergy() const
virtual void UserSteppingAction(const G4Step *)