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

#include <G4FissionProbability.hh>

+ Inheritance diagram for G4FissionProbability:

Public Member Functions

 G4FissionProbability ()
 
 ~G4FissionProbability () override
 
G4double EmissionProbability (const G4Fragment &fragment, G4double MaximalKineticEnergy) override
 
void SetEvaporationLevelDensityParameter (G4VLevelDensityParameter *aLevelDensity)
 
void SetFissionLevelDensityParameter (G4VLevelDensityParameter *aLevelDensity)
 
 G4FissionProbability (const G4FissionProbability &right)=delete
 
const G4FissionProbabilityoperator= (const G4FissionProbability &right)=delete
 
G4bool operator== (const G4FissionProbability &right) const =delete
 
G4bool operator!= (const G4FissionProbability &right) const =delete
 
- Public Member Functions inherited from G4VEmissionProbability
 G4VEmissionProbability (G4int Z, G4int A)
 
virtual ~G4VEmissionProbability ()=default
 
void Initialise ()
 
virtual G4double EmissionProbability (const G4Fragment &fragment, G4double anEnergy)
 
virtual G4double ComputeProbability (G4double anEnergy, G4double CB)
 
G4int GetZ (void) const
 
G4int GetA (void) const
 
void SetDecayKinematics (G4int rZ, G4int rA, G4double rmass, G4double fmass)
 
G4double GetRecoilExcitation () const
 
void SetEvapExcitation (G4double exc)
 
G4double GetProbability () const
 
void ResetProbability ()
 
G4double SampleEnergy ()
 
 G4VEmissionProbability (const G4VEmissionProbability &right)=delete
 
const G4VEmissionProbabilityoperator= (const G4VEmissionProbability &right)=delete
 
G4bool operator== (const G4VEmissionProbability &right) const =delete
 
G4bool operator!= (const G4VEmissionProbability &right) const =delete
 

Additional Inherited Members

- Protected Member Functions inherited from G4VEmissionProbability
void ResetIntegrator (size_t nbin, G4double de, G4double eps)
 
G4double IntegrateProbability (G4double elow, G4double ehigh, G4double CB)
 
- Protected Attributes inherited from G4VEmissionProbability
G4NuclearLevelDatapNuclearLevelData
 
G4PowpG4pow
 
G4int OPTxs
 
G4int pVerbose
 
G4int theZ
 
G4int theA
 
G4int resZ = 0
 
G4int resA = 0
 
G4double pMass = 0.0
 
G4double pEvapMass = 0.0
 
G4double pResMass = 0.0
 
G4double pProbability = 0.0
 
G4double pTolerance = 0.0
 

Detailed Description

Definition at line 39 of file G4FissionProbability.hh.

Constructor & Destructor Documentation

◆ G4FissionProbability() [1/2]

G4FissionProbability::G4FissionProbability ( )
explicit

◆ ~G4FissionProbability()

G4FissionProbability::~G4FissionProbability ( )
override

Definition at line 54 of file G4FissionProbability.cc.

55{
56 if (ownEvapLDP) delete theEvapLDP;
57 if (ownFissLDP) delete theFissLDP;
58}

◆ G4FissionProbability() [2/2]

G4FissionProbability::G4FissionProbability ( const G4FissionProbability right)
delete

Member Function Documentation

◆ EmissionProbability()

G4double G4FissionProbability::EmissionProbability ( const G4Fragment fragment,
G4double  MaximalKineticEnergy 
)
overridevirtual

Reimplemented from G4VEmissionProbability.

Definition at line 61 of file G4FissionProbability.cc.

64{
65 if (MaximalKineticEnergy <= 0.0) { return 0.0; }
66 G4int A = fragment.GetA_asInt();
67 G4int Z = fragment.GetZ_asInt();
68 G4double U = fragment.GetExcitationEnergy();
69
70 G4double Ucompound = U - fPairCorr->GetPairingCorrection(A,Z);
71 G4double Ufission = U - fPairCorr->GetFissionPairingCorrection(A,Z);
72 if(Ucompound < 0.0 || Ufission < 0.0) { return 0.0; }
73
74 G4double SystemEntropy =
75 2.0*std::sqrt(theEvapLDP->LevelDensityParameter(A,Z,Ucompound)*Ucompound);
76
77 G4double afission = theFissLDP->LevelDensityParameter(A,Z,Ufission);
78
79 G4double Cf = 2.0*std::sqrt(afission*MaximalKineticEnergy);
80 G4double Exp1 = (SystemEntropy <= 160.0) ? G4Exp(-SystemEntropy) : 0.0;
81 G4double Exp2 = (SystemEntropy-Cf <= 160.0) ? G4Exp(-SystemEntropy+Cf) : 0.0;
82
83 // JMQ 14/02/09 BUG fixed in fission probability (missing parenthesis
84 // at denominator)
85 G4double probability = (Exp1 + (Cf-1.0)*Exp2) / (4.0*pi*afission);
86
87 return probability;
88}
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Definition: G4Exp.hh:180
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
const G4int Z[17]
const G4double A[17]
G4double GetExcitationEnergy() const
Definition: G4Fragment.hh:312
G4int GetZ_asInt() const
Definition: G4Fragment.hh:289
G4int GetA_asInt() const
Definition: G4Fragment.hh:284
G4double GetFissionPairingCorrection(G4int A, G4int Z) const
G4double GetPairingCorrection(G4int A, G4int Z) const
virtual G4double LevelDensityParameter(G4int A, G4int Z, G4double U) const =0
const G4double pi

◆ operator!=()

G4bool G4FissionProbability::operator!= ( const G4FissionProbability right) const
delete

◆ operator=()

const G4FissionProbability & G4FissionProbability::operator= ( const G4FissionProbability right)
delete

◆ operator==()

G4bool G4FissionProbability::operator== ( const G4FissionProbability right) const
delete

◆ SetEvaporationLevelDensityParameter()

void G4FissionProbability::SetEvaporationLevelDensityParameter ( G4VLevelDensityParameter aLevelDensity)
inline

Definition at line 51 of file G4FissionProbability.hh.

52 {
53 if (ownEvapLDP) delete theEvapLDP;
54 theEvapLDP = aLevelDensity;
55 ownEvapLDP = false;
56 }

◆ SetFissionLevelDensityParameter()

void G4FissionProbability::SetFissionLevelDensityParameter ( G4VLevelDensityParameter aLevelDensity)
inline

Definition at line 59 of file G4FissionProbability.hh.

60 {
61 if (ownFissLDP) delete theFissLDP;
62 theFissLDP = aLevelDensity;
63 ownFissLDP = false;
64 }

Referenced by G4INCLXXInterface::G4INCLXXInterface().


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