57 thetaSpan = 90. * deg;
65 delete theMatScannerSteppingAction;
76 G4cerr <<
"Illegal application state - Scan() ignored." <<
G4endl;
80 if(theMatScannerSteppingAction ==
nullptr)
90void G4MaterialScanner::StoreUserActions()
103 if(theSDMan !=
nullptr)
114void G4MaterialScanner::RestoreUserActions()
122 if(theSDMan !=
nullptr)
129void G4MaterialScanner::DoScan()
157 for(
G4int iTheta = 0; iTheta < nTheta; ++iTheta)
167 <<
" Theta(deg) Phi(deg) Length(mm) x0 lambda0"
170 for(
G4int iPhi = 0; iPhi < nPhi; ++iPhi)
178 std::cos(theta) * std::sin(phi), std::sin(theta));
179 theRayShooter->
Shoot(anEvent, eyePosition, eyeDirection);
180 theMatScannerSteppingAction->
Initialize(regionSensitive, theRegion);
186 G4cout <<
" " << std::setw(11) << theta / deg <<
" "
187 << std::setw(11) << phi / deg <<
" " << std::setw(11)
188 << length / mm <<
" " << std::setw(11) << x0 <<
" "
190 aveLength += length / mm;
197 G4cout <<
" ave. for theta = " << std::setw(11) << theta / deg <<
" : "
198 << std::setw(11) << aveLength / nPhi <<
" " << std::setw(11)
199 << aveX0 / nPhi <<
" " << std::setw(11) << aveLambda / nPhi
212 if(aRegion !=
nullptr)
220 G4cerr <<
"Region <" << val <<
"> not found. Command ignored." <<
G4endl;
CLHEP::Hep3Vector G4ThreeVector
G4GLOB_DLL std::ostream G4cerr
G4GLOB_DLL std::ostream G4cout
G4UserTrackingAction * GetUserTrackingAction()
void SetUserAction(G4UserEventAction *userAction)
G4UserSteppingAction * GetUserSteppingAction()
G4UserStackingAction * GetUserStackingAction()
G4UserEventAction * GetUserEventAction()
static G4EventManager * GetEventManager()
void ProcessOneEvent(G4Event *anEvent)
static G4GeometryManager * GetInstance()
G4bool CloseGeometry(G4bool pOptimise=true, G4bool verbose=false, G4VPhysicalVolume *vol=nullptr)
void OpenGeometry(G4VPhysicalVolume *vol=nullptr)
G4double GetLambda0() const
G4double GetTotalStepLength() const
void Initialize(G4bool rSens, G4Region *reg)
G4bool SetRegionName(const G4String &val)
virtual G4VPhysicalVolume * LocateGlobalPointAndSetup(const G4ThreeVector &point, const G4ThreeVector *direction=nullptr, const G4bool pRelativeSearch=true, const G4bool ignoreDirection=true)
void Shoot(G4Event *evt, G4ThreeVector vtx, G4ThreeVector direc)
static G4RegionStore * GetInstance()
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
static G4RunManagerKernel * GetRunManagerKernel()
void Activate(G4String dName, G4bool activeFlag)
static G4SDManager * GetSDMpointerIfExist()
const G4ApplicationState & GetCurrentState() const
static G4StateManager * GetStateManager()
G4bool SetNewState(const G4ApplicationState &requestedState)
static G4TransportationManager * GetTransportationManager()
G4Navigator * GetNavigatorForTracking() const