#include "PrimaryGeneratorAction.hh" //#include "G4ParticleDefinition.hh" //#include "G4PrimaryParticle.hh" //#include "G4PrimaryVertex.hh" PrimaryGeneratorAction::PrimaryGeneratorAction() { fParticleGun = new G4ParticleGun(1000); } PrimaryGeneratorAction::~PrimaryGeneratorAction() { delete fParticleGun; } void PrimaryGeneratorAction::GeneratePrimaries(G4Event *anEvent) { G4ParticleTable *particleTable = G4ParticleTable::GetParticleTable(); G4String particleName="gamma"; G4ParticleDefinition *particle = particleTable->FindParticle("gamma"); G4ThreeVector pos(0., 0., -0.50 * m); G4ThreeVector mom(0., 0., 1.); // To find the direction of the beam fParticleGun->SetParticlePosition(pos); fParticleGun->SetParticleMomentumDirection(mom); fParticleGun->SetParticleMomentum(0.511 *MeV); fParticleGun->SetParticleDefinition(particle); fParticleGun->GeneratePrimaryVertex(anEvent); }