25 gROOT->LoadMacro(
"$VMCWORKDIR/macro/run/bmnloadlibs.C");
70 const Double_t XSizeOfActiveVolume = ABsize;
71 const Double_t YSizeOfActiveVolume = BCsize;
72 const Double_t ZSizeOfActiveVolume = GapZsize * NofPlanes;
75 const Double_t ZLengthChamber = ZSizeOfActiveVolume + 1.0;
78 FairGeoLoader* geoLoad =
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
79 FairGeoInterface* geoFace = geoLoad->getGeoInterface();
81 TString medFile = geoPath +
"media.geo";
82 geoFace->setMediaFile(medFile);
88 const TString geoDetectorName =
"MWPC";
89 const TString geoDetectorVersion =
"RunWinter2016";
90 TString geoFileName = geoPath + geoDetectorName +
"_" + geoDetectorVersion +
".root";
94 FairGeoMedia* geoMedia = geoFace->getMedia();
95 FairGeoBuilder* geoBuild = geoLoad->getGeoBuilder();
97 FairGeoMedium* mAir = geoMedia->getMedium(
"air");
99 Fatal(
"Main",
"FairMedium air not found");
100 geoBuild->createMedium(mAir);
103 Fatal(
"Main",
"Medium air not found");
105 FairGeoMedium* mArCO27030 = geoMedia->getMedium(
"arco27030");
107 Fatal(
"Main",
"FairMedium arco27030 not found");
108 geoBuild->createMedium(mArCO27030);
111 Fatal(
"Main",
"Medium arco27030 not found");
117 gGeoMan->SetName(geoDetectorName +
"_geom");
135 TGeoPgon* MWPCContainerS =
new TGeoPgon(
"MWPCContainerS", 0, 360, NofPlanes, 2);
136 MWPCContainerS->
DefineSection(0, -ZLengthChamber / 2.0, 0.0, YSizeOfActiveVolume / 2.0 + 1.0);
137 MWPCContainerS->
DefineSection(1, ZLengthChamber / 2.0, 0.0, YSizeOfActiveVolume / 2.0 + 1.0);
141 new TGeoBBox(
"MWPCActivePlaneS", XSizeOfActiveVolume / 2.0, YSizeOfActiveVolume / 2.0, 0.1);
150 MWPCActivePlaneV->
SetMedium(pMedArCO27030);
154 for (
Int_t iPlane = 1; iPlane <= NofPlanes; ++iPlane) {
155 TGeoTranslation t0(0.0, 0.0, GapZsize * (iPlane - (NofPlanes + 1) / 2.0));
160 MWPC->
AddNode(MWPCContainerV, 0, DetPos0_trans);
161 MWPC->
AddNode(MWPCContainerV, 0, DetPos1_trans);
173 TFile* geoFile =
new TFile(geoFileName,
"RECREATE");