64 G4double G4fissionEvent::G4SmpGEng() {
86 if (r == 0.0)
return 0.085;
88 if (r <= 0.0001)
return 0.0855+0.01692*(r/0.0001)-0.02401*Pow->
powA(r/0.0001,2.)+0.01274*Pow->
powA(r/0.0001,3.);
90 if (r > 0.0001 && r <= 0.01)
return 0.09141 + 0.23846*((r-0.0001)/0.0099)
91 - 1.75947*Pow->
powA((r-.0001)/0.0099,2.)
92 + 10.98611*Pow->
powA((r-0.0001)/0.0099,3.)
93 - 43.19181*Pow->
powA((r-.0001)/0.0099,4.)
94 +105.70005*Pow->
powA((r-.0001)/.0099,5.)
95 -160.72894*Pow->
powA((r-.0001)/.0099,6.)
96 +147.43399*Pow->
powA((r-.0001)/.0099,7.)
97 - 74.60043*Pow->
powA((r-.0001)/0.0099,8.)
98 + 15.97547*Pow->
powA((r-.0001)/0.0099,9.);
100 if (r > 0.01 && r <= 0.1537)
return 0.14486 + 0.40914*((r-.01)/.1437)
101 - 1.28150*Pow->
powA((r-0.01)/0.1437,2.)
102 + 5.07377*Pow->
powA((r-0.01)/0.1437,3.)
103 -15.42031*Pow->
powA((r-0.01)/0.1437,4.)
104 +31.96346*Pow->
powA((r-0.01)/0.1437,5.)
105 -43.12605*Pow->
powA((r-0.01)/0.1437,6.)
106 +36.02908*Pow->
powA((r-0.01)/0.1437,7.)
107 -16.87185*Pow->
powA((r-0.01)/0.1437,8.)
108 + 3.37941*Pow->
powA((r-0.01)/0.1437,9.);
110 if (r > 0.1537 && r <= 0.7114)
return (-1./2.3)*
G4Log(0.71956*(0.1537-r)+0.50158);
112 if (r > 0.7114 && r <= 1.0)
return (-1./1.1)*
G4Log(1.15292*(0.7114-r)+0.33287);
116 G4cout <<
" Random number out of range in SmpGEng " <<
G4endl;
static G4Pow * GetInstance()
G4double powA(G4double A, G4double y) const
G4GLOB_DLL std::ostream G4cout
G4double G4Log(G4double x)