Geant4-11
Public Member Functions | Protected Types | Protected Attributes | Private Member Functions | Private Attributes
G4ITSteppingVerbose Class Reference

#include <G4ITSteppingVerbose.hh>

Inheritance diagram for G4ITSteppingVerbose:
G4VITSteppingVerbose G4UImessenger

Public Member Functions

void AlongStepDoItAllDone ()
 
void AlongStepDoItOneByOne ()
 
void AtRestDoItInvoked ()
 
void AtRestDoItOneByOne ()
 
void CopyState ()
 
void DoItStarted ()
 
void DPSLAlongStep ()
 
void DPSLPostStep ()
 
void DPSLStarted ()
 
void DPSLUserLimit ()
 
 G4ITSteppingVerbose ()
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 
G4int GetVerbose ()
 
void NewStep ()
 
void PostStepDoItAllDone ()
 
void PostStepDoItOneByOne ()
 
void PostStepVerbose (G4Track *track)
 
void PreStepVerbose (G4Track *track)
 
virtual void SetNewValue (G4UIcommand *command, G4String newValue)
 
void SetStepProcessor (const G4ITStepProcessor *stepProcessor)
 
void SetVerbose (int flag)
 
void ShowStep () const
 
void StepInfo ()
 
void StepInfoForLeadingTrack ()
 
void TrackBanner (G4Track *track, const G4String &message)
 
void TrackingEnded (G4Track *)
 
void TrackingStarted (G4Track *)
 
void VerboseParticleChange ()
 
void VerboseTrack ()
 
 ~G4ITSteppingVerbose ()
 

Protected Types

typedef std::vector< G4intG4SelectedAlongStepDoItVector
 
typedef std::vector< G4intG4SelectedAtRestDoItVector
 
typedef std::vector< G4intG4SelectedPostStepDoItVector
 

Protected Attributes

G4ProcessVectorfAlongStepDoItVector
 
G4ProcessVectorfAlongStepGetPhysIntVector
 
size_t fAtRestDoItProcTriggered
 
G4ProcessVectorfAtRestDoItVector
 
G4ProcessVectorfAtRestGetPhysIntVector
 
G4ForceCondition fCondition
 
const G4VITProcessfCurrentProcess
 
const G4VPhysicalVolumefCurrentVolume
 
G4GPILSelection fGPILSelection
 
G4int fN2ndariesAlongStepDoIt
 
G4int fN2ndariesAtRestDoIt
 
G4int fN2ndariesPostStepDoIt
 
const G4VParticleChangefParticleChange
 
size_t fPostStepDoItProcTriggered
 
G4ProcessVectorfPostStepDoItVector
 
G4ProcessVectorfPostStepGetPhysIntVector
 
G4StepPointfPostStepPoint
 
const ProcessGeneralInfofpProcessGeneralInfo
 
G4StepPointfPreStepPoint
 
G4double fPreviousStepSize
 
G4ITStepProcessorStatefpState
 
const G4ITStepProcessorfpStepProcessor
 
G4UIcmdWithAnIntegerfpVerboseUI
 
const G4TrackVectorfSecondary
 
G4SelectedAtRestDoItVectorfSelectedAtRestDoItVector
 
G4SelectedPostStepDoItVectorfSelectedPostStepDoItVector
 
const G4StepfStep
 
G4StepStatus fStepStatus
 
G4TouchableHandle fTouchableHandle
 
const G4TrackfTrack
 
G4int fVerboseLevel
 
size_t MAXofAlongStepLoops
 
size_t MAXofAtRestLoops
 
size_t MAXofPostStepLoops
 
G4double PhysicalStep
 
G4double physIntLength
 

Private Member Functions

void AddUIcommand (G4UIcommand *newCommand)
 
G4String BtoS (G4bool b)
 
G4bool CommandsShouldBeInMaster () const
 
template<typename T >
T * CreateCommand (const G4String &cname, const G4String &dsc)
 
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
G4String DtoS (G4double a)
 
G4String ItoS (G4int i)
 
G4bool operator!= (const G4UImessenger &messenger) const
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool StoB (G4String s)
 
G4double StoD (G4String s)
 
G4int StoI (G4String s)
 
G4long StoL (G4String s)
 

Private Attributes

G4UIdirectorybaseDir = nullptr
 
G4String baseDirName = ""
 
G4bool commandsShouldBeInMaster = false
 

Detailed Description

Definition at line 44 of file G4ITSteppingVerbose.hh.

Member Typedef Documentation

◆ G4SelectedAlongStepDoItVector

typedef std::vector<G4int> G4VITSteppingVerbose::G4SelectedAlongStepDoItVector
protectedinherited

Definition at line 183 of file G4VITSteppingVerbose.hh.

◆ G4SelectedAtRestDoItVector

typedef std::vector<G4int> G4VITSteppingVerbose::G4SelectedAtRestDoItVector
protectedinherited

Definition at line 182 of file G4VITSteppingVerbose.hh.

◆ G4SelectedPostStepDoItVector

typedef std::vector<G4int> G4VITSteppingVerbose::G4SelectedPostStepDoItVector
protectedinherited

Definition at line 184 of file G4VITSteppingVerbose.hh.

Constructor & Destructor Documentation

◆ G4ITSteppingVerbose()

G4ITSteppingVerbose::G4ITSteppingVerbose ( )

Definition at line 57 of file G4ITSteppingVerbose.cc.

59{
60#ifdef G4_TRACKING_DEBUG
61 G4cout << "G4ITSteppingVerbose has instantiated" << G4endl;
62#endif
63}
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout

References G4cout, and G4endl.

◆ ~G4ITSteppingVerbose()

G4ITSteppingVerbose::~G4ITSteppingVerbose ( )

Definition at line 66 of file G4ITSteppingVerbose.cc.

68{
69}

Member Function Documentation

◆ AddUIcommand()

void G4UImessenger::AddUIcommand ( G4UIcommand newCommand)
protectedinherited

Definition at line 149 of file G4UImessenger.cc.

150{
151 G4cerr << "Warning : Old style definition of G4UIcommand <"
152 << newCommand->GetCommandPath() << ">." << G4endl;
153}
G4GLOB_DLL std::ostream G4cerr
const G4String & GetCommandPath() const
Definition: G4UIcommand.hh:136

References G4cerr, G4endl, and G4UIcommand::GetCommandPath().

◆ AlongStepDoItAllDone()

void G4ITSteppingVerbose::AlongStepDoItAllDone ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 145 of file G4ITSteppingVerbose.cc.

147{
148 if(fVerboseLevel == 0)
149 {
150 return;
151 }
152
153 G4VProcess* ptProcManager;
154
155 CopyState();
156
157 if(fVerboseLevel >= 3)
158 {
159 G4cout << G4endl;
160 G4cout << " >>AlongStepDoIt (after all invocations):" << G4endl;
161 G4cout << " ++List of invoked processes " << G4endl;
162
163 for(size_t ci=0; ci<MAXofAlongStepLoops; ci++)
164 {
165 ptProcManager = (*fAlongStepDoItVector)(ci);
166 G4cout << " " << ci+1 << ") ";
167 if(ptProcManager != 0)
168 {
169 G4cout << ptProcManager->GetProcessName() << G4endl;
170 }
171 }
172
173 ShowStep();
174 G4cout << G4endl;
175 G4cout << " ++List of secondaries generated "
176 << "(x,y,z,kE,t,PID):"
177 << " No. of secodaries = "
178 << (*fSecondary).size() << G4endl;
179
180 if((*fSecondary).size()>0)
181 {
182 for(size_t lp1=0; lp1<(*fSecondary).size(); lp1++)
183 {
184 G4cout << " "
185 << std::setw( 9)
186 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),"Length") << " "
187 << std::setw( 9)
188 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),"Length") << " "
189 << std::setw( 9)
190 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),"Length") << " "
191 << std::setw( 9)
192 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy") << " "
193 << std::setw( 9)
194 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(),"Time") << " "
195 << std::setw(18)
196 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
197 }
198 }
199 }
200}
#define G4BestUnit(a, b)
const G4TrackVector * fSecondary
const G4String & GetProcessName() const
Definition: G4VProcess.hh:382

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), G4VITSteppingVerbose::MAXofAlongStepLoops, and ShowStep().

◆ AlongStepDoItOneByOne()

void G4ITSteppingVerbose::AlongStepDoItOneByOne ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 675 of file G4ITSteppingVerbose.cc.

677{
678 if(fVerboseLevel < 4)
679 {
680 return;
681 }
682
683 CopyState();
684
685 G4cout << G4endl;
686 G4cout << " >>AlongStepDoIt (process by process): " << " Process Name = "
688
689 ShowStep();
690 G4cout << " " << "!Note! Safety of PostStep is only valid "
691 << "after all DoIt invocations." << G4endl;
692
694 G4cout << G4endl;
695
696 G4cout << " ++List of secondaries generated " << "(x,y,z,kE,t,PID):"
697 << " No. of secodaries = " << fN2ndariesAlongStepDoIt << G4endl;
698
700 {
701 for(size_t lp1 = (*fSecondary).size() - fN2ndariesAlongStepDoIt;
702 lp1 < (*fSecondary).size(); lp1++)
703 {
704 G4cout << " " << std::setw(9)
705 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(), "Length")
706 << " " << std::setw(9)
707 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(), "Length")
708 << " " << std::setw(9)
709 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(), "Length")
710 << " " << std::setw(9)
711 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(), "Energy")
712 << " " << std::setw(9)
713 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(), "Time") << " "
714 << std::setw(18)
715 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
716 }
717 }
718}
const G4VITProcess * fCurrentProcess

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fCurrentProcess, G4VITSteppingVerbose::fN2ndariesAlongStepDoIt, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), ShowStep(), and VerboseParticleChange().

◆ AtRestDoItInvoked()

void G4ITSteppingVerbose::AtRestDoItInvoked ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 78 of file G4ITSteppingVerbose.cc.

