43{
44 CopyState();
45
46 G4int prec = G4cout.precision(8);
47
48 if( verboseLevel >= 1 ){
49 if( verboseLevel >= 4 ) VerboseTrack();
50 if( verboseLevel >= 3 ){
51 G4cout << G4endl;
52 G4cout << std::setw( 5) << "#Step#" << " "
53 << std::setw(10) << "X" << " "
54 << std::setw(10) << "Y" << " "
55 << std::setw(10) << "Z" << " "
56 << std::setw(10) << "KineE" << " "
57 << std::setw(10) << "dEStep" << " "
58 << std::setw(10) << "StepLeng"
59 << std::setw(10) << "TrakLeng"
60 << std::setw(10) << "NextVolu"
61 << std::setw(10) << "Process"
62 << std::setw(10) << "Dir_x" << " "
63 << std::setw(10) << "Dir_y" << " "
64 << std::setw(10) << "Dir_z" << " "
65 << G4endl;
66 }
67
68 G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
69 << std::setw(10) <<
G4BestUnit(fTrack->GetPosition().x(),
"Length")
70 << std::setw(10) <<
G4BestUnit(fTrack->GetPosition().y(),
"Length")
71 << std::setw(10) <<
G4BestUnit(fTrack->GetPosition().z(),
"Length")
72 << std::setw(10) <<
G4BestUnit(fTrack->GetKineticEnergy(),
"Energy")
74 fStep->GetTotalEnergyDeposit(),"Energy")
75 << std::setw(10) <<
G4BestUnit(fStep->GetStepLength(),
"Length")
76 << std::setw(10) <<
G4BestUnit(fTrack->GetTrackLength(),
"Length");
77
78 if( fTrack->GetNextVolume() != nullptr ) {
79 G4cout << std::setw(10) << fTrack->GetVolume()->GetName();
80 } else {
81 G4cout << std::setw(10) << "OutOfWorld";
82 }
83
84 if(fStep->GetPostStepPoint()->GetProcessDefinedStep() != nullptr){
85 G4cout << " "
86 << std::setw(10)
87 << fStep->GetPostStepPoint()->GetProcessDefinedStep()
88 ->GetProcessName();
89 } else {
90 G4cout << " UserLimit";
91 }
92
93 G4cout << std::setw(12)
94 <<
G4BestUnit(fTrack->GetMomentumDirection().x(),
"Length")
95 << std::setw(12)
96 <<
G4BestUnit(fTrack->GetMomentumDirection().y(),
"Length")
97 << std::setw(12)
98 <<
G4BestUnit(fTrack->GetMomentumDirection().z(),
"Length");
99
100 G4cout << G4endl;
101
102 if( verboseLevel == 2 ){
103 G4int tN2ndariesTot = fN2ndariesAtRestDoIt +
104 fN2ndariesAlongStepDoIt +
105 fN2ndariesPostStepDoIt;
106 if(tN2ndariesTot>0){
107 G4cout << " :----- List of 2ndaries - "
108 << "#SpawnInStep=" << std::setw(3) << tN2ndariesTot
109 << "(Rest=" << std::setw(2) << fN2ndariesAtRestDoIt
110 << ",Along=" << std::setw(2) << fN2ndariesAlongStepDoIt
111 << ",Post=" << std::setw(2) << fN2ndariesPostStepDoIt
112 << "), "
113 << "#SpawnTotal=" << std::setw(3) << (*fSecondary).size()
114 << " ---------------"
115 << G4endl;
116
117 for(size_t lp1=(*fSecondary).size()-tN2ndariesTot;
118 lp1<(*fSecondary).size(); lp1++){
119 G4cout << " : "
120 << std::setw(6)
121 <<
G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),
"Length")
122 << std::setw(6)
123 <<
G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),
"Length")
124 << std::setw(6)
125 <<
G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),
"Length")
126 << std::setw(6)
127 <<
G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),
"Energy")
128 << std::setw(10)
129 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName();
130 G4cout << G4endl;
131 }
132
133 G4cout << " :-----------------------------"
134 << "----------------------------------"
135 << "-- EndOf2ndaries Info ---------------"
136 << G4endl;
137 }
138 }
139
140 }
141 G4cout.precision(prec);
142}