45{
47
48 As = A/2.0;
49
50 if (A <= 235) Sigma2 = 5.6;
51 else Sigma2 = 5.6 + 0.096*(A-235);
52
53 Sigma1 = 0.5*Sigma2;
54
55 SigmaS = std::exp(0.00553*U/MeV + 2.1386);
56
57
58
59
60
61 SigmaS*=0.8;
62
63
64 G4double FasymAsym = 2.0*std::exp(-((A2-As)*(A2-As))/(2.0*Sigma2*Sigma2)) +
65 std::exp(-((A1-As)*(A1-As))/(2.0*Sigma1*Sigma1));
66
67 G4double FsymA1A2 = std::exp(-((As-(A1+A2)/2.0)*(As-(A1+A2)/2.0))
68 /(2.0*SigmaS*SigmaS));
69
70
72 w = 0.0;
73 if (Z >= 90) {
74 if (U <= 16.25) wa = std::exp(0.5385*U/MeV-9.9564);
75 else wa = std::exp(0.09197*U/MeV-2.7003);
76 } else if (Z == 89) {
77 wa = std::exp(0.09197*U-1.0808);
78 } else if (Z >= 82) {
79 G4double X = FissionBarrier - 7.5*MeV;
80 if (X < 0.0) X = 0.0;
81 wa = std::exp(0.09197*(U-X)/MeV-1.0808);
82 } else {
83 w = 1001.0;
84 }
85
86 if (w == 0.0) {
87 G4double w1 = std::max(1.03*wa - FasymAsym, 0.0001);
88 G4double w2 = std::max(1.0 - FsymA1A2*wa, 0.0001);
89
90 w = w1/w2;
91
92 if (82 <= Z && Z < 89 && A < 227) w *= std::exp(0.3*(227-A));
93 }
94
95}