32 <<
" w/ " <<
evt->GetNumberOfPrimaryVertex()
37 if (!
evt->GetUserInformation()) {
38 G4EventManager::GetEventManager()->
48 for (G4PrimaryVertex* vtx =
evt->GetPrimaryVertex();
50 vtx = vtx->GetNext()) {
52 gGeoManager->PushPath();
54 G4ThreeVector(vtx->GetX0(), vtx->GetY0(), vtx->GetZ0()));
57 "Vertex: " << vtxNumber
58 <<
" w/ " << vtx->GetNumberOfParticle() <<
" primaries" 59 " in " << gGeoManager->GetPath());
60 gGeoManager->PopPath();
64 <<
" (" << G4BestUnit(vtx->GetX0(),
"Length")
65 <<
", " << G4BestUnit(vtx->GetY0(),
"Length")
66 <<
", " << G4BestUnit(vtx->GetZ0(),
"Length")
67 <<
", " << G4BestUnit(vtx->GetT0(),
"Time") <<
")");
74 for (
int iVert = 0; iVert<infoVertices; ++iVert) {
75 const G4PrimaryVertex* ivtx
77 for (
int p=0;
p<ivtx->GetNumberOfParticle(); ++
p) {
78 G4PrimaryParticle* prim = ivtx->GetPrimary(
p);
79 G4ParticleDefinition* partDef = prim->GetG4code();
80 G4ThreeVector
dir = prim->GetMomentum().unit();
84 "Info: " << partDef->GetParticleName()
86 << G4BestUnit(prim->GetMomentum().mag(),
"Energy")
87 <<
" Dir: (" << dir.x()
89 <<
", " << dir.z() <<
")");
94 "Info: " << prim->GetPDGcode()
96 << G4BestUnit(prim->GetMomentum().mag(),
"Energy")
97 <<
" Dir: (" << dir.x()
99 <<
", " << dir.z() <<
")");
104 for (
int p=0;
p<vtx->GetNumberOfParticle(); ++
p) {
105 G4PrimaryParticle* prim = vtx->GetPrimary(
p);
106 G4ParticleDefinition* partDef = prim->GetG4code();
107 G4ThreeVector dir = prim->GetMomentum().unit();
111 partDef->GetParticleName()
113 << G4BestUnit(prim->GetMomentum().mag(),
"Energy")
114 <<
" Dir: (" << dir.x()
116 <<
", " << dir.z() <<
")");
123 << G4BestUnit(prim->GetMomentum().mag(),
"Energy")
124 <<
" Dir: (" << dir.x()
126 <<
", " << dir.z() <<
")");
#define EDepSimNamedInfo(trace, outStream)
#define EDepSimNamedVerbose(trace, outStream)
const G4String & GetReaction() const
Get the reaction code that created this vertex.
#define EDepSimThrow(message)
Print an error message, and then throw an exception.
#define EDepSimNamedLog(trace, outStream)
virtual int GetNumberOfInformationalVertex() const
Return the number of informational vertices.
#define EDepSimError(outStream)
virtual const G4PrimaryVertex * GetInformationalVertex(int i=0) const
int GetNodeId(const G4ThreeVector &pos)
Get a volume ID base on the volume position.
static EDepSim::RootGeometryManager * Get(void)
If a persistency manager has not been created, create one.