65 G4double a, z, density, abundance, fractionmass;
66 G4double temperature, pressure;
67 G4int iz,
n, nel, ncomponents, natoms;
68 G4String name, symbol;
69 G4Isotope* U5 =
new G4Isotope( name =
"U235", iz = 92,
n = 235, a = 235.01 * g / mole );
70 G4Isotope* U8 =
new G4Isotope( name =
"U238", iz = 92,
n = 238, a = 238.03 * g / mole );
72 G4Element* U =
new G4Element( name =
"enriched Uranium", symbol =
"U", ncomponents = 2 );
73 U->AddIsotope( U5, abundance = 90. * perCent );
74 U->AddIsotope( U8, abundance = 10. * perCent );
77 G4Element*
H =
new G4Element( name =
"Hydrogen", symbol =
"H", z = 1., a );
80 G4Element*
C =
new G4Element( name =
"Carbon", symbol =
"C", z = 6., a );
83 G4Element* N =
new G4Element( name =
"Nitrogen", symbol =
"N", z = 7., a );
86 G4Element* O =
new G4Element( name =
"Oxygen", symbol =
"O", z = 8., a );
89 G4Element* Si =
new G4Element( name =
"Silicon", symbol =
"Si", z = 14., a );
91 a = 126.90447 * g / mole;
92 G4Element*
I =
new G4Element( name =
"Iodine", symbol =
"I", z = 53., a );
94 a = 132.90545 * g / mole;
95 G4Element* Cs =
new G4Element( name =
"Cesium", symbol =
"Cs", z = 55., a );
97 density = 1.848 * g / cm3;
98 a = 9.012182 * g / mole;
99 G4Material* Beryllium =
new G4Material( name =
"Beryllium", z = 4.0, a, density );
101 density = 2.70 * g / cm3;
102 a = 26.98 * g / mole;
103 G4Material* Aluminium =
new G4Material( name =
"Aluminium", z = 13., a, density );
105 density = 7.84 * g / cm3;
106 a = 55.845 * g / mole;
107 G4Material* Iron =
new G4Material( name =
"Iron", z = 26.0, a, density );
109 density = 8.96 * g / cm3;
110 a = 63.546 * g / mole;
111 G4Material* Copper =
new G4Material( name =
"Copper", z = 29.0, a, density );
113 density = 0.0001664 * g / cm3;
114 a = 4.0026 * g / mole;
115 G4Material* Hegas =
new G4Material( name =
"Hegas", z = 2.0, a, density );
117 density = 0.001879 * g / cm3;
118 G4Material* Propane =
new G4Material( name =
"Propane", density, nel = 2 );
119 Propane->AddElement(
C, natoms = 3 );
120 Propane->AddElement(
H, natoms = 8 );
122 density = 4.53 * g / cm3;
123 G4Material* Cesiumiodide =
new G4Material( name =
"Cesiumiodide", density, nel = 2 );
124 Cesiumiodide->AddElement(
I, natoms = 1 );
125 Cesiumiodide->AddElement( Cs, natoms = 1 );
127 density = 0.00085144 * g / cm3;
128 G4Material* Mdcgas =
new G4Material( name =
"Mdcgas", density, nel = 2 );
129 Mdcgas->AddMaterial( Hegas, fractionmass = 0.1173 );
130 Mdcgas->AddMaterial( Propane, fractionmass = 0.8827 );
132 density = 1.390 * g / cm3;
133 a = 39.95 * g / mole;
134 G4Material* liquidArgon =
new G4Material( name =
"liquidArgon", z = 18.0, a, density );
136 density = 11.35 * g / cm3;
137 a = 207.19 * g / mole;
138 G4Material* Lead =
new G4Material( name =
"Lead", z = 82., a, density );
140 density = 1.0 * g / cm3;
141 G4Material* Water =
new G4Material( name =
"Water", density, nel = 2 );
142 Water->AddElement(
H, natoms = 2 );
143 Water->AddElement( O, natoms = 1 );
145 density = 1.032 * g / cm3;
146 G4Material* Scintillator =
new G4Material( name =
"Scintillator", density, nel = 2 );
147 Scintillator->AddElement(
C, natoms = 9 );
148 Scintillator->AddElement(
H, natoms = 10 );
150 density = 2.200 * g / cm3;
151 G4Material* SiO2 =
new G4Material( name =
"SiO2", density, nel = 2 );
152 SiO2->AddElement( Si, natoms = 1 );
153 SiO2->AddElement( O, natoms = 2 );
155 density = 1.290 * mg / cm3;
156 G4Material* Air =
new G4Material( name =
"Air", density, nel = 2 );
157 Air->AddElement( N, fractionmass = 0.7 );
158 Air->AddElement( O, fractionmass = 0.3 );
160 density = 0.200 * g / cm3;
161 G4Material* Aerogel =
new G4Material( name =
"Aerogel", density, nel = 3 );
162 Aerogel->AddMaterial( SiO2, fractionmass = 0.625 );
163 Aerogel->AddMaterial( Water, fractionmass = 0.374 );
164 Aerogel->AddElement(
C, fractionmass = 0.001 );
166 density = 27.0 * mg / cm3;
167 pressure = 50.0 * atmosphere;
168 temperature = 325.0 * kelvin;
169 G4Material* CarbonicGas =
new G4Material( name =
"CarbonicGas", density, nel = 2,
170 kStateGas, temperature, pressure );
171 CarbonicGas->AddElement(
C, natoms = 1 );
172 CarbonicGas->AddElement( O, natoms = 2 );
174 density = 0.3 * mg / cm3;
175 pressure = 2.0 * atmosphere;
176 temperature = 500.0 * kelvin;
177 G4Material* WaterSteam =
new G4Material( name =
"WaterSteam", density, nel = 1, kStateGas,
178 temperature, pressure );
179 WaterSteam->AddMaterial( Water, fractionmass = 1 );
181 density = universe_mean_density;
182 pressure = 3.e-18 * pascal;
183 temperature = 2.73 * kelvin;
184 G4Material* Galactic =
new G4Material( name =
"Galactic", z = 1., a = 1.01 * g / mole,
185 density, kStateGas, temperature, pressure );
187 density = 1.0e-5 * g / cm3;
188 pressure = 2.e-2 * bar;
189 G4Material* Beam =
new G4Material( name =
"Beam", density, nel = 1, kStateGas,
190 STP_Temperature, pressure );
191 Beam->AddMaterial( Air, fractionmass = 1.0 );
194 G4Box* sWorld =
new G4Box(
"solidWorld", 263.5 * cm, 263.5 * cm, 287.5 * cm );
195 lWorld =
new G4LogicalVolume( sWorld, Air,
"logicalWorld", 0, 0, 0 );
197 new G4PVPlacement( 0, G4ThreeVector( 0, 0, 0 ), lWorld,
"physicWorld", 0,
false, 0 );
199 lWorld->SetVisAttributes( G4VisAttributes::Invisible );
201 if ( m_pipeSCM == 1 )
203 G4cout <<
"construct beampipe and SCM with Geant4 classes" << G4endl;
231 m_Pip->Construct( lWorld );
232 m_SCM->Construct( lWorld );
294 else if ( m_pipeSCM == 2 )
365 G4cout <<
"get world " << fWorld->GetLogicalVolume()->GetNoDaughters() << endl;
366 for (
int nd = 0; nd < fWorld->GetLogicalVolume()->GetNoDaughters(); nd++ )
368 G4cout <<
"daughter n: name :" << nd <<
" "
369 << fWorld->GetLogicalVolume()->GetDaughter( nd )->GetName() << G4endl;
380 if ( volumeName =
"Pip_SCM" )
383 fWorld = (G4VPhysicalVolume*)GDMLProcessor::GetInstance()->GetWorldVolume();
387 <<
"World volume not set properly check your setup selection criteria or GDML input!"
394 lWorld->SetVisAttributes( G4VisAttributes::Invisible );
411 logicalPip->SetVisAttributes( G4VisAttributes::Invisible );
412 logicalgoldLayer->SetVisAttributes( G4VisAttributes::Invisible );
413 logicalinnerBe->SetVisAttributes( G4VisAttributes::Invisible );
414 logicaloilLayer->SetVisAttributes( G4VisAttributes::Invisible );
415 logicalouterBe->SetVisAttributes( G4VisAttributes::Invisible );
416 logicalinnerBeSide->SetVisAttributes( G4VisAttributes::Invisible );
417 logicalinnerAl->SetVisAttributes( G4VisAttributes::Invisible );
418 logicalAlRing->SetVisAttributes( G4VisAttributes::Invisible );
419 logicalouterAl->SetVisAttributes( G4VisAttributes::Invisible );
420 logicalAgLayer->SetVisAttributes( G4VisAttributes::Invisible );
421 logicalCuLayer->SetVisAttributes( G4VisAttributes::Invisible );
422 logicalAlCover->SetVisAttributes( G4VisAttributes::Invisible );
460 logicalSCM->SetVisAttributes( G4VisAttributes::Invisible );
462 logicalinnCryo->SetVisAttributes( G4VisAttributes::Invisible );
464 logicalouterCryo->SetVisAttributes( G4VisAttributes::Invisible );
466 logicalendCryo->SetVisAttributes( G4VisAttributes::Invisible );
469 logicall1Adia->SetVisAttributes( G4VisAttributes::Invisible );
471 logicall2Adia->SetVisAttributes( G4VisAttributes::Invisible );
473 logicall3Adia->SetVisAttributes( G4VisAttributes::Invisible );
475 logicall4Adia->SetVisAttributes( G4VisAttributes::Invisible );
478 logicalinnShield->SetVisAttributes( G4VisAttributes::Invisible );
480 logicaloutShield->SetVisAttributes( G4VisAttributes::Invisible );
482 logicalendShield->SetVisAttributes( G4VisAttributes::Invisible );
486 logicall1insu->SetVisAttributes( G4VisAttributes::Invisible );
488 logicall2insu->SetVisAttributes( G4VisAttributes::Invisible );
491 logicalcoil->SetVisAttributes( G4VisAttributes::Invisible );
493 logicalendCoil->SetVisAttributes( G4VisAttributes::Invisible );
496 logicalsupp->SetVisAttributes( G4VisAttributes::Invisible );
499 logicalpipe1->SetVisAttributes( G4VisAttributes::Invisible );
501 logicalpipe2->SetVisAttributes( G4VisAttributes::Invisible );
502 logicalpipe3->SetVisAttributes( G4VisAttributes::Invisible );
504 logicaltub17->SetVisAttributes( G4VisAttributes::Invisible );
506 logicaltub19->SetVisAttributes( G4VisAttributes::Invisible );
508 logicaltub20->SetVisAttributes( G4VisAttributes::Invisible );
510 logicaltub22->SetVisAttributes( G4VisAttributes::Invisible );
512 logicaltub23->SetVisAttributes( G4VisAttributes::Invisible );
514 logicaltub25->SetVisAttributes( G4VisAttributes::Invisible );
516 logicalsub1->SetVisAttributes( G4VisAttributes::Invisible );
518 logicalsub2->SetVisAttributes( G4VisAttributes::Invisible );
521 logicalsub3->SetVisAttributes( G4VisAttributes::Invisible );
523 logicalhole1->SetVisAttributes( G4VisAttributes::Invisible );
525 logicalhole2->SetVisAttributes( G4VisAttributes::Invisible );
527 logicalhole3->SetVisAttributes( G4VisAttributes::Invisible );
529 logicalhole4->SetVisAttributes( G4VisAttributes::Invisible );
531 logicalhole5->SetVisAttributes( G4VisAttributes::Invisible );