Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4FPYNormalFragmentDist Class Reference

#include <G4FPYNormalFragmentDist.hh>

+ Inheritance diagram for G4FPYNormalFragmentDist:

Public Member Functions

 G4FPYNormalFragmentDist (G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, G4FFGEnumerations::FissionCause WhichCause, G4FFGEnumerations::YieldType WhichYieldType, std::istringstream &dataFile)
 
 G4FPYNormalFragmentDist (G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, G4FFGEnumerations::FissionCause WhichCause, G4FFGEnumerations::YieldType WhichYieldType, G4int Verbosity, std::istringstream &dataFile)
 
virtual ~G4FPYNormalFragmentDist (void)
 
- Public Member Functions inherited from G4FissionProductYieldDist
 G4FissionProductYieldDist (G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, G4FFGEnumerations::FissionCause WhichCause, G4FFGEnumerations::YieldType WhichYieldType, std::istringstream &dataStream)
 
 G4FissionProductYieldDist (G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, G4FFGEnumerations::FissionCause WhichCause, G4FFGEnumerations::YieldType WhichYieldType, G4int Verbosity, std::istringstream &dataStream)
 
G4DynamicParticleVectorG4GetFission (void)
 
G4IonsG4GetFissionProduct (void)
 
void G4SetAlphaProduction (G4double WhatAlphaProduction)
 
void G4SetEnergy (G4double WhatIncidentEnergy)
 
void G4SetTernaryProbability (G4double TernaryProbability)
 
void G4SetVerbosity (G4int WhatVerbosity)
 
virtual ~G4FissionProductYieldDist (void)
 

Protected Member Functions

void Initialize (void)
 
virtual G4IonsGetFissionProduct (void)
 
- Protected Member Functions inherited from G4FissionProductYieldDist
void CheckAlphaSanity (void)
 
G4IonsFindParticle (G4double RandomParticle)
 
G4IonsFindParticleExtrapolation (G4double RandomParticle, G4bool LowerEnergyGroupExists)
 
G4IonsFindParticleInterpolation (G4double RandomParticle, G4int LowerEnergyGroup)
 
G4IonsFindParticleBranchSearch (ProbabilityBranch *Branch, G4double RandomParticle, G4int EnergyGroup1, G4int EnergyGroup2)
 
virtual void GenerateAlphas (std::vector< G4ReactionProduct * > *Alphas)
 
virtual void GenerateNeutrons (std::vector< G4ReactionProduct * > *Neutrons)
 
virtual G4IonsGetFissionProduct (void)=0
 
G4IonsGetParticleDefinition (G4int Product, G4FFGEnumerations::MetaState MetaState)
 
G4String MakeDirectoryName (void)
 
G4String MakeFileName (G4int Isotope, G4FFGEnumerations::MetaState MetaState)
 
G4DynamicParticleMakeG4DynamicParticle (G4ReactionProduct *)
 
G4String MakeIsotopeName (G4int Isotope, G4FFGEnumerations::MetaState MetaState)
 
virtual void MakeTrees (void)
 
virtual void ReadProbabilities (void)
 
void Renormalize (ProbabilityBranch *Branch)
 
void SampleAlphaEnergies (std::vector< G4ReactionProduct * > *Alphas)
 
void SampleGammaEnergies (std::vector< G4ReactionProduct * > *Gammas)
 
void SampleNeutronEnergies (std::vector< G4ReactionProduct * > *Neutrons)
 
void SetNubar (void)
 
virtual void SortProbability (G4ENDFYieldDataContainer *YieldData)
 
void BurnTree (ProbabilityBranch *Branch)
 

Additional Inherited Members

- Protected Attributes inherited from G4FissionProductYieldDist
const G4int Isotope_
 
const G4FFGEnumerations::MetaState MetaState_
 
const G4FFGEnumerations::FissionCause Cause_
 
const G4FFGEnumerations::YieldType YieldType_
 
G4ENDFTapeReadENDFData_
 
G4IonsAlphaDefinition_
 
G4double AlphaProduction_
 
G4double TernaryProbability_
 
G4GammaGammaDefinition_
 
G4double IncidentEnergy_
 
G4double MeanGammaEnergy_
 
G4IonsNeutronDefinition_
 
G4double Nubar_
 
G4double NubarWidth_
 
G4int RemainingZ_
 
G4int RemainingA_
 
G4double RemainingEnergy_
 
G4int Verbosity_
 
ProbabilityTreeTrees_
 
G4IonsSmallestZ_
 
G4IonsSmallestA_
 
G4IonsLargestZ_
 
G4IonsLargestA_
 
G4int YieldEnergyGroups_
 
G4doubleYieldEnergies_
 
G4doubleMaintainNormalizedData_
 
G4doubleDataTotal_
 
G4int TreeCount_
 
G4int BranchCount_
 
G4IonTableIonTable_
 
G4ParticleHPNamesElementNames_
 
G4FPYSamplingOpsRandomEngine_
 

Detailed Description

G4FPYNormalFragmentDist is an inherited class of G4FissionProductYield that samples fission fragments from the entire data set.

