#include <GLG4VertexGen.hh>
Inheritance diagram for GLG4VertexGen_HEPEvt:
Public Types | |
enum | { kIonCodeOffset = 9800000, kPDGcodeModulus = 10000000, kISTHEP_ParticleForTracking = 1, kISTHEP_InformatonMin = 100, kISTHEP_Max = 213 } |
Public Member Functions | |
GLG4VertexGen_HEPEvt (const char *arg_dbname) | |
virtual void | GeneratePrimaryVertex (G4Event *argEvent) |
Generates one or more particles with type, momentum, and optional time offset, spatial offset, and polarization, based on lines read from file via SetState(). | |
virtual void | SetState (G4String newValues) |
Set source of HEPEVT ascii data for this generator, or print current source and help. | |
virtual G4String | GetState () |
void | Open (const char *argFilename) |
void | GetDataLine (char *buffer, size_t size) |
void | Close () |
The ASCII stream contains information in a HEPEVT-like style.
|
Generates one or more particles with type, momentum, and optional time offset, spatial offset, and polarization, based on lines read from file via SetState(). The file has the format
NHEP ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ... [NHEP times] NHEP ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ISTHEP IDHEP JDAHEP1 JDAHEP2 PHEP1 PHEP2 PHEP3 PHEP5 DT X Y Z PLX PLY PLZ ... [NHEP times]where ISTHEP == status code IDHEP == HEP PDG code JDAHEP == first daughter JDAHEP == last daughter PHEP1 == px in GeV PHEP2 == py in GeV PHEP3 == pz in GeV PHEP5 == mass in GeV DT == vertex _delta_ time, in ns (*) X == x vertex in mm Y == y vertex in mm Z == z vertex in mm PLX == x polarization PLY == y polarization PLZ == z polarization PHEP5, DT, X, Y, Z, PLX, PLY, and PLZ are all optional. If omitted, the respective quantity is left unchanged. If DT is specified, the time offset of this and subsequent vertices is increased by DT: (*) note DT is a relative shift from the previous line! (This is because there is often a very large dynamic range of time offsets in certain types of events, e.g., in radioactive decay chains, and this convention allows such events to be represented using a reasonable number of significant digits.) If X, Y, Z, PLX, PLY, and/or PLZ is specified, then the values replace any previously specified. Implements GLG4VVertexGen. |
|
Set source of HEPEVT ascii data for this generator, or print current source and help. Format of string: either "filename" or "shell_command (arguments) |". Implements GLG4VVertexGen. |