ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
ECCE @ EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
analysis
coresoftware
Doxygen_Assist
ecce-detectors
fun4all_eicdetectors
geant4
macros
blob
master
common
DisplayOn.C
ECCEStyle.C
ECCEStyle.h
G4_Aerogel.C
G4_AllSilicon.C
G4_B0ECAL.C
G4_B0Tracking_EIC.C
G4_Barrel_EIC.C
G4_Bbc.C
G4_BECAL.C
G4_BlackHole.C
G4_BMMG.C
G4_BToF.C
G4_BWD.C
G4_CEmc_Albedo.C
G4_CEmc_EIC.C
G4_CEmc_Spacal.C
G4_DIRC.C
G4_DRCALO.C
G4_dRICH.C
G4_DSTReader_EICDetector.C
G4_EEMC.C
G4_EEMC_hybrid.C
G4_EHCAL.C
G4_EToF.C
G4_EventEvaluator.C
G4_FEMC.C
G4_FEMC_EIC.C
G4_FHCAL.C
G4_FST_EIC.C
G4_FwdJets.C
G4_GEM_EIC.C
G4_Global.C
G4_HcalIn_ref.C
G4_HcalOut_ref.C
G4_hFarBwdBeamLine_EIC.C
G4_hFarFwdBeamLine_EIC.C
G4_HToF.C
G4_Input.C
G4_Jets.C
G4_KFParticle.C
G4_LFHCAL.C
G4_Magnet.C
G4_Micromegas.C
G4_mRICH.C
G4_mRwell_EIC.C
G4_Mvtx_EIC.C
G4_ParticleFlow.C
G4_Pipe.C
G4_Pipe_EIC.C
G4_Piston.C
G4_PlugDoor.C
G4_PlugDoor_EIC.C
G4_Production.C
G4_PSTOF.C
G4_RICH.C
G4_TopoClusterReco.C
G4_TPC_EIC.C
G4_Tracking_EIC.C
G4_TrackingSupport.C
G4_TRD.C
G4_TTL_EIC.C
G4_User.C
G4_World.C
GlobalVariables.C
QA.C
sPhenixStyle.C
sPhenixStyle.h
detectors
online_distribution
tutorials
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4_RICH.C
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4_RICH.C
1
8
#ifndef MACRO_G4RICH_C
9
#define MACRO_G4RICH_C
10
11
#include <
GlobalVariables.C
>
12
13
#include <
g4rich/PHG4RICHSubsystem.h
>
14
15
#include <
g4main/PHG4Reco.h
>
16
17
R__LOAD_LIBRARY
(libg4detectors.so)
18
19
namespace Enable
20
{
21
bool
RICH
=
false
;
22
}
23
24
void
RICHInit
()
25
{
26
BlackHoleGeometry::max_radius
=
std::max
(
BlackHoleGeometry::max_radius
, 135.);
27
BlackHoleGeometry::max_z
=
std::max
(
BlackHoleGeometry::max_z
, 268.);
28
}
29
34
void
RICHSetup
(
PHG4Reco
* g4Reco,
//
35
const
int
N_RICH_Sector = 8,
//
36
const
double
min_eta = 1.3,
//
37
const
double
R_mirror_ref = 190,
//cm // Reduced from 195 (2014 LOI) -> 190 to avoid overlap with FGEM4 (it seems to fit fine in the AutoCAD drawing- is the RICH longer in Geant4 than in the AutoCAD drawing?)
38
const
double
z_shift = 75,
// cm
39
const
double
R_shift = 18.5,
// cm
40
const
double
R_beampipe_front = 8,
// clearance for EIC beam pipe flange
41
const
double
R_beampipe_back = 27
// clearance for EIC beam pipe flange
42
)
43
{
44
/* Use dedicated RICH subsystem */
45
PHG4RICHSubsystem
* rich =
new
PHG4RICHSubsystem
(
"RICH"
);
46
rich->
get_RICH_geometry
().
set_N_RICH_Sector
(N_RICH_Sector);
47
rich->
get_RICH_geometry
().
set_min_eta
(min_eta);
48
49
// rich->get_RICH_geometry().set_R_shift(10 * ePHENIXRICH::RICH_Geometry::Unit_cm()); // For compact RICH of 2<Eta<4
50
51
rich->
get_RICH_geometry
().
set_R_mirror_ref
(R_mirror_ref *
ePHENIXRICH::RICH_Geometry::Unit_cm
());
52
53
rich->
get_RICH_geometry
().
set_z_shift
(z_shift *
ePHENIXRICH::RICH_Geometry::Unit_cm
());
54
rich->
get_RICH_geometry
().
set_R_shift
(R_shift *
ePHENIXRICH::RICH_Geometry::Unit_cm
());
55
56
rich->
get_RICH_geometry
().
set_R_beam_pipe_front
(R_beampipe_front *
ePHENIXRICH::RICH_Geometry::Unit_cm
());
57
rich->
get_RICH_geometry
().
set_R_beam_pipe_back
(R_beampipe_back *
ePHENIXRICH::RICH_Geometry::Unit_cm
());
58
59
rich->
OverlapCheck
(
Enable::OVERLAPCHECK
);
60
61
/* Register RICH module */
62
g4Reco->
registerSubsystem
(rich);
63
}
64
#endif
macros
blob
master
common
G4_RICH.C
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:58
using
1.8.2 with
ECCE GitHub integration