Definition at line 45 of file G4FPYNormalFragmentDist.hh.

Constructor & Destructor Documentation

◆ G4FPYNormalFragmentDist() [1/2]

G4FPYNormalFragmentDist::G4FPYNormalFragmentDist ( G4int  WhichIsotope,
G4FFGEnumerations::MetaState  WhichMetaState,
G4FFGEnumerations::FissionCause  WhichCause,
G4FFGEnumerations::YieldType  WhichYieldType,
std::istringstream &  dataFile 
)

Default constructor

  • Usage:
    • WhichIsotope: Isotope number of the element in ZZZAAA form
    • WhichMetaState: GROUND_STATE, META_1, or META_2
    • WhichCause: SPONTANEOUS or N_INDUCED
    • WhichYieldType: INDEPENDENT or CUMULATIVE
  • Notes:

Definition at line 42 of file G4FPYNormalFragmentDist.cc.

48: G4FissionProductYieldDist( WhichIsotope,
49 WhichMetaState,
50 WhichCause,
51 WhichYieldType,
52 dataFile)
53{
54 // Initialize the class
55 Initialize();
56}

◆ G4FPYNormalFragmentDist() [2/2]

G4FPYNormalFragmentDist::G4FPYNormalFragmentDist ( G4int  WhichIsotope,
G4FFGEnumerations::MetaState  WhichMetaState,
G4FFGEnumerations::FissionCause  WhichCause,
G4FFGEnumerations::YieldType  WhichYieldType,
G4int  Verbosity,
std::istringstream &  dataFile 
)

Overloaded constructor

  • Usage:
    • WhichIsotope: Isotope number of the element in ZZZAAA form
    • WhichMetaState: GROUND_STATE, META_1, or META_2
    • WhichCause: SPONTANEOUS or N_INDUCED
    • WhichYieldType: INDEPENDENT or CUMULATIVE
    • Verbosity: Verbosity level
  • Notes:

Definition at line 58 of file G4FPYNormalFragmentDist.cc.

65: G4FissionProductYieldDist( WhichIsotope,
66 WhichMetaState,
67 WhichCause,
68 WhichYieldType,
69 Verbosity,
70 dataFile)
71{
72 // Initialize the class
73 Initialize();
74}

◆ ~G4FPYNormalFragmentDist()

G4FPYNormalFragmentDist::~G4FPYNormalFragmentDist ( void  )
virtual

Default deconstructor. It is a virtual function since G4FPYNormalFragmentDist inherits from G4FissionProductYieldDist

Definition at line 125 of file G4FPYNormalFragmentDist.cc.

126{
128
129 // Empty - all the data elements to be deconstructed are removed by
130 // ~G4FissionProductYieldDist()
131
133}
#define G4FFG_FUNCTIONLEAVE__
#define G4FFG_FUNCTIONENTER__

Member Function Documentation

◆ GetFissionProduct()

G4Ions * G4FPYNormalFragmentDist::GetFissionProduct ( void  )
protectedvirtual

Selects a fission product from the probability tree, limited by the number of nucleons available to the system.

Implements G4FissionProductYieldDist.

Definition at line 86 of file G4FPYNormalFragmentDist.cc.

88{
90
91 G4Ions* Particle=nullptr;
92
93 // Generate a (0, 1] random number and return the respective particle.
94 // The ENDF data tables lists 72172 as the largest fission fragment produced
95 // for any fission event. The maximum alpha production is 10 and the
96 // smallest fissile isotope is 90227. This means that if isotope 72172 were
97 // selected as the first daughter product, then at 10 alpha particles only
98 // 15 nucleons and -2 protons would remain for the second daughter product.
99 // Although the actual probability of this occurring is very small, or 0 in
100 // this case, a check should still be made to ensure that the second
101 // daughter product can be physically realized. This would prevent a
102 // situation such as this extreme example which results in a nucleus of 13
103 // neutrons and 2 anti-protons.
104 // This quick sanity check may become even more valid if the ENDF data
105 // tables are expanded in the future and include larger fission products.
106
107 G4int icounter=0;
108 G4int icounter_max=1024;
109 do
110 {
111 icounter++;
112 if ( icounter > icounter_max ) {
113 G4cout << "Loop-counter exceeded the threshold value at " << __LINE__ << "th line of " << __FILE__ << "." << G4endl;
114 break;
115 }
117 } while(Particle->GetAtomicMass() > RemainingA_ + 1
118 || Particle->GetAtomicNumber() > RemainingZ_ + 1);
119 // Loop checking, 11.05.2015, T. Koi
120
122 return Particle;
123}
int G4int
Definition: G4Types.hh:85
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
G4double G4SampleUniform(void)
G4Ions * FindParticle(G4double RandomParticle)
Definition: G4Ions.hh:52

◆ Initialize()

void G4FPYNormalFragmentDist::Initialize ( void  )
protected

Initialize is a common function called by all constructors.

Definition at line 76 of file G4FPYNormalFragmentDist.cc.

78{
80
81 // Nothing here yet
82
84}

Referenced by G4FPYNormalFragmentDist().


The documentation for this class was generated from the following files: