10 #define _NO_STRUCTURE_GEOMETRY_
17 #define _GAS_VOLUME_RADIAL_GAP_ 25.0
26 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
38 #ifdef _NO_STRUCTURE_GEOMETRY_
92 TGeoTube *gas =
new TGeoTube(
"TpcGas",
95 0.1 * singleHalfLength/2);
97 TGeoVolume *vgas =
new TGeoVolume(
"TpcGas", gas, tpc->
GetMedium(
"ArCF4iC4H10"));
99 for(
unsigned ud=0; ud<2; ud++) {
101 UInt_t geant[1] = {ud}, logical[3] = {0, 0, ud};
103 cout <<
"Failed to set mapping table entry!" << endl;
112 TGeoRotation *
rw =
new TGeoRotation();
114 if (ud) rw->RotateY(180);
116 tpc->
GetTopVolume()->AddNode(vgas, ud,
new TGeoCombiTrans(0.0, 0.0, 0.1 * zOffset, rw));
128 TGeoTube *ifcC =
new TGeoTube(
"TpcIfcCarbon",
131 0.1 * barrelLayerLength/2);
132 TGeoVolume *vifcC =
new TGeoVolume(
"TpcIfcCarbon", ifcC, tpc->
GetMedium(
"CarbonFiber"));
134 tpc->
GetTopVolume()->AddNode(vifcC, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
142 TGeoTube *ifcK =
new TGeoTube(
"TpcIfcKapton",
145 0.1 * barrelLayerLength/2);
146 TGeoVolume *vifcK =
new TGeoVolume(
"TpcIfcKapton", ifcK, tpc->
GetMedium(
"kapton"));
148 tpc->
GetTopVolume()->AddNode(vifcK, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
156 TGeoTube *ifcA =
new TGeoTube(
"TpcIfcAlu",
159 0.1 * barrelLayerLength/2);
160 TGeoVolume *vifcA =
new TGeoVolume(
"TpcIfcAlu", ifcA, tpc->
GetMedium(
"aluminum"));
162 tpc->
GetTopVolume()->AddNode(vifcA, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
173 TGeoTube *ofcC =
new TGeoTube(
"TpcOfcCarbon",
176 0.1 * barrelLayerLength/2);
177 TGeoVolume *vofcC =
new TGeoVolume(
"TpcOfcCarbon", ofcC, tpc->
GetMedium(
"CarbonFiber"));
179 tpc->
GetTopVolume()->AddNode(vofcC, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
186 TGeoTube *ofcK =
new TGeoTube(
"TpcOfcKapton",
189 0.1 * barrelLayerLength/2);
190 TGeoVolume *vofcK =
new TGeoVolume(
"TpcOfcKapton", ofcK, tpc->
GetMedium(
"kapton"));
192 tpc->
GetTopVolume()->AddNode(vofcK, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
199 TGeoTube *ofcA =
new TGeoTube(
"TpcOfcAlu",
202 0.1 * barrelLayerLength/2);
203 TGeoVolume *vofcA =
new TGeoVolume(
"TpcOfcAlu", ofcA, tpc->
GetMedium(
"aluminum"));
205 tpc->
GetTopVolume()->AddNode(vofcA, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
211 TGeoTube *CM =
new TGeoTube(
"TpcCentralMembrane",
215 TGeoVolume *vCM =
new TGeoVolume(
"TpcCentralMembrane", CM, tpc->
GetMedium(
"kapton"));
217 tpc->
GetTopVolume()->AddNode(vCM, 0,
new TGeoCombiTrans(0.0, 0.0, 0.0, 0));
222 TGeoTube *ecap =
new TGeoTube(
"TpcEndcap",
232 TGeoVolume *vecap =
new TGeoVolume(
"TpcEndcap", ecap, tpc->
GetMedium(
"aluminum"));
234 for(
unsigned ud=0; ud<2; ud++) {
237 tpc->
GetTopVolume()->AddNode(vecap, ud,
new TGeoCombiTrans(0.0, 0.0, 0.1 * zOffset, 0));