10 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
13 const Double_t Z[
_DISK_NUM_] = { 250., 400., 600., 800., 1000., 1180.};
14 const Double_t rMin[
_DISK_NUM_] = { 35., 35., 35., 40., 46., 51.};
15 const Double_t xOffset[
_DISK_NUM_] = { 0., 0., 0., 2., 5., 7.};
25 Double_t waferThickness = 0.2;
27 for(
unsigned fb=0; fb<2; fb++) {
31 sprintf(wname,
"%sSiliconWafer", fb ?
"Bst" :
"Fst");
32 TGeoTube *wafer =
new TGeoTube(wname,
35 0.1 * waferThickness/2);
38 double z0 = Z[wf], r0 = rMin[wf],
dx = fb ? 0.0 : xOffset[wf];
41 sprintf(hname,
"%sSiliconHole%02d", fb ?
"Bst" :
"Fst", wf);
42 TGeoTube *hole =
new TGeoTube(hname,
45 0.1 * waferThickness/2 + 0.1);
48 sprintf(tname,
"%sCombi%02d", fb ?
"Bst" :
"Fst", wf);
49 TGeoCombiTrans *combi =
new TGeoCombiTrans(tname, 0.1 * dx, 0, 0, 0);
50 combi->RegisterYourself();
52 char vname[128], cname[128];
53 sprintf(vname,
"%sSiliconPlate%02d", fb ?
"Bst" :
"Fst", wf);
54 sprintf(cname,
"%sSiliconWafer-%s:%s", fb ?
"Bst" :
"Fst", hname, tname);
55 TGeoCompositeShape *comp =
new TGeoCompositeShape(vname, cname);
57 TGeoVolume *vwafer =
new TGeoVolume(vname, comp, fbst->
GetMedium(
"silicon"));
59 fbst->
GetTopVolume()->AddNode(vwafer, 0,
new TGeoCombiTrans(0.0, 0.0, 0.1 * z0, 0));
63 fbst->GetColorTable()->AddPatternMatch (
"Silicon", kYellow);
64 fbst->GetTransparencyTable()->AddPatternMatch(
"Silicon", 50);
66 fbst->FinalizeOutput();