76 FairGeoMedium* mVacuum = geoMedia->getMedium(
"vacuum");
78 Fatal(
"Main",
"FairMedium vacuum not found");
79 geoBuild->createMedium(mVacuum);
82 Fatal(
"Main",
"Medium vacuum not found");
85 FairGeoMedium* mAir = geoMedia->getMedium(
"air");
87 Fatal(
"Main",
"FairMedium air not found");
88 geoBuild->createMedium(mAir);
91 Fatal(
"Main",
"Medium air not found");
94 FairGeoMedium* mCarbon = geoMedia->getMedium(
"carbon");
96 Fatal(
"Main",
"FairMedium carbon not found");
97 geoBuild->createMedium(mCarbon);
100 Fatal(
"Main",
"Medium carbon not found");
103 FairGeoMedium* mAluminium = geoMedia->getMedium(
"aluminium");
105 Fatal(
"Main",
"FairMedium aluminium not found");
106 geoBuild->createMedium(mAluminium);
109 Fatal(
"Main",
"Medium aluminium not found");
112 FairGeoMedium* mSteel = geoMedia->getMedium(
"steel");
114 Fatal(
"Main",
"FairMedium steel not found");
115 geoBuild->createMedium(mSteel);
118 Fatal(
"Main",
"Medium steel not found");
121 FairGeoMedium* mFiberGlass = geoMedia->getMedium(
"fiberglass");
123 Fatal(
"Main",
"FairMedium fiberglass not found");
124 geoBuild->createMedium(mFiberGlass);
127 Fatal(
"Main",
"Medium fiberglass not found");
130 FairGeoMedium* mSilicon = geoMedia->getMedium(
"silicon");
132 Fatal(
"Main",
"FairMedium silicon not found");
133 geoBuild->createMedium(mSilicon);
136 Fatal(
"Main",
"Medium silicon not found");
146 const TString geoDetectorName =
"VacuumPipe_section2";
147 const TString geoDetectorVersion =
"Run9";
148 const TString geoFileName = gPath +
"/geometry/" + geoDetectorName +
"_" + geoDetectorVersion +
".root";
151 FairGeoLoader* geoLoad =
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
152 FairGeoInterface* geoFace = geoLoad->getGeoInterface();
155 TString medFile = gPath +
"/geometry/media.geo";
156 geoFace->setMediaFile(medFile);
157 geoFace->readMedia();
158 FairGeoMedia* geoMedia = geoFace->getMedia();
159 FairGeoBuilder* geoBuild = geoLoad->getGeoBuilder();
166 gGeoMan->SetName(geoDetectorName +
"_geom");
204 VacuumPipe_section2->
AddNode(module1, 0, module1_transform);
205 VacuumPipe_section2->
AddNode(module2, 0, module2_transform);
206 VacuumPipe_section2->
AddNode(module3, 0, module3_transform);
207 VacuumPipe_section2->
AddNode(module4, 0, module4_transform);
209 top->
AddNode(VacuumPipe_section2, 0);
214 gGeoMan->CheckOverlaps(0.0001);
219 TFile* geoFile =
new TFile(geoFileName,
"RECREATE");
245 new TGeoTube(
TString(
"vacTube1S") +=
TString(
"_") + module_name, innerRadius1, outerRadius1, length1 * 0.5);
247 outerRadius1, innerRadius2, outerRadius2);
251 length3 * 0.5, 0.0, 360.0, 0.015 , 0, -1, 0, 0, 1);
254 innerRadius1, (length1 - targetCutZ) * 0.5);
256 0.0, innerRadius1, 0.0, innerRadius2);
258 innerRadius2, length3 * 0.5, 0.0, 360.0, 0.015 , 0, -1, 0, 0, 1);
262 vacTube3S_transf->
RotateY(angleInclined3);
273 TString expression =
"vacTube3S";
274 expression +=
TString(
"_") + module_name;
275 expression +=
":vacTube3S_transf";
276 expression +=
TString(
"_") + module_name;
277 expression +=
"-vacTube3S";
278 expression +=
TString(
"_") + module_name;
279 expression +=
":vacTube3S_transf1";
280 expression +=
TString(
"_") + module_name;
289 TString expression =
"vacTube3VacuumS";
290 expression +=
TString(
"_") + module_name;
291 expression +=
":vacTube3S_transf";
292 expression +=
TString(
"_") + module_name;
293 expression +=
"-vacTube3VacuumS";
294 expression +=
TString(
"_") + module_name;
295 expression +=
":vacTube3S_transf1";
296 expression +=
TString(
"_") + module_name;
298 vacTube3RotVacuumS->
MakeNode(expression);
318 if (vacTubeV_medium) {
323 Fatal(
"Main",
"Invalid medium for vacTubeV!");
342 vacCone2V_transf[0]->
SetTranslation(0.0, 0.0, +length1 + length2 * 0.5);
347 +length1 + length2 + length3 * 0.5);
351 vacTube1VacuumV_transf[0]->
SetTranslation(0.0, 0.0, +(length1 - targetCutZ) * 0.5);
353 vacTubeBoxV->
AddNode(vacTube1V, 0, vacTube1V_transf[0]);
354 vacTubeBoxV->
AddNode(vacCone2V, 0, vacCone2V_transf[0]);
355 vacTubeBoxV->
AddNode(vacTube3V, 0, vacTube3V_transf[0]);
357 vacTubeBoxV->
AddNode(vacTube1VacuumV, 0, vacTube1VacuumV_transf[0]);
358 vacTubeBoxV->
AddNode(vacCone2VacuumV, 0, vacCone2V_transf[0]);
359 vacTubeBoxV->
AddNode(vacTube3VacuumV, 0, vacTube3V_transf[0]);
378 length1 * 0.5, 0.0, 360.0, 0.015 , 0, -1, 0.015 , 0, 1);
381 new TGeoCtub(
TString(
"vacTube1VacuumS") +=
TString(
"_") + module_name, 0.0, innerRadius1, length1 * 0.5, 0.0,
382 360.0, 0.015 , 0, -1, 0.015 , 0, 1);
386 vacTube1S_transf->
RotateY(angleInclined1);
397 TString expression =
"vacTube1S";
398 expression +=
TString(
"_") + module_name;
399 expression +=
":vacTube1S_transf";
400 expression +=
TString(
"_") + module_name;
401 expression +=
"-vacTube1S";
402 expression +=
TString(
"_") + module_name;
403 expression +=
":vacTube1S_transf1";
404 expression +=
TString(
"_") + module_name;
413 TString expression =
"vacTube1VacuumS";
414 expression +=
TString(
"_") + module_name;
415 expression +=
":vacTube1S_transf";
416 expression +=
TString(
"_") + module_name;
417 expression +=
"-vacTube1VacuumS";
418 expression +=
TString(
"_") + module_name;
419 expression +=
":vacTube1S_transf1";
420 expression +=
TString(
"_") + module_name;
422 vacTube1RotVacuumS->
MakeNode(expression);
436 if (vacTubeV_medium) {
439 Fatal(
"Main",
"Invalid medium for vacTubeV!");
453 vacTubeBoxV->
AddNode(vacTube1V, 0, vacTube1V_transf[0]);
454 vacTubeBoxV->
AddNode(vacTube1VacuumV, 0, vacTube1V_transf[0]);
475 outerRadius1, innerRadius2, outerRadius2);
478 0.0, innerRadius1, 0.0, innerRadius2);
482 vacCone1S_transf->
RotateY(angleInclined1);
493 TString expression =
"vacCone1S";
494 expression +=
TString(
"_") + module_name;
495 expression +=
":vacCone1S_transf";
496 expression +=
TString(
"_") + module_name;
497 expression +=
"-vacCone1S";
498 expression +=
TString(
"_") + module_name;
499 expression +=
":vacCone1S_transf1";
500 expression +=
TString(
"_") + module_name;
509 TString expression =
"vacCone1VacuumS";
510 expression +=
TString(
"_") + module_name;
511 expression +=
":vacCone1S_transf";
512 expression +=
TString(
"_") + module_name;
513 expression +=
"-vacCone1VacuumS";
514 expression +=
TString(
"_") + module_name;
515 expression +=
":vacCone1S_transf1";
516 expression +=
TString(
"_") + module_name;
518 vacCone1RotVacuumS->
MakeNode(expression);
531 if (vacTubeV_medium) {
534 Fatal(
"Main",
"Invalid medium for vacCone1V!");
548 vacTubeBoxV->
AddNode(vacCone1V, 0, vacCone1V_transf[0]);
549 vacTubeBoxV->
AddNode(vacCone1VacuumV, 0, vacCone1V_transf[0]);
568 length1 * 0.5, 0.0, 360.0, 0.015 , 0, -1, 0.0 , 0, 1);
571 new TGeoCtub(
TString(
"vacTube1VacuumS") +=
TString(
"_") + module_name, 0.0, innerRadius1, length1 * 0.5, 0.0,
572 360.0, 0.015 , 0, -1, 0.0 , 0, 1);
576 vacTube1S_transf->
RotateY(angleInclined1);
587 TString expression =
"vacTube1S";
588 expression +=
TString(
"_") + module_name;
589 expression +=
":vacTube1S_transf";
590 expression +=
TString(
"_") + module_name;
591 expression +=
"-vacTube1S";
592 expression +=
TString(
"_") + module_name;
593 expression +=
":vacTube1S_transf1";
594 expression +=
TString(
"_") + module_name;
603 TString expression =
"vacTube1VacuumS";
604 expression +=
TString(
"_") + module_name;
605 expression +=
":vacTube1S_transf";
606 expression +=
TString(
"_") + module_name;
607 expression +=
"-vacTube1VacuumS";
608 expression +=
TString(
"_") + module_name;
609 expression +=
":vacTube1S_transf1";
610 expression +=
TString(
"_") + module_name;
612 vacTube1RotVacuumS->
MakeNode(expression);
626 if (vacTubeV_medium) {
629 Fatal(
"Main",
"Invalid medium for vacTubeV!");
643 vacTubeBoxV->
AddNode(vacTube1V, 0, vacTube1V_transf[0]);
644 vacTubeBoxV->
AddNode(vacTube1VacuumV, 0, vacTube1V_transf[0]);