|
| mDOM (G4bool p_placeHarness=true) |
|
| ~mDOM () |
|
void | construction () |
| Abstract method you have to define in order to make a derived class from OMSimDetectorComponent.
|
|
double | getPressureVesselWeight () |
| Virtual method to get the weight of the pressure vessel.
|
|
int | getNumberOfPMTs () |
| Virtual method to get the number of PMTs in the optical module.
|
|
G4String | getName () |
|
void | runBeamOnFlasher (G4int pModuleIndex, G4int pLEDIndex) |
| run/beamOn the specified flasher.
|
|
| OMSimOpticalModule (OMSimPMTConstruction *pPMTManager) |
|
void | configureSensitiveVolume (OMSimDetectorConstruction *pDetConst) |
|
OMSimPMTConstruction * | getPMTmanager () |
|
void | appendComponent (G4VSolid *pSolid, G4LogicalVolume *pLogical, G4ThreeVector pVector, G4RotationMatrix pRotation, G4String pName) |
| Append component to Components vector.
|
|
G4bool | checkIfExists (G4String pName) |
| Check if a component with a certain name exists in the Components map.
|
|
Component | getComponent (G4String pName) |
| Retrieves a specified component from the Components map.
|
|
G4Transform3D | getNewPosition (G4ThreeVector pPosition, G4RotationMatrix pRotation, G4ThreeVector pObjectPosition, G4RotationMatrix pObjectRotation) |
| Computes a new position for a sub-component, based on a given global position and rotation.
|
|
void | integrateDetectorComponent (OMSimDetectorComponent *pToIntegrate, G4ThreeVector pPosition, G4RotationMatrix pRotation, G4String pNameExtension) |
| Integrates the components of another OMSimDetectorComponent instance.
|
|
void | deleteComponent (G4String pName) |
| Deletes a specified component from the Components map.
|
|
void | placeIt (G4ThreeVector pPosition, G4RotationMatrix pRotation, G4LogicalVolume *&pMother, G4String pNameExtension="") |
| Placement of the DetectorComponent. Each Component is placed in the same mother.
|
|
void | placeIt (G4Transform3D pTrans, G4LogicalVolume *&pMother, G4String pNameExtension="") |
| Places the components in a specified mother volume using a provided transformation.
|
|
G4SubtractionSolid * | substractToVolume (G4VSolid *pInputVolume, G4ThreeVector pSubstractionPos, G4RotationMatrix pSubstractionRot, G4String pNewVolumeName) |
| Subtracts components from a given solid volume using position and rotation.
|
|
G4SubtractionSolid * | substractToVolume (G4VSolid *pInputVolume, G4Transform3D pTrans, G4String pNewVolumeName) |
| Subtracts components from a given solid volume.
|
|
|
G4int | m_NrTotalLED |
|
std::vector< G4Transform3D > | m_LEDTransformers |
| coordinates from center of the module
|
|
std::vector< std::vector< G4double > > | m_LEDAngFromSphere |
| stores rho (mm),theta (deg),phi (deg) of each LED from the center of its corresponding spherical part. Useful to run the particles.
|
|
const G4double | m_cylinderAngle = 2.8 * deg |
| Deviation angle of cylindrical part of the pressure vessel.
|
|
const G4double | m_glassOutRad = 176.5 * mm |
| outer radius of galss cylinder (pressure vessel)
|
|
const G4double | m_cylinderHeight = 27.5 * mm |
| height of cylindrical part of glass half-vessel
|
|
const G4double | m_glassInRad = m_glassOutRad - m_glassThick |
|
G4int | m_index |
|
OMSimInputData * | m_data |
| Instance of OMSimInputdata, which should be started only once.
|
|
bool | m_checkOverlaps = false |
|
std::vector< G4ThreeVector > | m_placedPositions |
| store the positions each time the components are placed
|
|
std::vector< G4RotationMatrix > | m_placedOrientations |
| store the orientations each time the components are placed
|
|
std::vector< G4Transform3D > | m_placedTranslations |
| store the translation each time the components are placed
|
|
std::map< G4String, Component > | m_components |
| dictionary with each component
|
|
std::map< G4String, G4PVPlacement * > | m_lastPhysicals |
| dictionary with the (last) G4PVPlacement of each component mComponents produced after calling placeIt
|
|
|
mDOMFlasher * | m_flashers |
|
mDOMHarness * | m_harness |
|
G4bool | m_placeHarness = true |
|
G4bool | m_harnessUnion = true |
|
std::vector< G4ThreeVector > | m_positionsPMT |
|
std::vector< G4RotationMatrix > | m_PMTRotations |
|
std::vector< G4RotationMatrix > | m_PMTRotPhi |
|
std::vector< G4ThreeVector > | m_reflectorPositions |
|
G4double | m_PMToffset |
|
G4double | m_refConeIdealInRad |
|
const G4double | m_glassThick = 13.5 * mm |
| maximum Glass thickness
|
|
const G4double | m_gelThicknessFrontPMT = 3.6 * mm |
| distance between inner glass surface and tip of PMTs
|
|
const G4double | m_gelThickness = 4.5 * mm |
| distance between inner glass surface and holding structure, filled with gel
|
|
const G4double | m_EqPMTrOffset = 2.6 * mm |
| middle PMT circles are slightly further out due to m_EqPMTzOffset
|
|
const G4double | m_EqPMTzOffset = 10.0 * mm |
| z-offset of middle PMT circles w.r.t. center of glass sphere
|
|
const G4double | m_reflectorHalfZ = 15 * mm |
| half-height of reflector (before cutting to right form)
|
|
const G4double | m_reflectorConeSheetThickness = 0.5 * mm |
| aluminum sheet thickness true for all reflective cones
|
|
const G4double | m_reflectorConeToHolder = 1.55 * mm |
| horizontal distance from K??rcher's construction
|
|
const G4double | m_thetaPolar = 33.0 * deg |
|
const G4double | m_thetaEquatorial = 72.0 * deg |
|
const G4int | m_numberPolarPMTs = 4 |
|
const G4int | m_numberEqPMTs = 8 |
|
const G4int | mRefConeAngle = 51 |
|
const G4double | m_polarEquatorialPMTphiPhase = 0 * deg |
|
const G4int | m_totalNumberPMTs = (m_numberPolarPMTs + m_numberEqPMTs) * 2 |
|
const G4double | m_supStructureRad = m_glassOutRad - m_glassThick - m_gelThickness |
|
const G4double | m_thetaEqLED = 61 * deg |
|
const G4double | m_thetaPolLED = 8.2 * deg |
|
|
OMSimPMTConstruction * | m_managerPMT |
|
static const G4VisAttributes | m_glassVis = G4VisAttributes(G4Colour(0.7, 0.7, 0.8, 0.25)) |
|
static const G4VisAttributes | m_gelVis = G4VisAttributes(G4Colour(0.45, 0.5, 0.35, 0.2)) |
|
static const G4VisAttributes | m_steelVis = G4VisAttributes(G4Colour(0.6, 0.6, 0.7, 1.0)) |
|
static const G4VisAttributes | m_aluVis = G4VisAttributes(G4Colour(0.8, 0.8, 0.9, 1.0)) |
|
static const G4VisAttributes | m_whiteVis = G4VisAttributes(G4Colour(1, 1, 1, 1.0)) |
|
static const G4VisAttributes | m_absorberSemiTransparentVis = G4VisAttributes(G4Colour(0.2, 0.2, 0.2, 0.5)) |
|
static const G4VisAttributes | m_absorberVis = G4VisAttributes(G4Colour(0.2, 0.2, 0.2, 1.0)) |
|
static const G4VisAttributes | m_boardVis = G4VisAttributes(G4Colour(0, 1, 0, 1)) |
|
static const G4VisAttributes | m_blueVis = G4VisAttributes(G4Colour(0, 0, 1, 1)) |
|
static const G4VisAttributes | m_airVis = G4VisAttributes(G4Colour(0.7, 0.7, 0.8, 0.2)) |
|
static const G4VisAttributes | m_airVis2 = G4VisAttributes(G4Colour(0.0, 0, 1., 0.5)) |
|
static const G4VisAttributes | m_redVis = G4VisAttributes(G4Colour(1.0, 0.0, 0.0, 1)) |
|
static const G4VisAttributes | m_blackVis = G4VisAttributes(G4Colour(0.0, 0.0, 0.0, 1.0)) |
|
static const G4VisAttributes | m_LEDvis = G4VisAttributes(G4Colour(0.2, 0.6, 0.8, 0.5)) |
|
static const G4VisAttributes | m_photocathodeVis = G4VisAttributes(G4Colour(1.0, 1.0, 0.0, 0.1)) |
|
static const G4VisAttributes | m_invisibleVis = G4VisAttributes::GetInvisible() |
|