1001 static const size_t sigLen=200;
1010 if (materialTable == 0) {
return; }
1015 for (
G4int im=0; im<nMaterials; im++)
1021 for (
G4int iEl=0; iEl<nMatElements; iEl++)
1023 G4Element* element = (*elementVector)[iEl];
1031 std::map<std::string, ScreeningFunc>::iterator sfunciter=
1032 phiMap.find(screeningKey);
1033 if(sfunciter==phiMap.end()) {
1035 ed <<
"No such screening key <"
1036 << screeningKey <<
">";
1037 G4Exception(
"G4NativeScreenedCoulombCrossSection::LoadData",
1048 st.
z1=z1; st.
m1=a1; st.
z2=
Z; st.
m2=a2; st.
emin=recoilCutoff;
1069 x0func->set_domain(1e-6*
angstrom/au, 0.9999*screen->
xmax()/au);
1074 G4_c2_ptr x0_solution(
c2.inverse_function(x0func));
1081 G4double eratkin=0.9999*(4*a1*a2)/((a1+a2)*(a1+a2));
1088 G4cout <<
"Native Screening: " << screeningKey <<
" "
1089 << z1 <<
" " << a1 <<
" " <<
1090 Z <<
" " << a2 <<
" " << recoilCutoff <<
G4endl;
1092 for(
size_t idx=0; idx<sigLen; idx++) {
1093 G4double ee=std::exp(idx*((l1-l0)/sigLen)+l0);
1102 c2eps.
reset(0.0, 0.0, eps);
1116 x0=x0_solution(2*q-q*q);
1128 c2.log_log_interpolating_function().load(energies,
data,
static c2_factory< G4double > c2
G4_c2_const_ptr EMphiData
std::vector< G4Element * > G4ElementVector
std::ostringstream G4ExceptionDescription
static G4MaterialTable * GetMaterialTable()
std::vector< G4Material * > G4MaterialTable
static const G4double eps
const G4ElementVector * GetElementVector() const
const XML_Char const XML_Char * data
static constexpr double gram
static G4double thetac(G4double m1, G4double mass2, G4double eratio)
G4GLOB_DLL std::ostream G4cout
void reset(float_type x0, float_type y0, float_type slope)
Change the slope and intercepts after construction.
static G4double cm_energy(G4double a1, G4double a2, G4double t0)
ScreeningMap screeningData
std::map< G4int, G4_c2_const_ptr > sigmaMap
static size_t GetNumberOfMaterials()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static const G4double emax
the exception class for c2_function operations.
G4double standardmass(G4int z1)
static constexpr double angstrom
static constexpr double pi
size_t GetNumberOfElements() const
G4_c2_function &(* ScreeningFunc)(G4int z1, G4int z2, size_t nPoints, G4double rMax, G4double *au)
static constexpr double mole