Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
F04SteppingVerbose Class Reference

#include <F04SteppingVerbose.hh>

Inheritance diagram for F04SteppingVerbose:
G4SteppingVerbose G4VSteppingVerbose

Public Member Functions

 F04SteppingVerbose ()
 
virtual ~F04SteppingVerbose ()
 
virtual void StepInfo ()
 
virtual void TrackingStarted ()
 
- Public Member Functions inherited from G4SteppingVerbose
 G4SteppingVerbose ()
 
 ~G4SteppingVerbose ()
 
void NewStep ()
 
void AtRestDoItInvoked ()
 
void AlongStepDoItAllDone ()
 
void PostStepDoItAllDone ()
 
void AlongStepDoItOneByOne ()
 
void PostStepDoItOneByOne ()
 
void StepInfo ()
 
void TrackingStarted ()
 
void DPSLStarted ()
 
void DPSLUserLimit ()
 
void DPSLPostStep ()
 
void DPSLAlongStep ()
 
void VerboseTrack ()
 
void VerboseParticleChange ()
 
void ShowStep () const
 
- Public Member Functions inherited from G4VSteppingVerbose
virtual ~G4VSteppingVerbose ()
 
void CopyState ()
 
void SetManager (G4SteppingManager *const)
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VSteppingVerbose
static void SetInstance (G4VSteppingVerbose *Instance)
 
static G4VSteppingVerboseGetInstance ()
 
static G4int GetSilent ()
 
static void SetSilent (G4int fSilent)
 
static G4int GetSilentStepInfo ()
 
static void SetSilentStepInfo (G4int fSilent)
 
- Protected Types inherited from G4VSteppingVerbose
typedef std::vector< G4intG4SelectedAtRestDoItVector
 
typedef std::vector< G4intG4SelectedAlongStepDoItVector
 
typedef std::vector< G4intG4SelectedPostStepDoItVector
 
- Protected Member Functions inherited from G4VSteppingVerbose
 G4VSteppingVerbose ()
 
- Protected Attributes inherited from G4VSteppingVerbose
G4SteppingManagerfManager
 
G4UserSteppingActionfUserSteppingAction
 
G4double PhysicalStep
 
G4double GeometricalStep
 
G4double CorrectedStep
 
G4bool PreStepPointIsGeom
 
G4bool FirstStep
 
G4StepStatus fStepStatus
 
G4double TempInitVelocity
 
G4double TempVelocity
 
G4double Mass
 
G4double sumEnergyChange
 
G4VParticleChangefParticleChange
 
G4TrackfTrack
 
G4TrackVectorfSecondary
 
G4StepfStep
 
G4StepPointfPreStepPoint
 
G4StepPointfPostStepPoint
 
G4VPhysicalVolumefCurrentVolume
 
G4VSensitiveDetectorfSensitive
 
G4VProcessfCurrentProcess
 
G4ProcessVectorfAtRestDoItVector
 
G4ProcessVectorfAlongStepDoItVector
 
G4ProcessVectorfPostStepDoItVector
 
G4ProcessVectorfAtRestGetPhysIntVector
 
G4ProcessVectorfAlongStepGetPhysIntVector
 
G4ProcessVectorfPostStepGetPhysIntVector
 
size_t MAXofAtRestLoops
 
size_t MAXofAlongStepLoops
 
size_t MAXofPostStepLoops
 
G4double currentMinimumStep
 
G4double numberOfInteractionLengthLeft
 
size_t fAtRestDoItProcTriggered
 
size_t fAlongStepDoItProcTriggered
 
size_t fPostStepDoItProcTriggered
 
G4int fN2ndariesAtRestDoIt
 
G4int fN2ndariesAlongStepDoIt
 
G4int fN2ndariesPostStepDoIt
 
G4NavigatorfNavigator
 
G4int verboseLevel
 
G4SelectedAtRestDoItVectorfSelectedAtRestDoItVector
 
G4SelectedAlongStepDoItVectorfSelectedAlongStepDoItVector
 
G4SelectedPostStepDoItVectorfSelectedPostStepDoItVector
 
G4double fPreviousStepSize
 
G4TouchableHandle fTouchableHandle
 
G4SteppingControl StepControlFlag
 
G4double physIntLength
 
G4ForceCondition fCondition
 
G4GPILSelection fGPILSelection
 
- Static Protected Attributes inherited from G4VSteppingVerbose
static G4ThreadLocal
G4VSteppingVerbose
fInstance = 0
 
static G4ThreadLocal G4int Silent = 0
 
static G4ThreadLocal G4int SilentStepInfo = 0
 

Detailed Description

Definition at line 37 of file F04SteppingVerbose.hh.

Constructor & Destructor Documentation

F04SteppingVerbose::F04SteppingVerbose ( )

Definition at line 38 of file F04SteppingVerbose.cc.

References G4VSteppingVerbose::SetSilent().

39 {
41 }
static void SetSilent(G4int fSilent)
F04SteppingVerbose::~F04SteppingVerbose ( )
virtual

Definition at line 45 of file F04SteppingVerbose.cc.

45 {}

Member Function Documentation