80{
81 if(fVerboseLevel == 0)
82 {
83 return;
84 }
85
86 G4VProcess* ptProcManager;
87 CopyState();
88
89 if(fVerboseLevel >= 3)
90 {
91 G4int npt = 0;
92 G4cout << " **List of AtRestDoIt invoked:" << G4endl;
93 for(size_t np = 0; np < MAXofAtRestLoops; np++)
94 {
95 size_t npGPIL = MAXofAtRestLoops - np - 1;
96 if((*fSelectedAtRestDoItVector)[npGPIL] == 2)
97 {
98 npt++;
99 ptProcManager = (*fAtRestDoItVector)[np];
100 G4cout << " # " << npt << " : " << ptProcManager->GetProcessName()
101 << " (Forced)" << G4endl;
102 }
103 else if ( (*fSelectedAtRestDoItVector)[npGPIL] == 1 )
104 {
105 npt++;
106 ptProcManager = (*fAtRestDoItVector)[np];
107 G4cout << " # " << npt << " : " << ptProcManager->GetProcessName()
108 << G4endl;
109 }
110 }
111
112 G4cout << " Generated secondries # : " << fN2ndariesAtRestDoIt << G4endl;
113
115 {
116 G4cout << " -- List of secondaries generated : "
117 << "(x,y,z,kE,t,PID) --" << G4endl;
118 for( size_t lp1=(*fSecondary).size()-fN2ndariesAtRestDoIt;
119 lp1<(*fSecondary).size(); lp1++)
120 {
121 G4cout << " "
122 << std::setw( 9)
123 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),"Length") << " "
124 << std::setw( 9)
125 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),"Length") << " "
126 << std::setw( 9)
127 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),"Length") << " "
128 << std::setw( 9)
129 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy") << " "
130 << std::setw( 9)
131 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(),"Time") << " "
132 << std::setw(18)
133 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
134 }
135 }
136 }
137
138 if(fVerboseLevel >= 4)
139 {
140 ShowStep();
141 G4cout << G4endl;
142 }
143}
int G4int
Definition: G4Types.hh:85
G4SelectedAtRestDoItVector * fSelectedAtRestDoItVector

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fN2ndariesAtRestDoIt, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fSelectedAtRestDoItVector, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), G4VITSteppingVerbose::MAXofAtRestLoops, and ShowStep().

◆ AtRestDoItOneByOne()

void G4ITSteppingVerbose::AtRestDoItOneByOne ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 1237 of file G4ITSteppingVerbose.cc.

1238{
1239 CopyState();
1240
1241 G4cout << " Invoke at rest process : "
1243 << G4endl;
1244}

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fCurrentProcess, G4cout, G4endl, and G4VProcess::GetProcessName().

◆ BtoS()

G4String G4UImessenger::BtoS ( G4bool  b)
protectedinherited

Definition at line 98 of file G4UImessenger.cc.

99{
100 G4String vl = "0";
101 if(b)
102 vl = "true";
103 return vl;
104}

◆ CommandsShouldBeInMaster()

G4bool G4UImessenger::CommandsShouldBeInMaster ( ) const
inlineinherited

Definition at line 77 of file G4UImessenger.hh.

78 {
80 }
G4bool commandsShouldBeInMaster

References G4UImessenger::commandsShouldBeInMaster.

Referenced by G4UIcommand::G4UIcommandCommonConstructorCode().

◆ CopyState()

void G4VITSteppingVerbose::CopyState ( )
inherited

Definition at line 106 of file G4VITSteppingVerbose.cc.

107{
108
110 else
111 {
113 }
114
116
119
126
128// fSensitive = fpStepProcessor->GetfSensitive();
130
134
139
143
146
150
151// fNavigator = fpStepProcessor->GetfNavigator();
152
155
157
159
160// StepControlFlag = fpStepProcessor->GetStepControlFlag();
161
165}
G4TouchableHandle fTouchableHandle
G4SelectedPostStepDoItVector fSelectedPostStepDoItVector
G4SelectedAtRestDoItVector fSelectedAtRestDoItVector
G4int GetN2ndariesAtRestDoIt() const
size_t GetAtRestDoItProcTriggered() const
size_t GetPostStepDoItProcTriggered() const
G4int GetN2ndariesAlongStepDoIt() const
const ProcessGeneralInfo * GetCurrentProcessInfo() const
G4GPILSelection GetGPILSelection() const
G4ForceCondition GetCondition() const
G4int GetN2ndariesPostStepDoIt() const
G4TrackVector * GetSecondaries() const
G4double GetPhysIntLength() const
const G4ITStepProcessorState * GetProcessorState() const
const G4VPhysicalVolume * GetCurrentVolume() const
const G4VParticleChange * GetParticleChange() const
const G4VITProcess * GetCurrentProcess() const
G4StepPoint * GetPreStepPoint() const
G4StepPoint * GetPostStepPoint() const
G4ITStepProcessorState * fpState
const G4ITStepProcessor * fpStepProcessor
G4ProcessVector * fAtRestGetPhysIntVector
G4ProcessVector * fPostStepDoItVector
G4SelectedPostStepDoItVector * fSelectedPostStepDoItVector
G4ProcessVector * fPostStepGetPhysIntVector
G4ProcessVector * fAtRestDoItVector
G4TouchableHandle fTouchableHandle
const G4VPhysicalVolume * fCurrentVolume
const ProcessGeneralInfo * fpProcessGeneralInfo
G4ProcessVector * fAlongStepGetPhysIntVector
const G4VParticleChange * fParticleChange
G4GPILSelection fGPILSelection
G4ProcessVector * fAlongStepDoItVector
G4ProcessVector * fpPostStepDoItVector
G4ProcessVector * fpPostStepGetPhysIntVector
G4ProcessVector * fpAlongStepGetPhysIntVector
G4ProcessVector * fpAlongStepDoItVector
G4ProcessVector * fpAtRestGetPhysIntVector
G4ProcessVector * fpAtRestDoItVector

References G4VITSteppingVerbose::fAlongStepDoItVector, G4VITSteppingVerbose::fAlongStepGetPhysIntVector, G4VITSteppingVerbose::fAtRestDoItProcTriggered, G4VITSteppingVerbose::fAtRestDoItVector, G4VITSteppingVerbose::fAtRestGetPhysIntVector, G4VITSteppingVerbose::fCondition, G4VITSteppingVerbose::fCurrentProcess, G4VITSteppingVerbose::fCurrentVolume, G4VITSteppingVerbose::fGPILSelection, G4VITSteppingVerbose::fN2ndariesAlongStepDoIt, G4VITSteppingVerbose::fN2ndariesAtRestDoIt, G4VITSteppingVerbose::fN2ndariesPostStepDoIt, ProcessGeneralInfo::fpAlongStepDoItVector, ProcessGeneralInfo::fpAlongStepGetPhysIntVector, G4VITSteppingVerbose::fParticleChange, ProcessGeneralInfo::fpAtRestDoItVector, ProcessGeneralInfo::fpAtRestGetPhysIntVector, G4VITSteppingVerbose::fPostStepDoItProcTriggered, G4VITSteppingVerbose::fPostStepDoItVector, G4VITSteppingVerbose::fPostStepGetPhysIntVector, G4VITSteppingVerbose::fPostStepPoint, ProcessGeneralInfo::fpPostStepDoItVector, ProcessGeneralInfo::fpPostStepGetPhysIntVector, G4VITSteppingVerbose::fpProcessGeneralInfo, G4VITSteppingVerbose::fPreStepPoint, G4ITStepProcessorState::fPreviousStepSize, G4VITSteppingVerbose::fPreviousStepSize, G4VITSteppingVerbose::fpState, G4VITSteppingVerbose::fpStepProcessor, G4VITSteppingVerbose::fSecondary, G4ITStepProcessorState::fSelectedAtRestDoItVector, G4VITSteppingVerbose::fSelectedAtRestDoItVector, G4ITStepProcessorState::fSelectedPostStepDoItVector, G4VITSteppingVerbose::fSelectedPostStepDoItVector, G4VITSteppingVerbose::fStep, G4ITStepProcessorState::fStepStatus, G4VITSteppingVerbose::fStepStatus, G4ITStepProcessorState::fTouchableHandle, G4VITSteppingVerbose::fTouchableHandle, G4VITSteppingVerbose::fTrack, G4ITStepProcessor::GetAtRestDoItProcTriggered(), G4ITStepProcessor::GetCondition(), G4ITStepProcessor::GetCurrentProcess(), G4ITStepProcessor::GetCurrentProcessInfo(), G4ITStepProcessor::GetCurrentVolume(), G4ITStepProcessor::GetGPILSelection(), G4ITStepProcessor::GetN2ndariesAlongStepDoIt(), G4ITStepProcessor::GetN2ndariesAtRestDoIt(), G4ITStepProcessor::GetN2ndariesPostStepDoIt(), G4ITStepProcessor::GetParticleChange(), G4ITStepProcessor::GetPhysIntLength(), G4ITStepProcessor::GetPostStepDoItProcTriggered(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4ITStepProcessor::GetProcessorState(), G4ITStepProcessor::GetSecondaries(), G4ITStepProcessor::GetStep(), G4ITStepProcessor::GetTrack(), ProcessGeneralInfo::MAXofAlongStepLoops, G4VITSteppingVerbose::MAXofAlongStepLoops, ProcessGeneralInfo::MAXofAtRestLoops, G4VITSteppingVerbose::MAXofAtRestLoops, ProcessGeneralInfo::MAXofPostStepLoops, G4VITSteppingVerbose::MAXofPostStepLoops, G4VITSteppingVerbose::PhysicalStep, and G4VITSteppingVerbose::physIntLength.

Referenced by AlongStepDoItAllDone(), AlongStepDoItOneByOne(), AtRestDoItInvoked(), AtRestDoItOneByOne(), DPSLAlongStep(), DPSLPostStep(), DPSLStarted(), DPSLUserLimit(), PostStepDoItAllDone(), PostStepDoItOneByOne(), StepInfo(), StepInfoForLeadingTrack(), and VerboseTrack().

◆ CreateCommand()

template<typename T >
T * G4UImessenger::CreateCommand ( const G4String cname,
const G4String dsc 
)
protectedinherited

Definition at line 110 of file G4UImessenger.hh.

111{
112 G4String path;
113 if(cname[0] != '/')
114 {
115 path = baseDirName + cname;
116 if(path[0] != '/')
117 path = "/" + path;
118 }
119
120 T* command = new T(path.c_str(), this);
121 command->SetGuidance(dsc.c_str());
122
123 return command;
124}
G4String baseDirName

References G4UImessenger::baseDirName.

◆ CreateDirectory()

void G4UImessenger::CreateDirectory ( const G4String path,
const G4String dsc,
G4bool  commandsToBeBroadcasted = true 
)
protectedinherited

Definition at line 156 of file G4UImessenger.cc.

158{
160
161 G4String fullpath = path;
162 if(fullpath.back() != '/')
163 fullpath.append("/");
164
165 G4UIcommandTree* tree = ui->GetTree()->FindCommandTree(fullpath.c_str());
166 if(tree != nullptr)
167 {
168 baseDirName = tree->GetPathName();
169 }
170 else
171 {
172 baseDir = new G4UIdirectory(fullpath.c_str(), commandsToBeBroadcasted);
173 baseDirName = fullpath;
174 baseDir->SetGuidance(dsc.c_str());
175 }
176}
const G4String & GetPathName() const
G4UIcommandTree * FindCommandTree(const char *commandPath)
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:156
G4UIcommandTree * GetTree() const
Definition: G4UImanager.hh:186
static G4UImanager * GetUIpointer()
Definition: G4UImanager.cc:77
G4UIdirectory * baseDir

References G4UImessenger::baseDir, G4UImessenger::baseDirName, G4UIcommandTree::FindCommandTree(), G4UIcommandTree::GetPathName(), G4UImanager::GetTree(), G4UImanager::GetUIpointer(), and G4UIcommand::SetGuidance().

Referenced by G4MoleculeShootMessenger::G4MoleculeShootMessenger(), and G4UImessenger::G4UImessenger().

◆ DoItStarted()

void G4ITSteppingVerbose::DoItStarted ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 1103 of file G4ITSteppingVerbose.cc.

1104{
1105 if(fVerboseLevel <= 0) return;
1106
1107 G4IosFlagsSaver ios_saver(G4cout);
1108#ifdef USE_COLOR
1109 G4cout << LIGHT_RED;
1110#endif
1111 G4cout << "*** G4ITStepProcessor::DoIt ***" << G4endl;
1112 G4cout << std::setw(18) << left << "#Name" << std::setw(15) << "trackID"
1113 << std::setw(35) << "Position" << std::setw(25) << "Pre step volume"
1114 << std::setw(25) << "Post step volume" << std::setw(22) << "Process"
1115 << G4endl;
1116#ifdef USE_COLOR
1118#endif
1119}
#define LIGHT_RED
Definition: G4Scheduler.cc:83
#define RESET_COLOR
Definition: G4Scheduler.cc:86

References G4VITSteppingVerbose::fVerboseLevel, G4cout, G4endl, LIGHT_RED, and RESET_COLOR.

◆ DPSLAlongStep()

void G4ITSteppingVerbose::DPSLAlongStep ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 557 of file G4ITSteppingVerbose.cc.

559{
560 if(fVerboseLevel == 0)
561 {
562 return;
563 }
564
565 if(fVerboseLevel > 5)
566 {
567 CopyState();
568
569 G4cout << " ++ProposedStep(AlongStep) = " << std::setw(9)
570 << G4BestUnit(physIntLength, "Length") << " : ProcName = "
571 << fCurrentProcess->GetProcessName() << " (";
573 {
574 G4cout << "CandidateForSelection)" << G4endl;
575 }
577 {
578 G4cout << "NotCandidateForSelection)" << G4endl;
579 }
580 else
581 {
582 G4cout << "?!?)" << G4endl;
583 }
584 }
585}
@ CandidateForSelection
@ NotCandidateForSelection

References CandidateForSelection, G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fCurrentProcess, G4VITSteppingVerbose::fGPILSelection, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), NotCandidateForSelection, and G4VITSteppingVerbose::physIntLength.

