Geant4.10
|
#include <G4FissionFragmentGenerator.hh>
Static Public Member Functions | |
static G4int | G4MakeIsotopeCode (G4int Z, G4int A, G4int M) |
Protected Member Functions | |
void | Initialize (void) |
G4FissionFragmentGenerator is the front end class to be used by the user for handling all fission event generation.
This class is intended to be instantiated for one type of fission event for as specific isotope/isomer, fission type, and incident neutron energy. For this reason no functions exist to change or modify these values once the class in constructed. A new class must be created by the user for each type of fission event, if such functionality is desired.
Definition at line 54 of file G4FissionFragmentGenerator.hh.
G4FissionFragmentGenerator::G4FissionFragmentGenerator | ( | void | ) |
Default constructor
92238
GROUND_STATE
SPONTANEOUS
0.025
eVINDEPENDENT
0
0
NORMAL
Definition at line 50 of file G4FissionFragmentGenerator.cc.
References Initialize(), and Verbosity_.
G4FissionFragmentGenerator::G4FissionFragmentGenerator | ( | G4int | Verbosity | ) |
Overloaded constructor
Verbosity:
Verbosity levelDefinition at line 60 of file G4FissionFragmentGenerator.cc.
References Initialize(), and Verbosity_.
G4FissionFragmentGenerator::~G4FissionFragmentGenerator | ( | ) |
Default deconstructor
Definition at line 755 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and YieldData_.
G4DynamicParticleVector * G4FissionFragmentGenerator::G4GenerateFission | ( | void | ) |
Generates a single fission event
Definition at line 93 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and G4Neutron::Neutron().
G4DynamicParticleVector * G4FissionFragmentGenerator::G4GenerateFission | ( | const G4HadProjectile & | Projectile | ) |
Generates a single fission event
Projectile:
G4HadProjectile of the fission-inducing particleDefinition at line 110 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and G4GenerateFission().
Referenced by G4GenerateFission().
const std::vector< G4DynamicParticleVector * > G4FissionFragmentGenerator::G4GenerateFission | ( | G4long | NumberOfFissions, |
const G4HadProjectile & | Projectile | ||
) |
Generates NumberOfFissions fission events
NumberOfFissions:
The number of fission events to generateNumberOfFissions
fission events Definition at line 123 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FissionProductYieldDist::G4GetFission(), G4HadProjectile::GetDefinition(), IsReconstructionNeeded_, G4Neutron::Neutron(), TRUE, and YieldData_.
Returns a randomly sampled fission product
Definition at line 157 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FissionProductYieldDist::G4GetFissionProduct(), IsReconstructionNeeded_, TRUE, and YieldData_.
Returns the production rate of alpha particles for fission events
Definition at line 174 of file G4FissionFragmentGenerator.cc.
References AlphaProduction_, G4FFG_FUNCTIONENTER__, and G4FFG_FUNCTIONLEAVE__.
G4FFGEnumerations::FissionCause G4FissionFragmentGenerator::G4GetCause | ( | void | ) |
Returns the FissionCause of the fission event.
Definition at line 192 of file G4FissionFragmentGenerator.cc.
References Cause_, G4FFG_FUNCTIONENTER__, and G4FFG_FUNCTIONLEAVE__.
Returns the energy of the fission inducing particle.
Definition at line 201 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and IncidentEnergy_.
Returns the code of the fission isotope in ZZZAAA format.
Definition at line 210 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and Isotope_.
G4FFGEnumerations::MetaState G4FissionFragmentGenerator::G4GetMetaState | ( | void | ) |
Returns the MetaState of the fission isotope.
Definition at line 219 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and MetaState_.
G4FFGEnumerations::FissionSamplingScheme G4FissionFragmentGenerator::G4GetSamplingScheme | ( | void | ) |
Returns the FissionSamplingScheme that is currently in use.
Definition at line 228 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and SamplingScheme_.
Returns the probability of ternary fission
Definition at line 183 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and TernaryProbability_.
G4FFGEnumerations::YieldType G4FissionFragmentGenerator::G4GetYieldType | ( | void | ) |
Returns the yield type that is currently in use
Definition at line 237 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, and YieldType_.
Converts the Z, A and M of an isotope into an integer representation
Definition at line 246 of file G4FissionFragmentGenerator.cc.
Referenced by G4WendtFissionFragmentGenerator::ApplyYourself(), and G4WendtFissionFragmentGenerator::InitializeANucleus().
Sets the number of alpha particles produced in fission.
AlphaProduction
is negative then alpha particles are sampled on a Gaussian with a mean of abs(AlphaProduction)
.Definition at line 257 of file G4FissionFragmentGenerator.cc.
References AlphaProduction_, G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FissionProductYieldDist::G4SetAlphaProduction(), G4FFGEnumerations::UPDATES, Verbosity_, and YieldData_.
void G4FissionFragmentGenerator::G4SetCause | ( | G4FFGEnumerations::FissionCause | WhichCause | ) |
Sets the cause of fission event.
WhichCause:
SPONTANEOUS
, N_INDUCED
, P_INDUCED
, or G_INDUCED
Definition at line 301 of file G4FissionFragmentGenerator.cc.
References Cause_, G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FFGEnumerations::GAMMA_INDUCED, IncidentEnergy_, IsReconstructionNeeded_, G4FFGEnumerations::NEUTRON_INDUCED, G4FFGEnumerations::PROTON_INDUCED, G4FFGEnumerations::SILENT, G4FFGEnumerations::SPONTANEOUS, TRUE, G4FFGEnumerations::UPDATES, Verbosity_, G4FFGEnumerations::WARNING, and YieldData_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
Sets the incident energy, if any, of the particle that cause fission.
WhatIncidentEnergy:
Kinetic energy of the particle with units applied;Definition at line 372 of file G4FissionFragmentGenerator.cc.
References Cause_, G4FFGEnumerations::ENERGY_INFO, python.hepunit::eV, G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FissionProductYieldDist::G4SetEnergy(), python.hepunit::GeV, IncidentEnergy_, python.hepunit::keV, python.hepunit::MeV, G4FFGEnumerations::SILENT, G4FFGEnumerations::SPONTANEOUS, G4FFGEnumerations::UPDATES, Verbosity_, G4FFGEnumerations::WARNING, and YieldData_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
Sets the fission isotope
WhichIsotope:
Code of the isotope in ZZZAAA formatDefinition at line 435 of file G4FissionFragmentGenerator.cc.
References G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, Isotope_, IsReconstructionNeeded_, G4FFGEnumerations::SILENT, TRUE, G4FFGEnumerations::UPDATES, Verbosity_, G4FFGEnumerations::WARNING, and YieldData_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
void G4FissionFragmentGenerator::G4SetMetaState | ( | G4FFGEnumerations::MetaState | WhichMetaState | ) |
Sets the metastable state of the fission isotope.
WhichMetaState:
GROUND_STATE
, META_1
, or META_2
Definition at line 479 of file G4FissionFragmentGenerator.cc.
References G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FFGEnumerations::GROUND_STATE, IsReconstructionNeeded_, G4FFGEnumerations::META_1, G4FFGEnumerations::META_2, MetaState_, G4FFGEnumerations::SILENT, TRUE, G4FFGEnumerations::UPDATES, Verbosity_, G4FFGEnumerations::WARNING, and YieldData_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
void G4FissionFragmentGenerator::G4SetSamplingScheme | ( | G4FFGEnumerations::FissionSamplingScheme | NewScheme | ) |
Set the sampling scheme.
NORMAL:
Sets the parameters of this class to sample fission events without any biasing.LIGHT_FRAGMENT:
Sets the parameters of this class to bias the fragment generation by always selecting a light fragment (A < 115) first.WENDT:
Sets the parameters of this class to sample fission events according to the Wendt sampling scheme. Please refer to the code documentation for G4FPYWendtSamplingDist for a more detailed explanation. Definition at line 546 of file G4FissionFragmentGenerator.cc.
References G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FFGEnumerations::LIGHT_FRAGMENT, G4FFGEnumerations::NORMAL, G4FFGEnumerations::SILENT, TRUE, G4FFGEnumerations::UPDATES, and G4FFGEnumerations::WARNING.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
Sets the probability of ternary fission
WhatAlphaProductionProbability:
Probability of generating alpha particles for a fission event. 1 = 100% chance of alpha productionDefinition at line 279 of file G4FissionFragmentGenerator.cc.
References G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FissionProductYieldDist::G4SetTernaryProbability(), TernaryProbability_, G4FFGEnumerations::UPDATES, Verbosity_, and YieldData_.
Sets the verbosity levels
WhichVerbosity:
Combination of levelsSILENT:
All verbose output is repressedUPDATES:
Only high-level internal changes are reportedDAUGHTER_INFO:
Displays information about daughter product samplingNEUTRON_INFO:
Displays information about neutron samplingGAMMA_INFO:
Displays information about gamma samplingALPHA_INFO:
Displays information about alpha samplingMOMENTUM_INFO:
Displays information about momentum balancingEXTRAPOLATION_INTERPOLATION_INFO:
Displays information about any data extrapolation or interpolation that occursDEBUG:
Reports program flow as it steps through functionsPRINT_ALL:
Displays any and all output Definition at line 678 of file G4FissionFragmentGenerator.cc.
References G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FissionProductYieldDist::G4SetVerbosity(), Verbosity_, and YieldData_.
void G4FissionFragmentGenerator::G4SetYieldType | ( | G4FFGEnumerations::YieldType | WhichYieldType | ) |
Sets the ENDF yield type to be used for the data
WhichYieldType:
INDEPENDENT
or COMULATIVE
Definition at line 612 of file G4FissionFragmentGenerator.cc.
References G4FFGEnumerations::CUMULATIVE, G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FFGEnumerations::INDEPENDENT, IsReconstructionNeeded_, G4FFGEnumerations::SILENT, G4FFGEnumerations::SPONTANEOUS, TRUE, G4FFGEnumerations::UPDATES, Verbosity_, G4FFGEnumerations::WARNING, YieldData_, and YieldType_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
Initialize is a common function called by all constructors.
Definition at line 70 of file G4FissionFragmentGenerator.cc.
References AlphaProduction_, Cause_, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, IncidentEnergy_, Isotope_, IsReconstructionNeeded_, MetaState_, SamplingScheme_, TernaryProbability_, TRUE, YieldData_, and YieldType_.
Referenced by G4FissionFragmentGenerator().
bool G4FissionFragmentGenerator::InitializeFissionProductYieldClass | ( | std::istringstream & | dataFile | ) |
Initializes a new G4FPY
...Dist class based on the class descriptor variables of G4FissionFragmentGenerator.
Definition at line 693 of file G4FissionFragmentGenerator.cc.
References AlphaProduction_, Cause_, FALSE, G4cout, G4endl, G4FFG_FUNCTIONENTER__, G4FFG_FUNCTIONLEAVE__, G4FFG_LOCATION__, G4FFG_SPACING__, G4FissionProductYieldDist::G4SetAlphaProduction(), G4FissionProductYieldDist::G4SetTernaryProbability(), Isotope_, IsReconstructionNeeded_, MetaState_, G4FFGEnumerations::NORMAL, SamplingScheme_, TernaryProbability_, G4FFGEnumerations::UPDATES, Verbosity_, YieldData_, and YieldType_.
Referenced by G4WendtFissionFragmentGenerator::InitializeANucleus().
|
protected |
Controls whether alpha particles are emitted, and how many
Definition at line 261 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetAlphaProduction(), G4SetAlphaProduction(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
The cause of fission: SPONTANEOUS
or N_INDUCED
.
Definition at line 253 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetCause(), G4SetCause(), G4SetIncidentEnergy(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
Kinetic energy, if any, of the incident particle in GeV.
Definition at line 255 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetIncidentEnergy(), G4SetCause(), G4SetIncidentEnergy(), and Initialize().
|
protected |
Number in ZZZAAA format of the isotope that G4FissionFragmentGenerator references
Definition at line 246 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetIsotope(), G4SetIsotope(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
If Isotope_, MetaState_, Cause_, or IncidentEnergy_ are changed in the middle of a run then the class pointed at by YieldData_ will need to be reconstructed
Definition at line 266 of file G4FissionFragmentGenerator.hh.
Referenced by G4GenerateFission(), G4GenerateFissionProduct(), G4SetCause(), G4SetIsotope(), G4SetMetaState(), G4SetYieldType(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
MetaState information of the isotope that G4FissionFragmentGenerator references
A value of 0 refers to the ground state
Definition at line 251 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetMetaState(), G4SetMetaState(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
The sampling scheme that is used: NORMAL
, LIGHT_FRAGMENT
, or WENDT
.
Definition at line 274 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetSamplingScheme(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
Sets the ternary fission probability. Valid ranges are [0, 1]
Definition at line 259 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetTernaryProbability(), G4SetTernaryProbability(), Initialize(), and InitializeFissionProductYieldClass().
|
protected |
Verbosity level
Definition at line 268 of file G4FissionFragmentGenerator.hh.
Referenced by G4FissionFragmentGenerator(), G4SetAlphaProduction(), G4SetCause(), G4SetIncidentEnergy(), G4SetIsotope(), G4SetMetaState(), G4SetTernaryProbability(), G4SetVerbosity(), G4SetYieldType(), and InitializeFissionProductYieldClass().
|
protected |
Pointer to G4FissionProductYieldDist class that holds all the probabilistic yield data
Definition at line 278 of file G4FissionFragmentGenerator.hh.
Referenced by G4GenerateFission(), G4GenerateFissionProduct(), G4SetAlphaProduction(), G4SetCause(), G4SetIncidentEnergy(), G4SetIsotope(), G4SetMetaState(), G4SetTernaryProbability(), G4SetVerbosity(), G4SetYieldType(), Initialize(), InitializeFissionProductYieldClass(), and ~G4FissionFragmentGenerator().
|
protected |
The type of yield to be used: INDEPENDET
or CUMULATIVE
Definition at line 257 of file G4FissionFragmentGenerator.hh.
Referenced by G4GetYieldType(), G4SetYieldType(), Initialize(), and InitializeFissionProductYieldClass().