45 double upper =
Kallbach(1., anEnergy);
46 double lower =
Kallbach(-1., anEnergy);
47 if(upper>max) max=upper;
48 if(lower>max) max=lower;
122 if(productA==3) mb=1;
126 throw G4HadronicException(__FILE__, __LINE__,
"Severe error in the sampling of Kallbach-Mann Systematics");
129 result = C1*X1 + C2*std::pow(X1, 3.) + C3*Ma*mb*std::pow(X3, 4.);
138 result = 15.68*(Ac-AA);
139 result += -28.07*((Nc-Zc)*(Nc-Zc)/Ac - (NA-ZA)*(NA-ZA)/AA);
140 result += -18.56*(std::pow(
G4double(Ac), 2./3.) - std::pow(
G4double(AA), 2./3.));
141 result += 33.22*((Nc-Zc)*(Nc-Zc)/std::pow(
G4double(Ac), 4./3.) - (NA-ZA)*(NA-ZA)/std::pow(
G4double(AA), 4./3.));
142 result += -0.717*(Zc*Zc/std::pow(
G4double(Ac),1./3.)-ZA*ZA/std::pow(
G4double(AA),1./3.));
143 result += 1.211*(Zc*Zc/Ac-ZA*ZA/AA);
147 if(productZ==0&&productA==1) totalBinding=0;
148 if(productZ==1&&productA==1) totalBinding=0;
149 if(productZ==1&&productA==2) totalBinding=2.22;
150 if(productZ==1&&productA==3) totalBinding=8.48;
151 if(productZ==2&&productA==3) totalBinding=7.72;
152 if(productZ==2&&productA==4) totalBinding=28.3;
153 result += -totalBinding;
G4double SeparationEnergy(G4int Ac, G4int Nc, G4int AA, G4int ZA)
G4double Sample(G4double anEnergy)
G4double theCompoundFraction
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
G4double Kallbach(G4double cosTh, G4double anEnergy)
G4double GetKallbachZero(G4double anEnergy)
G4double theProductEnergy
G4double A(G4double anEnergy)