◆ DPSLPostStep()

void G4ITSteppingVerbose::DPSLPostStep ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 519 of file G4ITSteppingVerbose.cc.

521{
522 if(fVerboseLevel == 0)
523 {
524 return;
525 }
526
527 if(fVerboseLevel > 5)
528 {
529 CopyState();
530
531 G4cout << " ++ProposedStep(PostStep ) = " << std::setw(9)
532 << physIntLength << " : ProcName = "
533 << fCurrentProcess->GetProcessName() << " (";
535 {
536 G4cout << "ExclusivelyForced)" << G4endl;
537 }
538 else if(fCondition==StronglyForced)
539 {
540 G4cout << "StronglyForced)" << G4endl;
541 }
542 else if(fCondition==Conditionally)
543 {
544 G4cout << "Conditionally)" << G4endl;
545 }
546 else if(fCondition==Forced)
547 {
548 G4cout << "Forced)" << G4endl;
549 }
550 else
551 {
552 G4cout << "No ForceCondition)" << G4endl;
553 }
554 }
555}
@ StronglyForced
@ Conditionally
@ ExclusivelyForced
@ Forced

References Conditionally, G4VITSteppingVerbose::CopyState(), ExclusivelyForced, G4VITSteppingVerbose::fCondition, G4VITSteppingVerbose::fCurrentProcess, Forced, G4VITSteppingVerbose::fVerboseLevel, G4cout, G4endl, G4VProcess::GetProcessName(), G4VITSteppingVerbose::physIntLength, and StronglyForced.

◆ DPSLStarted()

void G4ITSteppingVerbose::DPSLStarted ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 486 of file G4ITSteppingVerbose.cc.

488{
489 if(fVerboseLevel == 0)
490 {
491 return;
492 }
493 CopyState();
494
495 if(fVerboseLevel > 5)
496 {
497 G4cout << G4endl<< " >>DefinePhysicalStepLength (List of proposed StepLengths): " << G4endl;
498 }
499}

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fVerboseLevel, G4cout, and G4endl.

◆ DPSLUserLimit()

void G4ITSteppingVerbose::DPSLUserLimit ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 501 of file G4ITSteppingVerbose.cc.

503{
504 if(fVerboseLevel == 0)
505 {
506 return;
507 }
508 CopyState();
509
510 if(fVerboseLevel > 5)
511 {
512 G4cout << G4endl<< G4endl;
513 G4cout << "=== Defined Physical Step Length (DPSL)" << G4endl;
514 G4cout << " ++ProposedStep(UserLimit) = " << std::setw( 9) << physIntLength
515 << " : ProcName = User defined maximum allowed Step" << G4endl;
516 }
517}

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fVerboseLevel, G4cout, G4endl, and G4VITSteppingVerbose::physIntLength.

◆ DtoS()

G4String G4UImessenger::DtoS ( G4double  a)
protectedinherited

Definition at line 90 of file G4UImessenger.cc.

91{
92 std::ostringstream os;
93 os << a;
94 return G4String(os.str());
95}

Referenced by G4ScoreQuantityMessenger::FilterCommands(), and G4UIcontrolMessenger::SetNewValue().

◆ GetCurrentValue()

G4String G4VITSteppingVerbose::GetCurrentValue ( G4UIcommand command)
virtualinherited

Reimplemented from G4UImessenger.

Definition at line 179 of file G4VITSteppingVerbose.cc.

180{
181 return command->ConvertToString(fVerboseLevel);
182}
static G4String ConvertToString(G4bool boolVal)
Definition: G4UIcommand.cc:445

References G4UIcommand::ConvertToString(), and G4VITSteppingVerbose::fVerboseLevel.

◆ GetVerbose()

G4int G4VITSteppingVerbose::GetVerbose ( )
inlineinherited

Definition at line 112 of file G4VITSteppingVerbose.hh.

113 {
114 return fVerboseLevel;
115 }

References G4VITSteppingVerbose::fVerboseLevel.

Referenced by G4ITTrackingInteractivity::GetSteppingVerboseLevel().

◆ ItoS()

G4String G4UImessenger::ItoS ( G4int  i)
protectedinherited

Definition at line 82 of file G4UImessenger.cc.

83{
84 std::ostringstream os;
85 os << i;
86 return G4String(os.str());
87}

Referenced by G4GenericMessenger::DeclareMethod(), and G4ParticleGunMessenger::GetCurrentValue().

◆ NewStep()

void G4ITSteppingVerbose::NewStep ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 72 of file G4ITSteppingVerbose.cc.

74{
75}

◆ operator!=()

G4bool G4UImessenger::operator!= ( const G4UImessenger messenger) const
inherited

Definition at line 76 of file G4UImessenger.cc.

77{
78 return this != &messenger;
79}

◆ operator==()

G4bool G4UImessenger::operator== ( const G4UImessenger messenger) const
inherited

Definition at line 70 of file G4UImessenger.cc.

71{
72 return this == &messenger;
73}

◆ PostStepDoItAllDone()

void G4ITSteppingVerbose::PostStepDoItAllDone ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 202 of file G4ITSteppingVerbose.cc.

