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

#include <G4FissionParameters.hh>

Public Member Functions

 G4FissionParameters ()
 
 ~G4FissionParameters ()
 
void DefineParameters (G4int A, G4int Z, G4double ExEnergy, G4double FissionBarrier)
 
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
 

Detailed Description

Definition at line 38 of file G4FissionParameters.hh.

Constructor & Destructor Documentation

◆ G4FissionParameters()

G4FissionParameters::G4FissionParameters ( )

Definition at line 37 of file G4FissionParameters.cc.

38 : A1(134),A2(141),A3((A1 + A2)*0.5),As(0.0),Sigma1(0.0),Sigma2(0.0),
39 SigmaS(0.),w(0.0)
40{}

◆ ~G4FissionParameters()

G4FissionParameters::~G4FissionParameters ( )

Definition at line 42 of file G4FissionParameters.cc.

43{}

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:180
double G4double
Definition: G4Types.hh:83
const G4int Z[17]
const G4double A[17]

Referenced by G4CompetitiveFission::EmittedFragment().

◆ GetA1()

G4int G4FissionParameters::GetA1 ( void  ) const
inline

Definition at line 51 of file G4FissionParameters.hh.

51{ return A1; }

◆ GetA2()

G4int G4FissionParameters::GetA2 ( void  ) const
inline

Definition at line 52 of file G4FissionParameters.hh.

52{ return A2; }

◆ GetAs()

G4double G4FissionParameters::GetAs ( void  ) const
inline

Definition at line 54 of file G4FissionParameters.hh.

54{ return As; }

◆ GetSigma1()

G4double G4FissionParameters::GetSigma1 ( void  ) const
inline

Definition at line 55 of file G4FissionParameters.hh.

55{ return Sigma1; }

◆ GetSigma2()

G4double G4FissionParameters::GetSigma2 ( void  ) const
inline

Definition at line 56 of file G4FissionParameters.hh.

56{ return Sigma2; }

◆ GetSigmaS()

G4double G4FissionParameters::GetSigmaS ( void  ) const
inline

Definition at line 57 of file G4FissionParameters.hh.

57{ return SigmaS; }

◆ GetW()

G4double G4FissionParameters::GetW ( void  ) const
inline

Definition at line 58 of file G4FissionParameters.hh.

58{ return w; }

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