- // glass layer of detector STRip
- gMC->Gsvolu("FSTR","BOX",idtmed[514],par,3);
-
- // Non-Sesitive Freon boundaries
- par[0] = xFLT*0.5;
- par[1] = 0.110*0.5;//cm
- par[2] = -1;
- gMC->Gsvolu("FNSF","BOX",idtmed[512],par,3);
- gMC->Gspos ("FNSF",0,"FSTR",0.,0.,0.,0,"ONLY");
-
- // MYlar for Internal non-sesitive boundaries
-// par[1] = 0.025;//cm
-// gMC->Gsvolu("FMYI","BOX",idtmed[510],par,3);
-// gMC->Gspos ("FMYI",0,"FNSF",0.,0.,0.,0,"MANY");
-
- // MYlar eXternal layers
- par[1] = 0.035*0.5;//cm
- ycoor = -yPad*0.5+par[1];
- gMC->Gsvolu("FMYX","BOX",idtmed[510],par,3);
- gMC->Gspos ("FMYX",1,"FSTR",0.,ycoor,0.,0,"ONLY");
- gMC->Gspos ("FMYX",2,"FSTR",0.,-ycoor,0.,0,"ONLY");
- ycoor += par[1];
-
- // GRaphyte Layers
- par[1] = 0.003*0.5;
- ycoor += par[1];
- gMC->Gsvolu("FGRL","BOX",idtmed[502],par,3);
- gMC->Gspos ("FGRL",1,"FSTR",0.,ycoor,0.,0,"ONLY");
- gMC->Gspos ("FGRL",2,"FSTR",0.,-ycoor,0.,0,"ONLY");
-
- // freon sensitive layer (Chlorine-Fluorine-Carbon)
- par[0] = xFST*0.5;
- par[1] = 0.110*0.5;
- par[2] = zSenStrip*0.5;
- gMC->Gsvolu("FCFC","BOX",idtmed[513],par,3);
- gMC->Gspos ("FCFC",0,"FNSF",0.,0.,0.,0,"ONLY");
+// new description for strip volume
+// -- all constants are expressed in cm
+// heigth of different layers
+ const Float_t khhony = 1. ; // heigth of HONY Layer
+ const Float_t khpcby = 0.15 ; // heigth of PCB Layer
+ const Float_t khmyly = 0.035 ; // heigth of MYLAR Layer
+ const Float_t khgraphy = 0.02 ; // heigth of GRAPHITE Layer
+ const Float_t khglasseiy = 0.32; // 2.2 Ext. Glass + 1. Semi Int. Glass (mm)
+ const Float_t khsensmy = 0.11 ; // heigth of Sensitive Freon Mixture
+ const Float_t kwsensmz = 2*3.5 ; // cm
+ const Float_t klsensmx = 48*2.5; // cm
+ const Float_t kwpadz = 3.5; // cm z dimension of the FPAD volume
+ const Float_t klpadx = 2.5; // cm x dimension of the FPAD volume
+
+ // heigth of the FSTR Volume (the strip volume)
+ const Float_t khstripy = 2*(khhony+khpcby+khmyly+khgraphy+khglasseiy)+khsensmy;
+ // width of the FSTR Volume (the strip volume)
+ const Float_t kwstripz = 10.;
+ // length of the FSTR Volume (the strip volume)
+ const Float_t klstripx = 122.;
+
+ Float_t parfp[3]={klstripx*0.5,khstripy*0.5,kwstripz*0.5};
+// coordinates of the strip center in the strip reference frame; used for positioning
+// internal strip volumes
+ Float_t posfp[3]={0.,0.,0.};
+
+ // FSTR volume definition and filling this volume with non sensitive Gas Mixture
+ gMC->Gsvolu("FSTR","BOX",idtmed[512],parfp,3);
+ //-- HONY Layer definition
+// parfp[0] = -1;
+ parfp[1] = khhony*0.5;
+// parfp[2] = -1;
+ gMC->Gsvolu("FHON","BOX",idtmed[503],parfp,3);
+ // positioning 2 HONY Layers on FSTR volume
+ posfp[1]=-khstripy*0.5+parfp[1];
+ gMC->Gspos("FHON",1,"FSTR",0., posfp[1],0.,0,"ONLY");
+ gMC->Gspos("FHON",2,"FSTR",0.,-posfp[1],0.,0,"ONLY");
+
+ //-- PCB Layer definition
+ parfp[1] = khpcby*0.5;
+ gMC->Gsvolu("FPCB","BOX",idtmed[504],parfp,3);
+ // positioning 2 PCB Layers on FSTR volume
+ posfp[1]=-khstripy*0.5+khhony+parfp[1];
+ gMC->Gspos("FPCB",1,"FSTR",0., posfp[1],0.,0,"ONLY");
+ gMC->Gspos("FPCB",2,"FSTR",0.,-posfp[1],0.,0,"ONLY");
+
+ //-- MYLAR Layer definition
+ parfp[1] = khmyly*0.5;
+ gMC->Gsvolu("FMYL","BOX",idtmed[511],parfp,3);
+ // positioning 2 MYLAR Layers on FSTR volume
+ posfp[1] = -khstripy*0.5+khhony+khpcby+parfp[1];
+ gMC->Gspos("FMYL",1,"FSTR",0., posfp[1],0.,0,"ONLY");
+ gMC->Gspos("FMYL",2,"FSTR",0.,-posfp[1],0.,0,"ONLY");
+
+ //-- Graphite Layer definition
+ parfp[1] = khgraphy*0.5;
+ gMC->Gsvolu("FGRP","BOX",idtmed[502],parfp,3);
+ // positioning 2 Graphite Layers on FSTR volume
+ posfp[1] = -khstripy*0.5+khhony+khpcby+khmyly+parfp[1];
+ gMC->Gspos("FGRP",1,"FSTR",0., posfp[1],0.,0,"ONLY");
+ gMC->Gspos("FGRP",2,"FSTR",0.,-posfp[1],0.,0,"ONLY");
+
+ //-- Glass (EXT. +Semi INT.) Layer definition
+ parfp[1] = khglasseiy*0.5;
+ gMC->Gsvolu("FGLA","BOX",idtmed[514],parfp,3);
+ // positioning 2 Glass Layers on FSTR volume
+ posfp[1] = -khstripy*0.5+khhony+khpcby+khmyly+khgraphy+parfp[1];
+ gMC->Gspos("FGLA",1,"FSTR",0., posfp[1],0.,0,"ONLY");
+ gMC->Gspos("FGLA",2,"FSTR",0.,-posfp[1],0.,0,"ONLY");
+
+ //-- Sensitive Mixture Layer definition
+ parfp[0] = klsensmx*0.5;
+ parfp[1] = khsensmy*0.5;
+ parfp[2] = kwsensmz*0.5;
+ gMC->Gsvolu("FSEN","BOX",idtmed[513],parfp,3);
+ // positioning the sensitive gas Layer on FSTR volume
+ gMC->Gspos("FSEN",0,"FSTR",0.,0.,0.,0,"ONLY");
+
+ // dividing FSEN along z in knz=2 and along x in knx=48
+ gMC->Gsdvn("FSEZ","FSEN",knz,3);
+ gMC->Gsdvn("FSEX","FSEZ",knx,1);
+
+ // FPAD volume definition
+ parfp[0] = klpadx*0.5;
+ parfp[1] = khsensmy*0.5;
+ parfp[2] = kwpadz*0.5;
+ gMC->Gsvolu("FPAD","BOX",idtmed[513],parfp,3);
+ // positioning the FPAD volumes on previous divisions
+ gMC->Gspos("FPAD",0,"FSEX",0.,0.,0.,0,"ONLY");