Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4FissionProbability Class Reference

#include <G4FissionProbability.hh>

Inheritance diagram for G4FissionProbability:
G4VEmissionProbability

Public Member Functions

 G4FissionProbability ()
 
 ~G4FissionProbability ()
 
G4double EmissionProbability (const G4Fragment &fragment, G4double MaximalKineticEnergy)
 
- Public Member Functions inherited from G4VEmissionProbability
 G4VEmissionProbability ()
 
virtual ~G4VEmissionProbability ()
 
void SetOPTxs (G4int opt)
 
void UseSICB (G4bool use)
 

Additional Inherited Members

- Protected Attributes inherited from G4VEmissionProbability
G4int OPTxs
 
G4bool useSICB
 
G4PowfG4pow
 
G4PairingCorrectionfPairCorr
 
G4EvaporationLevelDensityParametertheEvapLDPptr
 

Detailed Description

Definition at line 43 of file G4FissionProbability.hh.

Constructor & Destructor Documentation

G4FissionProbability::G4FissionProbability ( )

Definition at line 40 of file G4FissionProbability.cc.

41 {}
G4FissionProbability::~G4FissionProbability ( )

Definition at line 43 of file G4FissionProbability.cc.

44 {}

Member Function Documentation

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

Implements G4VEmissionProbability.

Definition at line 48 of file G4FissionProbability.cc.

References G4Fragment::GetA_asInt(), G4Fragment::GetExcitationEnergy(), G4PairingCorrection::GetFissionPairingCorrection(), G4PairingCorrection::GetInstance(), G4PairingCorrection::GetPairingCorrection(), G4Fragment::GetZ_asInt(), G4EvaporationLevelDensityParameter::LevelDensityParameter(), G4FissionLevelDensityParameter::LevelDensityParameter(), G4INCL::Math::min(), and python.hepunit::pi.

51 {
52  if (MaximalKineticEnergy <= 0.0) return 0.0;
53  G4int A = fragment.GetA_asInt();
54  G4int Z = fragment.GetZ_asInt();
55  G4double U = fragment.GetExcitationEnergy();
56 
57  G4double Ucompound = U -
59 
60  G4double Ufission = U -
62 
63  G4double SystemEntropy =
64  2.0*std::sqrt(theEvapLDP.LevelDensityParameter(A,Z,Ucompound)*Ucompound);
65 
66  G4double afission = theFissLDP.LevelDensityParameter(A,Z,Ufission);
67 
68  G4double Cf = 2.0*std::sqrt(afission*MaximalKineticEnergy);
69 
70  // G4double Q1 = 1.0 + (Cf - 1.0)*std::exp(Cf);
71  // G4double Q2 = 4.0*pi*afission*std::exp(SystemEntropy);
72 
73  // G4double probability = Q1/Q2;
74 
75  G4double Exp1 = 0.0;
76  if (SystemEntropy <= 160.0) { Exp1 = std::exp(-SystemEntropy); }
77  // @@@@@@@@@@@@@@@@@ hpw changed max to min - cannot notify vicente now
78  G4double Exp2 = std::exp( std::min(700.0,Cf-SystemEntropy) );
79 
80  // JMQ 14/02/09 BUG fixed in fission probability (missing parenthesis
81  // at denominator)
82  //AH fix from Vincente: G4double probability =
83  // (Exp1 + (1.0-Cf)*Exp2) / 4.0*pi*afission;
84  // G4double probability = (Exp1 + (Cf-1.0)*Exp2) / 4.0*pi*afission;
85  G4double probability = (Exp1 + (Cf-1.0)*Exp2) / (4.0*pi*afission);
86 
87  return probability;
88 }
G4double LevelDensityParameter(G4int A, G4int Z, G4double U) const
int G4int
Definition: G4Types.hh:78
G4int GetA_asInt() const
Definition: G4Fragment.hh:238
G4double GetPairingCorrection(G4int A, G4int Z) const
static G4PairingCorrection * GetInstance()
G4double GetFissionPairingCorrection(G4int A, G4int Z) const
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
G4int GetZ_asInt() const
Definition: G4Fragment.hh:243
G4double LevelDensityParameter(G4int A, G4int, G4double) const
double G4double
Definition: G4Types.hh:76
G4double GetExcitationEnergy() const
Definition: G4Fragment.hh:255

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