59 :rndmFlag(
"off"),nSourceType(0),nSpectrumType(0)
138 vertex0.setTheta(theta);
151 dir0.setTheta(theta);
152 }
while (vertex0.dot(dir0) >= -0.7 * vertex0.mag());
163 f = std::sin(theta) * std::cos(theta);
173 G4cout <<
"vertexRadius setted to " << xy*0.45 <<
G4endl;
180 G4cout <<
"vertexRadius setted to " << z*0.45 <<
G4endl;
186 vertex0.setTheta(theta);
193 if (dir0.mag() > 0.001)
195 theta0 = dir0.theta();
202 rotationAxis.setPhi(phi0+halfpi);
203 vertex0.rotate(theta0+
pi,rotationAxis);
221 f = std::pow(pEnergy * (1/
GeV), -4.);
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
void GeneratePrimaryVertex(G4Event *)
CLHEP::Hep3Vector G4ThreeVector
const G4VUserDetectorConstruction * GetUserDetectorConstruction() const
G4ParticleGun * particleGun
void GeneratePrimaries(G4Event *)
G4double GetWorldSizeXY()
void SetParticleMomentumDirection(G4ParticleMomentum aMomentumDirection)
virtual void GeneratePrimaryVertex(G4Event *evt)
~GammaRayTelPrimaryGeneratorAction()
G4ParticleMomentum GetParticleMomentumDirection() const
void SetParticlePosition(G4ThreeVector aPosition)
G4GLOB_DLL std::ostream G4cout
GammaRayTelPrimaryGeneratorMessenger * gunMessenger
void SetParticleEnergy(G4double aKineticEnergy)
static G4RunManager * GetRunManager()
static G4ParticleTable * GetParticleTable()
GammaRayTelDetectorConstruction * GammaRayTelDetector
GammaRayTelPrimaryGeneratorAction()
G4ThreeVector G4ParticleMomentum
void SetParticleDefinition(G4ParticleDefinition *aParticleDefinition)
G4GeneralParticleSource * particleSource