11 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
14 gSystem->Load(
"libGeoBase");
15 gSystem->Load(
"libParBase");
16 gSystem->Load(
"libBase");
17 gSystem->Load(
"libPndData");
18 gSystem->Load(
"libPassive");
22 TFile*
fi =
new TFile(outfile,
"RECREATE");
24 FairGeoLoader*
geoLoad =
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
25 FairGeoInterface *
geoFace = geoLoad->getGeoInterface();
26 geoFace->setMediaFile(
"../../../geometry/media_pnd.geo");
30 FairGeoMedia *
Media = geoFace->getMedia();
31 FairGeoBuilder *
geobuild=geoLoad->getGeoBuilder();
33 FairGeoMedium *MediumSci = Media->getMedium(
"polyvinyltoluene");
34 FairGeoMedium *MediumSiPm = Media->getMedium(
"silicon");
35 FairGeoMedium *MediumCard = Media->getMedium(
"pcbmvd");
38 Int_t
nmed=geobuild->createMedium(MediumSci);
39 nmed=geobuild->createMedium(MediumSiPm);
40 nmed=geobuild->createMedium(MediumCard);
42 TGeoManager*
gGeoMan = (TGeoManager*)gROOT->FindObject(
"FAIRGeom");
43 TGeoVolume *
top =
new TGeoVolumeAssembly(
"SciT");
46 gGeoMan->SetTopVolume(top);
53 TileShape =
new TGeoBBox(
"SciTil_logicTile", 9.0, 0.25, 90.0);
56 TileVol =
new TGeoVolume(
"SciTil_SENSOR",TileShape, gGeoMan->GetMedium(
"polyvinyltoluene"));
57 TileVol->SetLineColor(kBlue);
61 TGeoVolumeAssembly* BarrelAssVol =
new TGeoVolumeAssembly(
"SciTil_barrel");
73 Double_t dphi = (180.-2.*pipehAngle)/bbnum*2.;
76 Double_t dx_bbox, dy_bbox, dz_bbox, phi_curr;
78 for(Int_t
m = 0;
m < bbnum;
m ++){
79 phi_curr = (90. - phi0 - dphi*
m)/180.*pi;
80 if(
m > bbnum/2-1){ phi_curr = (90. - phi0 - dphi*
m - 2.*pipehAngle)/180.*pi; }
81 dx_bbox = radius *
cos(phi_curr);
82 dy_bbox = radius *
sin(phi_curr);
84 TGeoRotation rot_bbox;
85 rot_bbox.RotateZ( -phi0 -
m*dphi - (TMath::Floor(2.*
m/bbnum))*(2.*pipehAngle));
86 BarrelAssVol->AddNode(TileVol,
m,
new TGeoCombiTrans(dx_bbox, dy_bbox, 0,
new TGeoRotation(rot_bbox)));
90 top->AddNode(BarrelAssVol,0,
new TGeoCombiTrans(0.,0.,32.,
new TGeoRotation()));
94 gGeoMan->SetVisLevel(5);
95 gGeoMan->CloseGeometry();
friend F32vec4 cos(const F32vec4 &a)
int create_scit_rootgeo_pSuperModule(Double_t distance=750)
friend F32vec4 sin(const F32vec4 &a)
FairGeoBuilder * geobuild
FairGeoInterface * geoFace