41#include "G4ParticleGun.hh"
42#include "G4ParticleTable.hh"
43#include "G4ParticleDefinition.hh"
45#include "Randomize.hh"
46#include "G4SystemOfUnits.hh"
47#include "G4PhysicalConstants.hh"
70 = particleTable->FindParticle(particleName=
"proton");
75 fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0.,0.,1.));
117 phi0 = twopi*G4UniformRand();
118 x0 = r0*std::cos(phi0);
119 y0 = r0*std::sin(phi0);
122 fParticleGun->SetParticlePosition(G4ThreeVector(x0,y0,z0));
139 G4cout <<
" X coordinate of the primary vertex = " <<
fXVertex/mm <<
149 G4cout <<
" Y coordinate of the primary vertex = " <<
fYVertex/mm <<
159 G4cout <<
" Z coordinate of the primary vertex = " <<
fZVertex/mm <<
Definition of the F02DetectorConstruction class.
Definition of the F02PrimaryGeneratorAction class.
Definition of the F02PrimaryGeneratorMessenger class.
G4double GetAbsorberRadius()
void SetYVertex(G4double y)
static G4ParticleDefinition * fgPrimaryParticle
void SetXVertex(G4double x)
F02DetectorConstruction * fDetector
F02PrimaryGeneratorMessenger * fGunMessenger
void SetZVertex(G4double z)
void GeneratePrimaries(G4Event *) override
~F02PrimaryGeneratorAction() override
G4ParticleGun * fParticleGun
F02PrimaryGeneratorAction(F02DetectorConstruction *)
static G4String GetPrimaryName()