Geant4-11
Public Member Functions | Private Member Functions | Private Attributes
G4FissionParameters Class Reference

#include <G4FissionParameters.hh>

Public Member Functions

void DefineParameters (G4int A, G4int Z, G4double ExEnergy, G4double FissionBarrier)
 
 G4FissionParameters ()
 
G4int GetA1 (void) const
 
G4int GetA2 (void) const
 
G4double GetAs (void) const
 
G4double GetSigma1 (void) const
 
G4double GetSigma2 (void) const
 
G4double GetSigmaS (void) const
 
G4double GetW (void) const
 
 ~G4FissionParameters ()
 

Private Member Functions

 G4FissionParameters (const G4FissionParameters &right)
 
G4double LocalExp (G4double x) const
 
G4bool operator!= (const G4FissionParameters &right) const
 
const G4FissionParametersoperator= (const G4FissionParameters &right)
 
G4bool operator== (const G4FissionParameters &right) const
 

Private Attributes

G4int A1
 
G4int A2
 
G4double A3
 
G4double As
 
G4double Sigma1
 
G4double Sigma2
 
G4double SigmaS
 
G4double w
 

Detailed Description

Definition at line 38 of file G4FissionParameters.hh.

Constructor & Destructor Documentation

◆ G4FissionParameters() [1/2]

G4FissionParameters::G4FissionParameters ( )

◆ ~G4FissionParameters()

G4FissionParameters::~G4FissionParameters ( )

Definition at line 42 of file G4FissionParameters.cc.

43{}

◆ G4FissionParameters() [2/2]

G4FissionParameters::G4FissionParameters ( const G4FissionParameters right)
private

Member Function Documentation

◆ DefineParameters()

void G4FissionParameters::DefineParameters ( G4int  A,
G4int  Z,
G4double  ExEnergy,
G4double  FissionBarrier 
)

Definition at line 45 of file G4FissionParameters.cc.

47{
48 // to avoid usage of units
49 G4double U = std::min(200., ExEnergy/CLHEP::MeV);
50
51 As = A*0.5;
52
53 if (A <= 235) { Sigma2 = 5.6; }
54 else { Sigma2 = 5.6 + 0.096*(A-235); }
55
56 Sigma1 = 0.5*Sigma2;
57
58 //JMQ 310509
59 // if (SigmaS > 20.0) SigmaS = 20.0;
60 // SigmaS*=1.3;
61 //JMQ 301009: retuning (after CEM transition prob.have been chosen as default)
62 SigmaS = 0.8*G4Exp(0.00553*U + 2.1386);
63
64 G4double wa = 0.0;
65 w = 0.0;
66 if (Z >= 90) {
67 if (U <= 16.25) { wa = G4Exp(0.5385*U-9.9564); }
68 else { wa = G4Exp(0.09197*U-2.7003); }
69 } else if (Z == 89) {
70 wa = G4Exp(0.09197*U-1.0808);
71 } else if (Z >= 82) {
72 G4double X = std::max(0.0, FissionBarrier/CLHEP::MeV - 7.5);
73 wa = G4Exp(0.09197*(U-X) - 1.0808);
74 } else { // Z < 82
75 w = 1001.0;
76 }
77
78 if (Z >= 82) {
79 G4double x1 = (A1-As)/Sigma1;
80 G4double x2 = (A2-As)/Sigma2;
81 G4double FasymAsym = 2*LocalExp(x2) + LocalExp(x1);
82
83 G4double x3 = (As-A3)/SigmaS;
84 G4double FsymA1A2 = LocalExp(x3);
85
86 G4double w1 = std::max(1.03*wa - FasymAsym, 0.0001);
87 G4double w2 = std::max(1.0 - FsymA1A2*wa, 0.0001);
88
89 w = w1/w2;
90
91 if (A < 227) { w *= G4Exp(0.3*(227-A)); }
92 }
93}
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Definition: G4Exp.hh:179
double G4double
Definition: G4Types.hh:83
const G4int Z[17]
const G4double A[17]
G4double LocalExp(G4double x) const
static constexpr double MeV
T max(const T t1, const T t2)
brief Return the largest of the two arguments
T min(const T t1, const T t2)
brief Return the smallest of the two arguments

References A, A1, A2, A3, As, G4Exp(), LocalExp(), G4INCL::Math::max(), CLHEP::MeV, G4INCL::Math::min(), Sigma1, Sigma2, SigmaS, w, and Z.

Referenced by G4CompetitiveFission::EmittedFragment().

◆ GetA1()

G4int G4FissionParameters::GetA1 ( void  ) const
inline

◆ GetA2()

G4int G4FissionParameters::GetA2 ( void  ) const
inline

◆ GetAs()

G4double G4FissionParameters::GetAs ( void  ) const
inline

◆ GetSigma1()

G4double G4FissionParameters::GetSigma1 ( void  ) const
inline

Definition at line 55 of file G4FissionParameters.hh.

55{ return Sigma1; }

References Sigma1.

Referenced by G4CompetitiveFission::FissionKineticEnergy(), and G4CompetitiveFission::MassDistribution().

◆ GetSigma2()

G4double G4FissionParameters::GetSigma2 ( void  ) const
inline

◆ GetSigmaS()

G4double G4FissionParameters::GetSigmaS ( void  ) const
inline

◆ GetW()

G4double G4FissionParameters::GetW ( void  ) const
inline

◆ LocalExp()

G4double G4FissionParameters::LocalExp ( G4double  x) const
inlineprivate

Definition at line 62 of file G4FissionParameters.hh.

63 {
64 return (std::abs(x) < 8.) ? G4Exp(-0.5*x*x) : 0.0;
65 }

References G4Exp().

Referenced by DefineParameters().

◆ operator!=()

G4bool G4FissionParameters::operator!= ( const G4FissionParameters right) const
private

◆ operator=()

const G4FissionParameters & G4FissionParameters::operator= ( const G4FissionParameters right)
private

◆ operator==()

G4bool G4FissionParameters::operator== ( const G4FissionParameters right) const
private

Field Documentation

◆ A1

G4int G4FissionParameters::A1
private

Definition at line 74 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetA1().

◆ A2

G4int G4FissionParameters::A2
private

Definition at line 75 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetA2().

◆ A3

G4double G4FissionParameters::A3
private

Definition at line 76 of file G4FissionParameters.hh.

Referenced by DefineParameters().

◆ As

G4double G4FissionParameters::As
private

Definition at line 79 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetAs().

◆ Sigma1

G4double G4FissionParameters::Sigma1
private

Definition at line 83 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetSigma1().

◆ Sigma2

G4double G4FissionParameters::Sigma2
private

Definition at line 84 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetSigma2().

◆ SigmaS

G4double G4FissionParameters::SigmaS
private

Definition at line 87 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetSigmaS().

◆ w

G4double G4FissionParameters::w
private

Definition at line 91 of file G4FissionParameters.hh.

Referenced by DefineParameters(), and GetW().


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