void F04SteppingVerbose::StepInfo ( )
virtual

Implements G4VSteppingVerbose.

Definition at line 49 of file F04SteppingVerbose.cc.

References G4VSteppingVerbose::CopyState(), G4VSteppingVerbose::fN2ndariesAlongStepDoIt, G4VSteppingVerbose::fN2ndariesAtRestDoIt, G4VSteppingVerbose::fN2ndariesPostStepDoIt, G4VSteppingVerbose::fSecondary, G4VSteppingVerbose::fStep, G4VSteppingVerbose::fTrack, G4BestUnit, G4cout, G4endl, G4Track::GetCurrentStepNumber(), G4Track::GetDefinition(), G4Track::GetKineticEnergy(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4ParticleDefinition::GetParticleName(), G4Track::GetPosition(), G4Step::GetPostStepPoint(), G4StepPoint::GetProcessDefinedStep(), G4Step::GetStepLength(), G4Track::GetTrackLength(), G4Track::GetVolume(), G4VSteppingVerbose::verboseLevel, G4SteppingVerbose::VerboseTrack(), test::x, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), z, and CLHEP::Hep3Vector::z().

50 {
51  CopyState();
52 
53  G4int prec = G4cout.precision(8);
54 
55  if (fTrack->GetDefinition()->GetParticleName() == "proton") return;
56 // if (fTrack->GetDefinition()->GetParticleName() == "pi+") return;
57 // if (fTrack->GetDefinition()->GetParticleName() == "mu+") return;
58  if (fTrack->GetDefinition()->GetParticleName() == "e+") return;
59 
60  if( verboseLevel >= 1 ){
61  if( verboseLevel >= 4 ) VerboseTrack();
62  if( verboseLevel >= 3 ){
63  G4cout << G4endl;
64  G4cout << std::setw( 5) << "#Step#" << " "
65  << std::setw(10) << "X" << " "
66  << std::setw(10) << "Y" << " "
67  << std::setw(10) << "Z" << " "
68  << std::setw(10) << "KineE" << " "
69  << std::setw(10) << "dEStep" << " "
70  << std::setw(10) << "StepLeng"
71  << std::setw(10) << "TrakLeng"
72  << std::setw(10) << "NextVolu"
73  << std::setw(10) << "Process"
74  << std::setw(10) << "Dir_x" << " "
75  << std::setw(10) << "Dir_y" << " "
76  << std::setw(10) << "Dir_z" << " "
77  << G4endl;
78  }
79 
80  G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
81  << std::setw(10) << G4BestUnit(fTrack->GetPosition().x(),"Length")
82  << std::setw(10) << G4BestUnit(fTrack->GetPosition().y(),"Length")
83  << std::setw(10) << G4BestUnit(fTrack->GetPosition().z(),"Length")
84  << std::setw(10) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
85  << std::setw(10) << G4BestUnit(fStep->
86  GetTotalEnergyDeposit(),"Energy")
87  << std::setw(10) << G4BestUnit(fStep->GetStepLength(),"Length")
88  << std::setw(10) << G4BestUnit(fTrack->GetTrackLength(),"Length");
89 
90  if( fTrack->GetNextVolume() != 0 ) {
91  G4cout << std::setw(10) << fTrack->GetVolume()->GetName();
92  } else {
93  G4cout << std::setw(10) << "OutOfWorld";
94  }
95 
97  G4cout << " "
98  << std::setw(10) << fStep->GetPostStepPoint()->
99  GetProcessDefinedStep()->GetProcessName();
100  } else {
101  G4cout << " UserLimit";
102  }
103 
104 // G4cout << std::setw(12) <<
105 // G4BestUnit(fTrack->GetMomentumDirection().x(),"Length")
106 // << std::setw(12) <<
107 // G4BestUnit(fTrack->GetMomentumDirection().y(),"Length")
108 // << std::setw(12) <<
109 // G4BestUnit(fTrack->GetMomentumDirection().z(),"Length");
110 
111  G4cout << G4endl;
112 
113  if( verboseLevel == 2 ){
114  G4int tN2ndariesTot = fN2ndariesAtRestDoIt +
117  if(tN2ndariesTot>0){
118  G4cout << " :----- List of 2ndaries - "
119  << "#SpawnInStep=" << std::setw(3) << tN2ndariesTot
120  << "(Rest=" << std::setw(2) << fN2ndariesAtRestDoIt
121  << ",Along=" << std::setw(2) << fN2ndariesAlongStepDoIt
122  << ",Post=" << std::setw(2) << fN2ndariesPostStepDoIt
123  << "), "
124  << "#SpawnTotal=" << std::setw(3) << (*fSecondary).size()
125  << " ---------------"
126  << G4endl;
127 
128  for(size_t lp1=(*fSecondary).size()-tN2ndariesTot;
129  lp1<(*fSecondary).size(); lp1++){
130  G4cout << " : "
131  << std::setw(6)
132  << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),"Length")
133  << std::setw(6)
134  << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),"Length")
135  << std::setw(6)
136  << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),"Length")
137  << std::setw(6)
138  << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy")
139  << std::setw(10)
140  << (*fSecondary)[lp1]->GetDefinition()->GetParticleName();
141  G4cout << G4endl;
142  }
143 
144  G4cout << " :-----------------------------"
145  << "----------------------------------"
146  << "-- EndOf2ndaries Info ---------------"
147  << G4endl;
148  }
149  }
150 
151  }
152  G4cout.precision(prec);
153 }
G4ParticleDefinition * GetDefinition() const
G4double GetStepLength() const
double x() const
G4double z
Definition: TRTMaterials.hh:39
const G4ThreeVector & GetPosition() const
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
const G4String & GetParticleName() const
double z() const
G4VPhysicalVolume * GetNextVolume() const
G4double GetKineticEnergy() const
G4GLOB_DLL std::ostream G4cout
G4int GetCurrentStepNumber() const
G4TrackVector * fSecondary
const G4String & GetName() const
G4double GetTrackLength() const
const G4VProcess * GetProcessDefinedStep() const
G4StepPoint * GetPostStepPoint() const
double y() const
G4VPhysicalVolume * GetVolume() const
#define G4endl
Definition: G4ios.hh:61
void F04SteppingVerbose::TrackingStarted ( )
virtual

