10 #include "G4UnitsTable.hh"
22 G4int precision = G4cout.precision(3);
24 if (verboseLevel >= 1) {
25 if (verboseLevel >= 4)
27 if (verboseLevel >= 3) {
29 G4cout << std::setw(5) <<
"#Step#"
30 <<
" " << std::setw(6) <<
"X"
31 <<
" " << std::setw(6) <<
"Y"
32 <<
" " << std::setw(6) <<
"Z"
33 <<
" " << std::setw(9) <<
"KineE"
34 <<
" " << std::setw(9) <<
"dEStep"
35 <<
" " << std::setw(10) <<
"StepLength"
36 <<
" " << std::setw(10) <<
"TrackLength"
37 <<
" " << std::setw(10) <<
"Volume"
38 <<
" " << std::setw(10) <<
"Process" << G4endl;
40 G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() <<
" " << std::setw(6)
41 << G4BestUnit(fTrack->GetPosition().x(),
"Length") << std::setw(6)
42 << G4BestUnit(fTrack->GetPosition().y(),
"Length") << std::setw(6)
43 << G4BestUnit(fTrack->GetPosition().z(),
"Length") << std::setw(6)
44 << G4BestUnit(fTrack->GetKineticEnergy(),
"Energy") << std::setw(6)
45 << G4BestUnit(fStep->GetTotalEnergyDeposit(),
"Energy") << std::setw(6)
46 << G4BestUnit(fStep->GetStepLength(),
"Length") << std::setw(6)
47 << G4BestUnit(fTrack->GetTrackLength(),
"Length") <<
" ";
49 if (fTrack->GetNextVolume() !=
nullptr) {
50 G4cout << std::setw(10) << fTrack->GetVolume()->GetName();
52 G4cout << std::setw(10) <<
"OutOfWorld";
55 if (fStep->GetPostStepPoint()->GetProcessDefinedStep() !=
nullptr) {
56 G4cout <<
" " << std::setw(10) << fStep->GetPostStepPoint()->GetProcessDefinedStep()->GetProcessName();
58 G4cout <<
" UserLimit";
63 if (verboseLevel == 2) {
65 G4int tN2ndariesTot = fN2ndariesAtRestDoIt + fN2ndariesAlongStepDoIt + fN2ndariesPostStepDoIt;
67 if (tN2ndariesTot > 0) {
68 G4cout <<
" :---- List of Secondaries - "
69 <<
"#SpawnInStep = " << std::setw(3) << tN2ndariesTot <<
"(Rest = " << std::setw(2)
70 << fN2ndariesAtRestDoIt <<
", Along = " << std::setw(2) << fN2ndariesAlongStepDoIt
71 <<
", Post = " << std::setw(2) << fN2ndariesPostStepDoIt <<
"), "
72 <<
"#SpawnTotal = " << std::setw(3) << (*fSecondary).size() <<
" --------- " << G4endl;
74 for (
size_t lp1 = (*fSecondary).size() - tN2ndariesTot; lp1 < (*fSecondary).size(); lp1++) {
75 G4cout <<
" : " << std::setw(6) << G4BestUnit((*fSecondary)[lp1]->GetPosition().
x(),
"Length")
76 << std::setw(6) << G4BestUnit((*fSecondary)[lp1]->GetPosition().
y(),
"Length") << std::setw(6)
77 << G4BestUnit((*fSecondary)[lp1]->GetPosition().
z(),
"Length") << std::setw(6)
78 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),
"Energy") << std::setw(10)
79 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName();
83 G4cout <<
" :----------------------"
84 <<
"--------------------------"
85 <<
"-- End of Secondaries Info --------------------------------- " << G4endl;
90 G4cout.precision(precision);
96 G4int precision = G4cout.precision(3);
97 if (verboseLevel > 0) {
98 G4cout << std::setw(5) <<
"Step#"
99 <<
" " << std::setw(6) <<
"X"
100 <<
" " << std::setw(6) <<
"Y"
101 <<
" " << std::setw(6) <<
"Z"
102 <<
" " << std::setw(9) <<
"KineE"
103 <<
" " << std::setw(9) <<
"dEStep"
104 <<
" " << std::setw(10) <<
"StepLength"
105 <<
" " << std::setw(10) <<
"TrackLength"
106 <<
" " << std::setw(10) <<
"Volume"
107 <<
" " << std::setw(10) <<
"Process " << G4endl;
109 G4cout << std::setw(5) << fTrack->GetCurrentStepNumber() <<
" " << std::setw(6)
110 << G4BestUnit(fTrack->GetPosition().x(),
"Length") << std::setw(6)
111 << G4BestUnit(fTrack->GetPosition().y(),
"Length") << std::setw(6)
112 << G4BestUnit(fTrack->GetPosition().z(),
"Length") << std::setw(6)
113 << G4BestUnit(fTrack->GetKineticEnergy(),
"Energy") << std::setw(6)
114 << G4BestUnit(fStep->GetTotalEnergyDeposit(),
"Energy") << std::setw(6)
115 << G4BestUnit(fStep->GetStepLength(),
"Length") << std::setw(6)
116 << G4BestUnit(fTrack->GetTrackLength(),
"Length") <<
" ";
118 if (fTrack->GetNextVolume() !=
nullptr) {
119 G4cout << std::setw(10) << fTrack->GetVolume()->GetName();
121 G4cout <<
"OutOfWorld";
124 G4cout <<
" initStep" << G4endl;
126 G4cout.precision(precision);
void StepInfo() override
step information
void TrackingStarted() override
tracking information
~LaserSteppingVerbose() override
destructor
LaserSteppingVerbose()
constructor