55
66#include " lutWrite.cc"
77
8+ // Adds foam spacers between inner layers
9+ const bool add_foam = true ;
10+ // Puts foam spacers mid-way betwen layers
11+ const bool foam_middle = false ;
12+
813void fatInit_its3 (float field = 0.5 , float rmin = 100 .) {
914 fat.SetBField (field);
1015 fat.SetdNdEtaCent (400 .);
1116
12- fat.AddLayer ((char *)" bpipe" , 1.6 , 0.0022 ); // beam pipe
13- fat.AddLayer ((char *)" vertex" , 0 , 0 ); // dummy vertex for matrix calculation
17+ Double_t x0BP = 0.0014 ; // 500 mum Be
18+ Double_t xrhoBP = 9.24e-02 ; // 500 mum Be
19+
20+ // dummy vertex for matrix calculation
21+ fat.AddLayer ((char *)" vertex" , 0.0 , 0 , 0 );
22+ fat.AddLayer ((char *)" bpipe" , 1.625 , x0BP, xrhoBP); // 500 mum Be beam pipe
1423
15- // new ideal Pixel properties?
1624 Double_t x0IB = 0.0005 ; // X/X0 of the inner barrel (first three layers)
17- Double_t x0OB = 0.0035 ; // X/X0 of the outer barrel
25+ Double_t x0OB = 0.008 ; // X/X0 of the outer barrel
1826 Double_t resRPhi = 0.0006 ; // Resolution in Rphi
1927 Double_t resZ = 0.0006 ; // Resolution in Z
2028 Double_t eff = 0.98 ; // Efficiency
2129 Double_t xrhoIB = 1.1646e-02 ; // Surface density for 50 mum thick Si
2230 Double_t xrhoOB = 1.1646e-01 ; // Surface density for 500 mum thick Si
2331
32+ const Double_t x0Foam = 0.0008 ; // X0 ~710cm for 0.6cm thick foam
33+ float foam_radius = 9.370 * x0IB; // width of a chip
34+
2435 fat.AddLayer ((char *)" ddd1" , 1.8 , x0IB, xrhoIB, resRPhi, resZ, eff);
25- fat.AddLayer ((char *)" foam1" , 1.8 + 9.370 * x0IB, 0.0008 ); // Foam spacer
36+ if (foam_middle)
37+ foam_radius = (2.4 - 1.8 ) / 2 ;
38+ if (add_foam)
39+ fat.AddLayer ((char *)" foam1" , 1.8 + foam_radius, x0Foam); // Foam spacer
2640 fat.AddLayer ((char *)" ddd2" , 2.4 , x0IB, xrhoIB, resRPhi, resZ, eff);
27- fat.AddLayer ((char *)" foam2" , 2.4 + 9.370 * x0IB, 0.0008 ); // Foam spacer
41+ if (foam_middle)
42+ foam_radius = (3.0 - 2.4 ) / 2 ;
43+ if (add_foam)
44+ fat.AddLayer ((char *)" foam2" , 2.4 + foam_radius, x0Foam); // Foam spacer
2845 fat.AddLayer ((char *)" ddd3" , 3.0 , x0IB, xrhoIB, resRPhi, resZ, eff);
29- fat.AddLayer ((char *)" foam3" , 3.0 + 9.370 * x0IB, 0.0008 ); // Foam spacer
46+ if (foam_middle)
47+ foam_radius = (19.4 - 3.0 ) / 2 ;
48+ if (add_foam)
49+ fat.AddLayer ((char *)" foam3" , 3.0 + foam_radius, x0Foam); // Foam spacer
50+ // Structural cylinder?
3051 fat.AddLayer ((char *)" ddd4" , 19.4 , x0OB, xrhoOB, resRPhi, resZ, eff);
3152 fat.AddLayer ((char *)" ddd5" , 24.7 , x0OB, xrhoOB, resRPhi, resZ, eff);
3253 fat.AddLayer ((char *)" ddd6" , 35.3 , x0OB, xrhoOB, resRPhi, resZ, eff);
@@ -48,5 +69,5 @@ void lutWrite_its3(const char *filename = "lutCovm.dat", int pdg = 211,
4869 // init FAT
4970 fatInit_its3 (field, rmin);
5071 // write
51- lutWrite (filename, pdg, field, rmin );
72+ lutWrite (filename, pdg, field);
5273}
0 commit comments