204{
205 if(fVerboseLevel == 0)
206 {
207 return;
208 }
209
210 G4VProcess* ptProcManager;
211
212 CopyState();
213
214 if(fVerboseLevel >= 3)
215 {
216
220 {
221
222 G4int npt = 0;
223 G4cout << G4endl;
224 G4cout << " **PostStepDoIt (after all invocations):" << G4endl;
225 G4cout << " ++List of invoked processes " << G4endl;
226
227 for(size_t np = 0; np < MAXofPostStepLoops; np++)
228 {
229 size_t npGPIL = MAXofPostStepLoops - np - 1;
230 if((*fSelectedPostStepDoItVector)[npGPIL] == 2)
231 {
232 npt++;
233 ptProcManager = (*fPostStepDoItVector)[np];
234 G4cout << " " << npt << ") " << ptProcManager->GetProcessName()
235 << " (Forced)" << G4endl;
236 }
237 else if ( (*fSelectedPostStepDoItVector)[npGPIL] == 1)
238 {
239 npt++;
240 ptProcManager = (*fPostStepDoItVector)[np];
241 G4cout << " " << npt << ") "
242 << ptProcManager->GetProcessName() << G4endl;
243 }
244 }
245
246 ShowStep();
247 G4cout << G4endl;
248 G4cout << " ++List of secondaries generated " << "(x,y,z,kE,t,PID):"
249 << " No. of secodaries = " << (*fSecondary).size() << G4endl;
250 G4cout << " [Note]Secondaries from AlongStepDoIt included." << G4endl;
251
252 if((*fSecondary).size() > 0)
253 {
254 for(size_t lp1 = 0; lp1 < (*fSecondary).size(); lp1++)
255 {
256 G4cout << " " << std::setw(9)
257 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(), "Length")
258 << " " << std::setw(9)
259 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(), "Length")
260 << " " << std::setw(9)
261 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(), "Length")
262 << " " << std::setw(9)
263 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(), "Energy")
264 << " " << std::setw(9)
265 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(), "Time")
266 << " " << std::setw(18)
267 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
268 << G4endl;
269 }
270 }
271 }
272 }
273}
@ fPostStepDoItProc
Definition: G4StepStatus.hh:49

References Conditionally, G4VITSteppingVerbose::CopyState(), ExclusivelyForced, G4VITSteppingVerbose::fCondition, Forced, fPostStepDoItProc, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fSelectedPostStepDoItVector, G4VITSteppingVerbose::fStepStatus, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), G4VITSteppingVerbose::MAXofPostStepLoops, ShowStep(), and StronglyForced.

◆ PostStepDoItOneByOne()

void G4ITSteppingVerbose::PostStepDoItOneByOne ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 720 of file G4ITSteppingVerbose.cc.

722{
723 if(fVerboseLevel < 4)
724 {
725 return;
726 }
727
728 CopyState();
729 G4cout << G4endl;
730 G4cout << " >>PostStepDoIt (process by process): " << " Process Name = "
732
733 ShowStep();
734 G4cout << G4endl;
736 G4cout << G4endl;
737
738 G4cout << " ++List of secondaries generated " << "(x,y,z,kE,t,PID):"
739 << " No. of secodaries = " << fN2ndariesPostStepDoIt << G4endl;
740
742 {
743 for(size_t lp1 = (*fSecondary).size() - fN2ndariesPostStepDoIt;
744 lp1 < (*fSecondary).size(); lp1++)
745 {
746 G4cout << " " << std::setw(9)
747 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(), "Length")
748 << " " << std::setw(9)
749 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(), "Length")
750 << " " << std::setw(9)
751 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(), "Length")
752 << " " << std::setw(9)
753 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(), "Energy")
754 << " " << std::setw(9)
755 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(), "Time") << " "
756 << std::setw(18)
757 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
758 }
759 }
760}

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fCurrentProcess, G4VITSteppingVerbose::fN2ndariesPostStepDoIt, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4VProcess::GetProcessName(), ShowStep(), and VerboseParticleChange().

◆ PostStepVerbose()

void G4ITSteppingVerbose::PostStepVerbose ( G4Track track)
virtual

Implements G4VITSteppingVerbose.

Definition at line 1170 of file G4ITSteppingVerbose.cc.

1171{
1172 if(fVerboseLevel <= 0) return;
1173
1174 G4IosFlagsSaver ios_saver(G4cout);
1175
1177 // POST STEP VERBOSE
1178
1179 G4cout << setw(18) << left << GetIT(track)->GetName() << setw(15)
1180 << track->GetTrackID() << std::setprecision(3) << setw(35)
1181 << G4String(G4BestUnit(track->GetPosition(), "Length")) << setw(25)
1182 << "---";
1183
1184 G4TouchableHandle nextTouchable = track->GetNextTouchableHandle();
1185 G4VPhysicalVolume* volume(0);
1186
1187 if(nextTouchable && (volume = nextTouchable->GetVolume()))
1188 {
1189 G4String volumeName = volume->GetName();
1190
1191 if(volume->IsParameterised() || volume->IsReplicated())
1192 {
1193 volumeName += " ";
1194 volumeName += nextTouchable->GetReplicaNumber();
1195 }
1196
1197 G4cout << setw(25) << volumeName;
1198 }
1199 else
1200 {
1201 G4cout << setw(25) << "OutOfWorld";
1202 }
1204 {
1205 G4cout
1206 << setw(22)
1208 ->GetProcessName();
1209 }
1210 else
1211 {
1212 G4cout << "---";
1213 }
1214 G4cout << G4endl;
1215
1216 if(fVerboseLevel > 2)
1217 {
1218 const G4TrackVector* secondaries = 0;
1219 if((secondaries = track->GetStep()->GetSecondary()))
1220 {
1221 if(secondaries->empty() == false)
1222 {
1223 G4cout << "\t\t ---->";
1224 for(size_t j = 0; j < secondaries->size(); ++j)
1225 {
1226 G4cout << GetIT((*secondaries)[j])->GetName() << "("
1227 << (*secondaries)[j]->GetTrackID() << ")" << " ";
1228 }
1229 G4cout << G4endl;
1230 }
1231 }
1232 }
1233
1234 G4cout << G4endl;
1235}
G4IT * GetIT(const G4Track *track)
Definition: G4IT.cc:48
std::vector< G4Track * > G4TrackVector
virtual const G4String & GetName() const =0
const G4VProcess * GetProcessDefinedStep() const
const G4TrackVector * GetSecondary() const
G4int GetTrackID() const
const G4TouchableHandle & GetNextTouchableHandle() const
const G4ThreeVector & GetPosition() const
const G4Step * GetStep() const
virtual G4VPhysicalVolume * GetVolume(G4int depth=0) const
Definition: G4VTouchable.cc:34
virtual G4int GetReplicaNumber(G4int depth=0) const
Definition: G4VTouchable.cc:50

References G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, GetIT(), G4VPhysicalVolume::GetName(), G4IT::GetName(), G4Track::GetNextTouchableHandle(), G4Track::GetPosition(), G4Step::GetPostStepPoint(), G4StepPoint::GetProcessDefinedStep(), G4VProcess::GetProcessName(), G4VTouchable::GetReplicaNumber(), G4Step::GetSecondary(), G4Track::GetStep(), G4Track::GetTrackID(), G4VTouchable::GetVolume(), G4VPhysicalVolume::IsParameterised(), and G4VPhysicalVolume::IsReplicated().

◆ PreStepVerbose()

void G4ITSteppingVerbose::PreStepVerbose ( G4Track track)
virtual

Implements G4VITSteppingVerbose.

Definition at line 1121 of file G4ITSteppingVerbose.cc.

1122{
1123 if(fVerboseLevel <= 0) return;
1124
1125 G4IosFlagsSaver ios_saver(G4cout);
1126
1128// PRE STEP VERBOSE
1129
1130#ifdef DEBUG
1131#ifdef USE_COLOR
1132 G4cout << LIGHT_RED;
1133#endif
1134 G4cout << "*DoIt* " << GetIT(track)->GetName()
1135 << " ID: " << track->GetTrackID()
1136 << " at time : " << track->GetGlobalTime()
1137 << G4endl;
1138#ifdef USE_COLOR
1140#endif
1141#endif
1142
1143 G4String volumeName;
1144
1145 G4TouchableHandle nextTouchable = track->GetNextTouchableHandle();
1146 G4VPhysicalVolume* volume(0);
1147
1148 if(nextTouchable && (volume = nextTouchable->GetVolume()))
1149 {
1150 volumeName = volume->GetName();
1151
1152 if(volume->IsParameterised() || volume->IsReplicated())
1153 {
1154 volumeName += " ";
1155 volumeName += nextTouchable->GetReplicaNumber();
1156 }
1157 }
1158 else
1159 {
1160 volumeName = "OutOfWorld";
1161 }
1162
1163 G4cout << setw(18) << left << GetIT(track)->GetName() << setw(15)
1164 << track->GetTrackID() << std::setprecision(3) << setw(35)
1165 << G4String(G4BestUnit(track->GetPosition(), "Length")) << setw(25)
1166 << volumeName << setw(25) << "---" << G4endl;
1167
1168}
G4double GetGlobalTime() const

References G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4Track::GetGlobalTime(), GetIT(), G4VPhysicalVolume::GetName(), G4IT::GetName(), G4Track::GetNextTouchableHandle(), G4Track::GetPosition(), G4VTouchable::GetReplicaNumber(), G4Track::GetTrackID(), G4VTouchable::GetVolume(), G4VPhysicalVolume::IsParameterised(), G4VPhysicalVolume::IsReplicated(), LIGHT_RED, and RESET_COLOR.

◆ SetNewValue()

void G4VITSteppingVerbose::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
virtualinherited

Reimplemented from G4UImessenger.

Definition at line 169 of file G4VITSteppingVerbose.cc.

170{
171 if(command == fpVerboseUI)
172 {
174 }
175}
static G4int GetNewIntValue(const char *paramString)
G4UIcmdWithAnInteger * fpVerboseUI

References G4VITSteppingVerbose::fpVerboseUI, G4VITSteppingVerbose::fVerboseLevel, and G4UIcmdWithAnInteger::GetNewIntValue().

◆ SetStepProcessor()

void G4VITSteppingVerbose::SetStepProcessor ( const G4ITStepProcessor stepProcessor)
inlineinherited

Definition at line 127 of file G4VITSteppingVerbose.hh.

128 {
129 this->fpStepProcessor = stepProcessor;
130 }

References G4VITSteppingVerbose::fpStepProcessor.

Referenced by G4ITStepProcessor::Initialize().

◆ SetVerbose()

void G4VITSteppingVerbose::SetVerbose ( int  flag)
inlineinherited

Definition at line 107 of file G4VITSteppingVerbose.hh.

108 {
109 fVerboseLevel = flag;
110 }

