Geant4 11.2.2
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)
 
 ~G4FPYNormalFragmentDist () override
 
- 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 ()
 
G4IonsG4GetFissionProduct ()
 
void G4SetAlphaProduction (G4double WhatAlphaProduction)
 
void G4SetEnergy (G4double WhatIncidentEnergy)
 
void G4SetTernaryProbability (G4double TernaryProbability)
 
void G4SetVerbosity (G4int WhatVerbosity)
 
virtual ~G4FissionProductYieldDist ()
 

Protected Member Functions

void Initialize ()
 
G4IonsGetFissionProduct () override
 
- Protected Member Functions inherited from G4FissionProductYieldDist
void CheckAlphaSanity ()
 
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)
 
G4IonsGetParticleDefinition (G4int Product, G4FFGEnumerations::MetaState MetaState)
 
G4String MakeDirectoryName ()
 
G4String MakeFileName (G4int Isotope, G4FFGEnumerations::MetaState MetaState)
 
G4DynamicParticleMakeG4DynamicParticle (G4ReactionProduct *)
 
G4String MakeIsotopeName (G4int Isotope, G4FFGEnumerations::MetaState MetaState)
 
virtual void MakeTrees ()
 
virtual void ReadProbabilities ()
 
void Renormalize (ProbabilityBranch *Branch)
 
void SampleAlphaEnergies (std::vector< G4ReactionProduct * > *Alphas)
 
void SampleGammaEnergies (std::vector< G4ReactionProduct * > *Gammas)
 
void SampleNeutronEnergies (std::vector< G4ReactionProduct * > *Neutrons)
 
void SetNubar ()
 
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 44 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.

47 : G4FissionProductYieldDist(WhichIsotope, WhichMetaState, WhichCause, WhichYieldType, dataFile)
48{
49 // Initialize the class
50 Initialize();
51}
G4FissionProductYieldDist(G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, G4FFGEnumerations::FissionCause WhichCause, G4FFGEnumerations::YieldType WhichYieldType, std::istringstream &dataStream)

◆ 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 53 of file G4FPYNormalFragmentDist.cc.

58 : G4FissionProductYieldDist(WhichIsotope, WhichMetaState, WhichCause, WhichYieldType, Verbosity,
59 dataFile)
60{
61 // Initialize the class
62 Initialize();
63}

◆ ~G4FPYNormalFragmentDist()

G4FPYNormalFragmentDist::~G4FPYNormalFragmentDist ( )
override

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

Definition at line 109 of file G4FPYNormalFragmentDist.cc.

110{
112
113 // Empty - all the data elements to be deconstructed are removed by
114 // ~G4FissionProductYieldDist()
115
117}
#define G4FFG_FUNCTIONLEAVE__
#define G4FFG_FUNCTIONENTER__

Member Function Documentation

◆ GetFissionProduct()

G4Ions * G4FPYNormalFragmentDist::GetFissionProduct ( )
overrideprotectedvirtual

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

Implements G4FissionProductYieldDist.

Definition at line 71 of file G4FPYNormalFragmentDist.cc.

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

◆ Initialize()

void G4FPYNormalFragmentDist::Initialize ( )
protected

Initialize is a common function called by all constructors.

Definition at line 65 of file G4FPYNormalFragmentDist.cc.

66
67 // Nothing here yet
68

Referenced by G4FPYNormalFragmentDist(), and G4FPYNormalFragmentDist().


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