00001 00002 // // 00003 // Header file for class InDetProjParams // 00004 // // 00005 // Description: This is our "database" of parameters for the // 00006 // inner detector surfaces". In the future we // 00007 // might wish to get this information from // 00008 // geomodel instead. // 00009 // // 00010 // // 00011 // Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) // 00012 // Initial version: February 2008 // 00013 // // 00015 00016 #ifndef INDETPROJPARAMS_H 00017 #define INDETPROJPARAMS_H 00018 00019 class InDetProjParams { 00020 public: 00021 00022 static double surfacethickness() { return 0.3; } 00023 00024 //Fixme: The pixel/sct parameters are not used at the moment, and 00025 // are simply set to some silly values! 00026 00027 static double pixel_barrel_inner_radius() { return 10; } 00028 static double pixel_barrel_outer_radius() { return 20; } 00029 static double pixel_barrel_posneg_z() { return 10; } 00030 static double pixel_endcap_surface_z() { return 100; } 00031 static double pixel_endcap_surface_length() { return 50; } 00032 static double pixel_endcap_inner_radius() { return 20; } 00033 static double pixel_endcap_outer_radius() { return 40; } 00034 static double pixel_endcap_zasr_disttobarrelcyl() { return 10; }//Not used 00035 static double pixel_endcap_zasr_squeezefact() { return 2.5; }//Not used 00036 static double pixel_data_disttosurface_epsilon() { return 0.5; } 00037 00038 static double sct_barrel_inner_radius() { return 20; } 00039 static double sct_barrel_outer_radius() { return 40; } 00040 static double sct_barrel_posneg_z() { return 20; } 00041 static double sct_endcap_surface_z() { return 200; } 00042 static double sct_endcap_surface_length() { return 100; } 00043 static double sct_endcap_inner_radius() { return 40; } 00044 static double sct_endcap_outer_radius() { return 80; } 00045 static double sct_endcap_zasr_disttobarrelcyl() { return 20; }//Not used 00046 static double sct_endcap_zasr_squeezefact() { return 2.5; }//Not used 00047 static double sct_data_disttosurface_epsilon() { return 0.5; } 00048 00049 static double trt_barrel_inner_radius() { return 540; } 00050 static double trt_barrel_outer_radius() { return 1100; } 00051 static double trt_barrel_posneg_z() { return 712.5+6; } 00052 static double trt_endcap_surface_z() { return 1778.5; } 00053 static double trt_endcap_surface_length() { return 2.0*(936.25+10); } 00054 static double trt_endcap_inner_radius() { return 643.7-4; } 00055 static double trt_endcap_outer_radius() { return 1004-9; } 00056 static double trt_endcap_zasr_disttobarrelcyl() { return 20.0; } 00057 static double trt_endcap_zasr_squeezefact() { return 2.5; } 00058 static double trt_data_disttosurface_epsilon() { return 11.0; } 00059 00060 00061 //Convenience: 00062 static double pixel_endcap_zasr_innerradius() 00063 { 00064 return pixel_barrel_outer_radius()+pixel_endcap_zasr_disttobarrelcyl(); 00065 } 00066 static double sct_endcap_zasr_innerradius() 00067 { 00068 return sct_barrel_outer_radius()+sct_endcap_zasr_disttobarrelcyl(); 00069 } 00070 static double trt_endcap_zasr_innerradius() 00071 { 00072 return trt_barrel_outer_radius()+trt_endcap_zasr_disttobarrelcyl(); 00073 } 00074 00075 static double pixel_endcap_zasr_endcapz_begin() { return pixel_endcap_surface_z()-0.5*pixel_endcap_surface_length(); } 00076 static double sct_endcap_zasr_endcapz_begin() { return sct_endcap_surface_z()-0.5*sct_endcap_surface_length(); } 00077 static double trt_endcap_zasr_endcapz_begin() { return trt_endcap_surface_z()-0.5*trt_endcap_surface_length(); } 00078 00079 private: 00080 InDetProjParams(); 00081 ~InDetProjParams(); 00082 }; 00083 00084 #endif 00085