Import Geant4 11.1.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2022-07-01 10:44:02 +02:00
parent b3bf75a2a1
commit c07cea1fe0
2172 changed files with 183300 additions and 123938 deletions
@@ -1041,7 +1041,7 @@ G4FFG_FUNCTIONENTER__
// Generate the file location starting in the Geant4 data directory
std::ostringstream DirectoryName;
DirectoryName << std::getenv("G4NEUTRONHPDATA") << G4FFGDefaultValues::ENDFFissionDataLocation;
DirectoryName << G4FindDataDir("G4NEUTRONHPDATA") << G4FFGDefaultValues::ENDFFissionDataLocation;
// Return the directory structure
G4FFG_FUNCTIONLEAVE__
@@ -49,9 +49,9 @@
SetMaxEnergy( 20.*MeV );
/*
// G4cout << "Capture : start of construction!!!!!!!!"<<G4endl;
if(!std::getenv("G4NEUTRONHPDATA"))
if(!G4FindDataDir("G4NEUTRONHPDATA"))
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv("G4NEUTRONHPDATA");
dirName = G4FindDataDir("G4NEUTRONHPDATA");
G4String tString = "/Capture";
dirName = dirName + tString;
numEle = G4Element::GetNumberOfElements();
@@ -207,9 +207,9 @@ void G4ParticleHPCapture::BuildPhysicsTable(const G4ParticleDefinition&)
return;
}
if ( !std::getenv("G4NEUTRONHPDATA") )
if ( !G4FindDataDir("G4NEUTRONHPDATA") )
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv("G4NEUTRONHPDATA");
dirName = G4FindDataDir("G4NEUTRONHPDATA");
G4String tString = "/Capture";
dirName = dirName + tString;
@@ -216,6 +216,7 @@ G4ParticleHPContAngularPar::Sample(G4double anEnergy, G4double massCode,
if (j == nDiscreteEnergies) {
e_low = 0.0/eV;
} else {
if ( j < 1 ) j = 1; // Protection against evaluation of arrays at index j-1
e_low = theAngular[j-1].GetLabel()/eV;
}
e_high = theAngular[j].GetLabel()/eV;
@@ -275,6 +276,8 @@ G4ParticleHPContAngularPar::Sample(G4double anEnergy, G4double massCode,
}
}
if ( it < 1 ) it = 1; // Protection against evaluation of arrays at index it-1
G4double x1 = running[it-1];
G4double x2 = running[it];
@@ -398,6 +401,7 @@ G4ParticleHPContAngularPar::Sample(G4double anEnergy, G4double massCode,
}
} else { // continuum contribution
if ( it < 1 ) it = 1; // Protection against evaluation of arrays at index it-1
G4double x1 = running[it-1]/running[nEnergies-1];
G4double x2 = running[it]/running[nEnergies-1];
G4double y1 = theAngular[it-1].GetLabel();
@@ -586,6 +590,7 @@ G4ParticleHPContAngularPar::Sample(G4double anEnergy, G4double massCode,
}
} else {
if ( it < 1 ) it = 1; // Protection against evaluation of arrays at index it-1
G4double x1 = running[it-1]/running[nEnergies-1];
G4double x2 = running[it]/running[nEnergies-1];
G4double y1 = theAngular[it-1].GetLabel();
@@ -691,7 +696,7 @@ void G4ParticleHPContAngularPar::PrepareTableInterpolation()
G4double ener = theAngular[ie].GetLabel();
G4double enerT = (ener-theMinEner)/(theMaxEner-theMinEner);
theEnergiesTransformed.insert(enerT);
if( getenv("G4PHPTEST2") ) G4cout <<this << " G4ParticleHPContAngularPar::PrepareTableInterpolation theEnergiesTransformed1 " << enerT << G4endl; //GDEB
if( std::getenv("G4PHPTEST2") ) G4cout <<this << " G4ParticleHPContAngularPar::PrepareTableInterpolation theEnergiesTransformed1 " << enerT << G4endl; //GDEB
}
G4int nEnergiesPrev = angParPrev->GetNEnergies();
G4double minEnerPrev = angParPrev->GetMinEner();
@@ -700,7 +705,7 @@ void G4ParticleHPContAngularPar::PrepareTableInterpolation()
G4double ener = angParPrev->theAngular[ie].GetLabel();
G4double enerT = (ener-minEnerPrev)/(maxEnerPrev-minEnerPrev);
theEnergiesTransformed.insert(enerT);
if( getenv("G4PHPTEST2") ) G4cout << this << " G4ParticleHPContAngularPar::PrepareTableInterpolation theEnergiesTransformed2 " << enerT << G4endl; //GDEB
if( std::getenv("G4PHPTEST2") ) G4cout << this << " G4ParticleHPContAngularPar::PrepareTableInterpolation theEnergiesTransformed2 " << enerT << G4endl; //GDEB
}
// add the maximum energy
//theEnergiesTransformed.insert(1.);
@@ -174,9 +174,9 @@ void G4ParticleHPElastic::BuildPhysicsTable(const G4ParticleDefinition&)
}
G4ParticleHPElasticFS * theFS = new G4ParticleHPElasticFS;
if(!std::getenv("G4NEUTRONHPDATA"))
if(!G4FindDataDir("G4NEUTRONHPDATA"))
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv("G4NEUTRONHPDATA");
dirName = G4FindDataDir("G4NEUTRONHPDATA");
G4String tString = "/Elastic";
dirName = dirName + tString;
for ( G4int i = numEle ; i < (G4int)G4Element::GetNumberOfElements() ; i++ ) {
@@ -46,9 +46,9 @@
SetMinEnergy( 0.0 );
SetMaxEnergy( 20.*MeV );
/*
if(!std::getenv("G4NEUTRONHPDATA"))
if(!G4FindDataDir("G4NEUTRONHPDATA"))
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv("G4NEUTRONHPDATA");
dirName = G4FindDataDir("G4NEUTRONHPDATA");
G4String tString = "/Fission";
dirName = dirName + tString;
numEle = G4Element::GetNumberOfElements();
@@ -198,9 +198,9 @@ void G4ParticleHPFission::BuildPhysicsTable(const G4ParticleDefinition&)
return;
}
if ( !std::getenv("G4NEUTRONHPDATA") )
if ( !G4FindDataDir("G4NEUTRONHPDATA") )
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv("G4NEUTRONHPDATA");
dirName = G4FindDataDir("G4NEUTRONHPDATA");
G4String tString = "/Fission";
dirName = dirName + tString;
@@ -51,8 +51,8 @@ G4ParticleHPInelastic::G4ParticleHPInelastic(G4ParticleDefinition* projectile, c
,theProjectile(projectile)
{
G4String baseName;
if ( std::getenv("G4PARTICLEHPDATA") ) {
baseName = std::getenv( "G4PARTICLEHPDATA" );
if ( G4FindDataDir("G4PARTICLEHPDATA") ) {
baseName = G4FindDataDir( "G4PARTICLEHPDATA" );
}
//const char* dataDirVariable;
G4String particleName;
@@ -82,13 +82,13 @@ G4ParticleHPInelastic::G4ParticleHPInelastic(G4ParticleDefinition* projectile, c
SetMaxEnergy( 20.*MeV );
//G4cout << " entering G4ParticleHPInelastic constructor"<<G4endl;
if ( !std::getenv("G4PARTICLEHPDATA") && !std::getenv(dataDirVariable) ) {
if ( !G4FindDataDir("G4PARTICLEHPDATA") && !G4FindDataDir(dataDirVariable) ) {
G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " +
G4String(dataDirVariable) + " to point to the " + theProjectile->GetParticleName() + " cross-section files." );
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
}
if ( std::getenv(dataDirVariable) ) {
dirName = std::getenv(dataDirVariable);
if ( G4FindDataDir(dataDirVariable) ) {
dirName = G4FindDataDir(dataDirVariable);
} else {
dirName = baseName + "/" + particleName;
}
@@ -77,9 +77,9 @@ void G4ParticleHPInelasticBaseFS::InitGammas(G4double AR, G4double ZR)
void G4ParticleHPInelasticBaseFS::Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & bit, G4ParticleDefinition* )
{
gammaPath = "/Inelastic/Gammas/";
if(!std::getenv("G4NEUTRONHPDATA"))
if(!G4FindDataDir("G4NEUTRONHPDATA"))
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files where Inelastic/Gammas data is found.");
G4String tBase = std::getenv("G4NEUTRONHPDATA");
G4String tBase = G4FindDataDir("G4NEUTRONHPDATA");
gammaPath = tBase+gammaPath;
G4String tString = dirName;
G4bool dbool;
@@ -86,9 +86,9 @@ void G4ParticleHPInelasticCompFS::InitGammas(G4double AR, G4double ZR)
void G4ParticleHPInelasticCompFS::Init (G4double A, G4double Z, G4int M, G4String & dirName, G4String & aFSType, G4ParticleDefinition*)
{
gammaPath = "/Inelastic/Gammas/"; //only in neutron data base
if(!std::getenv("G4NEUTRONHPDATA"))
if(!G4FindDataDir("G4NEUTRONHPDATA"))
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files where Inelastic/Gammas data is found.");
G4String tBase = std::getenv("G4NEUTRONHPDATA");
G4String tBase = G4FindDataDir("G4NEUTRONHPDATA");
gammaPath = tBase+gammaPath;
G4String tString = dirName;
G4bool dbool;
@@ -75,17 +75,17 @@ G4ParticleHPInelasticData::G4ParticleHPInelasticData(G4ParticleDefinition* proje
dataName.at(0) = toupper(dataName.at(0)) ;
SetName( dataName );
if ( !std::getenv(dataDirVariable) && !std::getenv( "G4PARTICLEHPDATA" ) ){
if ( !G4FindDataDir(dataDirVariable) && !G4FindDataDir( "G4PARTICLEHPDATA" ) ){
G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " +
G4String(dataDirVariable) + " to point to the " + projectile->GetParticleName() + " cross-section files.");
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
}
G4String dirName;
if ( std::getenv(dataDirVariable) ) {
dirName = std::getenv(dataDirVariable);
if ( G4FindDataDir(dataDirVariable) ) {
dirName = G4FindDataDir(dataDirVariable);
} else {
G4String baseName = std::getenv( "G4PARTICLEHPDATA" );
G4String baseName = G4FindDataDir( "G4PARTICLEHPDATA" );
dirName = baseName + "/" + particleName;
}
#ifdef G4VERBOSE
@@ -109,10 +109,10 @@ void G4ParticleHPIsoData::Init(G4int A, G4int Z, G4int M,G4double abun, G4Partic
}
G4String baseName;
if ( std::getenv( dataDirVariable ) ) {
baseName = std::getenv( dataDirVariable );
if ( G4FindDataDir( dataDirVariable ) ) {
baseName = G4FindDataDir( dataDirVariable );
} else {
baseName = std::getenv( "G4PARTICLEHPDATA" );
baseName = G4FindDataDir( "G4PARTICLEHPDATA" );
baseName += "/" + particleName;
}
@@ -104,7 +104,7 @@ void G4ParticleHPJENDLHEData::BuildPhysicsTable( const G4ParticleDefinition& aP
// throw G4HadronicException(__FILE__, __LINE__, "Attempt to use NeutronHP data for particles other than neutrons!!!");
particleName = aP.GetParticleName();
G4String baseName = std::getenv( "G4NEUTRONHPDATA" );
G4String baseName = G4FindDataDir( "G4NEUTRONHPDATA" );
G4String dirName = baseName+"/JENDL_HE/"+particleName+"/"+reactionName ;
G4String aFSType = "/CrossSection/";
G4ParticleHPNames theNames;
@@ -335,7 +335,7 @@ G4ParticleHPDataUsed G4ParticleHPNames::GetName(G4int A, G4int Z, G4int M, G4Str
if ( rest == "/CrossSection" )
{
G4String reac = base;
G4String dir = std::getenv("G4NEUTRONHPDATA");
G4String dir = G4FindDataDir("G4NEUTRONHPDATA");
reac.erase ( 0 , dir.length() );
if ( G4ParticleHPManager::GetInstance()->GetSkipMissingIsotopes() && !( Z == result.GetZ() && result.IsThisNaturalAbundance() ) )
{
@@ -1198,9 +1198,9 @@ void G4ParticleHPThermalScattering::buildPhysicsTable()
if ( inelasticFSs == nullptr ) inelasticFSs = new std::map < G4int , std::map < G4double , std::vector < E_P_E_isoAng* >* >* >;
G4String dirName;
if ( !std::getenv( "G4NEUTRONHPDATA" ) )
if ( !G4FindDataDir( "G4NEUTRONHPDATA" ) )
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
dirName = std::getenv( "G4NEUTRONHPDATA" );
dirName = G4FindDataDir( "G4NEUTRONHPDATA" );
//G4String name;
@@ -328,9 +328,9 @@ void G4ParticleHPThermalScatteringData::BuildPhysicsTable(const G4ParticleDefini
// Read Cross Section Data files
G4String dirName;
if ( !std::getenv( "G4NEUTRONHPDATA" ) )
if ( !G4FindDataDir( "G4NEUTRONHPDATA" ) )
throw G4HadronicException(__FILE__, __LINE__, "Please setenv G4NEUTRONHPDATA to point to the neutron cross-section files.");
G4String baseName = std::getenv( "G4NEUTRONHPDATA" );
G4String baseName = G4FindDataDir( "G4NEUTRONHPDATA" );
dirName = baseName + "/ThermalScattering";
@@ -42,62 +42,100 @@
#include "G4ElementTable.hh"
//#include "G4ParticleHPData.hh"
G4ParticleHPThermalScatteringNames::G4ParticleHPThermalScatteringNames()
{
names.insert ( std::pair < G4String , G4String > ( "TS_Aluminium_Metal" , "al_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Beryllium_Metal" , "be_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Be_of_Beryllium_Oxide" , "be_beo" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite" , "graphite" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Heavy_Water" , "d_heavy_water" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Water" , "h_water" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Zirconium_Hydride" , "h_zrh" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Polyethylene" , "h_polyethylene" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Iron_Metal" , "fe_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Uranium_Dioxide" , "o_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Beryllium_Oxide" , "o_beo" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U_of_Uranium_Dioxide" , "u_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_Uranium_Dioxide" , "u235_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_Uranium_Dioxide" , "u238_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Zr_of_Zirconium_Hydride" , "zr_zrh" ) ); // ENDF-B71
names.insert ( std::pair < G4String , G4String > ( "TS_Zr90_of_Zirconium_Hydride" , "zr90_zrh" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Zr91_of_Zirconium_Hydride" , "zr91_zrh" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Zr92_of_Zirconium_Hydride" , "zr92_zrh" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Zr94_of_Zirconium_Hydride" , "zr94_zrh" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Zr96_of_Zirconium_Hydride" , "zr96_zrh" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Para_Hydrogen" , "h_para_h2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ortho_Hydrogen" , "h_ortho_h2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Para_Deuterium" , "d_para_d2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Ortho_Deuterium" , "d_ortho_d2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Liquid_Methane", "h_l_ch4" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Solid_Methane", "h_s_ch4" ) );
// --------------------------------------------------------------------------------------------------------------------------
// Old Geant4 naming - before 23/03/2022 - TSL linked to ENDF/BVII.1 nuclear cross-section G4NDL4.5
// --------------------------------------------------------------------------------------------------------------------------
/*names.insert ( std::pair < G4String , G4String > ( "TS_Aluminium_Metal" , "al_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Beryllium_Metal" , "be_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Be_of_Beryllium_Oxide" , "be_beo" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite" , "graphite" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Heavy_Water" , "d_heavy_water" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Water" , "h_water" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Zirconium_Hydride" , "h_zrh" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Polyethylene" , "h_polyethylene" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Iron_Metal" , "fe_metal" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Uranium_Dioxide" , "o_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Beryllium_Oxide" , "o_beo" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U_of_Uranium_Dioxide" , "u_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_Uranium_Dioxide" , "u235_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_Uranium_Dioxide" , "u238_uo2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_Zr_of_Zirconium_Hydride" , "zr_zrh" ) ); //// ENDF-B71
// 26/03/2021 - Added by L. Thulliez (CEA-Saclay)
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ice", "h_ice" ) ); // ENDF-B80 & JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Ice", "o_ice" ) ); // ENDF-B80 & JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_30percent" , "graphite_30p" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_10percent" , "graphite_10p" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_PolymethylMethacrylate", "h_c5o2h8" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Al_of_Sapphir", "al_al2o3" ) ); // JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Sapphir", "o_al2o3" ) ); // JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Mesitylene_phaseII", "h_mesitylene_phaseII" ) ); // JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Toluene", "h_toluene" ) ); // JEFF-3.3
names.insert ( std::pair < G4String , G4String > ( "TS_N_of_UN", "n_un" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_UN", "u235_un" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_UN", "u238_un" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_YH2", "h_yh2" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Y_of_YH2", "y_yh2" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_SiC", "c_sic" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiC", "si28_sic" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiC", "si29_sic" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiC", "si30_sic" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_beta", "si28_sio2_beta" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_beta", "si29_sio2_beta" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_beta", "si30_sio2_beta" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_alpha", "si28_sio2_alpha" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_alpha", "si29_sio2_alpha" ) ); // ENDF-B80
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_alpha", "si30_sio2_alpha" ) ); // ENDF-B80
//---
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Para_Hydrogen" , "h_para_h2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ortho_Hydrogen" , "h_ortho_h2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Para_Deuterium" , "d_para_d2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Ortho_Deuterium" , "d_ortho_d2" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Liquid_Methane", "h_l_ch4" ) );
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Solid_Methane", "h_s_ch4" ) ); */
// --------------------------------------------------------------------------------------------------------------------------
// New Geant4 naming - after 23/03/2022 - TSL linked to JEFF-3.3 nuclear cross-section G4NDL4.6
// --------------------------------------------------------------------------------------------------------------------------
///23/03/2022 - Added by L. Thulliez (CEA-Saclay)
names.insert ( std::pair < G4String , G4String > ( "TS_Benzene", "h_benzen" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Para_Hydrogen", "h_para_h2" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Para_Deuterium", "d_para_d2" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ortho_Hydrogen", "h_ortho_h2" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Ortho_Deuterium", "d_ortho_d2" ) );///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Uranium_Dioxide", "o_uo2" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Ice", "o_ice" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Heavy_Water", "o_heavy_water" ) ); ///ENDF/BVIII.0 and JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Beryllium_Oxide", "o_beo" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_N_of_Uranium_Nitride", "n_un" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Liquid_Methane", "h_l_ch4" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Zirconium_Hydride", "h_zrh" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Yttrium_Hydride", "h_yh2" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ice", "h_ice" ) ); ///ENDF/BVIII.0 and JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Water", "h_water" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Polyethylene", "h_polyethylene" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_PolymethylMethacrylate", "h_c5o2h8" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Heavy_Water", "d_heavy_water" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite", "graphite" ) ); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Silicium_Carbide", "c_sic" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_30percent", "graphite_30p" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_10percent", "graphite_10p" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Beryllium_Metal", "be_metal")); ///ENDF/BVIII.0 and JEFFF.3.3 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Be_of_Beryllium_Oxide", "be_beo" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Iron_Metal", "fe_metal" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Zr90_of_Zirconium_Hydride", "zr90_zrh" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Zr91_of_Zirconium_Hydride", "zr91_zrh" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Zr92_of_Zirconium_Hydride", "zr92_zrh" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Zr94_of_Zirconium_Hydride", "zr94_zrh" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Zr96_of_Zirconium_Hydride", "zr96_zrh" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Y_of_Yttrium_Hydride", "y_yh2" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_Uranium_Dioxide", "u235_uo2" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_Uranium_Dioxide", "u238_uo2" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_Uranium_Nitride", "u235_un" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_Uranium_Nitride", "u238_un" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_beta", "si28_sio2_beta" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_beta", "si29_sio2_beta" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_beta", "si30_sio2_beta" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_alpha", "si28_sio2_alpha" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_alpha", "si29_sio2_alpha" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_alpha", "si30_sio2_alpha" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_Silicium_Carbide", "si28_sic" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_Silicium_Carbide", "si29_sic" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_Silicium_Carbide", "si30_sic" ) ); ///ENDF/BVIII.0
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Solid_Methane", "h_s_ch4" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Aluminium_Metal", "al_metal" ) ); ///ENDF/BVIII.0 and ENDF/BVII.1
names.insert ( std::pair < G4String , G4String > ( "TS_Al_of_Sapphir_SingleCrystal", "al_al2o3_singlecrystal" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Ca_of_CaH2", "ca_cah2" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_CaH2", "h_cah2" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Mesitylene_phaseII", "h_mesitylene_phaseII" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Sapphir_SingleCrystal", "o_al2o3_singlecrystal" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Toluene", "h_toluene" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_SingleCrystal", "si30_sio2_singlecrystal" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_SingleCrystal", "si29_sio2_singlecrystal" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_SingleCrystal", "si28_sio2_singlecrystal" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Mg26_of_Magnesium_Metal", "mg26_magnesium" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Mg25_of_Magnesium_Metal", "mg25_magnesium" ) ); ///JEFFF.3.3
names.insert ( std::pair < G4String , G4String > ( "TS_Mg24_of_Magnesium_Metal", "mg24_magnesium" ) ); ///JEFFF.3.3
nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BERYLLIUM_OXIDE" , "Be" ) , "be_beo" ) );
nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BERYLLIUM_OXIDE" , "O" ) , "o_beo" ) );
@@ -106,15 +144,20 @@ G4ParticleHPThermalScatteringNames::G4ParticleHPThermalScatteringNames()
nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_URANIUM_OXIDE" , "O" ) , "o_uo2" ) );
nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_URANIUM_OXIDE" , "U" ) , "u_uo2" ) );
nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_WATER" , "H" ) , "h_water" ) );
}
//nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BENZENE" , "H" ) , "benzen" ) );
//nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BENZENE" , "C" ) , "benzen" ) );
}
G4ParticleHPThermalScatteringNames::~G4ParticleHPThermalScatteringNames()
{
;
}
G4bool G4ParticleHPThermalScatteringNames::IsThisThermalElement( G4String aname)
{
G4bool result = false;
@@ -122,7 +165,6 @@ G4bool G4ParticleHPThermalScatteringNames::IsThisThermalElement( G4String aname)
return result;
}
G4bool G4ParticleHPThermalScatteringNames::IsThisThermalElement( G4String material , G4String element )
{
G4bool result = false;