|
||||
File indexing completed on 2025-01-30 10:30:43
0001 // 0002 // ePIC pfRICH default configuration; 0003 // 0004 0005 #include "G4SystemOfUnits.hh" 0006 0007 #ifndef _PFRICH_EPIC_DEFAULT_ 0008 #define _PFRICH_EPIC_DEFAULT_ 0009 0010 #include <share.h> 0011 #include <Materials.h> 0012 0013 // -- Primary particle(s) --------------------------------------------------------------------- 0014 // 0015 // Optional smearing of primary vertices along the beam line; applies to HEPMC3 input as well; 0016 // 10cm (proton bunch size) is a reasonable value; 0017 #define _PRIMARY_VERTEX_SIGMA_ (35*mm)//(10*cm) 0018 0019 // 0020 // All this can be overriden by '-i' cmd line switch (HEPMC3 input); also see '-s <statistics>' key; 0021 // 0022 #define _PRIMARY_PARTICLE_TYPE_ ("pi+") 0023 // Will toggle between the two types if defined; 0024 //#define _ALTERNATIVE_PARTICLE_TYPE_ ("kaon+") 0025 0026 #define _PRIMARY_PARTICLE_ETA_ (sign*2.40) 0027 //#define _PRIMARY_PARTICLE_ETA_ (sign*1.90) 0028 // If commented out: uniform phi; 0029 //#define _PRIMARY_PARTICLE_PHI_ (95*degree) 0030 //#define _PRIMARY_PARTICLE_PHI_ (45*degree) 0031 0032 #define _PRIMARY_PARTICLE_MOMENTUM_ (7.0*GeV) 0033 // -------------------------------------------------------------------------------------------- 0034 0035 // -- General --------------------------------------------------------------------------------- 0036 // 0037 // Comment out if want to run without MARCO magnetic field; 0038 #define _USE_MAGNETIC_FIELD_ "./database/MARCO_v.7.6.2.2.11_1.7T_Magnetic_Field_Map_2024_05_02_rad_coords_(mm)_(T).BMap.txt" 0039 0040 // Import other parts of ePIC geometry; 0041 //#define _IMPORT_TRACKER_GDML_FILE_ ("./gdml/tracking_only.modified.gdml") 0042 //#define _IMPORT_BEAMPIPE_GDML_FILE_ ("./gdml/ip6_brycecanyon.modified.gdml") 0043 0044 // Generate GDML output file (for material scans, etc); 0045 //#define _GENERATE_GDML_OUTPUT_ ("pfRICH.gdml") 0046 // -------------------------------------------------------------------------------------------- 0047 0048 // -- Mirrors --------------------------------------------------------------------------------- 0049 // 0050 // At the downstream (sensor plane) location; 0051 #define _CONICAL_MIRROR_DS_INNER_RADIUS_ (120.0*mm) 0052 #define _CONICAL_MIRROR_DS_OUTER_RADIUS_ (569.0*mm) 0053 // Fixed values matching a CAD model, as of 2024/04/29; 0054 #define _CONICAL_MIRROR_US_INNER_RADIUS_ ( 66.0*mm) 0055 #define _CONICAL_MIRROR_US_OUTER_RADIUS_ (623.0*mm) 0056 0057 // Comment out if want to disable the conical mirror optics in IRT; 0058 #define _USE_CONICAL_MIRROR_OPTICS_ (true) 0059 // -------------------------------------------------------------------------------------------- 0060 0061 // -- Vessel geometry ------------------------------------------------------------------------- 0062 // 0063 // FIXME: as of Fall 2023, this number is actually 650mm; however, a gap between the outer 0064 // shell and the outer conical mirror was defined in a bit optimistic fashion; need to 0065 // revisit all this before doing the TDR simulations; 0066 //#define _VESSEL_OUTER_RADIUS_ (638.0*mm) 0067 // Let it be 640mm for the time being; 638mm creates a conflict between the outer HRPPD 0068 // mirrors and the gas volume; FIXME: why?; 0069 //#define _VESSEL_OUTER_RADIUS_ (640.0*mm) 0070 #define _VESSEL_OUTER_RADIUS_ (650.0*mm) 0071 0072 // Given by the project; see e-mail from Alex Eslinger from 2023/08/16; 0073 #define _FIDUCIAL_VOLUME_LENGTH_ (491.0*mm) 0074 #define _FIDUCIAL_VOLUME_OFFSET_ (1236.0*mm + _FIDUCIAL_VOLUME_LENGTH_/2) 0075 0076 // Taken from Alex's drawing; 0077 #define _FLANGE_EPIPE_DIAMETER_ (105.3*mm) 0078 #define _FLANGE_HPIPE_DIAMETER_ ( 44.7*mm) 0079 #define _FLANGE_HPIPE_OFFSET_ (67.6*mm) 0080 0081 // Make the project people happy: vessel will be that far away from the flange 0082 // during the installation procedure; 0083 #define _FLANGE_CLEARANCE_ (5.0*mm) 0084 0085 // FIXME: all these thickness values and material definitions need to be revisited; 0086 // 0087 // 0.29" -> 1/4" as of 2024/05/01; 0088 #define _VESSEL_FRONT_SIDE_THICKNESS_ (0.25*_INCH_) 0089 // 2*10mil CF + 1/4" HC + 2*10mil CF; 0090 #define _VESSEL_INNER_WALL_THICKNESS_ (0.29*_INCH_) 0091 // 2*10mil CF + 1/2" HC + 2*10mil CF; 0092 #define _VESSEL_OUTER_WALL_THICKNESS_ (0.54*_INCH_) 0093 0094 // Some moderately optimistic number for aerogel-to-aerogel, aerogel-to-acrylic, 0095 // acrylic-to-mirror and such spacing; 0096 //#define _BUILDING_BLOCK_CLEARANCE_ (1.0*mm) 0097 // 2024/05/01: this value allows one to get a mirror length of ~402mm in a no-pyramid case, 0098 // to match Alex's CAD model; we are not fighting for mismatches between CAD and GEANT to 0099 // anything better than a couple off mm anyway; 0100 #define _BUILDING_BLOCK_CLEARANCE_ (0.3*mm) 0101 0102 // Because of the beam pipe flange; 0103 #define _HRPPD_CENTRAL_ROW_OFFSET_ (40.0*mm) 0104 0105 // Well, a fake material for now; 0106 //#define _MIRROR_MATERIAL_ (m_QuarterInch_CF_HoneyComb)//m_CarbonFiber) 0107 // 2*10mil CF + 1/4" HC + 2*10mil CF; 0108 #define _INNER_MIRROR_THICKNESS_ (1.0)//0.29*_INCH_) 0109 // 2*10mil CF + 1/2" HC + 2*10mil CF; 0110 #define _OUTER_MIRROR_THICKNESS_ (2.0)//0.54*_INCH_) 0111 0112 // Gap between tiles at the sensor plane; as of 2023/02/15, assume a "windowed grid" 0113 // support plate on the upstream sensor plane end + individual pockets with 0114 // ~1mm thick walls for each HRPPD (<10mm high?); insertion from the downstream side; 0115 //#define _HRPPD_INSTALLATION_GAP_ (1.5*mm) 0116 // 2024/04/29: ~3mm is the most one can get; keep it like this for the time being; 0117 #define _HRPPD_INSTALLATION_GAP_ (3.0*mm) 0118 #define _HRPPD_SUPPORT_GRID_BAR_HEIGHT_ (3.0*mm) 0119 #define _HRPPD_SUPPORT_GRID_BAR_WIDTH_ (12.0*mm) 0120 0121 // Can also use m_C2F6; 0122 #define _GAS_RADIATOR_ m_Nitrogen 0123 // -------------------------------------------------------------------------------------------- 0124 0125 // -- Aerogel --------------------------------------------------------------------------------- 0126 // 0127 // Azimuthal segmentation is hardcoded, see DetectorConstruction::Construct(); 0128 //#define _AEROGEL_BAND_COUNT_ (3) 0129 #define _AEROGEL_BAND_COUNT_ (4) 0130 0131 // Inner and outer radial walls are thicker; 0132 #define _AEROGEL_INNER_WALL_THICKNESS_ (1.0*mm) 0133 // No need in a thick wall here, since aluminum rings embedded in honeycomb edges will be used; 0134 #define _AEROGEL_OUTER_WALL_THICKNESS_ (1.0*mm) 0135 // All other separators are thin; 0136 #define _AEROGEL_SEPARATOR_WALL_THICKNESS_ (0.5*mm) 0137 // Introduced on 2024/04/29; 0138 #define _AEROGEL_CLEARANCE_GAP_ (0.5*mm) 0139 0140 // Up to two layers along the beam line; 0141 //#define _AEROGEL_1_ _AEROGEL_CLAS12_DENSITY_225_MG_CM3_ 0142 #define _AEROGEL_1_ _AEROGEL_BELLE_II_REFRACTIVE_INDEX_1_04_ 0143 //#define _AEROGEL_1_ _AEROGEL_BELLE_II_SMALL_REFRACTIVE_INDEX_ 0144 #define _AEROGEL_THICKNESS_1_ (2.5*cm) 0145 //#define _AEROGEL_2_ _AEROGEL_CLAS12_DENSITY_155_MG_CM3_ 0146 //#define _AEROGEL_THICKNESS_2_ (2.0*cm) 0147 0148 // Set to m_Nitrogen and something like <100um thickness, for "clean" studies only; 0149 #define _AEROGEL_SPACER_MATERIAL_ (m_Absorber) 0150 // -------------------------------------------------------------------------------------------- 0151 0152 // -- Acrylic filter -------------------------------------------------------------------------- 0153 // 0154 // If _ACRYLIC_THICKNESS_ is defined, a single layer right after the aerogel is installed; 0155 #define _ACRYLIC_THICKNESS_ (3.0*mm) 0156 // -------------------------------------------------------------------------------------------- 0157 0158 // -- Mirrors --------------------------------------------------------------------------------- 0159 // 0160 // Mirror height and width; 0161 #define _PYRAMID_MIRROR_HEIGHT_ (30.0*mm) 0162 #define _PYRAMID_MIRROR_APERTURE_WIDTH_ (_HRPPD_ACTIVE_AREA_SIZE_) 0163 // -------------------------------------------------------------------------------------------- 0164 0165 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |