Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 // 25 // 26 // 26 // 27 // 27 // 28 // Author: Alfonso Mantero (Alfonso.Mantero@ge 28 // Author: Alfonso Mantero (Alfonso.Mantero@ge.infn.it) 29 // 29 // 30 // History: 30 // History: 31 // ----------- 31 // ----------- 32 // 20 Aug 2001 Alfonso Mantero Created 32 // 20 Aug 2001 Alfonso Mantero Created 33 // 33 // 34 // ------------------------------------------- 34 // ------------------------------------------------------------------- 35 35 36 #include "XrayFluoNistMaterials.hh" 36 #include "XrayFluoNistMaterials.hh" 37 #include "G4PhysicalConstants.hh" 37 #include "G4PhysicalConstants.hh" 38 #include "G4SystemOfUnits.hh" 38 #include "G4SystemOfUnits.hh" 39 39 40 XrayFluoNistMaterials::XrayFluoNistMaterials() 40 XrayFluoNistMaterials::XrayFluoNistMaterials() 41 { CreateMaterials();} 41 { CreateMaterials();} 42 42 43 XrayFluoNistMaterials::~XrayFluoNistMaterials( 43 XrayFluoNistMaterials::~XrayFluoNistMaterials() 44 { 44 { 45 delete dolorite; 45 delete dolorite; 46 delete HPGe; 46 delete HPGe; 47 delete SiLi; 47 delete SiLi; 48 delete mars1; 48 delete mars1; 49 delete anorthosite; 49 delete anorthosite; 50 delete basalt; 50 delete basalt; 51 delete gabbro; 51 delete gabbro; 52 delete gabbroWD; 52 delete gabbroWD; 53 delete gabbroRF; 53 delete gabbroRF; 54 delete Air; 54 delete Air; 55 delete Sci; 55 delete Sci; 56 delete Vacuum; 56 delete Vacuum; 57 delete madaBasalt; 57 delete madaBasalt; 58 delete icelandicBasalt; 58 delete icelandicBasalt; 59 delete icelandicWD; 59 delete icelandicWD; 60 delete icelandicRF; 60 delete icelandicRF; 61 delete GaAs; 61 delete GaAs; 62 delete galactic; 62 delete galactic; 63 delete copper; 63 delete copper; 64 // delete nickel; 64 // delete nickel; 65 delete hawaiianRF; 65 delete hawaiianRF; 66 delete hawaiianWD; 66 delete hawaiianWD; 67 67 68 68 69 69 70 } 70 } 71 XrayFluoNistMaterials* XrayFluoNistMaterials:: 71 XrayFluoNistMaterials* XrayFluoNistMaterials::instance = 0; 72 72 73 XrayFluoNistMaterials* XrayFluoNistMaterials:: 73 XrayFluoNistMaterials* XrayFluoNistMaterials::GetInstance() 74 { 74 { 75 if (instance == 0) 75 if (instance == 0) 76 { 76 { 77 instance = new XrayFluoNistMaterials; 77 instance = new XrayFluoNistMaterials; 78 78 79 } 79 } 80 return instance; 80 return instance; 81 } 81 } 82 82 83 G4Material* XrayFluoNistMaterials::GetMaterial 83 G4Material* XrayFluoNistMaterials::GetMaterial(G4String material) 84 { 84 { 85 85 86 //instancing G4NistManager 86 //instancing G4NistManager 87 nistMan = G4NistManager::Instance(); 87 nistMan = G4NistManager::Instance(); 88 nistMan->SetVerbose(0); 88 nistMan->SetVerbose(0); 89 89 90 //If not available at NIST, look for the loc 90 //If not available at NIST, look for the local version of it 91 G4Material* mat = nistMan->FindOrBuildMater 91 G4Material* mat = nistMan->FindOrBuildMaterial(material); 92 if (!mat) { 92 if (!mat) { 93 mat = G4Material::GetMaterial(material); 93 mat = G4Material::GetMaterial(material); 94 } 94 } 95 if (!mat) {G4cout << material << "Not Found, 95 if (!mat) {G4cout << material << "Not Found, Please Retry"<< G4endl;} 96 return mat; 96 return mat; 97 } 97 } 98 98 99 99 100 void XrayFluoNistMaterials::CreateMaterials() 100 void XrayFluoNistMaterials::CreateMaterials() 101 { 101 { 102 102 103 G4double density; 103 G4double density; 104 std::vector<G4int> natoms; 104 std::vector<G4int> natoms; 105 std::vector<G4double> fractionMass; 105 std::vector<G4double> fractionMass; 106 std::vector<G4String> elements; 106 std::vector<G4String> elements; 107 107 108 108 109 //instancing G4NistManager 109 //instancing G4NistManager 110 nistMan = G4NistManager::Instance(); 110 nistMan = G4NistManager::Instance(); 111 nistMan->SetVerbose(1); 111 nistMan->SetVerbose(1); 112 112 113 // Materials Definitions 113 // Materials Definitions 114 114 115 115 116 /////////////////////// 116 /////////////////////// 117 // Madagascar Basalt // 117 // Madagascar Basalt // 118 /////////////////////// 118 /////////////////////// 119 119 120 120 121 // Define Madagascar Basalt main components 121 // Define Madagascar Basalt main components 0054.PP.0044 sample 122 density = 3*g/cm3; 122 density = 3*g/cm3; 123 elements.push_back("Si"); fractionMass.push 123 elements.push_back("Si"); fractionMass.push_back(0.1992); // 0.007093 mol/g(mat) 124 elements.push_back("Ti"); fractionMass.push 124 elements.push_back("Ti"); fractionMass.push_back(0.02027); // 4.235e-4 125 elements.push_back("Al"); fractionMass.push 125 elements.push_back("Al"); fractionMass.push_back(0.04758); // 0.001763 126 elements.push_back("Fe"); fractionMass.push 126 elements.push_back("Fe"); fractionMass.push_back(0.1303); // 0.002333 127 elements.push_back("Mn"); fractionMass.push 127 elements.push_back("Mn"); fractionMass.push_back(0.001549);// 2.820e-5 128 elements.push_back("Mg"); fractionMass.push 128 elements.push_back("Mg"); fractionMass.push_back(0.08141); // 0.003350 129 elements.push_back("Ca"); fractionMass.push 129 elements.push_back("Ca"); fractionMass.push_back(0.06468); // 0.001614 130 elements.push_back("Na"); fractionMass.push 130 elements.push_back("Na"); fractionMass.push_back(0.01692); // 7.360e-4 131 elements.push_back("K"); fractionMass.push 131 elements.push_back("K"); fractionMass.push_back(0.008576);// 2.193e-4 132 elements.push_back("P"); fractionMass.push 132 elements.push_back("P"); fractionMass.push_back(0.001977);// 6.383e-5 133 elements.push_back("O"); fractionMass.push 133 elements.push_back("O"); fractionMass.push_back(0.427538);// 0.02672 134 134 135 // sum is 0.04434383 total number of moles 135 // sum is 0.04434383 total number of moles of atoms in one gram of material 136 // 2.248766e8 g per 10.000.000 moles. 136 // 2.248766e8 g per 10.000.000 moles. 137 137 138 G4Material* madaBasaltMain= nistMan->Constru 138 G4Material* madaBasaltMain= nistMan->ConstructNewMaterial("MadaBasaltMain",elements, fractionMass, density); 139 elements.clear(); 139 elements.clear(); 140 fractionMass.clear(); 140 fractionMass.clear(); 141 141 142 // Define Madagascar Basalt traces components 142 // Define Madagascar Basalt traces components 0054.PP.0044 sample 143 density = 3*g/cm3; 143 density = 3*g/cm3; 144 144 145 145 146 elements.push_back("Ti"); natoms.push_back( 146 elements.push_back("Ti"); natoms.push_back(33); 147 elements.push_back("Ba"); natoms.push_back( 147 elements.push_back("Ba"); natoms.push_back(4131); 148 elements.push_back("Ce"); natoms.push_back( 148 elements.push_back("Ce"); natoms.push_back(694); 149 elements.push_back("Co"); natoms.push_back( 149 elements.push_back("Co"); natoms.push_back(965); 150 elements.push_back("Cr"); natoms.push_back( 150 elements.push_back("Cr"); natoms.push_back(5584); 151 elements.push_back("La"); natoms.push_back( 151 elements.push_back("La"); natoms.push_back(269); 152 elements.push_back("Nb"); natoms.push_back( 152 elements.push_back("Nb"); natoms.push_back(259); 153 elements.push_back("Nd"); natoms.push_back( 153 elements.push_back("Nd"); natoms.push_back(410); 154 elements.push_back("Ni"); natoms.push_back( 154 elements.push_back("Ni"); natoms.push_back(389); 155 elements.push_back("Rb"); natoms.push_back( 155 elements.push_back("Rb"); natoms.push_back(227); 156 elements.push_back("Sc"); natoms.push_back( 156 elements.push_back("Sc"); natoms.push_back(212); 157 elements.push_back("Sr"); natoms.push_back( 157 elements.push_back("Sr"); natoms.push_back(8686); 158 elements.push_back("V"); natoms.push_back( 158 elements.push_back("V"); natoms.push_back(4203); 159 elements.push_back("Y"); natoms.push_back( 159 elements.push_back("Y"); natoms.push_back(272); 160 elements.push_back("Zn"); natoms.push_back( 160 elements.push_back("Zn"); natoms.push_back(1440); 161 elements.push_back("Th"); natoms.push_back( 161 elements.push_back("Th"); natoms.push_back(19); 162 elements.push_back("Sm"); natoms.push_back( 162 elements.push_back("Sm"); natoms.push_back(93); 163 elements.push_back("Eu"); natoms.push_back( 163 elements.push_back("Eu"); natoms.push_back(32); 164 elements.push_back("Gd"); natoms.push_back( 164 elements.push_back("Gd"); natoms.push_back(89); 165 elements.push_back("Tb"); natoms.push_back( 165 elements.push_back("Tb"); natoms.push_back(13); 166 elements.push_back("Yb"); natoms.push_back( 166 elements.push_back("Yb"); natoms.push_back(15); 167 elements.push_back("Lu"); natoms.push_back( 167 elements.push_back("Lu"); natoms.push_back(2); 168 elements.push_back("Ta"); natoms.push_back( 168 elements.push_back("Ta"); natoms.push_back(15); 169 elements.push_back("Hf"); natoms.push_back( 169 elements.push_back("Hf"); natoms.push_back(62); 170 170 171 //tot 28114/10e7 weight: 2335253.28 g per 1 171 //tot 28114/10e7 weight: 2335253.28 g per 10e6 moles 172 172 173 G4Material* madaBasaltTraces= nistMan->Const 173 G4Material* madaBasaltTraces= nistMan->ConstructNewMaterial("MadaBasaltTraces", elements, natoms, density); 174 elements.clear(); 174 elements.clear(); 175 natoms.clear(); 175 natoms.clear(); 176 176 177 // Define Madacagascar Basalt complete mater 177 // Define Madacagascar Basalt complete material 0054.PP.0044 sample 178 density = 3*g/cm3; 178 density = 3*g/cm3; 179 179 180 madaBasalt= new G4Material("MadaBasalt", den 180 madaBasalt= new G4Material("MadaBasalt", density, 2); 181 madaBasalt->AddMaterial(madaBasaltMain, 0 181 madaBasalt->AddMaterial(madaBasaltMain, 0.9897); 182 madaBasalt->AddMaterial(madaBasaltTraces, 0 182 madaBasalt->AddMaterial(madaBasaltTraces, 0.0103); 183 183 184 184 185 185 186 /////////////////////////////////////////// 186 /////////////////////////////////////////// 187 // Iceland Basalt 0029.PP.0035 sample // 187 // Iceland Basalt 0029.PP.0035 sample // 188 /////////////////////////////////////////// 188 /////////////////////////////////////////// 189 189 190 elements.push_back("Si"); fractionMass.push 190 elements.push_back("Si"); fractionMass.push_back(0.2313); 191 elements.push_back("Ti"); fractionMass.push 191 elements.push_back("Ti"); fractionMass.push_back(0.0127); 192 elements.push_back("Al"); fractionMass.push 192 elements.push_back("Al"); fractionMass.push_back(0.0702); 193 elements.push_back("Fe"); fractionMass.push 193 elements.push_back("Fe"); fractionMass.push_back(0.1134); 194 elements.push_back("Mn"); fractionMass.push 194 elements.push_back("Mn"); fractionMass.push_back(0.0019); 195 elements.push_back("Mg"); fractionMass.push 195 elements.push_back("Mg"); fractionMass.push_back(0.0349); 196 elements.push_back("Ca"); fractionMass.push 196 elements.push_back("Ca"); fractionMass.push_back(0.0756); 197 elements.push_back("Na"); fractionMass.push 197 elements.push_back("Na"); fractionMass.push_back(0.0892); 198 elements.push_back("K"); fractionMass.push 198 elements.push_back("K"); fractionMass.push_back(0.0032); 199 elements.push_back("P"); fractionMass.push 199 elements.push_back("P"); fractionMass.push_back(0.00096); 200 elements.push_back("S"); fractionMass.push 200 elements.push_back("S"); fractionMass.push_back(0.0004); 201 elements.push_back("O"); fractionMass.push 201 elements.push_back("O"); fractionMass.push_back(0.36624); 202 202 203 // Define Icelandic Basalt main components 203 // Define Icelandic Basalt main components 0029.PP.0035 sample 204 density = 3*g/cm3; 204 density = 3*g/cm3; 205 G4Material* icelandicBasaltMain= nistMan->Co 205 G4Material* icelandicBasaltMain= nistMan->ConstructNewMaterial("IceBasaltMain",elements, fractionMass, density); 206 elements.clear(); 206 elements.clear(); 207 fractionMass.clear(); 207 fractionMass.clear(); 208 208 209 // Define Icelandic Basalt traces components 209 // Define Icelandic Basalt traces components 0029.PP.0035 sample 210 density = 3*g/cm3; 210 density = 3*g/cm3; 211 211 212 elements.push_back("Ba"); natoms.push_back( 212 elements.push_back("Ba"); natoms.push_back(756); 213 elements.push_back("Ce"); natoms.push_back( 213 elements.push_back("Ce"); natoms.push_back(328); 214 elements.push_back("Co"); natoms.push_back( 214 elements.push_back("Co"); natoms.push_back(643); 215 elements.push_back("Cr"); natoms.push_back( 215 elements.push_back("Cr"); natoms.push_back(1000); 216 elements.push_back("Cu"); natoms.push_back( 216 elements.push_back("Cu"); natoms.push_back(1396); 217 elements.push_back("Ga"); natoms.push_back( 217 elements.push_back("Ga"); natoms.push_back(190); 218 elements.push_back("La"); natoms.push_back( 218 elements.push_back("La"); natoms.push_back(103); 219 elements.push_back("Mo"); natoms.push_back( 219 elements.push_back("Mo"); natoms.push_back(9); 220 elements.push_back("Nb"); natoms.push_back( 220 elements.push_back("Nb"); natoms.push_back(114); 221 elements.push_back("Nd"); natoms.push_back( 221 elements.push_back("Nd"); natoms.push_back(104); 222 elements.push_back("Ni"); natoms.push_back( 222 elements.push_back("Ni"); natoms.push_back(544); 223 elements.push_back("Rb"); natoms.push_back( 223 elements.push_back("Rb"); natoms.push_back(78); 224 elements.push_back("S"); natoms.push_back( 224 elements.push_back("S"); natoms.push_back(5550); 225 elements.push_back("Sc"); natoms.push_back( 225 elements.push_back("Sc"); natoms.push_back(531); 226 elements.push_back("Sr"); natoms.push_back( 226 elements.push_back("Sr"); natoms.push_back(1353); 227 elements.push_back("U"); natoms.push_back( 227 elements.push_back("U"); natoms.push_back(22); 228 elements.push_back("V"); natoms.push_back( 228 elements.push_back("V"); natoms.push_back(4533); 229 elements.push_back("Y"); natoms.push_back( 229 elements.push_back("Y"); natoms.push_back(408); 230 elements.push_back("Zn"); natoms.push_back( 230 elements.push_back("Zn"); natoms.push_back(1259); 231 elements.push_back("Zr"); natoms.push_back( 231 elements.push_back("Zr"); natoms.push_back(1274); 232 232 233 G4Material* icelandicBasaltTraces= nistMan-> 233 G4Material* icelandicBasaltTraces= nistMan->ConstructNewMaterial("IceBasaltTraces", elements, natoms, density); 234 234 235 elements.clear(); 235 elements.clear(); 236 natoms.clear(); 236 natoms.clear(); 237 237 238 // Define Icelandic Basalt complete material 238 // Define Icelandic Basalt complete material 0029.PP.0035 sample 239 density = 3*g/cm3; 239 density = 3*g/cm3; 240 icelandicBasalt= new G4Material("IceBasalt", 240 icelandicBasalt= new G4Material("IceBasalt", density, 2); 241 icelandicBasalt->AddMaterial(icelandicBasalt 241 icelandicBasalt->AddMaterial(icelandicBasaltMain, 0.9978); 242 icelandicBasalt->AddMaterial(icelandicBasalt 242 icelandicBasalt->AddMaterial(icelandicBasaltTraces, 0.0022); 243 243 244 244 245 /////////////////////// 245 /////////////////////// 246 // Dolorite // 246 // Dolorite // 247 /////////////////////// 247 /////////////////////// 248 248 249 // Define dolorite main components 0055.PP.0 249 // Define dolorite main components 0055.PP.0038 sample 250 250 251 density = 3*g/cm3; 251 density = 3*g/cm3; 252 252 253 elements.push_back("Fe"); fractionMass.pu 253 elements.push_back("Fe"); fractionMass.push_back(0.1750); 254 elements.push_back("Ti"); fractionMass.pu 254 elements.push_back("Ti"); fractionMass.push_back(0.0082); 255 elements.push_back("Ca"); fractionMass.pu 255 elements.push_back("Ca"); fractionMass.push_back(0.0753); 256 elements.push_back("Si"); fractionMass.pu 256 elements.push_back("Si"); fractionMass.push_back(0.2188); 257 elements.push_back("Al"); fractionMass.pu 257 elements.push_back("Al"); fractionMass.push_back(0.0676); 258 elements.push_back("Mg"); fractionMass.pu 258 elements.push_back("Mg"); fractionMass.push_back(0.0008); 259 elements.push_back("O"); fractionMass.pu 259 elements.push_back("O"); fractionMass.push_back(0.4377); 260 elements.push_back("Mn"); fractionMass.pu 260 elements.push_back("Mn"); fractionMass.push_back(0.0015); 261 elements.push_back("Na"); fractionMass.pu 261 elements.push_back("Na"); fractionMass.push_back(0.0134); 262 elements.push_back("K"); fractionMass.pu 262 elements.push_back("K"); fractionMass.push_back(0.0011); 263 elements.push_back("P"); fractionMass.pu 263 elements.push_back("P"); fractionMass.push_back(0.0006); 264 264 265 265 266 G4Material* doloriteMain = nistMan->Construc 266 G4Material* doloriteMain = nistMan->ConstructNewMaterial("Dolorite", elements, fractionMass, density); 267 267 268 elements.clear(); 268 elements.clear(); 269 fractionMass.clear(); 269 fractionMass.clear(); 270 270 271 // define traces in dolorite 0055.PP.0038 sa 271 // define traces in dolorite 0055.PP.0038 sample 272 272 273 density = 3*g/cm3; 273 density = 3*g/cm3; 274 274 275 elements.push_back("Nb"); natoms.push_bac 275 elements.push_back("Nb"); natoms.push_back(5); 276 elements.push_back("Zr"); natoms.push_bac 276 elements.push_back("Zr"); natoms.push_back(91); 277 elements.push_back("Y"); natoms.push_bac 277 elements.push_back("Y"); natoms.push_back(29); 278 elements.push_back("Sr"); natoms.push_bac 278 elements.push_back("Sr"); natoms.push_back(140); 279 elements.push_back("Rb"); natoms.push_bac 279 elements.push_back("Rb"); natoms.push_back(3); 280 elements.push_back("Ga"); natoms.push_bac 280 elements.push_back("Ga"); natoms.push_back(20); 281 elements.push_back("Zn"); natoms.push_bac 281 elements.push_back("Zn"); natoms.push_back(99); 282 elements.push_back("Ni"); natoms.push_bac 282 elements.push_back("Ni"); natoms.push_back(77); 283 elements.push_back("Sc"); natoms.push_bac 283 elements.push_back("Sc"); natoms.push_back(32); 284 elements.push_back("V"); natoms.push_bac 284 elements.push_back("V"); natoms.push_back(314); 285 elements.push_back("Cr"); natoms.push_bac 285 elements.push_back("Cr"); natoms.push_back(130); 286 elements.push_back("Co"); natoms.push_bac 286 elements.push_back("Co"); natoms.push_back(56); 287 elements.push_back("Cu"); natoms.push_bac 287 elements.push_back("Cu"); natoms.push_back(119); 288 elements.push_back("Ba"); natoms.push_bac 288 elements.push_back("Ba"); natoms.push_back(38); 289 elements.push_back("Ce"); natoms.push_bac 289 elements.push_back("Ce"); natoms.push_back(15); 290 elements.push_back("Nd"); natoms.push_bac 290 elements.push_back("Nd"); natoms.push_back(9); 291 291 292 G4Material* tracesOfDolorite= nistMan->Const 292 G4Material* tracesOfDolorite= nistMan->ConstructNewMaterial("TracesOfDolorite", elements, natoms, density); 293 293 294 elements.clear(); 294 elements.clear(); 295 natoms.clear(); 295 natoms.clear(); 296 296 297 // define dolorite (full) -- 0055.PP.0038 s 297 // define dolorite (full) -- 0055.PP.0038 sample 298 298 299 density = 3*g/cm3; 299 density = 3*g/cm3; 300 dolorite = new G4Material("Dolorite", densit 300 dolorite = new G4Material("Dolorite", density, 2); 301 dolorite->AddMaterial(tracesOfDolorite, 0.00 301 dolorite->AddMaterial(tracesOfDolorite, 0.0027842352); 302 dolorite->AddMaterial(doloriteMain, 0.997215 302 dolorite->AddMaterial(doloriteMain, 0.9972157648); 303 303 304 /////////////////////// 304 /////////////////////// 305 // Mars1 // 305 // Mars1 // 306 /////////////////////// 306 /////////////////////// 307 307 308 308 309 // define mars1 -- 01.PP.0030 sample 309 // define mars1 -- 01.PP.0030 sample 310 310 311 density = 3*g/cm3; 311 density = 3*g/cm3; 312 312 313 elements.push_back("Fe"); fractionMass.pu 313 elements.push_back("Fe"); fractionMass.push_back(0.100916); 314 elements.push_back("Ti"); fractionMass.pu 314 elements.push_back("Ti"); fractionMass.push_back(0.0186804); 315 elements.push_back("Ca"); fractionMass.pu 315 elements.push_back("Ca"); fractionMass.push_back(0.0404091); 316 elements.push_back("Si"); fractionMass.pu 316 elements.push_back("Si"); fractionMass.push_back(0.196378); 317 elements.push_back("Al"); fractionMass.pu 317 elements.push_back("Al"); fractionMass.push_back(0.103282); 318 elements.push_back("Mg"); fractionMass.pu 318 elements.push_back("Mg"); fractionMass.push_back(0.0241622); 319 elements.push_back("Mn"); fractionMass.pu 319 elements.push_back("Mn"); fractionMass.push_back(0.00184331); 320 elements.push_back("Na"); fractionMass.pu 320 elements.push_back("Na"); fractionMass.push_back(0.0177908); 321 elements.push_back("K"); fractionMass.pu 321 elements.push_back("K"); fractionMass.push_back(0.00574498); 322 elements.push_back("P"); fractionMass.pu 322 elements.push_back("P"); fractionMass.push_back(0.00280169); 323 elements.push_back("O"); fractionMass.pu 323 elements.push_back("O"); fractionMass.push_back(0.48799152); 324 324 325 325 326 G4Material* mars1Main = nistMan->ConstructNe 326 G4Material* mars1Main = nistMan->ConstructNewMaterial("Mars1 Main components", elements, fractionMass, density); 327 327 328 elements.clear(); 328 elements.clear(); 329 fractionMass.clear(); 329 fractionMass.clear(); 330 330 331 elements.push_back("Nb"); natoms.push_bac 331 elements.push_back("Nb"); natoms.push_back(55); 332 elements.push_back("Zr"); natoms.push_bac 332 elements.push_back("Zr"); natoms.push_back(433); 333 elements.push_back("Y"); natoms.push_bac 333 elements.push_back("Y"); natoms.push_back(58); 334 elements.push_back("Sr"); natoms.push_bac 334 elements.push_back("Sr"); natoms.push_back(968); 335 elements.push_back("Rb"); natoms.push_bac 335 elements.push_back("Rb"); natoms.push_back(16); 336 elements.push_back("Ga"); natoms.push_bac 336 elements.push_back("Ga"); natoms.push_back(24); 337 elements.push_back("Zn"); natoms.push_bac 337 elements.push_back("Zn"); natoms.push_back(109); 338 elements.push_back("Ni"); natoms.push_bac 338 elements.push_back("Ni"); natoms.push_back(70); 339 elements.push_back("Sc"); natoms.push_bac 339 elements.push_back("Sc"); natoms.push_back(21); 340 elements.push_back("V"); natoms.push_bac 340 elements.push_back("V"); natoms.push_back(134); 341 elements.push_back("Cr"); natoms.push_bac 341 elements.push_back("Cr"); natoms.push_back(141); 342 elements.push_back("Co"); natoms.push_bac 342 elements.push_back("Co"); natoms.push_back(30); 343 elements.push_back("Cu"); natoms.push_bac 343 elements.push_back("Cu"); natoms.push_back(19); 344 elements.push_back("Ba"); natoms.push_bac 344 elements.push_back("Ba"); natoms.push_back(580); 345 elements.push_back("Pb"); natoms.push_bac 345 elements.push_back("Pb"); natoms.push_back(4); 346 elements.push_back("S"); natoms.push_bac 346 elements.push_back("S"); natoms.push_back(444); 347 elements.push_back("U"); natoms.push_bac 347 elements.push_back("U"); natoms.push_back(2); 348 348 349 density = 3*g/cm3; 349 density = 3*g/cm3; 350 G4Material* tracesOfMars1 = nistMan->Constru 350 G4Material* tracesOfMars1 = nistMan->ConstructNewMaterial("TracesOfMars1", elements, natoms, density); 351 351 352 elements.clear(); 352 elements.clear(); 353 natoms.clear(); 353 natoms.clear(); 354 354 355 density = 3*g/cm3; 355 density = 3*g/cm3; 356 mars1 = new G4Material("Mars1", density, 2); 356 mars1 = new G4Material("Mars1", density, 2); 357 mars1->AddMaterial(tracesOfMars1, 0.00449631 357 mars1->AddMaterial(tracesOfMars1, 0.0044963163); 358 mars1->AddMaterial(mars1Main, 0.9955036837); 358 mars1->AddMaterial(mars1Main, 0.9955036837); 359 359 360 ///////////////////////////////// 360 ///////////////////////////////// 361 // Hawaiian -- WD coposition // 361 // Hawaiian -- WD coposition // 362 ///////////////////////////////// 362 ///////////////////////////////// 363 363 364 density = 3*g/cm3; 364 density = 3*g/cm3; 365 365 366 elements.push_back("Fe"); fractionMass.pu 366 elements.push_back("Fe"); fractionMass.push_back(1.1819860E-01); 367 elements.push_back("Ti"); fractionMass.pu 367 elements.push_back("Ti"); fractionMass.push_back(2.2781000E-02); 368 elements.push_back("Ca"); fractionMass.pu 368 elements.push_back("Ca"); fractionMass.push_back(4.5026100E-02); 369 elements.push_back("Si"); fractionMass.pu 369 elements.push_back("Si"); fractionMass.push_back(2.0518860E-01); 370 elements.push_back("Al"); fractionMass.pu 370 elements.push_back("Al"); fractionMass.push_back(1.3285430E-01); 371 elements.push_back("Mg"); fractionMass.pu 371 elements.push_back("Mg"); fractionMass.push_back(2.4120000E-03); 372 elements.push_back("Na"); fractionMass.pu 372 elements.push_back("Na"); fractionMass.push_back(2.2257000E-02); 373 elements.push_back("K"); fractionMass.pu 373 elements.push_back("K"); fractionMass.push_back(4.9812000E-03); 374 elements.push_back("O"); fractionMass.pu 374 elements.push_back("O"); fractionMass.push_back(4.4630120E-01); 375 375 376 hawaiianWD = nistMan->ConstructNewMaterial(" 376 hawaiianWD = nistMan->ConstructNewMaterial("HawaiianWD", elements, fractionMass, density); 377 377 378 elements.clear(); 378 elements.clear(); 379 fractionMass.clear(); 379 fractionMass.clear(); 380 380 381 ////////////////////////////////// 381 ////////////////////////////////// 382 // Hawaiian -- RF composition // 382 // Hawaiian -- RF composition // 383 ////////////////////////////////// 383 ////////////////////////////////// 384 384 385 density = 3*g/cm3; 385 density = 3*g/cm3; 386 386 387 387 388 elements.push_back("Fe"); fractionMass.pu 388 elements.push_back("Fe"); fractionMass.push_back(1.1120460E-01); 389 elements.push_back("Ti"); fractionMass.pu 389 elements.push_back("Ti"); fractionMass.push_back(2.1582000E-02); 390 elements.push_back("Ca"); fractionMass.pu 390 elements.push_back("Ca"); fractionMass.push_back(4.3596700E-02); 391 elements.push_back("Si"); fractionMass.pu 391 elements.push_back("Si"); fractionMass.push_back(2.1313440E-01); 392 elements.push_back("Al"); fractionMass.pu 392 elements.push_back("Al"); fractionMass.push_back(1.0374280E-01); 393 elements.push_back("Mg"); fractionMass.pu 393 elements.push_back("Mg"); fractionMass.push_back(1.9296000E-02); 394 elements.push_back("Na"); fractionMass.pu 394 elements.push_back("Na"); fractionMass.push_back(2.8192200E-02); 395 elements.push_back("K"); fractionMass.pu 395 elements.push_back("K"); fractionMass.push_back(5.8114000E-03); 396 elements.push_back("P"); fractionMass.pu 396 elements.push_back("P"); fractionMass.push_back(4.8004000E-03); 397 elements.push_back("Mn"); fractionMass.pu 397 elements.push_back("Mn"); fractionMass.push_back(2.3235000E-03); 398 elements.push_back("O"); fractionMass.pu 398 elements.push_back("O"); fractionMass.push_back(4.4531600E-01); 399 399 400 hawaiianRF = nistMan->ConstructNewMaterial(" 400 hawaiianRF = nistMan->ConstructNewMaterial("HawaiianRF", elements, fractionMass, density); 401 401 402 elements.clear(); 402 elements.clear(); 403 fractionMass.clear(); 403 fractionMass.clear(); 404 404 405 ////////////////////////////////// 405 ////////////////////////////////// 406 // Icelandic -- WD composition // 406 // Icelandic -- WD composition // 407 ////////////////////////////////// 407 ////////////////////////////////// 408 408 409 density = 3*g/cm3; 409 density = 3*g/cm3; 410 410 411 411 412 elements.push_back("Si"); fractionMass.pu 412 elements.push_back("Si"); fractionMass.push_back(2.2949340E-01); 413 elements.push_back("Ti"); fractionMass.pu 413 elements.push_back("Ti"); fractionMass.push_back(1.1990000E-02); 414 elements.push_back("Al"); fractionMass.pu 414 elements.push_back("Al"); fractionMass.push_back(7.0396900E-02); 415 elements.push_back("Fe"); fractionMass.pu 415 elements.push_back("Fe"); fractionMass.push_back(1.1330280E-01); 416 elements.push_back("Mg"); fractionMass.pu 416 elements.push_back("Mg"); fractionMass.push_back(3.4974000E-02); 417 elements.push_back("Ca"); fractionMass.pu 417 elements.push_back("Ca"); fractionMass.push_back(7.5758200E-02); 418 elements.push_back("Na"); fractionMass.pu 418 elements.push_back("Na"); fractionMass.push_back(1.8547500E-02); 419 elements.push_back("K"); fractionMass.pu 419 elements.push_back("K"); fractionMass.push_back(3.3208000E-03); 420 elements.push_back("O"); fractionMass.pu 420 elements.push_back("O"); fractionMass.push_back(4.4121640E-01); 421 421 422 icelandicWD = nistMan->ConstructNewMaterial( 422 icelandicWD = nistMan->ConstructNewMaterial("IcelandicWD", elements, fractionMass, density); 423 423 424 elements.clear(); 424 elements.clear(); 425 fractionMass.clear(); 425 fractionMass.clear(); 426 426 427 427 428 ////////////////////////////////// 428 ////////////////////////////////// 429 // Icelandic -- RF composition // 429 // Icelandic -- RF composition // 430 ////////////////////////////////// 430 ////////////////////////////////// 431 431 432 density = 3*g/cm3; 432 density = 3*g/cm3; 433 433 434 434 435 elements.push_back("Si"); fractionMass.pu 435 elements.push_back("Si"); fractionMass.push_back(2.4304800E-01); 436 elements.push_back("Ti"); fractionMass.pu 436 elements.push_back("Ti"); fractionMass.push_back(1.3788500E-02); 437 elements.push_back("Al"); fractionMass.pu 437 elements.push_back("Al"); fractionMass.push_back(6.5103900E-02); 438 elements.push_back("Fe"); fractionMass.pu 438 elements.push_back("Fe"); fractionMass.push_back(1.1819860E-01); 439 elements.push_back("Mn"); fractionMass.pu 439 elements.push_back("Mn"); fractionMass.push_back(2.3235000E-03); 440 elements.push_back("Mg"); fractionMass.pu 440 elements.push_back("Mg"); fractionMass.push_back(2.3517000E-02); 441 elements.push_back("Ca"); fractionMass.pu 441 elements.push_back("Ca"); fractionMass.push_back(8.2190500E-02); 442 elements.push_back("K"); fractionMass.pu 442 elements.push_back("K"); fractionMass.push_back(3.3208000E-03); 443 elements.push_back("P"); fractionMass.pu 443 elements.push_back("P"); fractionMass.push_back(1.3092000E-03); 444 elements.push_back("O"); fractionMass.pu 444 elements.push_back("O"); fractionMass.push_back(4.4620000E-01); 445 445 446 icelandicRF = nistMan->ConstructNewMaterial( 446 icelandicRF = nistMan->ConstructNewMaterial("IcelandicRF", elements, fractionMass, density); 447 447 448 elements.clear(); 448 elements.clear(); 449 fractionMass.clear(); 449 fractionMass.clear(); 450 450 451 ////////////////////////////////// 451 ////////////////////////////////// 452 // Gabbro -- WD composition // 452 // Gabbro -- WD composition // 453 ////////////////////////////////// 453 ////////////////////////////////// 454 454 455 density = 3*g/cm3; 455 density = 3*g/cm3; 456 456 457 elements.push_back("Si"); fractionMass.pu 457 elements.push_back("Si"); fractionMass.push_back(1.8696000E-01); 458 elements.push_back("Ti"); fractionMass.pu 458 elements.push_back("Ti"); fractionMass.push_back(2.3380500E-02); 459 elements.push_back("Al"); fractionMass.pu 459 elements.push_back("Al"); fractionMass.push_back(4.6049100E-02); 460 elements.push_back("Fe"); fractionMass.pu 460 elements.push_back("Fe"); fractionMass.push_back(1.2239500E-01); 461 elements.push_back("Mg"); fractionMass.pu 461 elements.push_back("Mg"); fractionMass.push_back(8.3817000E-02); 462 elements.push_back("Ca"); fractionMass.pu 462 elements.push_back("Ca"); fractionMass.push_back(1.0720500E-01); 463 elements.push_back("Na"); fractionMass.pu 463 elements.push_back("Na"); fractionMass.push_back(5.9352000E-03); 464 elements.push_back("K"); fractionMass.pu 464 elements.push_back("K"); fractionMass.push_back(1.6604000E-03); 465 elements.push_back("O"); fractionMass.pu 465 elements.push_back("O"); fractionMass.push_back(4.2259780E-01); 466 466 467 gabbroWD = nistMan->ConstructNewMaterial("Ga 467 gabbroWD = nistMan->ConstructNewMaterial("GabbroWD", elements, fractionMass, density); 468 468 469 elements.clear(); 469 elements.clear(); 470 fractionMass.clear(); 470 fractionMass.clear(); 471 471 472 ////////////////////////////////// 472 ////////////////////////////////// 473 // Gabbro -- RF composition // 473 // Gabbro -- RF composition // 474 ////////////////////////////////// 474 ////////////////////////////////// 475 475 476 density = 3*g/cm3; 476 density = 3*g/cm3; 477 477 478 478 479 elements.push_back("Si"); fractionMass.pu 479 elements.push_back("Si"); fractionMass.push_back(1.6826400E-01); 480 elements.push_back("Ti"); fractionMass.pu 480 elements.push_back("Ti"); fractionMass.push_back(2.2781000E-02); 481 elements.push_back("Al"); fractionMass.pu 481 elements.push_back("Al"); fractionMass.push_back(5.8223000E-02); 482 elements.push_back("Fe"); fractionMass.pu 482 elements.push_back("Fe"); fractionMass.push_back(1.2729080E-01); 483 elements.push_back("Mn"); fractionMass.pu 483 elements.push_back("Mn"); fractionMass.push_back(1.5490000E-03); 484 elements.push_back("Mg"); fractionMass.pu 484 elements.push_back("Mg"); fractionMass.push_back(8.3817000E-02); 485 elements.push_back("Ca"); fractionMass.pu 485 elements.push_back("Ca"); fractionMass.push_back(1.1721080E-01); 486 elements.push_back("Na"); fractionMass.pu 486 elements.push_back("Na"); fractionMass.push_back(0.0000000E+00); 487 elements.push_back("K"); fractionMass.pu 487 elements.push_back("K"); fractionMass.push_back(1.6604000E-03); 488 elements.push_back("P"); fractionMass.pu 488 elements.push_back("P"); fractionMass.push_back(1.7456000E-03); 489 elements.push_back("O"); fractionMass.pu 489 elements.push_back("O"); fractionMass.push_back(4.1845840E-01); 490 490 491 gabbroRF = nistMan->ConstructNewMaterial("Ga 491 gabbroRF = nistMan->ConstructNewMaterial("GabbroRF", elements, fractionMass, density); 492 492 493 elements.clear(); 493 elements.clear(); 494 fractionMass.clear(); 494 fractionMass.clear(); 495 495 496 496 497 /////////////////////// 497 /////////////////////// 498 // Anorthosite // 498 // Anorthosite // 499 /////////////////////// 499 /////////////////////// 500 500 501 501 502 density = 2.8*g/cm3; 502 density = 2.8*g/cm3; 503 503 504 elements.push_back("Fe"); fractionMass.pu 504 elements.push_back("Fe"); fractionMass.push_back(0.095283); 505 elements.push_back("Mn"); fractionMass.pu 505 elements.push_back("Mn"); fractionMass.push_back(0.00137086); 506 elements.push_back("Ni"); fractionMass.pu 506 elements.push_back("Ni"); fractionMass.push_back(5e-5); 507 elements.push_back("Cu"); fractionMass.pu 507 elements.push_back("Cu"); fractionMass.push_back(5.2e-4); 508 elements.push_back("Na"); fractionMass.pu 508 elements.push_back("Na"); fractionMass.push_back(0.017635); 509 elements.push_back("Mg"); fractionMass.pu 509 elements.push_back("Mg"); fractionMass.push_back(0.0245361); 510 elements.push_back("Al"); fractionMass.pu 510 elements.push_back("Al"); fractionMass.push_back(0.0800355); 511 elements.push_back("Si"); fractionMass.pu 511 elements.push_back("Si"); fractionMass.push_back(0.232204); 512 elements.push_back("Ca"); fractionMass.pu 512 elements.push_back("Ca"); fractionMass.push_back(0.0635368); 513 elements.push_back("K"); fractionMass.pu 513 elements.push_back("K"); fractionMass.push_back(0.00464912); 514 elements.push_back("C"); fractionMass.pu 514 elements.push_back("C"); fractionMass.push_back(0.000837803); 515 elements.push_back("P"); fractionMass.pu 515 elements.push_back("P"); fractionMass.push_back(0.00176742); 516 elements.push_back("Ti"); fractionMass.pu 516 elements.push_back("Ti"); fractionMass.push_back(0.0240879); 517 elements.push_back("Cl"); fractionMass.pu 517 elements.push_back("Cl"); fractionMass.push_back(0.00014); 518 elements.push_back("Pd"); fractionMass.pu 518 elements.push_back("Pd"); fractionMass.push_back(0.00001); 519 elements.push_back("Cd"); fractionMass.pu 519 elements.push_back("Cd"); fractionMass.push_back(0.00018); 520 elements.push_back("Ag"); fractionMass.pu 520 elements.push_back("Ag"); fractionMass.push_back(0.00048); 521 elements.push_back("S"); fractionMass.pu 521 elements.push_back("S"); fractionMass.push_back(0.00144); 522 elements.push_back("V"); fractionMass.pu 522 elements.push_back("V"); fractionMass.push_back(0.00228); 523 elements.push_back("Ba"); fractionMass.pu 523 elements.push_back("Ba"); fractionMass.push_back(0.00151); 524 elements.push_back("O"); fractionMass.pu 524 elements.push_back("O"); fractionMass.push_back(0.447026); 525 525 526 anorthosite = nistMan->ConstructNewMaterial( 526 anorthosite = nistMan->ConstructNewMaterial("Anorthosite", elements, fractionMass, density); 527 527 528 elements.clear(); 528 elements.clear(); 529 fractionMass.clear(); 529 fractionMass.clear(); 530 530 531 //////////////////////////////////////// 531 //////////////////////////////////////// 532 // Gabbro 0059.PP.0048 // 532 // Gabbro 0059.PP.0048 // 533 //////////////////////////////////////// 533 //////////////////////////////////////// 534 534 535 535 536 density = 3.0*g/cm3; 536 density = 3.0*g/cm3; 537 537 538 elements.push_back("Si"); fractionMass.pu 538 elements.push_back("Si"); fractionMass.push_back(1.8284688E-01); 539 elements.push_back("Ti"); fractionMass.pu 539 elements.push_back("Ti"); fractionMass.push_back(2.2601150E-02); 540 elements.push_back("Al"); fractionMass.pu 540 elements.push_back("Al"); fractionMass.push_back(4.4831710E-02); 541 elements.push_back("Fe"); fractionMass.pu 541 elements.push_back("Fe"); fractionMass.push_back(1.2578402E-01); 542 elements.push_back("Mn"); fractionMass.pu 542 elements.push_back("Mn"); fractionMass.push_back(1.3166500E-03); 543 elements.push_back("Mg"); fractionMass.pu 543 elements.push_back("Mg"); fractionMass.push_back(8.1706500E-02); 544 elements.push_back("Ca"); fractionMass.pu 544 elements.push_back("Ca"); fractionMass.push_back(1.0506090E-01); 545 elements.push_back("Na"); fractionMass.pu 545 elements.push_back("Na"); fractionMass.push_back(5.4900600E-03); 546 elements.push_back("K"); fractionMass.pu 546 elements.push_back("K"); fractionMass.push_back(1.4943600E-03); 547 elements.push_back("P"); fractionMass.pu 547 elements.push_back("P"); fractionMass.push_back(3.4912000E-04); 548 elements.push_back("O"); fractionMass.pu 548 elements.push_back("O"); fractionMass.push_back(4.0651865E-01); 549 549 550 gabbro = nistMan->ConstructNewMaterial("Gabb 550 gabbro = nistMan->ConstructNewMaterial("Gabbro", elements, fractionMass, density); 551 551 552 elements.clear(); 552 elements.clear(); 553 fractionMass.clear(); 553 fractionMass.clear(); 554 554 555 //define gallium arsenide 555 //define gallium arsenide 556 556 557 elements.push_back("Ga"); natoms.push_ba 557 elements.push_back("Ga"); natoms.push_back(1); 558 elements.push_back("As"); natoms.push_ba 558 elements.push_back("As"); natoms.push_back(1); 559 559 560 density = 5.32 * g/cm3; 560 density = 5.32 * g/cm3; 561 GaAs = nistMan->ConstructNewMaterial("galliu 561 GaAs = nistMan->ConstructNewMaterial("gallium arsenide", elements, natoms, density); 562 562 563 elements.clear(); 563 elements.clear(); 564 natoms.clear(); 564 natoms.clear(); 565 565 566 /* 566 /* 567 // define germanium 567 // define germanium 568 568 569 density = 5.32 * g/cm3; 569 density = 5.32 * g/cm3; 570 570 571 elements.push_back("Ge"); natoms.push_ba 571 elements.push_back("Ge"); natoms.push_back(1); 572 572 573 G4cout << elements[1] <<", "<<natoms[1] <<", 573 G4cout << elements[1] <<", "<<natoms[1] <<", " << elements.size() << ", " << natoms.size() << G4endl; 574 574 575 575 576 HPGe = nistMan->ConstructNewMaterial("High P 576 HPGe = nistMan->ConstructNewMaterial("High Purity Germanium",elements, natoms, density); 577 577 578 elements.clear(); 578 elements.clear(); 579 natoms.clear(); 579 natoms.clear(); 580 */ 580 */ 581 //define scintillator 581 //define scintillator 582 582 583 elements.push_back("C"); natoms.push_bac 583 elements.push_back("C"); natoms.push_back(9); 584 elements.push_back("H"); natoms.push_bac 584 elements.push_back("H"); natoms.push_back(10); 585 585 586 density = 1.032*g/cm3; 586 density = 1.032*g/cm3; 587 Sci = nistMan->ConstructNewMaterial("Scintil 587 Sci = nistMan->ConstructNewMaterial("Scintillator", elements, natoms, density); 588 588 589 elements.clear(); 589 elements.clear(); 590 natoms.clear(); 590 natoms.clear(); 591 591 592 //define vacuum 592 //define vacuum 593 593 594 density = universe_mean_density; //fr 594 density = universe_mean_density; //from PhysicalConstants.h 595 G4double pressure = 3.e-18*pascal; 595 G4double pressure = 3.e-18*pascal; 596 G4double temperature = 2.73*kelvin; 596 G4double temperature = 2.73*kelvin; 597 Vacuum = new G4Material("Galactic", 1., 1.01 597 Vacuum = new G4Material("Galactic", 1., 1.01*g/mole, density, 598 kStateGas,temperature,pressure) 598 kStateGas,temperature,pressure); 599 599 600 elements.clear(); 600 elements.clear(); 601 natoms.clear(); 601 natoms.clear(); 602 602 603 //define basalt 603 //define basalt 604 density = 3.*g/cm3; 604 density = 3.*g/cm3; 605 605 606 elements.push_back("Fe"); fractionMass.p 606 elements.push_back("Fe"); fractionMass.push_back(0.1200); 607 elements.push_back("Ti"); fractionMass.p 607 elements.push_back("Ti"); fractionMass.push_back(0.0160); 608 elements.push_back("Ca"); fractionMass.p 608 elements.push_back("Ca"); fractionMass.push_back(0.0750); 609 elements.push_back("Si"); fractionMass.p 609 elements.push_back("Si"); fractionMass.push_back(0.2160); 610 elements.push_back("Al"); fractionMass.p 610 elements.push_back("Al"); fractionMass.push_back(0.0710); 611 elements.push_back("Mg"); fractionMass.p 611 elements.push_back("Mg"); fractionMass.push_back(0.0590); 612 elements.push_back("O"); fractionMass.p 612 elements.push_back("O"); fractionMass.push_back(0.4430); 613 613 614 basalt = nistMan->ConstructNewMaterial("Basa 614 basalt = nistMan->ConstructNewMaterial("Basalt", elements, fractionMass, density); 615 615 616 elements.clear(); 616 elements.clear(); 617 fractionMass.clear(); 617 fractionMass.clear(); 618 618 619 619 620 // define silicon 620 // define silicon 621 621 622 density = 2330*kg/m3; 622 density = 2330*kg/m3; 623 623 624 // workaround for a problem in nistMan: it d 624 // workaround for a problem in nistMan: it doesn't like material with a single element. 625 625 626 elements.push_back("Si"); natoms.push_ 626 elements.push_back("Si"); natoms.push_back(1); 627 elements.push_back("Si"); natoms.push_ 627 elements.push_back("Si"); natoms.push_back(1); 628 628 629 SiLi = nistMan->ConstructNewMaterial("SiLi", 629 SiLi = nistMan->ConstructNewMaterial("SiLi",elements, natoms, density); 630 630 631 elements.clear(); 631 elements.clear(); 632 natoms.clear(); 632 natoms.clear(); 633 633 634 634 635 // define copper 635 // define copper 636 636 637 density = 8920*kg/m3; 637 density = 8920*kg/m3; 638 638 639 // workaround for a problem in nistMan: it d 639 // workaround for a problem in nistMan: it doesn't like material with a single element. 640 elements.push_back("Cu"); natoms.push_ 640 elements.push_back("Cu"); natoms.push_back(1); 641 elements.push_back("Cu"); natoms.push_ 641 elements.push_back("Cu"); natoms.push_back(1); 642 642 643 copper = nistMan->ConstructNewMaterial("Cu", 643 copper = nistMan->ConstructNewMaterial("Cu",elements, natoms, density); 644 644 645 elements.clear(); 645 elements.clear(); 646 natoms.clear(); 646 natoms.clear(); 647 /* 647 /* 648 // define nikel 648 // define nikel 649 649 650 density = 8908*kg/m3; 650 density = 8908*kg/m3; 651 651 652 // workaround for a problem in nistMan: it d 652 // workaround for a problem in nistMan: it doesn't like material with a single element. 653 elements.push_back("Ni"); natoms.push_ 653 elements.push_back("Ni"); natoms.push_back(1); 654 elements.push_back("Ni"); natoms.push_ 654 elements.push_back("Ni"); natoms.push_back(1); 655 655 656 nickel = nistMan->ConstructNewMaterial("Nick 656 nickel = nistMan->ConstructNewMaterial("Nickel",elements, natoms, density); 657 */ 657 */ 658 elements.clear(); 658 elements.clear(); 659 natoms.clear(); 659 natoms.clear(); 660 660 661 661 662 662 663 G4cout << *(G4Material::GetMaterialTable()) 663 G4cout << *(G4Material::GetMaterialTable()) << G4endl; 664 } 664 } 665 665 666 666