Implements G4VSteppingVerbose.

Definition at line 157 of file F04SteppingVerbose.cc.

References G4VSteppingVerbose::CopyState(), G4VSteppingVerbose::fStep, G4VSteppingVerbose::fTrack, G4BestUnit, G4cout, G4endl, G4Track::GetCurrentStepNumber(), G4Track::GetDefinition(), G4Track::GetKineticEnergy(), G4VPhysicalVolume::GetName(), G4Track::GetNextVolume(), G4Track::GetParentID(), G4ParticleDefinition::GetParticleName(), G4Track::GetPosition(), G4Step::GetStepLength(), G4Step::GetTotalEnergyDeposit(), G4Track::GetTrackID(), G4Track::GetTrackLength(), G4Track::GetVolume(), G4VSteppingVerbose::verboseLevel, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

158 {
159  CopyState();
160 
161  G4int prec = G4cout.precision(3);
162 
163  if (fTrack->GetDefinition()->GetParticleName() == "proton") return;
164 // if (fTrack->GetDefinition()->GetParticleName() == "pi+") return;
165 // if (fTrack->GetDefinition()->GetParticleName() == "mu+") return;
166  if (fTrack->GetDefinition()->GetParticleName() == "e+") return;
167 
168  G4cout << G4endl;
169  G4cout << "*******************************************************"
170  << "**************************************************"
171  << G4endl;
172  G4cout << "* G4Track Information: "
173  << " Particle = " << fTrack->GetDefinition()->GetParticleName()
174  << ","
175  << " Track ID = " << fTrack->GetTrackID()
176  << ","
177  << " Parent ID = " << fTrack->GetParentID()
178  << G4endl;
179  G4cout << "*******************************************************"
180  << "**************************************************"
181  << G4endl;
182  G4cout << G4endl;
183 
184  if( verboseLevel > 0 ){
185 
186  G4cout << std::setw( 5) << "Step#" << " "
187  << std::setw( 6) << "X" << " "
188  << std::setw( 6) << "Y" << " "
189  << std::setw( 6) << "Z" << " "
190  << std::setw( 9) << "KineE" << " "
191  << std::setw( 9) << "dEStep" << " "
192  << std::setw(10) << "StepLeng"
193  << std::setw(10) << "TrakLeng"
194  << std::setw(10) << "Volume" << " "
195  << std::setw(10) << "Process" << G4endl;
196 
197  G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
198  << std::setw( 6) << G4BestUnit(fTrack->GetPosition().x(),"Length")
199  << std::setw( 6) << G4BestUnit(fTrack->GetPosition().y(),"Length")
200  << std::setw( 6) << G4BestUnit(fTrack->GetPosition().z(),"Length")
201  << std::setw( 6) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")
202  << std::setw( 6) <<
204  << std::setw( 6) << G4BestUnit(fStep->GetStepLength(),"Length")
205  << std::setw( 6) << G4BestUnit(fTrack->GetTrackLength(),"Length");
206 
207  if(fTrack->GetNextVolume()){
208  G4cout << std::setw(10) << fTrack->GetVolume()->GetName();
209  } else {
210  G4cout << std::setw(10) << "OutOfWorld";
211  }
212  G4cout << " initStep" << G4endl;
213  }
214  G4cout.precision(prec);
215 }
G4ParticleDefinition * GetDefinition() const
G4int GetParentID() const
G4double GetStepLength() const
double x() const
const G4ThreeVector & GetPosition() const
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
const G4String & GetParticleName() const
double z() const
G4VPhysicalVolume * GetNextVolume() const
G4double GetKineticEnergy() const
G4GLOB_DLL std::ostream G4cout
G4int GetCurrentStepNumber() const
const G4String & GetName() const
G4int GetTrackID() const
G4double GetTotalEnergyDeposit() const
G4double GetTrackLength() const
double y() const
G4VPhysicalVolume * GetVolume() const
#define G4endl
Definition: G4ios.hh:61

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