64 "precision of verbose output");
66 "set precision of verbose output");
81 G4cout << std::setw( 5) <<
"Step#" <<
" "
82 << std::setw(
fprec+3) <<
"X" <<
" "
83 << std::setw(
fprec+3) <<
"Y" <<
" "
84 << std::setw(
fprec+3) <<
"Z" <<
" "
85 << std::setw(
fprec+6) <<
"KineE" <<
" "
86 << std::setw(
fprec+10) <<
"dEStep" <<
" "
87 << std::setw(
fprec+7) <<
"StepLeng"
88 << std::setw(
fprec+7) <<
"TrakLeng"
89 << std::setw( 10) <<
"Volume" <<
" "
90 << std::setw( 10) <<
"Process" <<
G4endl;
101 << std::setw( 9) <<
" initStep" <<
G4endl;
103 G4cout.precision(oldprec);
119 G4cout << std::setw(5) <<
"#Step#" <<
" "
120 << std::setw(
fprec+3) <<
"X" <<
" "
121 << std::setw(
fprec+3) <<
"Y" <<
" "
122 << std::setw(
fprec+3) <<
"Z" <<
" "
123 << std::setw(
fprec+6) <<
"KineE" <<
" "
124 << std::setw(
fprec+10) <<
"dEStep" <<
" "
125 << std::setw(
fprec+7) <<
"StepLeng"
126 << std::setw(
fprec+7) <<
"TrakLeng"
127 << std::setw(10) <<
"Volume" <<
" "
128 << std::setw(10) <<
"Process" <<
G4endl;
146 G4cout <<
" " << std::setw( 9) << procName;
151 const std::vector<const G4Track*>* secondary
153 std::size_t nbtrk = (*secondary).size();
156 G4cout <<
"\n :----- List of secondaries ----------------" <<
G4endl;
158 for (std::size_t lp=0; lp<(*secondary).size(); ++lp)
162 << (*secondary)[lp]->GetDefinition()->GetParticleName()
165 <<
G4BestUnit((*secondary)[lp]->GetKineticEnergy(),
"Energy")
168 <<
G4BestUnit((*secondary)[lp]->GetGlobalTime(),
"Time");
172 G4cout <<
" :------------------------------------------\n" <<
G4endl;
176 G4cout.precision(oldprec);
196 ptProcManager = (*fAtRestDoItVector)[np];
197 G4cout <<
" # " << npt <<
" : "
204 ptProcManager = (*fAtRestDoItVector)[np];
214 G4cout <<
" -- List of secondaries generated : "
215 <<
"(x,y,z,kE,t,PID) --" <<
G4endl;
217 lp1<(*fSecondary).size(); ++lp1)
222 <<
" " << std::setw( 9)
224 <<
" " << std::setw( 9)
226 <<
" " << std::setw( 9)
228 <<
" " << std::setw( 9)
230 <<
" " << std::setw(18)
231 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
255 G4cout <<
" >>AlongStepDoIt (after all invocations):" <<
G4endl;
260 ptProcManager = (*fAlongStepDoItVector)(ci);
261 G4cout <<
" " << ci+1 <<
") ";
262 if(ptProcManager !=
nullptr)
270 G4cout <<
" ++List of secondaries generated "
271 <<
"(x,y,z,kE,t,PID):"
272 <<
" No. of secondaries = "
273 << (*fSecondary).size() <<
G4endl;
275 if((*fSecondary).size()>0)
277 for(std::size_t lp1=0; lp1<(*fSecondary).size(); ++lp1)
282 <<
" " << std::setw( 9)
284 <<
" " << std::setw( 9)
286 <<
" " << std::setw( 9)
288 <<
" " << std::setw( 9)
290 <<
" " << std::setw(18)
291 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
316 G4cout <<
" **PostStepDoIt (after all invocations):" <<
G4endl;
325 ptProcManager = (*fPostStepDoItVector)[np];
326 G4cout <<
" " << npt <<
") "
333 ptProcManager = (*fPostStepDoItVector)[np];
341 G4cout <<
" ++List of secondaries generated "
342 <<
"(x,y,z,kE,t,PID):"
343 <<
" No. of secondaries = "
344 << (*fSecondary).size() <<
G4endl;
345 G4cout <<
" [Note]Secondaries from AlongStepDoIt included."
348 if((*fSecondary).size()>0)
350 for(std::size_t lp1=0; lp1<(*fSecondary).size(); ++lp1)
355 <<
" " << std::setw( 9)
357 <<
" " << std::setw( 9)
359 <<
" " << std::setw( 9)
361 <<
" " << std::setw( 9)
363 <<
" " << std::setw(18)
364 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
381 <<
" >>DefinePhysicalStepLength (List of proposed StepLengths): "
395 G4cout <<
"=== Defined Physical Step Length (DPSL)" <<
G4endl;
396 G4cout <<
" ++ProposedStep(UserLimit) = "
398 <<
" : ProcName = User defined maximum allowed Step" <<
G4endl;
410 G4cout <<
" ++ProposedStep(PostStep ) = "
444 G4cout <<
" ++ProposedStep(AlongStep) = "
473 G4cout <<
" >>AlongStepDoIt (process by process): "
474 <<
" Process Name = "
479 <<
"!Note! Safety of PostStep is only valid "
480 <<
"after all DoIt invocations."
486 G4cout <<
" ++List of secondaries generated "
487 <<
"(x,y,z,kE,t,PID):"
488 <<
" No. of secondaries = "
494 lp1<(*fSecondary).size(); ++lp1)
499 <<
" " << std::setw( 9)
501 <<
" " << std::setw( 9)
503 <<
" " << std::setw( 9)
505 <<
" " << std::setw( 9)
507 <<
" " << std::setw(18)
508 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
524 G4cout <<
" >>PostStepDoIt (process by process): "
525 <<
" Process Name = "
533 G4cout <<
" ++List of secondaries generated "
534 <<
"(x,y,z,kE,t,PID):"
535 <<
" No. of secondaries = "
541 lp1<(*fSecondary).size(); ++lp1)
546 <<
" " << std::setw( 9)
548 <<
" " << std::setw( 9)
550 <<
" " << std::setw( 9)
552 <<
" " << std::setw( 9)
554 <<
" " << std::setw(18)
555 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()
573 G4cout <<
" -----------------------------------------------" <<
G4endl;
574 G4cout <<
" G4Track Information " << std::setw(20) <<
G4endl;
575 G4cout <<
" -----------------------------------------------" <<
G4endl;
577 G4cout <<
" Step number : "
579 G4cout <<
" Position - x : "
582 G4cout <<
" Position - y : "
585 G4cout <<
" Position - z : "
588 G4cout <<
" Global Time : "
591 G4cout <<
" Local Time : "
594 G4cout <<
" Momentum Direct - x : "
597 G4cout <<
" Momentum Direct - y : "
600 G4cout <<
" Momentum Direct - z : "
603 G4cout <<
" Kinetic Energy : "
606 G4cout <<
" Polarization - x : "
609 G4cout <<
" Polarization - y : "
612 G4cout <<
" Polarization - z : "
615 G4cout <<
" Track Length : "
618 G4cout <<
" Track ID # : "
621 G4cout <<
" Parent Track ID # : "
624 G4cout <<
" Next Volume : "
628 else G4cout <<
"OutOfWorld" <<
" ";
630 G4cout <<
" Track Status : "
635 G4cout <<
" StopButAlive";
639 G4cout <<
" KillTrackAndSecondaries";
643 G4cout <<
" PostponeToNextEvent";
645 G4cout <<
" Vertex - x : "
649 G4cout <<
" Vertex - y : "
653 G4cout <<
" Vertex - z : "
657 G4cout <<
" Vertex - Px (MomDir): "
660 G4cout <<
" Vertex - Py (MomDir): "
663 G4cout <<
" Vertex - Pz (MomDir): "
666 G4cout <<
" Vertex - KineE : "
671 G4cout <<
" Creator Process : "
678 G4cout <<
" -----------------------------------------------" <<
G4endl;
679 G4cout.precision(oldprec);
701 G4cout <<
" Address of G4Track : "
703 G4cout <<
" Step Length : "
705 G4cout <<
" Energy Deposit : "
709 G4cout <<
" -------------------------------------------------------"
710 <<
"----------------" <<
G4endl;
711 G4cout <<
" StepPoint Information "
712 << std::setw(20) <<
"PreStep" << std::setw(20) <<
"PostStep" <<
G4endl;
713 G4cout <<
" -------------------------------------------------------"
714 <<
"----------------" <<
G4endl;
715 G4cout <<
" Position - x : "
721 G4cout <<
" Position - y : "
727 G4cout <<
" Position - z : "
733 G4cout <<
" Global Time : "
739 G4cout <<
" Local Time : "
745 G4cout <<
" Proper Time : "
751 G4cout <<
" Momentum Direct - x : "
755 G4cout <<
" Momentum Direct - y : "
759 G4cout <<
" Momentum Direct - z : "
763 G4cout <<
" Momentum - x : "
769 G4cout <<
" Momentum - y : "
775 G4cout <<
" Momentum - z : "
781 G4cout <<
" Total Energy : "
787 G4cout <<
" Kinetic Energy : "
799 G4cout <<
" Volume Name : "
805 G4cout << std::setw(20) << volName
813 G4cout <<
" Polarization - x : "
817 G4cout <<
" Polarization - y : "
821 G4cout <<
" Polarization - Z : "
829 G4cout <<
" Step Status : " ;
833 G4cout << std::setw(20) <<
"Geom Limit";
837 G4cout << std::setw(20) <<
"AlongStep Proc.";
841 G4cout << std::setw(20) <<
"PostStep Proc";
845 G4cout << std::setw(20) <<
"AtRest Proc";
849 G4cout << std::setw(20) <<
"Undefined";
855 G4cout << std::setw(20) <<
"Geom Limit";
859 G4cout << std::setw(20) <<
"AlongStep Proc.";
863 G4cout << std::setw(20) <<
"PostStep Proc";
867 G4cout << std::setw(20) <<
"AtRest Proc";
871 G4cout << std::setw(20) <<
"Undefined";
875 G4cout <<
" Process defined Step: " ;
878 G4cout << std::setw(20) <<
"Undefined";
888 G4cout << std::setw(20) <<
"Undefined";
899 G4cout <<
" -------------------------------------------------------"
900 <<
"----------------" <<
G4endl;
@ NotCandidateForSelection
Definition of the G4SteppingVerboseWithUnits class.
@ fKillTrackAndSecondaries
G4GLOB_DLL std::ostream G4cout
Command & DeclareProperty(const G4String &name, const G4AnyType &variable, const G4String &doc="")
G4double GetTotalEnergy() const
G4StepStatus GetStepStatus() const
G4double GetVelocity() const
G4double GetProperTime() const
G4double GetGlobalTime() const
G4double GetSafety() const
const G4VProcess * GetProcessDefinedStep() 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
const std::vector< const G4Track * > * GetSecondaryInCurrentStep() const
G4StepPoint * GetPreStepPoint() const
G4double GetStepLength() const
G4double GetTotalEnergyDeposit() const
G4StepPoint * GetPostStepPoint() const
G4GenericMessenger * fmessenger
void PostStepDoItAllDone() override
void SetManager(G4SteppingManager *const) override
void AtRestDoItInvoked() override
void AlongStepDoItAllDone() override
~G4SteppingVerboseWithUnits() override
void DPSLUserLimit() override
void DPSLPostStep() override
void AlongStepDoItOneByOne() override
void DPSLAlongStep() override
void ShowStep() const override
void TrackingStarted() override
void VerboseParticleChange() override
void VerboseTrack() override
void DPSLStarted() override
void PostStepDoItOneByOne() override
G4SteppingVerboseWithUnits(G4int precision=4)
G4TrackStatus GetTrackStatus() const
G4double GetVertexKineticEnergy() const
G4VPhysicalVolume * GetVolume() const
const G4VProcess * GetCreatorProcess() const
G4VPhysicalVolume * GetNextVolume() const
const G4ThreeVector & GetPosition() const
G4double GetTrackLength() const
const G4ThreeVector & GetVertexMomentumDirection() const
G4double GetGlobalTime() const
G4int GetCurrentStepNumber() const
const G4ThreeVector & GetVertexPosition() const
G4double GetLocalTime() const
const G4ThreeVector & GetMomentumDirection() const
G4double GetKineticEnergy() const
const G4ThreeVector & GetPolarization() const
G4double GetStepLength() const
G4int GetParentID() const
virtual void DumpInfo() const
const G4String & GetName() const
const G4String & GetProcessName() const
std::size_t MAXofAlongStepLoops
G4int fN2ndariesPostStepDoIt
G4ForceCondition fCondition
G4GPILSelection fGPILSelection
G4VParticleChange * fParticleChange
G4int fN2ndariesAtRestDoIt
G4int fN2ndariesAlongStepDoIt
G4SelectedPostStepDoItVector * fSelectedPostStepDoItVector
std::size_t MAXofAtRestLoops
G4SelectedAtRestDoItVector * fSelectedAtRestDoItVector
G4VProcess * fCurrentProcess
G4SteppingManager * fManager
std::size_t MAXofPostStepLoops
G4TrackVector * fSecondary
Command & SetStates(G4ApplicationState s0)