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