14 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
17 gSystem->Load(
"libGeoBase");
18 gSystem->Load(
"libParBase");
19 gSystem->Load(
"libBase");
20 gSystem->Load(
"libPndData");
21 gSystem->Load(
"libPassive");
22 gSystem->Load(
"libHypGe");
26 outfile += outfileWithoutPath;
28 cout << outfile << endl;
30 TFile*
fi =
new TFile(outfile,
"RECREATE");
32 FairGeoLoader*
geoLoad =
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
33 FairGeoInterface *
geoFace = geoLoad->getGeoInterface();
34 geoFace->setMediaFile(
"../../../../geometry/media_pnd.geo");
38 FairGeoMedia *
Media = geoFace->getMedia();
39 FairGeoBuilder *
geobuild=geoLoad->getGeoBuilder();
41 FairGeoMedium *medScint = Media->getMedium(
"MDTPlastic");
42 Int_t nmedcap=geobuild->createMedium(medScint);
43 TGeoMedium *Scint =
gGeoManager->GetMedium(
"MDTPlastic");
45 FairGeoMedium *medPlexi = Media->getMedium(
"acrylicGlass");
46 nmedcap=geobuild->createMedium(medPlexi);
47 TGeoMedium *Plexi =
gGeoManager->GetMedium(
"acrylicGlass");
49 FairGeoMedium *medTargetH = Media->getMedium(
"TargetH");
50 nmedcap=geobuild->createMedium(medTargetH);
51 TGeoMedium *TargetH =
gGeoManager->GetMedium(
"TargetH");
53 FairGeoMedium *medPVC = Media->getMedium(
"PVC");
54 nmedcap=geobuild->createMedium(medPVC);
57 TGeoManager *
geom = (TGeoManager*)gROOT->FindObject(
"FAIRGeom");
58 TGeoVolume *
top =
new TGeoVolumeAssembly(
"hpGe");
59 TGeoVolume *Realtop =
new TGeoVolumeAssembly(
"Realtop");
62 geom->SetTopVolume(top);
63 TGeoRotation *SiPmRot =
new TGeoRotation(
"SiPmRot",0,0,0);
65 TGeoVolume* Dirc1 = geom->MakeBox(
"Dirc1",Plexi,100,50,2);
66 Realtop->AddNode(Dirc1,1,
new TGeoCombiTrans(0,-40,-52,SiPmRot));
68 TGeoVolume* Dirc2 = geom->MakeBox(
"Dirc2",Plexi,100,50,2.5);
69 Realtop->AddNode(Dirc2,2,
new TGeoCombiTrans(0,+40,-102.5,SiPmRot));
71 TGeoVolume* Scint1 = geom->MakeBox(
"Scint1",Scint,10,10,0.4);
72 Realtop->AddNode(Scint1,3,
new TGeoCombiTrans(0,0,-120.4,SiPmRot));
74 TGeoVolume* Scint2 = geom->MakeBox(
"Scint2",Scint,10,10,0.25);
75 Realtop->AddNode(Scint2,4,
new TGeoCombiTrans(0,0,-127.5,SiPmRot));
77 TGeoVolume* Hodo1 = geom->MakeTube(
"Hodo1",Scint,0,20,0.3);
78 Realtop->AddNode(Hodo1,5,
new TGeoCombiTrans(0,0,-132.8,SiPmRot));
80 TGeoVolume* Hodo2 = geom->MakeBox(
"Hodo2",Scint,20,20,0.2);
81 Realtop->AddNode(Hodo2,6,
new TGeoCombiTrans(0,0,-223.2,SiPmRot));
83 TGeoVolume* Scint3 = geom->MakeBox(
"Scint3",Scint,25,15,0.5);
84 Realtop->AddNode(Scint3,7,
new TGeoCombiTrans(0,0,-253.5,SiPmRot));
86 TGeoVolume* BPEndCap = geom->MakeTube(
"BPEndCap",PVC,0,5,0.05);
87 Realtop->AddNode(BPEndCap,8,
new TGeoCombiTrans(0,0,-293.05,SiPmRot));
89 TGeoVolume* TOFTarget = geom->MakeBox(
"TOFTarget",TargetH,5,5,0.3);
90 Realtop->AddNode(TOFTarget,9,
new TGeoCombiTrans(0,0,-943.3,SiPmRot));
92 top->AddNode(Realtop,0);
93 geom->CloseGeometry();
94 cout <<
"# of Nodes: " << Realtop->CountNodes(10,1) << endl;
106 return outfileWithoutPath;
TString BuildOutputNameInBeamStuff()
TGeoManager * gGeoManager
FairGeoBuilder * geobuild
FairGeoInterface * geoFace