References G4VITSteppingVerbose::fVerboseLevel.

Referenced by G4ITTrackingInteractivity::SetSteppingVerboseLevel().

◆ ShowStep()

void G4ITSteppingVerbose::ShowStep ( ) const

Definition at line 925 of file G4ITSteppingVerbose.cc.

927{
928 if(fVerboseLevel == 0)
929 {
930 return;
931 }
932
933 G4String volName;
934 G4int oldprc;
935
936// Show header
937 G4cout << G4endl;
938 G4cout << " ++G4Step Information " << G4endl;
939 oldprc = G4cout.precision(16);
940
941// Show G4Step specific information
942 G4cout << " Address of G4Track : " << fStep->GetTrack() << G4endl;
943 G4cout << " Step Length (mm) : "
945 G4cout << " Energy Deposit (MeV) : " << fStep->GetTotalEnergyDeposit()
946 << G4endl;
947
948// Show G4StepPoint specific information
949 G4cout << " -------------------------------------------------------"
950 << "----------------" << G4endl;
951 G4cout << " StepPoint Information " << std::setw(20) << "PreStep"
952 << std::setw(20) << "PostStep" << G4endl;
953 G4cout << " -------------------------------------------------------"
954 << "----------------" << G4endl;
955 G4cout << " Position - x (mm) : " << std::setw(20)
956 << fStep->GetPreStepPoint()->GetPosition().x() << std::setw(20)
958 G4cout << " Position - y (mm) : " << std::setw(20)
959 << fStep->GetPreStepPoint()->GetPosition().y() << std::setw(20)
961 G4cout << " Position - z (mm) : " << std::setw(20)
962 << fStep->GetPreStepPoint()->GetPosition().z() << std::setw(20)
964 G4cout << " Global Time (ns) : " << std::setw(20)
965 << fStep->GetPreStepPoint()->GetGlobalTime() << std::setw(20)
967 G4cout << " Local Time (ns) : " << std::setw(20)
968 << fStep->GetPreStepPoint()->GetLocalTime() << std::setw(20)
970 G4cout << " Proper Time (ns) : " << std::setw(20)
971 << fStep->GetPreStepPoint()->GetProperTime() << std::setw(20)
973 G4cout << " Momentum Direct - x : " << std::setw(20)
975 << std::setw(20)
977 G4cout << " Momentum Direct - y : " << std::setw(20)
979 << std::setw(20)
981 G4cout << " Momentum Direct - z : " << std::setw(20)
983 << std::setw(20)
985 G4cout << " Momentum - x (MeV/c): " << std::setw(20)
986 << fStep->GetPreStepPoint()->GetMomentum().x() << std::setw(20)
988 G4cout << " Momentum - y (MeV/c): " << std::setw(20)
989 << fStep->GetPreStepPoint()->GetMomentum().y() << std::setw(20)
991 G4cout << " Momentum - z (MeV/c): " << std::setw(20)
992 << fStep->GetPreStepPoint()->GetMomentum().z() << std::setw(20)
994 G4cout << " Total Energy (MeV) : " << std::setw(20)
995 << fStep->GetPreStepPoint()->GetTotalEnergy() << std::setw(20)
997 G4cout << " Kinetic Energy (MeV): " << std::setw(20)
998 << fStep->GetPreStepPoint()->GetKineticEnergy() << std::setw(20)
1000 G4cout << " Velocity (mm/ns) : " << std::setw(20)
1001 << fStep->GetPreStepPoint()->GetVelocity() << std::setw(20)
1003 G4cout << " Volume Name : " << std::setw(20)
1006 {
1008 }
1009 else
1010 {
1011 volName = "OutOfWorld";
1012 }
1013 G4cout << std::setw(20) << volName << G4endl;
1014 G4cout << " Safety (mm) : " << std::setw(20)
1015 << fStep->GetPreStepPoint()->GetSafety() << std::setw(20)
1017 G4cout << " Polarization - x : " << std::setw(20)
1018 << fStep->GetPreStepPoint()->GetPolarization().x() << std::setw(20)
1020 G4cout << " Polarization - y : " << std::setw(20)
1021 << fStep->GetPreStepPoint()->GetPolarization().y() << std::setw(20)
1023 G4cout << " Polarization - Z : " << std::setw(20)
1024 << fStep->GetPreStepPoint()->GetPolarization().z() << std::setw(20)
1026 G4cout << " Weight : " << std::setw(20)
1027 << fStep->GetPreStepPoint()->GetWeight() << std::setw(20)
1029 G4cout << " Step Status : ";
1030 G4StepStatus tStepStatus = fStep->GetPreStepPoint()->GetStepStatus();
1031 if(tStepStatus == fGeomBoundary)
1032 {
1033 G4cout << std::setw(20) << "Geom Limit";
1034 }
1035 else if(tStepStatus == fAlongStepDoItProc)
1036 {
1037 G4cout << std::setw(20) << "AlongStep Proc.";
1038 }
1039 else if(tStepStatus == fPostStepDoItProc)
1040 {
1041 G4cout << std::setw(20) << "PostStep Proc";
1042 }
1043 else if(tStepStatus == fAtRestDoItProc)
1044 {
1045 G4cout << std::setw(20) << "AtRest Proc";
1046 }
1047 else if(tStepStatus == fUndefined)
1048 {
1049 G4cout << std::setw(20) << "Undefined";
1050 }
1051
1052 tStepStatus = fStep->GetPostStepPoint()->GetStepStatus();
1053 if(tStepStatus == fGeomBoundary)
1054 {
1055 G4cout << std::setw(20) << "Geom Limit";
1056 }
1057 else if(tStepStatus == fAlongStepDoItProc)
1058 {
1059 G4cout << std::setw(20) << "AlongStep Proc.";
1060 }
1061 else if(tStepStatus == fPostStepDoItProc)
1062 {
1063 G4cout << std::setw(20) << "PostStep Proc";
1064 }
1065 else if(tStepStatus == fAtRestDoItProc)
1066 {
1067 G4cout << std::setw(20) << "AtRest Proc";
1068 }
1069 else if(tStepStatus == fUndefined)
1070 {
1071 G4cout << std::setw(20) << "Undefined";
1072 }
1073
1074 G4cout << G4endl;
1075 G4cout << " Process defined Step: ";
1077 {
1078 G4cout << std::setw(20) << "Undefined";
1079 }
1080 else
1081 {
1082 G4cout
1083 << std::setw(20)
1085 }
1087 {
1088 G4cout << std::setw(20) << "Undefined";
1089 }
1090 else
1091 {
1092 G4cout
1093 << std::setw(20)
1095 }
1096 G4cout.precision(oldprc);
1097
1098 G4cout << G4endl;
1099 G4cout << " -------------------------------------------------------"
1100 << "----------------" << G4endl;
1101}
G4StepStatus
Definition: G4StepStatus.hh:40
@ fGeomBoundary
Definition: G4StepStatus.hh:43
@ fUndefined
Definition: G4StepStatus.hh:55
@ fAtRestDoItProc
Definition: G4StepStatus.hh:45
@ fAlongStepDoItProc
Definition: G4StepStatus.hh:47
double z() const
double x() const
double y() const
G4double GetTotalEnergy() const
G4StepStatus GetStepStatus() const
G4double GetVelocity() const
G4double GetProperTime() const
G4double GetGlobalTime() const
G4double GetSafety() const
G4ThreeVector GetMomentum() const
const G4ThreeVector & GetPosition() const
const G4ThreeVector & GetMomentumDirection() const
G4double GetLocalTime() const
G4VPhysicalVolume * GetPhysicalVolume() const
const G4ThreeVector & GetPolarization() const
G4double GetKineticEnergy() const
G4double GetWeight() const
G4Track * GetTrack() const
G4double GetTotalEnergyDeposit() const
G4double GetStepLength() const
const G4String & GetName() const

