34 #include "SensitiveDetector.hh"
35 #include "Materials.hh"
55 : fRadiatorDescription(0)
82 G4double foilGasRatio = radThickness/(radThickness+gasGap);
105 G4double totDensity = foilDensity*foilGasRatio
106 + gasDensity*(1.0-foilGasRatio);
108 G4double fractionFoil = foilDensity*foilGasRatio/totDensity;
109 G4double fractionGas = gasDensity*(1.0-foilGasRatio)/totDensity;
111 radiatorMat->AddMaterial(li, fractionFoil);
112 radiatorMat->AddMaterial(he, fractionGas);
129 =
new G4Box(
"World", worldSizeR, worldSizeR, worldSizeZ/2.);
139 G4double radThick = foilNumber*(radThickness + gasGap) - gasGap + detGap;
140 G4double radZ = startZ + 0.5*radThick;
143 =
new G4Box(
"Radiator", 1.1*absorberRadius, 1.1*absorberRadius, 0.5*radThick);
149 "Radiator", logicRadiator, physicsWorld,
false, 0 );
158 G4double windowZ = startZ + radThick + windowThick/2. + 15.0*
mm;
160 G4double gapZ = windowZ + windowThick/2. + gapThick/2. + 0.01*
mm;
162 G4double electrodeZ = gapZ + gapThick/2. + electrodeThick/2. + 0.01*
mm;
166 G4double absorberZ = electrodeZ + electrodeThick/2.
167 + absorberThickness/2. + 0.01*
mm;
170 =
new G4Box(
"Absorber", absorberRadius, absorberRadius, absorberThickness/2.);
176 "Absorber", logicAbsorber, physicsWorld,
false, 0);
189 G4cout <<
"\n The WORLD is made of "
190 << worldSizeZ/
mm <<
"mm of " << worldMaterial->
GetName();
191 G4cout <<
", the transverse size (R) of the world is "
192 << worldSizeR/
mm <<
" mm. " <<
G4endl;
193 G4cout <<
" The ABSORBER is made of "
194 << absorberThickness/
mm <<
"mm of " << absorberMaterial->
GetName();
195 G4cout <<
", the transverse size (R) is "
196 << absorberRadius/
mm <<
" mm. " <<
G4endl;
197 G4cout <<
" Z position of the (middle of the) absorber "
198 << absorberZ/
mm <<
" mm." <<
G4endl;
205 G4cout <<
"fRadiatorMat = " << radiatorMat->GetName() <<
G4endl;