Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:18:20

0001 //
0002 // pfRICH 2024 FTBF beam test configuration;
0003 //
0004 
0005 #include "G4SystemOfUnits.hh"
0006 
0007 #ifndef _PFRICH_FTBF_
0008 #define _PFRICH_FTBF_
0009 
0010 #include <share.h>
0011 #include <Materials.h>
0012 
0013 // -- Primary particle(s) ---------------------------------------------------------------------
0014 //
0015 #define _PRIMARY_PARTICLE_TYPE_              ("pi+")
0016 // Will toggle between the two types if defined;
0017 //#define _ALTERNATIVE_PARTICLE_TYPE_        ("kaon+")
0018 
0019 // Just something resembling FTBF primary beam (120 GeV protons);
0020 #define _XCOORD_AVERAGE_                   (0.0*mm)
0021 #define _XCOORD_SIGMA_                     (2.0*mm)
0022 
0023 #define _XSLOPE_AVERAGE_                 (0.0*mrad)
0024 #define _XSLOPE_SIGMA_                   (0.2*mrad)
0025 
0026 #define _YCOORD_AVERAGE_                   (0.0*mm)
0027 #define _YCOORD_SIGMA_                     (1.0*mm)
0028 
0029 #define _YSLOPE_AVERAGE_                 (0.0*mrad)
0030 #define _YSLOPE_SIGMA_                   (0.1*mrad)
0031 
0032 #define _PRIMARY_PARTICLE_MOMENTUM_       (7.0*GeV)
0033 // --------------------------------------------------------------------------------------------
0034 
0035 // -- Vessel geometry -------------------------------------------------------------------------
0036 //
0037 // Prefer to keep it in sync with the ePIC setup; 450mm allows one to fit photons reflected 
0038 // off the pyramid mirrors into the 2x2 HRPPD matrix acceptance; 
0039 //#define _FIDUCIAL_VOLUME_LENGTH_2x2_          (491.0*mm)
0040 #define _FIDUCIAL_VOLUME_LENGTH_2x2_          (450.0*mm)
0041 #define _FIDUCIAL_VOLUME_OFFSET_2x2_ (1236.0*mm + _FIDUCIAL_VOLUME_LENGTH_2x2_/2)
0042 
0043 // These are some random numbers for now;
0044 #define _FIDUCIAL_VOLUME_LENGTH_1x1_          (250.0*mm)
0045 #define _FIDUCIAL_VOLUME_OFFSET_1x1_ ( 800.0*mm + _FIDUCIAL_VOLUME_LENGTH_1x1_/2)
0046 
0047 // FIXME: this is getting to be really obsolete; just want to be in sync with epic.default.h; 
0048 #define _VESSEL_FRONT_SIDE_THICKNESS_  (0.29*_INCH_)
0049 
0050 // Some moderately optimistic number for aerogel-to-aerogel, aerogel-to-acrylic, 
0051 // acrylic-to-mirror and such spacing;
0052 #define _BUILDING_BLOCK_CLEARANCE_          (1.0*mm)
0053 
0054 // Gap between tiles at the sensor plane; as of 2023/02/15, assume a "windowed grid" 
0055 // support plate on the upstream sensor plane end + individual pockets with 
0056 // ~1mm thick walls for each HRPPD (<10mm high?); insertion from the downstream side;
0057 #define _HRPPD_INSTALLATION_GAP_            (0.25*mm + 10*3.25*mm)//1.5*mm)
0058 
0059 // Can also use m_C2F6; FIXME: should make sure everything works with m_Air;
0060 #define _GAS_RADIATOR_                     m_Nitrogen
0061 // --------------------------------------------------------------------------------------------
0062 
0063 // -- Aerogel ---------------------------------------------------------------------------------
0064 //
0065 #define _AEROGEL_1_ _AEROGEL_BELLE_II_REFRACTIVE_INDEX_1_04_
0066 #define _AEROGEL_THICKNESS_1_               (2.5*cm)
0067 // --------------------------------------------------------------------------------------------
0068 
0069 // -- Aspheric lens ---------------------------------------------------------------------------
0070 //
0071 #define _ZCOORD_ASPHERIC_LENS_              (-25*mm)
0072 // --------------------------------------------------------------------------------------------
0073 
0074 // -- Acrylic filter --------------------------------------------------------------------------
0075 //
0076 // If _ACRYLIC_THICKNESS_ is defined, a single layer right after the aerogel is installed; 
0077 #define _ACRYLIC_THICKNESS_                 (3.0*mm)
0078 // --------------------------------------------------------------------------------------------
0079 
0080 // -- Mirrors ---------------------------------------------------------------------------------
0081 //
0082 // See share.h, where one can enable / disable the pyramids;
0083 #define _PYRAMID_MIRROR_HEIGHT_            (50.0*mm)
0084 // --------------------------------------------------------------------------------------------
0085 
0086 #endif