References fAlongStepDoItProc, fAtRestDoItProc, fGeomBoundary, fPostStepDoItProc, G4VITSteppingVerbose::fStep, fUndefined, G4VITSteppingVerbose::fVerboseLevel, G4cout, G4endl, G4StepPoint::GetGlobalTime(), G4StepPoint::GetKineticEnergy(), G4StepPoint::GetLocalTime(), G4StepPoint::GetMomentum(), G4StepPoint::GetMomentumDirection(), G4VPhysicalVolume::GetName(), G4StepPoint::GetPhysicalVolume(), G4StepPoint::GetPolarization(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4StepPoint::GetProcessDefinedStep(), G4VProcess::GetProcessName(), G4StepPoint::GetProperTime(), G4StepPoint::GetSafety(), G4Track::GetStepLength(), G4StepPoint::GetStepStatus(), G4StepPoint::GetTotalEnergy(), G4Step::GetTotalEnergyDeposit(), G4Step::GetTrack(), G4StepPoint::GetVelocity(), G4StepPoint::GetWeight(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Referenced by AlongStepDoItAllDone(), AlongStepDoItOneByOne(), AtRestDoItInvoked(), PostStepDoItAllDone(), and PostStepDoItOneByOne().

◆ StepInfo()

void G4ITSteppingVerbose::StepInfo ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 382 of file G4ITSteppingVerbose.cc.

384{
385 if(fVerboseLevel < 2)
386 {
387 return;
388 }
389
390 CopyState();
391 G4int prec = G4cout.precision(3);
392// G4cout.precision(16);
393
394 if(fVerboseLevel >= 4) VerboseTrack();
395 if(fVerboseLevel >= 3)
396 {
397 G4cout << G4endl;
398 G4cout << "StepInfo" << G4endl;
399#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
400 G4cout << std::setw( 5) << "#TrackID" << " "
401 << std::setw( 5) << "#Step#" << " "
402 << std::setw( 8) << "X" << " " << std::setw( 8) << "Y" << " "
403 << std::setw( 8) << "Z" << " "
404 << std::setw( 9) << "KineE" << " " << std::setw( 8) << "dE" << " "
405 << std::setw(12) << "StepLeng" << " " << std::setw(12) << "TrackLeng" << " "
406 << std::setw(12) << "NextVolume" << " " << std::setw( 8) << "ProcName" << G4endl;
407#else
408 G4cout << std::setw( 5) << "#TrackID" << " "
409 << std::setw( 5) << "#Step#" << " "
410 << std::setw( 8) << "X(mm)" << " " << std::setw( 8) << "Y(mm)" << " "
411 << std::setw( 8) << "Z(mm)" << " "
412 << std::setw( 9) << "KinE(MeV)" << " " << std::setw( 8) << "dE(MeV)" << " "
413 << std::setw( 8) << "StepLeng" << " " << std::setw( 9) << "TrackLeng" << " "
414 << std::setw(11) << "NextVolume" << " " << std::setw( 8) << "ProcName" << G4endl;
415#endif
416 }
417 G4cout << std::setw(5) << fTrack->GetTrackID() << " " << std::setw(5)
418 << fTrack->GetCurrentStepNumber() << " " << std::setw(8)
419 << G4BestUnit(fTrack->GetPosition().x(), "Length") << " "
420 << std::setw(8) << G4BestUnit(fTrack->GetPosition().y(), "Length")
421 << " " << std::setw(8)
422 << G4BestUnit(fTrack->GetPosition().z(), "Length") << " "
423 << std::setw(9) << G4BestUnit(fTrack->GetKineticEnergy(), "Energy")
424 << " " << std::setw(8)
425 << G4BestUnit(fStep->GetTotalEnergyDeposit(), "Energy") << " "
426 << std::setw(8) << G4BestUnit(fStep->GetStepLength(), "Length") << " "
427 << std::setw(9) << G4BestUnit(fTrack->GetTrackLength(), "Length")
428 << " ";
429
430 // Put cut comment here
431 if(fTrack->GetNextVolume() != 0)
432 {
433 G4cout << std::setw(11) << fTrack->GetNextVolume()->GetName() << " ";
434 }
435 else
436 {
437 G4cout << std::setw(11) << "OutOfWorld" << " ";
438 }
440 {
441 G4cout
443 }
444 else
445 {
446 G4cout << "User Limit";
447 }
448 G4cout << G4endl;
449 if(fVerboseLevel == 2)
450 {
453 if(tN2ndariesTot > 0)
454 {
455 G4cout << " :----- List of 2ndaries - " << "#SpawnInStep="
456 << std::setw(3) << tN2ndariesTot << "(Rest=" << std::setw(2)
457 << fN2ndariesAtRestDoIt << ",Along=" << std::setw(2)
458 << fN2ndariesAlongStepDoIt << ",Post=" << std::setw(2)
459 << fN2ndariesPostStepDoIt << "), " << "#SpawnTotal="
460 << std::setw(3) << (*fSecondary).size() << " ---------------"
461 << G4endl;
462
463 for(size_t lp1=(*fSecondary).size()-tN2ndariesTot; lp1<(*fSecondary).size(); lp1++)
464 {
465 G4cout << " : "
466 << std::setw( 9)
467 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length")<< " "
468 << std::setw( 9)
469 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y() , "Length")<< " "
470 << std::setw( 9)
471 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z() , "Length") << " "
472 << std::setw( 9)
473 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy() , "Energy")<< " "
474 << std::setw(18)
475 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
476 }
477 G4cout << " :-----------------------------" << "----------------------------------"
478 << "-- EndOf2ndaries Info ---------------" << G4endl;
479 }
480 }
481 G4cout.precision(prec);
482}
G4double GetStepLength() const
G4VPhysicalVolume * GetNextVolume() const
G4double GetTrackLength() const
G4int GetCurrentStepNumber() const
G4double GetKineticEnergy() const
static const double prec
Definition: RanecuEngine.cc:61

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fN2ndariesAlongStepDoIt, G4VITSteppingVerbose::fN2ndariesAtRestDoIt, G4VITSteppingVerbose::fN2ndariesPostStepDoIt, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fStep, G4VITSteppingVerbose::fTrack, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4Track::GetCurrentStepNumber(), G4Track::GetKineticEnergy(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4Track::GetPosition(), G4Step::GetPostStepPoint(), G4StepPoint::GetProcessDefinedStep(), G4VProcess::GetProcessName(), G4Step::GetStepLength(), G4Step::GetTotalEnergyDeposit(), G4Track::GetTrackID(), G4Track::GetTrackLength(), CLHEP::prec, VerboseTrack(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

◆ StepInfoForLeadingTrack()

void G4ITSteppingVerbose::StepInfoForLeadingTrack ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 276 of file G4ITSteppingVerbose.cc.

278{
279 if(fVerboseLevel == 0)
280 {
281 return;
282 }
283
284 if(fVerboseLevel < 2)
285 {
286 CopyState();
287 G4int prec = G4cout.precision(3);
288 // G4cout.precision(16);
289
290 if(fVerboseLevel >= 4) VerboseTrack();
291 if(fVerboseLevel >= 3)
292 {
293 G4cout << G4endl;
294 G4cout << "StepInfo" << G4endl;
295#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
296 G4cout << std::setw( 5) << "#TrackID" << " "
297 << std::setw( 5) << "#Step#" << " "
298 << std::setw( 8) << "X" << " " << std::setw( 8) << "Y" << " "
299 << std::setw( 8) << "Z" << " "
300 << std::setw( 9) << "KineE" << " " << std::setw( 8) << "dE" << " "
301 << std::setw(12) << "StepLeng" << " " << std::setw(12) << "TrackLeng" << " "
302 << std::setw(12) << "NextVolume" << " " << std::setw( 8) << "ProcName" << G4endl;
303#else
304 G4cout << std::setw( 5) << "#TrackID" << " "
305 << std::setw( 5) << "#Step#" << " "
306 << std::setw( 8) << "X(mm)" << " " << std::setw( 8) << "Y(mm)" << " "
307 << std::setw( 8) << "Z(mm)" << " "
308 << std::setw( 9) << "KinE(MeV)" << " " << std::setw( 8) << "dE(MeV)" << " "
309 << std::setw( 8) << "StepLeng" << " " << std::setw( 9) << "TrackLeng" << " "
310 << std::setw(11) << "NextVolume" << " " << std::setw( 8) << "ProcName" << G4endl;
311#endif
312 }
313 G4cout << std::setw(5) << fTrack->GetTrackID() << " " << std::setw(5)
314 << fTrack->GetCurrentStepNumber() << " " << std::setw(8)
315 << G4BestUnit(fTrack->GetPosition().x(), "Length") << " "
316 << std::setw(8) << G4BestUnit(fTrack->GetPosition().y(), "Length")
317 << " " << std::setw(8)
318 << G4BestUnit(fTrack->GetPosition().z(), "Length") << " "
319 << std::setw(9) << G4BestUnit(fTrack->GetKineticEnergy(), "Energy")
320 << " " << std::setw(8)
321 << G4BestUnit(fStep->GetTotalEnergyDeposit(), "Energy") << " "
322 << std::setw(8) << G4BestUnit(fStep->GetStepLength(), "Length")
323 << " " << std::setw(9)
324 << G4BestUnit(fTrack->GetTrackLength(), "Length") << " ";
325
326 // Put cut comment here
327 if(fTrack->GetNextVolume() != 0)
328 {
329 G4cout << std::setw(11) << fTrack->GetNextVolume()->GetName() << " ";
330 }
331 else
332 {
333 G4cout << std::setw(11) << "OutOfWorld" << " ";
334 }
336 {
337 G4cout
339 }
340 else
341 {
342 G4cout << "User Limit";
343 }
344
345 G4cout << G4endl;
346 if(fVerboseLevel == 2)
347 {
350 if(tN2ndariesTot > 0)
351 {
352 G4cout << " :----- List of 2ndaries - " << "#SpawnInStep="
353 << std::setw(3) << tN2ndariesTot << "(Rest=" << std::setw(2)
354 << fN2ndariesAtRestDoIt << ",Along=" << std::setw(2)
355 << fN2ndariesAlongStepDoIt << ",Post=" << std::setw(2)
356 << fN2ndariesPostStepDoIt << "), " << "#SpawnTotal="
357 << std::setw(3) << (*fSecondary).size() << " ---------------"
358 << G4endl;
359
360 for(size_t lp1=(*fSecondary).size()-tN2ndariesTot; lp1<(*fSecondary).size(); lp1++)
361 {
362 G4cout << " : "
363 << std::setw( 9)
364 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length")<< " "
365 << std::setw( 9)
366 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y() , "Length")<< " "
367 << std::setw( 9)
368 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z() , "Length") << " "
369 << std::setw( 9)
370 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy() , "Energy")<< " "
371 << std::setw(18)
372 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
373 }
374 G4cout << " :-----------------------------" << "----------------------------------"
375 << "-- EndOf2ndaries Info ---------------" << G4endl;
376 }
377 }
378 G4cout.precision(prec);
379 }
380}

