#include <G4MSSteppingAction.hh>
Inheritance diagram for G4MSSteppingAction:
Public Member Functions | |
G4MSSteppingAction () | |
virtual | ~G4MSSteppingAction () |
void | Initialize (G4bool rSens, G4Region *reg) |
virtual void | UserSteppingAction (const G4Step *) |
G4double | GetTotalStepLength () const |
G4double | GetX0 () const |
G4double | GetLambda0 () const |
Definition at line 47 of file G4MSSteppingAction.hh.
G4MSSteppingAction::G4MSSteppingAction | ( | ) |
Definition at line 41 of file G4MSSteppingAction.cc.
References Initialize().
00042 { 00043 Initialize(false,0); 00044 }
G4MSSteppingAction::~G4MSSteppingAction | ( | ) | [virtual] |
G4double G4MSSteppingAction::GetLambda0 | ( | ) | const [inline] |
G4double G4MSSteppingAction::GetTotalStepLength | ( | ) | const [inline] |
G4double G4MSSteppingAction::GetX0 | ( | ) | const [inline] |
Definition at line 49 of file G4MSSteppingAction.cc.
Referenced by G4MSSteppingAction().
00050 { 00051 regionSensitive = rSens; 00052 theRegion = reg; 00053 length = 0.; 00054 x0 = 0.; 00055 lambda = 0.; 00056 }
void G4MSSteppingAction::UserSteppingAction | ( | const G4Step * | ) | [virtual] |
Reimplemented from G4UserSteppingAction.
Definition at line 58 of file G4MSSteppingAction.cc.
References G4VPhysicalVolume::GetLogicalVolume(), G4StepPoint::GetMaterial(), G4Material::GetNuclearInterLength(), G4StepPoint::GetPhysicalVolume(), G4Step::GetPreStepPoint(), G4Material::GetRadlen(), G4LogicalVolume::GetRegion(), and G4Step::GetStepLength().
00059 { 00060 G4StepPoint* preStepPoint = aStep->GetPreStepPoint(); 00061 G4Region* region = preStepPoint->GetPhysicalVolume()->GetLogicalVolume()->GetRegion(); 00062 00063 if(regionSensitive && (region!=theRegion)) return; 00064 00065 G4double stlen = aStep->GetStepLength(); 00066 G4Material* material = preStepPoint->GetMaterial(); 00067 length += stlen; 00068 x0 += stlen/(material->GetRadlen()); 00069 lambda += stlen/(material->GetNuclearInterLength()); 00070 }