Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 // 27 // 28 // ---------------------- 29 // Class description: 30 // 31 // The table of elements. 32 // In the constructor an array of strings with 33 // symbol and A are created. 34 // The G4Element instances of given Z are crea 35 // GetEle(G4double Z) is called using the stri 36 // For each Z the G4Element is created only on 37 38 // ---------------------- 39 40 #ifndef G4ELETABLE_HH 41 #define G4ELETABLE_HH 1 42 43 #include "G3toG4Defs.hh" 44 #include "globals.hh" 45 #include "G4Element.hh" 46 47 class G3EleTable 48 { 49 50 public: // with description 51 52 G3EleTable(); 53 virtual ~G3EleTable(); 54 G4Element* GetEle(G4double Z); 55 56 private: 57 58 void LoadUp(); 59 G4int parse(G4double& Z, char* name, char* s 60 61 private: 62 63 G4Element** _Ele; 64 static const G4int _MaxEle = 109; 65 G4String _EleNames[_MaxEle] = { "Hydrogen H 66 "Lithium Li 6.941" 67 "Boron B 10.811", 68 "Nitrogen N 14.006 69 "Fluorine F 18.998 70 71 "Sodium Na 22.9897 72 "Aluminum Al 26.98 73 "Phosphorus P 30.9 74 "Chlorine Cl 35.45 75 "Potassium K 39.09 76 77 "Scandium Sc 44.95 78 "Vanadium V 50.941 79 "Manganese Mn 54.9 80 "Cobalt Co 58.9332 81 "Copper Cu 63.546" 82 83 "Gallium Ga 69.723 84 "Arsenic As 74.921 85 "Bromine Br 79.904 86 "Rubidium Rb 85.46 87 "Yttrium Y 88.9058 88 89 "Niobium Nb 92.906 90 "Technetium Tc 97. 91 "Rhodium Rh 102.90 92 "Silver Ag 107.868 93 "Indium In 114.818 94 95 "Antimony Sb 121.7 96 "Iodine I 126.9044 97 "Cesium Cs 132.905 98 "Lanthanum La 138. 99 "Praeseodymium Pr 100 101 "Promethium Pm 144 102 "Europium Eu 151.9 103 "Terbium Tb 158.92 104 "Holmium Ho 164.93 105 "Thulium Tm 168.93 106 107 "Lutetium Lu 174.9 108 "Tantalum Ta 180.9 109 "Rhenium Re 186.20 110 "Iridium Ir 192.21 111 "Gold Au 196.96654 112 113 "Thallium Tl 204.3 114 "Bismuth Bi 208.98 115 "Astatine At 209.9 116 "Francium Fr 223.0 117 "Actinium Ac 227.0 118 119 "Protactinium Pa 2 120 "Neptunium Np 237. 121 "Americium Am 243. 122 "Berkelium Bk 247. 123 "Einsteinium Es 25 124 125 "Mendelevium Md 25 126 "Lawrencium Lr 262 127 "Hahnium Ha 262.11 128 "Nielsborium Ns 26 129 "Meitnerium Mt 266 130 }; 131 132 extern G3G4DLL_API G3EleTable G3Ele; 133 #endif 134