Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:13:34

0001 // $Id: G4_RICH.C,v 1.2 2013/10/09 01:08:17 jinhuang Exp $
0002 
0003 /*!
0004  * \file G4_RICH.C
0005  * \brief Setup the gas RICH detector as designed in ePHENIX LOI
0006  * \author Jin Huang <jhuang@bnl.gov>
0007  * \version $Revision: 1.2 $
0008  * \date $Date: 2013/10/09 01:08:17 $
0009  */
0010 
0011 using namespace std;
0012 
0013 // global macro parameters
0014 
0015 void
0016 RICHInit()
0017 {
0018 }
0019 
0020 //! ePHENIX Gas RICH. Ref to Geometry parameter defined in ePHENIXRICH::RICH_Geometry
0021 //! \param[in] N_RICH_Sector number of RICH sectors
0022 //! \param[in] min_eta minimal eta coverage
0023 //! \param[in] R_mirror_ref Radius for the reflection layer of the mirror
0024 void
0025 RICHSetup(PHG4Reco* g4Reco, //
0026       const int N_RICH_Sector = 8, //
0027       const double min_eta = 1.45, //
0028       const double R_mirror_ref = 195, //cm
0029       const double z_shift = 75, // cm
0030       const double R_shift = 18.5 // cm
0031       )
0032 {
0033 
0034   /* Use dedicated RICH subsystem */
0035   PHG4RICHSubsystem *rich = new PHG4RICHSubsystem("RICH");
0036   rich->get_RICH_geometry().set_N_RICH_Sector(N_RICH_Sector);
0037   rich->get_RICH_geometry().set_min_eta(min_eta);
0038 
0039   //  rich->get_RICH_geometry().set_R_shift(10 * ePHENIXRICH::RICH_Geometry::Unit_cm()); // For compact RICH of 2<Eta<4
0040 
0041   rich->get_RICH_geometry().set_R_mirror_ref(R_mirror_ref * ePHENIXRICH::RICH_Geometry::Unit_cm());
0042 
0043   rich->get_RICH_geometry().set_z_shift(z_shift * ePHENIXRICH::RICH_Geometry::Unit_cm());
0044   rich->get_RICH_geometry().set_R_shift(R_shift * ePHENIXRICH::RICH_Geometry::Unit_cm());
0045 
0046   /* Register RICH module */
0047   rich->OverlapCheck( overlapcheck );
0048 
0049   g4Reco->registerSubsystem( rich );
0050 
0051 }