OMSim
Geant4 for IceCube optical module studies
OMSimMDOMHarness.hh
Go to the documentation of this file.
1 
5 #pragma once
6 
8 #include <G4IntersectionSolid.hh>
9 #include <G4Cons.hh>
10 
11 class mDOM;
13 {
14 public:
15  mDOMHarness(mDOM* pMDOM);
16  void construction();
17 
18 private:
19  mDOM* m_opticalModule;
20  void bandsAndClamps();
21  void bridgeRopesSolid();
22  void mainDataCable();
23  void pads();
24  void PCA();
25  void plug();
26  void teraBelt();
27 
28  const G4double m_harnessRotAngle = 45*deg; //rotation of harness with respect to the module. Valid values are 45, 45+90, 45+180.. etc, otherwise the ropes would go over the PMTs
29  const G4double m_plugAngle = 49.0 * deg;
30  const G4double m_padThickness = 2.0 * mm;
31  const G4double m_teraThickness = 1.0 * mm;
32  const G4double m_ropeRMax = 3.0 * mm;
33  const G4double m_bridgeAddedThickness = 14.6 * mm;
34  const G4double m_ropeRotationAngleX = 11.245557 * deg;
35  const G4double m_ropeDz = 509.5 * mm;
36  const G4double m_bridgeCorrection = 7.85*mm * tan(m_ropeRotationAngleX); //
37  const G4double m_ropeStartingPoint = m_totalWidth + m_bridgeCorrection + m_ropeRMax / cos(m_ropeRotationAngleX); // this is the actual starting point of the rope, i.e. the distance to the z-axis, which has to be larger than lBridgeROuter[2] in order for the rope not to cut the bridge.
38 
39  G4double m_totalWidth;
40 };
Provides helper base class OMSimDetectorComponent for constructing and managing detector components i...
Abstract base class used for constructing detector components.
Definition: OMSimDetectorComponent.hh:26
Definition: OMSimMDOMHarness.hh:13
void construction()
Abstract method you have to define in order to make a derived class from OMSimDetectorComponent.
Definition: OMSimMDOMHarness.cc:20
mDOMHarness(mDOM *pMDOM)
Definition: OMSimMDOMHarness.cc:14
Definition: OMSimMDOM.hh:13