69 : fLXe_mt(NULL), fMPTPStyrene(NULL)
97 G4int nC_PMMA = 3+2*polyPMMA;
98 G4int nH_PMMA = 6+2*polyPMMA;
101 G4int nC_eth = 2*polyeth;
102 G4int nH_eth = 4*polyeth;
147 const G4int lxenum = 3;
150 G4double lxe_SCINT[lxenum] = { 0.1, 1.0, 0.1 };
151 G4double lxe_RIND[lxenum] = { 1.59 , 1.57, 1.54 };
169 G4double glass_RIND[lxenum]={1.49,1.49,1.49};
172 glass_mt->
AddProperty(
"ABSLENGTH",lxe_Energy,glass_AbsLength,lxenum);
173 glass_mt->
AddProperty(
"RINDEX",lxe_Energy,glass_RIND,lxenum);
177 G4double vacuum_RIND[lxenum]={1.,1.,1.};
179 vacuum_mt->
AddProperty(
"RINDEX", vacuum_Energy, vacuum_RIND,lxenum);
183 const G4int wlsnum = 4;
186 G4double rIndexPstyrene[wlsnum]={ 1.5, 1.5, 1.5, 1.5};
188 G4double scintilFast[wlsnum]={0.00, 0.00, 1.00, 1.00};
202 G4double RefractiveIndexFiber[wlsnum]={ 1.60, 1.60, 1.60, 1.60};
204 G4double EmissionFib[wlsnum]={1.0, 1.0, 0.0, 0.0};
206 fiberProperty->
AddProperty(
"RINDEX",wls_Energy,RefractiveIndexFiber,wlsnum);
207 fiberProperty->
AddProperty(
"WLSABSLENGTH",wls_Energy,AbsFiber,wlsnum);
208 fiberProperty->
AddProperty(
"WLSCOMPONENT",wls_Energy,EmissionFib,wlsnum);
212 G4double RefractiveIndexClad1[wlsnum]={ 1.49, 1.49, 1.49, 1.49};
214 clad1Property->
AddProperty(
"RINDEX",wls_Energy,RefractiveIndexClad1,wlsnum);
215 clad1Property->
AddProperty(
"ABSLENGTH",wls_Energy,AbsFiber,wlsnum);
218 G4double RefractiveIndexClad2[wlsnum]={ 1.42, 1.42, 1.42, 1.42};
220 clad2Property->
AddProperty(
"RINDEX",wls_Energy,RefractiveIndexClad2,wlsnum);
221 clad2Property->
AddProperty(
"ABSLENGTH",wls_Energy,AbsFiber,wlsnum);
253 =
new G4Box(
"expHall_box",expHall_x,expHall_y,expHall_z);
288 G4double reflectivity[num] = {1., 1.};
289 G4double efficiency[num] = {0.0, 0.0};
294 scintWrapProperty->
AddProperty(
"REFLECTIVITY",pp,reflectivity,num);
295 scintWrapProperty->
AddProperty(
"EFFICIENCY",pp,efficiency,num);
void SetFinish(const G4OpticalSurfaceFinish)
void SetMainVolumeOn(G4bool b)
G4IonisParamMat * GetIonisation() const
G4double fOuterRadius_pmt
CLHEP::Hep3Vector G4ThreeVector
virtual void ConstructSDandField()
void SetMaterialPropertiesTable(G4MaterialPropertiesTable *anMPT)
void SetBirksConstant(G4double value)
Definition of the LXeDetectorConstruction class.
Definition of the LXeMainVolume class.
std::vector< G4ThreeVector > GetPmtPositions()
G4MaterialPropertiesTable * fMPTPStyrene
G4LogicalVolume * GetLogPhotoCath()
G4MaterialPropertyVector * AddProperty(const char *key, G4double *PhotonEnergies, G4double *PropertyValues, G4int NumEntries)
static void CleanSurfaceTable()
static G4UImanager * GetUIpointer()
void SetHousingReflectivity(G4double)
static G4PhysicalVolumeStore * GetInstance()
G4VPhysicalVolume * ConstructDetector()
G4LogicalVolume * GetLogScint()
G4Cache< LXePMTSD * > fPmt_SD
Definition of the LXePMTSD class.
virtual ~LXeDetectorConstruction()
G4GLOB_DLL std::ostream G4cout
LXeMainVolume * fMainVolume
virtual G4VPhysicalVolume * Construct()
static void CleanSurfaceTable()
static G4LogicalVolumeStore * GetInstance()
static G4SolidStore * GetInstance()
static const double perCent
void SetHousingThickness(G4double)
static G4GeometryManager * GetInstance()
void AddConstProperty(const char *key, G4double PropertyValue)
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
void ReinitializeGeometry(G4bool destroyFirst=false, G4bool prop=true)
static const double kelvin
void SetMainScintYield(G4double)
void SetDimensions(G4ThreeVector)
static G4RunManager * GetRunManager()
void SetPmtPositions(const std::vector< G4ThreeVector > &positions)
LXeDetectorMessenger * fDetectorMessenger
void SetWLSScintYield(G4double)
G4Box * fExperimentalHall_box
void SetPMTRadius(G4double)
G4Cache< LXeScintSD * > fScint_SD
static const G4VisAttributes Invisible
Definition of the LXeScintSD class.
void InitPMTs(G4int nPMTs)
G4MaterialPropertiesTable * fLXe_mt
void SetWLSSlabOn(G4bool b)
G4LogicalVolume * fExperimentalHall_log
void OpenGeometry(G4VPhysicalVolume *vol=0)
void AddElement(G4Element *element, G4int nAtoms)
LXeDetectorConstruction()
Definition of the LXeWLSSlab class.
void SetModel(const G4OpticalSurfaceModel model)
Definition of the LXeDetectorMessenger class.
void SetMaterialPropertiesTable(G4MaterialPropertiesTable *anMPT)
void Put(const value_type &val) const
void SetType(const G4SurfaceType &type)
void SetVisAttributes(const G4VisAttributes *pVA)
G4VPhysicalVolume * fExperimentalHall_phys
G4int ApplyCommand(const char *aCommand)