Geant4-11
G4ParticleHPThermalScatteringNames.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26// Class Description
27// Name list of Elements for a high precision (based on evaluated data
28// libraries) description of themal neutron scattering below 4 eV;
29// Based on Thermal neutron scattering files
30// from the evaluated nuclear data files ENDF/B-VI, Release2
31// To be used in your physics list in case you need this physics.
32// In this case you want to register an object of this class with
33// the corresponding process.
34// Class Description - End
35
36// 15-Nov-06 First implementation is done by T. Koi (SLAC/SCCS)
37// P. Arce, June-2014 Conversion neutron_hp to particle_hp
38//
39
41#include "G4Neutron.hh"
42#include "G4ElementTable.hh"
43//#include "G4ParticleHPData.hh"
44
45
47{
48 names.insert ( std::pair < G4String , G4String > ( "TS_Aluminium_Metal" , "al_metal" ) );
49 names.insert ( std::pair < G4String , G4String > ( "TS_Beryllium_Metal" , "be_metal" ) );
50 names.insert ( std::pair < G4String , G4String > ( "TS_Be_of_Beryllium_Oxide" , "be_beo" ) );
51 names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite" , "graphite" ) );
52 names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Heavy_Water" , "d_heavy_water" ) );
53 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Water" , "h_water" ) );
54 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Zirconium_Hydride" , "h_zrh" ) );
55 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Polyethylene" , "h_polyethylene" ) );
56 names.insert ( std::pair < G4String , G4String > ( "TS_Iron_Metal" , "fe_metal" ) );
57 names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Uranium_Dioxide" , "o_uo2" ) );
58 names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Beryllium_Oxide" , "o_beo" ) );
59 names.insert ( std::pair < G4String , G4String > ( "TS_U_of_Uranium_Dioxide" , "u_uo2" ) );
60 names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_Uranium_Dioxide" , "u235_uo2" ) );
61 names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_Uranium_Dioxide" , "u238_uo2" ) );
62 names.insert ( std::pair < G4String , G4String > ( "TS_Zr_of_Zirconium_Hydride" , "zr_zrh" ) ); // ENDF-B71
63 names.insert ( std::pair < G4String , G4String > ( "TS_Zr90_of_Zirconium_Hydride" , "zr90_zrh" ) ); // ENDF-B80
64 names.insert ( std::pair < G4String , G4String > ( "TS_Zr91_of_Zirconium_Hydride" , "zr91_zrh" ) ); // ENDF-B80
65 names.insert ( std::pair < G4String , G4String > ( "TS_Zr92_of_Zirconium_Hydride" , "zr92_zrh" ) ); // ENDF-B80
66 names.insert ( std::pair < G4String , G4String > ( "TS_Zr94_of_Zirconium_Hydride" , "zr94_zrh" ) ); // ENDF-B80
67 names.insert ( std::pair < G4String , G4String > ( "TS_Zr96_of_Zirconium_Hydride" , "zr96_zrh" ) ); // ENDF-B80
68 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Para_Hydrogen" , "h_para_h2" ) );
69 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ortho_Hydrogen" , "h_ortho_h2" ) );
70 names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Para_Deuterium" , "d_para_d2" ) );
71 names.insert ( std::pair < G4String , G4String > ( "TS_D_of_Ortho_Deuterium" , "d_ortho_d2" ) );
72 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Liquid_Methane", "h_l_ch4" ) );
73 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Solid_Methane", "h_s_ch4" ) );
74
75 // 26/03/2021 - Added by L. Thulliez (CEA-Saclay)
76 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Ice", "h_ice" ) ); // ENDF-B80 & JEFF-3.3
77 names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Ice", "o_ice" ) ); // ENDF-B80 & JEFF-3.3
78 names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_30percent" , "graphite_30p" ) ); // ENDF-B80
79 names.insert ( std::pair < G4String , G4String > ( "TS_C_of_Graphite_Porosity_10percent" , "graphite_10p" ) ); // ENDF-B80
80 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_PolymethylMethacrylate", "h_c5o2h8" ) ); // ENDF-B80
81 names.insert ( std::pair < G4String , G4String > ( "TS_Al_of_Sapphir", "al_al2o3" ) ); // JEFF-3.3
82 names.insert ( std::pair < G4String , G4String > ( "TS_O_of_Sapphir", "o_al2o3" ) ); // JEFF-3.3
83 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Mesitylene_phaseII", "h_mesitylene_phaseII" ) ); // JEFF-3.3
84 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_Toluene", "h_toluene" ) ); // JEFF-3.3
85 names.insert ( std::pair < G4String , G4String > ( "TS_N_of_UN", "n_un" ) ); // ENDF-B80
86 names.insert ( std::pair < G4String , G4String > ( "TS_U235_of_UN", "u235_un" ) ); // ENDF-B80
87 names.insert ( std::pair < G4String , G4String > ( "TS_U238_of_UN", "u238_un" ) ); // ENDF-B80
88 names.insert ( std::pair < G4String , G4String > ( "TS_H_of_YH2", "h_yh2" ) ); // ENDF-B80
89 names.insert ( std::pair < G4String , G4String > ( "TS_Y_of_YH2", "y_yh2" ) ); // ENDF-B80
90 names.insert ( std::pair < G4String , G4String > ( "TS_C_of_SiC", "c_sic" ) ); // ENDF-B80
91 names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiC", "si28_sic" ) ); // ENDF-B80
92 names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiC", "si29_sic" ) ); // ENDF-B80
93 names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiC", "si30_sic" ) ); // ENDF-B80
94 names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_beta", "si28_sio2_beta" ) ); // ENDF-B80
95 names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_beta", "si29_sio2_beta" ) ); // ENDF-B80
96 names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_beta", "si30_sio2_beta" ) ); // ENDF-B80
97 names.insert ( std::pair < G4String , G4String > ( "TS_Si28_of_SiO2_alpha", "si28_sio2_alpha" ) ); // ENDF-B80
98 names.insert ( std::pair < G4String , G4String > ( "TS_Si29_of_SiO2_alpha", "si29_sio2_alpha" ) ); // ENDF-B80
99 names.insert ( std::pair < G4String , G4String > ( "TS_Si30_of_SiO2_alpha", "si30_sio2_alpha" ) ); // ENDF-B80
100 //---
101
102 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BERYLLIUM_OXIDE" , "Be" ) , "be_beo" ) );
103 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_BERYLLIUM_OXIDE" , "O" ) , "o_beo" ) );
104 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_GRAPHITE" , "C" ) , "graphite" ) );
105 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_POLYETHYLENE" , "H" ) , "h_polyethylene" ) );
106 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_URANIUM_OXIDE" , "O" ) , "o_uo2" ) );
107 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_URANIUM_OXIDE" , "U" ) , "u_uo2" ) );
108 nist_names.insert ( std::pair < std::pair < G4String , G4String > , G4String > ( std::pair < G4String , G4String > ( "G4_WATER" , "H" ) , "h_water" ) );
109}
110
111
113{
114;
115}
116
117
119{
120 G4bool result = false;
121 if ( names.find ( aname ) != names.end() ) result = true;
122 return result;
123}
124
125
127{
128 G4bool result = false;
129 if ( nist_names.find ( std::pair<G4String,G4String>(material,element) ) != nist_names.end() ) result = true;
130 return result;
131}
132
133 //Name of G4Element , Name of NDL file
135{
136 if ( names.find ( nameG4Element ) == names.end() ) names.insert( std::pair<G4String,G4String>( nameG4Element , filename ) );
137}
bool G4bool
Definition: G4Types.hh:86
std::map< std::pair< G4String, G4String >, G4String > nist_names
string material
Definition: eplot.py:19