References G4VITSteppingVerbose::CopyState(), G4VITSteppingVerbose::fN2ndariesAlongStepDoIt, G4VITSteppingVerbose::fN2ndariesAtRestDoIt, G4VITSteppingVerbose::fN2ndariesPostStepDoIt, G4VITSteppingVerbose::fSecondary, G4VITSteppingVerbose::fStep, G4VITSteppingVerbose::fTrack, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4Track::GetCurrentStepNumber(), G4Track::GetKineticEnergy(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4Track::GetPosition(), G4Step::GetPostStepPoint(), G4StepPoint::GetProcessDefinedStep(), G4VProcess::GetProcessName(), G4Step::GetStepLength(), G4Step::GetTotalEnergyDeposit(), G4Track::GetTrackID(), G4Track::GetTrackLength(), CLHEP::prec, VerboseTrack(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

◆ StoB()

G4bool G4UImessenger::StoB ( G4String  s)
protectedinherited

Definition at line 137 of file G4UImessenger.cc.

138{
140 G4bool vl = false;
141 if(v == "Y" || v == "YES" || v == "1" || v == "T" || v == "TRUE")
142 {
143 vl = true;
144 }
145 return vl;
146}
bool G4bool
Definition: G4Types.hh:86
G4String to_upper_copy(G4String str)
Return uppercase copy of string.

References G4StrUtil::to_upper_copy().

Referenced by G4LocalThreadCoutMessenger::SetNewValue(), G4CascadeParamMessenger::SetNewValue(), G4ScoreQuantityMessenger::SetNewValue(), and G4ScoringMessenger::SetNewValue().

◆ StoD()

G4double G4UImessenger::StoD ( G4String  s)
protectedinherited

◆ StoI()

G4int G4UImessenger::StoI ( G4String  s)
protectedinherited

◆ StoL()

G4long G4UImessenger::StoL ( G4String  s)
protectedinherited

Definition at line 117 of file G4UImessenger.cc.

118{
119 G4long vl;
120 const char* t = str;
121 std::istringstream is(t);
122 is >> vl;
123 return vl;
124}
long G4long
Definition: G4Types.hh:87

Referenced by G4RunMessenger::SetNewValue().

◆ TrackBanner()

void G4VITSteppingVerbose::TrackBanner ( G4Track track,
const G4String message 
)
inherited

Definition at line 219 of file G4VITSteppingVerbose.cc.

220{
221 G4cout << G4endl;
222 G4cout << "*******************************************************"
223 << "**************************************************"
224 << G4endl;
225 if(message != "")
226 {
227 G4cout << message;
228 }
229 G4cout << " * G4Track Information: "
230 << " Particle : " << track->GetDefinition()->GetParticleName()
231 << ","
232 << " Track ID : " << track->GetTrackID()
233 << ","
234 << " Parent ID : " << track->GetParentID()
235 << G4endl;
236 G4cout << "*******************************************************"
237 << "**************************************************"
238 << G4endl;
239 G4cout << G4endl;
240}
const G4String & GetParticleName() const
G4ParticleDefinition * GetDefinition() const
G4int GetParentID() const

References G4cout, G4endl, G4Track::GetDefinition(), G4Track::GetParentID(), G4ParticleDefinition::GetParticleName(), and G4Track::GetTrackID().

Referenced by G4VITSteppingVerbose::TrackingEnded(), and G4VITSteppingVerbose::TrackingStarted().

◆ TrackingEnded()

void G4ITSteppingVerbose::TrackingEnded ( G4Track track)
virtual

Reimplemented from G4VITSteppingVerbose.

Definition at line 657 of file G4ITSteppingVerbose.cc.

659{
660 if(fVerboseLevel <= 1) return;
661
662 G4cout << " * End tracking : " << " Particle : "
663 << track->GetDefinition()->GetParticleName() << "," << " Track ID : "
664 << track->GetTrackID();
665
666 if(track->GetNextVolume())
667 {
668 G4cout << std::setw(11) << track->GetNextVolume()->GetName() << " ";
669 }
670
671 G4cout << G4endl;
672}

References G4VITSteppingVerbose::fVerboseLevel, G4cout, G4endl, G4Track::GetDefinition(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4ParticleDefinition::GetParticleName(), and G4Track::GetTrackID().

◆ TrackingStarted()

void G4ITSteppingVerbose::TrackingStarted ( G4Track track)
virtual

Reimplemented from G4VITSteppingVerbose.

Definition at line 588 of file G4ITSteppingVerbose.cc.

590{
591 if(fVerboseLevel <= 1)
592 {
593 return;
594 }
595
596 G4int prec = G4cout.precision(3);
597 if(fVerboseLevel > 0)
598 {
599 fTrack = track;
600 fStep = track->GetStep();
601
602//#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
603// G4cout << std::setw(5) << "TrackID" << " " << std::setw(5) << "Step#" << " "
604// << std::setw(8) << "X" << " " << std::setw(8) << "Y" << " "
605// << std::setw(8) << "Z" << " " << std::setw(9) << "KineE"
606// << " " << std::setw(8) << "dE" << " " << std::setw(12)
607// << "StepLeng" << " " << std::setw(12) << "TrackLeng" << " "
608// << std::setw(12) << "NextVolume" << " " << std::setw(8) << "ProcName"
609// << G4endl;
610//#else
611// G4cout << std::setw(5) << "TrackID" << std::setw(5) << "Step#" << " "
612// << std::setw(8) << "X(mm)" << " " << std::setw(8) << "Y(mm)" << " "
613// << std::setw(8) << "Z(mm)" << " " << std::setw(9) << "KinE(MeV)"
614// << " " << std::setw(8) << "dE(MeV)" << " " << std::setw(8)
615// << "StepLeng" << " " << std::setw(9) << "TrackLeng" << " "
616// << std::setw(11) << "NextVolume" << " " << std::setw(8) << "ProcName"
617// << G4endl;
618//#endif
619
620 G4cout << "Start tracking : "
621 << GetIT(fTrack)->GetName()
622 << " (" << fTrack->GetTrackID() << ") from position "
623 << std::setw(8)
624 << G4BestUnit(fTrack->GetPosition().x(), "Length") << " "
625 << std::setw(8)
626 << G4BestUnit(fTrack->GetPosition().y(), "Length") << " "
627 << std::setw(8)
628 << G4BestUnit(fTrack->GetPosition().z(), "Length") << " ";
629
630// G4cout << std::setw(5) << fTrack->GetTrackID() << std::setw(5)
631// << fTrack->GetCurrentStepNumber() << " " << std::setw(8)
632// << G4BestUnit(fTrack->GetPosition().x(), "Length") << " "
633// << std::setw(8) << G4BestUnit(fTrack->GetPosition().y(), "Length")
634// << " " << std::setw(8)
635// << G4BestUnit(fTrack->GetPosition().z(), "Length") << " "
636// << std::setw(9) << G4BestUnit(fTrack->GetKineticEnergy(), "Energy")
637// << " " << std::setw(8)
638// << G4BestUnit(fStep->GetTotalEnergyDeposit(), "Energy") << " "
639// << std::setw(8) << G4BestUnit(fStep->GetStepLength(), "Length")
640// << " " << std::setw(9)
641// << G4BestUnit(fTrack->GetTrackLength(), "Length") << " ";
642
643 if(fTrack->GetNextVolume())
644 {
645 G4cout << std::setw(11) << fTrack->GetNextVolume()->GetName() << " ";
646 }
647 else
648 {
649 G4cout << std::setw(11) << "OutOfWorld" << " ";
650 }
651 G4cout << "initStep" << G4endl;
652 }
653 G4cout.precision(prec);
654}

References G4VITSteppingVerbose::fStep, G4VITSteppingVerbose::fTrack, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, GetIT(), G4VPhysicalVolume::GetName(), G4IT::GetName(), G4Track::GetNextVolume(), G4Track::GetPosition(), G4Track::GetStep(), G4Track::GetTrackID(), CLHEP::prec, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

◆ VerboseParticleChange()

void G4ITSteppingVerbose::VerboseParticleChange ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 912 of file G4ITSteppingVerbose.cc.

914{
915 if(fVerboseLevel == 0)
916 {
917 return;
918 }
919// Show header
920 G4cout << G4endl;
921 G4cout << " ++G4ParticleChange Information " << G4endl;
923}
virtual void DumpInfo() const

References G4VParticleChange::DumpInfo(), G4VITSteppingVerbose::fParticleChange, G4VITSteppingVerbose::fVerboseLevel, G4cout, and G4endl.

Referenced by AlongStepDoItOneByOne(), and PostStepDoItOneByOne().

◆ VerboseTrack()

void G4ITSteppingVerbose::VerboseTrack ( )
virtual

Implements G4VITSteppingVerbose.

Definition at line 763 of file G4ITSteppingVerbose.cc.

765{
766 if(fVerboseLevel == 0)
767 {
768 return;
769 }
770
771 CopyState();
772// Show header
773 G4cout << G4endl;
774 G4cout << " ++G4Track Information " << G4endl;
775 G4int prec = G4cout.precision(3);
776
777 G4cout << " -----------------------------------------------" << G4endl;
778 G4cout << " G4Track Information " << std::setw(20) << G4endl;
779 G4cout << " -----------------------------------------------" << G4endl;
780
781 G4cout << " Step number : " << std::setw(20)
783#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
784 G4cout << " Position - x : " << std::setw(20)
785 << G4BestUnit(fTrack->GetPosition().x(), "Length") << G4endl;
786 G4cout << " Position - y : " << std::setw(20)
787 << G4BestUnit(fTrack->GetPosition().y(), "Length") << G4endl;
788 G4cout << " Position - z : " << std::setw(20)
789 << G4BestUnit(fTrack->GetPosition().z(), "Length") << G4endl;
790 G4cout << " Global Time : " << std::setw(20)
791 << G4BestUnit(fTrack->GetGlobalTime(), "Time") << G4endl;
792 G4cout << " Local Time : " << std::setw(20)
793 << G4BestUnit(fTrack->GetLocalTime(), "Time") << G4endl;
794#else
795 G4cout << " Position - x (mm) : " << std::setw(20)
796 << fTrack->GetPosition().x() / mm << G4endl;
797 G4cout << " Position - y (mm) : " << std::setw(20)
798 << fTrack->GetPosition().y() / mm << G4endl;
799 G4cout << " Position - z (mm) : " << std::setw(20)
800 << fTrack->GetPosition().z() / mm << G4endl;
801 G4cout << " Global Time (ns) : " << std::setw(20)
802 << fTrack->GetGlobalTime() / ns << G4endl;
803 G4cout << " Local Time (ns) : " << std::setw(20)
804 << fTrack->GetLocalTime() / ns << G4endl;
805#endif
806 G4cout << " Momentum Direct - x : " << std::setw(20)
808 G4cout << " Momentum Direct - y : " << std::setw(20)
810 G4cout << " Momentum Direct - z : " << std::setw(20)
812#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
813 G4cout << " Kinetic Energy : "
814#else
815 G4cout << " Kinetic Energy (MeV): "
816#endif
817 << std::setw(20)
818 << G4BestUnit(fTrack->GetKineticEnergy(), "Energy") << G4endl;
819 G4cout << " Polarization - x : " << std::setw(20)
820 << fTrack->GetPolarization().x() << G4endl;
821 G4cout << " Polarization - y : " << std::setw(20)
822 << fTrack->GetPolarization().y() << G4endl;
823 G4cout << " Polarization - z : " << std::setw(20)
824 << fTrack->GetPolarization().z() << G4endl;
825 G4cout << " Track Length : " << std::setw(20)
826 << G4BestUnit(fTrack->GetTrackLength(), "Length") << G4endl;
827 G4cout << " Track ID # : " << std::setw(20)
828 << fTrack->GetTrackID() << G4endl;
829 G4cout << " Parent Track ID # : " << std::setw(20)
830 << fTrack->GetParentID() << G4endl;
831 G4cout << " Next Volume : " << std::setw(20);
832 if(fTrack->GetNextVolume() != 0)
833 {
834 G4cout << fTrack->GetNextVolume()->GetName() << " ";
835 }
836 else
837 {
838 G4cout << "OutOfWorld" << " ";
839 }
840 G4cout << G4endl;
841 G4cout << " Track Status : " << std::setw(20);
843 {
844 G4cout << " Alive";
845 }
846 else if(fTrack->GetTrackStatus() == fStopButAlive)
847 {
848 G4cout << " StopButAlive";
849 }
850 else if(fTrack->GetTrackStatus() == fStopAndKill)
851 {
852 G4cout << " StopAndKill";
853 }
855 {
856 G4cout << " KillTrackAndSecondaries";
857 }
858 else if(fTrack->GetTrackStatus() == fSuspend)
859 {
860 G4cout << " Suspend";
861 }
863 {
864 G4cout << " PostponeToNextEvent";
865 }
866 G4cout << G4endl;
867#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
868 G4cout << " Vertex - x : " << std::setw(20)
869 << G4BestUnit(fTrack->GetVertexPosition().x(), "Length") << G4endl;
870 G4cout << " Vertex - y : " << std::setw(20)
871 << G4BestUnit(fTrack->GetVertexPosition().y(), "Length") << G4endl;
872 G4cout << " Vertex - z : " << std::setw(20)
873 << G4BestUnit(fTrack->GetVertexPosition().z(), "Length") << G4endl;
874#else
875 G4cout << " Vertex - x (mm) : " << std::setw(20)
876 << fTrack->GetVertexPosition().x() / mm << G4endl;
877 G4cout << " Vertex - y (mm) : " << std::setw(20)
878 << fTrack->GetVertexPosition().y() / mm << G4endl;
879 G4cout << " Vertex - z (mm) : " << std::setw(20)
880 << fTrack->GetVertexPosition().z() / mm << G4endl;
881#endif
882 G4cout << " Vertex - Px (MomDir): " << std::setw(20)
884 G4cout << " Vertex - Py (MomDir): " << std::setw(20)
886 G4cout << " Vertex - Pz (MomDir): " << std::setw(20)
888#ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
889 G4cout << " Vertex - KineE : "
890#else
891 G4cout << " Vertex - KineE (MeV): "
892#endif
893 << std::setw(20)
895
896 G4cout << " Creator Process : " << std::setw(20);
897 if(fTrack->GetCreatorProcess() == 0)
898 {
899 G4cout << " Event Generator" << G4endl;
900 }
901 else
902 {
904 }
905
906 G4cout << " -----------------------------------------------" << G4endl;
907
908 G4cout.precision(prec);
909}
static constexpr double mm
Definition: G4SIunits.hh:95
@ fKillTrackAndSecondaries
@ fSuspend
@ fAlive
@ fStopAndKill
@ fStopButAlive
@ fPostponeToNextEvent
G4TrackStatus GetTrackStatus() const
G4double GetVertexKineticEnergy() const
const G4VProcess * GetCreatorProcess() const
const G4ThreeVector & GetVertexMomentumDirection() const
const G4ThreeVector & GetVertexPosition() const
G4double GetLocalTime() const
const G4ThreeVector & GetMomentumDirection() const
const G4ThreeVector & GetPolarization() const
#define ns
Definition: xmlparse.cc:614

References G4VITSteppingVerbose::CopyState(), fAlive, fKillTrackAndSecondaries, fPostponeToNextEvent, fStopAndKill, fStopButAlive, fSuspend, G4VITSteppingVerbose::fTrack, G4VITSteppingVerbose::fVerboseLevel, G4BestUnit, G4cout, G4endl, G4Track::GetCreatorProcess(), G4Track::GetCurrentStepNumber(), G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), G4Track::GetLocalTime(), G4Track::GetMomentumDirection(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4Track::GetParentID(), G4Track::GetPolarization(), G4Track::GetPosition(), G4VProcess::GetProcessName(), G4Track::GetTrackID(), G4Track::GetTrackLength(), G4Track::GetTrackStatus(), G4Track::GetVertexKineticEnergy(), G4Track::GetVertexMomentumDirection(), G4Track::GetVertexPosition(), mm, ns, CLHEP::prec, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Referenced by StepInfo(), and StepInfoForLeadingTrack().

Field Documentation

◆ baseDir

G4UIdirectory* G4UImessenger::baseDir = nullptr
protectedinherited

◆ baseDirName

G4String G4UImessenger::baseDirName = ""
protectedinherited

◆ commandsShouldBeInMaster

G4bool G4UImessenger::commandsShouldBeInMaster = false
protectedinherited

◆ fAlongStepDoItVector

G4ProcessVector* G4VITSteppingVerbose::fAlongStepDoItVector
protectedinherited

◆ fAlongStepGetPhysIntVector

G4ProcessVector* G4VITSteppingVerbose::fAlongStepGetPhysIntVector
protectedinherited

◆ fAtRestDoItProcTriggered

size_t G4VITSteppingVerbose::fAtRestDoItProcTriggered
protectedinherited

◆ fAtRestDoItVector

G4ProcessVector* G4VITSteppingVerbose::fAtRestDoItVector
protectedinherited

◆ fAtRestGetPhysIntVector

G4ProcessVector* G4VITSteppingVerbose::fAtRestGetPhysIntVector
protectedinherited

◆ fCondition

G4ForceCondition G4VITSteppingVerbose::fCondition
protectedinherited

◆ fCurrentProcess

const G4VITProcess* G4VITSteppingVerbose::fCurrentProcess
protectedinherited

◆ fCurrentVolume

const G4VPhysicalVolume* G4VITSteppingVerbose::fCurrentVolume
protectedinherited

◆ fGPILSelection

G4GPILSelection G4VITSteppingVerbose::fGPILSelection
protectedinherited

◆ fN2ndariesAlongStepDoIt

G4int G4VITSteppingVerbose::fN2ndariesAlongStepDoIt
protectedinherited

◆ fN2ndariesAtRestDoIt

G4int G4VITSteppingVerbose::fN2ndariesAtRestDoIt
protectedinherited

◆ fN2ndariesPostStepDoIt

G4int G4VITSteppingVerbose::fN2ndariesPostStepDoIt
protectedinherited

◆ fParticleChange

const G4VParticleChange* G4VITSteppingVerbose::fParticleChange
protectedinherited

◆ fPostStepDoItProcTriggered

size_t G4VITSteppingVerbose::fPostStepDoItProcTriggered
protectedinherited

◆ fPostStepDoItVector

G4ProcessVector* G4VITSteppingVerbose::fPostStepDoItVector
protectedinherited

◆ fPostStepGetPhysIntVector

G4ProcessVector* G4VITSteppingVerbose::fPostStepGetPhysIntVector
protectedinherited

◆ fPostStepPoint

G4StepPoint* G4VITSteppingVerbose::fPostStepPoint
protectedinherited

◆ fpProcessGeneralInfo

const ProcessGeneralInfo* G4VITSteppingVerbose::fpProcessGeneralInfo
protectedinherited

◆ fPreStepPoint

G4StepPoint* G4VITSteppingVerbose::fPreStepPoint
protectedinherited

◆ fPreviousStepSize

G4double G4VITSteppingVerbose::fPreviousStepSize
protectedinherited

◆ fpState

G4ITStepProcessorState* G4VITSteppingVerbose::fpState
protectedinherited

◆ fpStepProcessor

const G4ITStepProcessor* G4VITSteppingVerbose::fpStepProcessor
protectedinherited

◆ fpVerboseUI

G4UIcmdWithAnInteger* G4VITSteppingVerbose::fpVerboseUI
protectedinherited

◆ fSecondary

const G4TrackVector* G4VITSteppingVerbose::fSecondary
protectedinherited

◆ fSelectedAtRestDoItVector

G4SelectedAtRestDoItVector* G4VITSteppingVerbose::fSelectedAtRestDoItVector
protectedinherited

◆ fSelectedPostStepDoItVector

G4SelectedPostStepDoItVector* G4VITSteppingVerbose::fSelectedPostStepDoItVector
protectedinherited

◆ fStep

const G4Step* G4VITSteppingVerbose::fStep
protectedinherited

◆ fStepStatus

G4StepStatus G4VITSteppingVerbose::fStepStatus
protectedinherited

◆ fTouchableHandle

G4TouchableHandle G4VITSteppingVerbose::fTouchableHandle
protectedinherited

◆ fTrack

const G4Track* G4VITSteppingVerbose::fTrack
protectedinherited

◆ fVerboseLevel

G4int G4VITSteppingVerbose::fVerboseLevel
protectedinherited

◆ MAXofAlongStepLoops

size_t G4VITSteppingVerbose::MAXofAlongStepLoops
protectedinherited

◆ MAXofAtRestLoops

size_t G4VITSteppingVerbose::MAXofAtRestLoops
protectedinherited

◆ MAXofPostStepLoops

size_t G4VITSteppingVerbose::MAXofPostStepLoops
protectedinherited

◆ PhysicalStep

G4double G4VITSteppingVerbose::PhysicalStep
protectedinherited

◆ physIntLength

G4double G4VITSteppingVerbose::physIntLength
protectedinherited

The documentation for this class was generated from the following files: