33 cout <<
"Cell length: " << gpar->
mCellLength <<
" mm" << endl;
36 #ifndef _NO_STRUCTURE_GEOMETRY_
79 TGeoBBox *tower =
new TGeoBBox(cname +
"Tower",
85 #ifdef _NO_STRUCTURE_GEOMETRY_
86 TGeoVolume *
vtower =
new TGeoVolume(cname +
"Tower", tower, hcal->
GetMedium(
"PbSciMix"));
88 TGeoVolume *vtower =
new TGeoVolume(cname +
"Tower", tower, hcal->
GetMedium(
"air"));
94 TGeoBBox *leadPlate =
new TGeoBBox(cname +
"LeadPlate",
98 TGeoVolume *vleadPlate =
99 new TGeoVolume(cname +
"LeadPlate", leadPlate, hcal->
GetMedium(
"lead"));
107 TGeoRotation *rpin =
new TGeoRotation();
111 new TGeoTube(cname +
"SteelPin", 0.0, 0.1 * hcal->
mPinDiameter/2, 0.1 * length/2);
112 TGeoVolume *vsteelPin =
113 new TGeoVolume(cname +
"SteelPin", steelPin, hcal->
GetMedium(
"iron"));
115 for(
unsigned lr=0; lr<2; lr++) {
118 for(
unsigned tb=0; tb<2; tb++) {
121 vleadPlate->AddNode(vsteelPin, lr*2 + tb,
122 new TGeoCombiTrans(0.1 * x, 0.1 * y, 0.0, rpin));
129 TGeoBBox *steelPlate =
new TGeoBBox(cname +
"RearSteelPlate",
133 TGeoVolume *vsteelPlate =
134 new TGeoVolume(cname +
"RearSteelPlate", steelPlate, hcal->
GetMedium(
"iron"));
146 vtower->AddNode(vsteelPlate, 0,
new TGeoCombiTrans(0.1 * offsetX, 0.1 *offsetY,
149 vtower->AddNode(vleadPlate, pt,
new TGeoCombiTrans(0.1 * offsetX, 0.1 *offsetY,
156 TGeoBBox *sciPlate =
new TGeoBBox(cname +
"ScintillatorPlate",
160 TGeoVolume *vsciPlate =
161 new TGeoVolume(cname +
"ScintillatorPlate", sciPlate, hcal->
GetMedium(
"polystyrene"));
173 vtower->AddNode(vsciPlate, pt,
new TGeoCombiTrans(0.1 * offsetX, 0.1 *offsetY,
180 TGeoBBox *wlsPlate =
new TGeoBBox(cname +
"WlsPlate",
184 TGeoVolume *vwlsPlate =
186 new TGeoVolume(cname +
"WlsPlate", wlsPlate, hcal->
GetMedium(
"polystyrene"));
189 TGeoBBox *mylarFilm =
new TGeoBBox(
"mylarFilm",
193 TGeoVolume *vmylarFilm =
195 new TGeoVolume(cname +
"MylarFilm", mylarFilm, hcal->
GetMedium(
"kapton"));
197 TGeoBBox *steelSpacer =
new TGeoBBox(cname +
"SteelSpacer",
201 TGeoVolume *vsteelSpacer =
203 new TGeoVolume(cname +
"SteelSpacer", steelSpacer, hcal->
GetMedium(
"iron"));
210 vtower->AddNode(vwlsPlate, 0,
new TGeoCombiTrans(0.1 * offsetX, 0.1 *offsetY,
213 for(
unsigned lr=0; lr<2; lr++) {
217 vtower->AddNode(vmylarFilm, lr,
new TGeoCombiTrans(0.1 * (offsetX + dx),
218 0.1 *offsetY, 0.1 * offsetZ, 0));
221 vtower->AddNode(vsteelSpacer, 0,
222 new TGeoCombiTrans(0.0,