50 G4int numberofparticles)
80 if(aParticleDefinition ==
nullptr)
82 G4Exception(
"G4ParticleGun::SetParticleDefinition()",
"Event0101",
90 ED <<
"G4ParticleGun does not support shooting a short-lived "
91 <<
"particle without a valid decay table." <<
G4endl;
92 ED <<
"G4ParticleGun::SetParticleDefinition for "
94 G4Exception(
"G4ParticleGun::SetParticleDefinition()",
"Event0102",
123 G4cout <<
" was defined in terms of Momentum: "
125 G4cout <<
" is now defined in terms of KineticEnergy: "
144 G4cout <<
" was defined in terms of KineticEnergy: "
146 G4cout <<
" is now defined in terms Momentum: "
147 << aMomentum/GeV <<
"GeV/c" <<
G4endl;
151 G4cout <<
"Particle Definition not defined yet for G4ParticleGun"
179 G4cout <<
" was defined in terms of KineticEnergy: "
181 G4cout <<
" is now defined in terms Momentum: "
182 << aMomentum.
mag()/GeV <<
"GeV/c" <<
G4endl;
186 G4cout <<
"Particle Definition not defined yet for G4ParticleGun"
208 ED <<
"Particle definition is not defined." <<
G4endl;
209 ED <<
"G4ParticleGun::SetParticleDefinition() has to be invoked beforehand."
211 G4Exception(
"G4ParticleGun::GeneratePrimaryVertex()",
"Event0109",
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
G4ThreeVector G4ParticleMomentum
G4GLOB_DLL std::ostream G4cout
void AddPrimaryVertex(G4PrimaryVertex *aPrimaryVertex)
G4bool IsShortLived() const
G4double GetPDGMass() const
G4double GetPDGCharge() const
G4DecayTable * GetDecayTable() const
const G4String & GetParticleName() const
G4double particle_momentum
virtual void SetInitialValues()
void SetParticleDefinition(G4ParticleDefinition *aParticleDefinition)
G4ThreeVector particle_polarization
G4ParticleMomentum particle_momentum_direction
G4int NumberOfParticlesToBeGenerated
void SetParticleEnergy(G4double aKineticEnergy)
G4ParticleDefinition * particle_definition
virtual void GeneratePrimaryVertex(G4Event *evt)
void SetParticleMomentum(G4double aMomentum)
void SetCharge(G4double chg)
void SetPolarization(const G4ThreeVector &pol)
void SetKineticEnergy(G4double eKin)
void SetMomentumDirection(const G4ThreeVector &p)
void SetMass(G4double mas)
void SetPrimary(G4PrimaryParticle *pp)
G4ThreeVector particle_position