73 fNeutronPhysical(NULL),
100 randomLocation.
y() + sourceCenter.
y(),
101 randomLocation.
z() + sourceCenter.
z());
103 G4cout <<
"Emission Location: r: " << location <<
G4endl;
112 G4cout <<
"Emission Direction: r: " << direction <<
G4endl;
138 "GeneratePrimaries(G4Event*)",
139 "Neutron source solid volume not found",
141 "This run will be aborted");
154 G4Exception(
"FFPrimaryGeneratorAction::GetNeutronSourceCenter(void)",
155 "Neutron source physical volume not found",
157 "This run will be aborted");
169 "GetNeutronSourceCenter(void)",
170 "Tank H2O physical volume not found",
172 "This run will be aborted");
185 "GetNeutronSourceCenter(void)",
186 "Tank physical volume not found",
188 "This run will be aborted");
G4ThreeVector GetNeutronSourceCenter(void)
static constexpr double MeV
static G4Neutron * Definition()
FFPrimaryGeneratorAction()
G4VPhysicalVolume * fNeutronPhysical
virtual ~FFPrimaryGeneratorAction()
G4VPhysicalVolume * GetVolume(const G4String &name, G4bool verbose=true) const
const G4ThreeVector & GetTranslation() const
void SetParticlePosition(G4ThreeVector aPosition)
virtual void GeneratePrimaries(G4Event *event)
void SetParticleDefinition(G4ParticleDefinition *aParticleDefinition)
static constexpr double deg
G4ParticleGun *const fParticleGun
G4double GetZHalfLength() const
G4VPhysicalVolume * fH2OPhysical
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static G4PhysicalVolumeStore * GetInstance()
G4VPhysicalVolume * fTankPhysical
void setRThetaPhi(double r, double theta, double phi)
virtual void GeneratePrimaryVertex(G4Event *evt)
G4double GetOuterRadius() const
G4GLOB_DLL std::ostream G4cout
G4VSolid * GetSolid() const
void SetParticleEnergy(G4double aKineticEnergy)
Definition of the FFPrimaryGeneratorAction class.
void SetParticleMomentumDirection(G4ParticleMomentum aMomentumDirection)
static G4LogicalVolumeStore * GetInstance()
G4LogicalVolume * GetVolume(const G4String &name, G4bool verbose=true) const