def getLArActiveSensitiveDetector(name="LArActiveSensitiveDetector", **kwargs): ## Main configuration from G4AtlasApps.SimFlags import simFlags if simFlags.SimLayout.get_Value() not in ["tb_LArH6_2003","tb_LArH6_2002"]: kwargs.setdefault("StacVolumes",["LArMgr::LAr::EMB::STAC"]) kwargs.setdefault("PresamplerVolumes",["LArMgr::LAr::Barrel::Presampler::Module"]) kwargs.setdefault("NegIWVolumes",["LArMgr::LAr::EMEC::Neg::InnerWheel"]) kwargs.setdefault("NegOWVolumes",["LArMgr::LAr::EMEC::Neg::OuterWheel"]) kwargs.setdefault("NegBOBarretteVolumes",["LArMgr::LAr::EMEC::Neg::BackOuterBarrette::Module::Phidiv"]) kwargs.setdefault("MiniVolumes",["LArMgr::MiniFCAL::Wafer"]) if simFlags.SimLayout.get_Value()!="tb_LArH6_2003": kwargs.setdefault("PosIWVolumes",["LArMgr::LAr::EMEC::Pos::InnerWheel"]) kwargs.setdefault("PosOWVolumes",["LArMgr::LAr::EMEC::Pos::OuterWheel"]) kwargs.setdefault("PosBOBarretteVolumes",["LArMgr::LAr::EMEC::Pos::BackOuterBarrette::Module::Phidiv"]) kwargs.setdefault("PresVolumes", ["LArMgr::LAr::Endcap::Presampler::LiquidArgon"]) kwargs.setdefault("SliceVolumes",["LArMgr::LAr::HEC::Module::Depth::Slice"]) if simFlags.SimLayout.get_Value() not in ["tb_LArH6_2002"]: kwargs.setdefault("FCAL1Volumes",["LArMgr::LAr::FCAL::Module1::Gap"]) kwargs.setdefault("FCAL2Volumes",["LArMgr::LAr::FCAL::Module2::Gap"]) kwargs.setdefault("FCAL3Volumes",["LArMgr::LAr::FCAL::Module3::Gap"]) # Running PID calibration hits? kwargs.setdefault("ParticleID",simFlags.ParticleID()) # No effect currently kwargs.setdefault("OutputCollectionNames", ["LArCalibrationHitActive"]) return CfgMgr.LArG4__ActiveSDTool(name, **kwargs)
def getTileGeoG4CalibSD(name="TileGeoG4CalibSD", **kwargs): kwargs.setdefault("LogicalVolumeNames", [ 'Tile::Scintillator', 'Tile::Tile', 'Tile::TileCentralBarrel', 'Tile::TileEndcapPos', 'Tile::TileEndcapNeg', 'Tile::Barrel', 'Tile::BarrelModule', 'Tile::FrontPlate', 'Tile::EndPlate1', 'Tile::EPHole1', 'Tile::EndPlate2', 'Tile::EPHole2', 'Tile::GirderMother', 'Tile::GirderIron', 'Tile::GirderAluminium', 'Tile::GirderElectronics', 'Tile::Absorber', 'Tile::AbsorberChild', 'Tile::Period', 'Tile::Glue', 'Tile::Wrapper', 'Tile::EBarrel', 'Tile::EBarrelModule', 'Tile::EndPlateSh', 'Tile::ITC', 'Tile::ITCModule', 'Tile::Plug1Module', 'Tile::FrontPlateSh', 'Tile::Plug2Module', 'Tile::Gap', 'Tile::GapModule', 'Tile::IrUp', 'Tile::IrDw', 'Tile::Iron4', 'Tile::Iron3', 'Tile::Iron2', 'Tile::Iron1', 'Tile::IrBox', 'Tile::SaddleModule', 'Tile::LArService', 'Tile::LArCables', 'Tile::ExtBarrelSaddleSupport', 'Tile::Crack', 'Tile::CrackModule', 'Tile::FingerModule', 'Tile::FingerIron', 'Tile::FingerAluminum', 'Tile::FingerElectronics', 'Tile::EFinger', 'Tile::EFingerModule', 'Tile::FingerPos', 'Tile::FingerNeg', 'Tile::SaddlePos', 'Tile::SaddleNeg', 'Tile::ESaddlePos', 'Tile::ESaddleNeg' ]) kwargs.setdefault("OutputCollectionNames", [ "TileHitVec", "TileCalibHitActiveCell", "TileCalibHitInactiveCell", "TileCalibHitDeadMaterial" ]) from G4AtlasApps.SimFlags import simFlags from AthenaCommon.BeamFlags import jobproperties if jobproperties.Beam.beamType() == 'cosmics' or (hasattr( simFlags, "ReadTR") and simFlags.ReadTR.statusOn): kwargs.setdefault("DeltaTHit", [1]) kwargs.setdefault("DoTOFCorrection", False) if hasattr(simFlags, "ParticleID"): kwargs.setdefault("DoCalibHitParticleID", simFlags.ParticleID()) return CfgMgr.TileGeoG4CalibSDTool(name, **kwargs)
def getTileGeoG4SDCalc(name="TileGeoG4SDCalc", **kwargs): from G4AtlasApps.SimFlags import simFlags from AthenaCommon.BeamFlags import jobproperties if jobproperties.Beam.beamType() == 'cosmics' or (hasattr( simFlags, "ReadTR") and simFlags.ReadTR.statusOn): kwargs.setdefault("DeltaTHit", [1]) kwargs.setdefault("DoTOFCorrection", False) if hasattr(simFlags, "ParticleID"): kwargs.setdefault("DoCalibHitParticleID", simFlags.ParticleID()) return CfgMgr.TileGeoG4SDCalc(name, **kwargs)
def getLArDeadSensitiveDetector(name="LArDeadSensitiveDetector", **kwargs): ## Main configuration kwargs.setdefault("BarrelCryVolumes", ["LArMgr::LAr::Barrel::Cryostat::InnerWall::Vis", "LArMgr::LAr::Barrel::Cryostat::Sector::*", "LArMgr::LAr::Barrel::Cryostat::InnerWall", "LArMgr::LAr::Barrel::Cryostat::Cylinder::*"]) kwargs.setdefault("BarrelCryLArVolumes",["LArMgr::LAr::Barrel::Cryostat::ExtraMat*", "LArMgr::LAr::Barrel::Cryostat::HalfLAr*", "LArMgr::LAr::Barrel::Cryostat::TotalLAr", "LArMgr::LAr::Barrel::Cryostat::MotherVolume"]) kwargs.setdefault("BarrelCryMixVolumes",["LArMgr::LAr::Barrel::Cryostat::InnerEndWall", "LArMgr::LAr::Barrel::Cryostat::OuterWall", "LArMgr::LAr::Barrel::Cryostat::Mixed::Cylinder::*"]) kwargs.setdefault("DeadMaterialVolumes",["LArMgr::LAr::DM::*"]) kwargs.setdefault("BarrelPresVolumes", ["LArMgr::LAr::Barrel::Presampler", "LArMgr::LAr::Barrel::Presampler::Sector", "LArMgr::LAr::Barrel::Presampler::ProtectionShell", "LArMgr::LAr::Barrel::Presampler::MotherBoard", "LArMgr::LAr::Barrel::Presampler::Connectics", "LArMgr::LAr::Barrel::Presampler::Rail", "LArMgr::LAr::Barrel::Presampler::ProtectionPlate"]) kwargs.setdefault("BarrelVolumes", ["LArMgr::LAr::EMB::ExtraMat*", "LArMgr::LAr::EMB::FrontBack::Absorber", "LArMgr::LAr::EMB::FrontBack::Absorber2", "LArMgr::LAr::EMB::FrontBack::Steel", "LArMgr::LAr::EMB::FrontBack::G10", "LArMgr::LAr::EMB::FrontBack::Electrode", "LArMgr::LAr::EMB::GTENB", "LArMgr::LAr::EMB::GTENF", "LArMgr::LAr::EMB::SUMB", "LArMgr::LAr::EMB::CAAC", "LArMgr::LAr::EMB::MOAC", "LArMgr::LAr::EMB::TELB", "LArMgr::LAr::EMB::TELF", "LArMgr::LAr::EMB::ECAM"]) kwargs.setdefault("ECCryVolumes", ["LArMgr::LAr::Endcap::Cryostat::FcalLAr::Cylinder", "LArMgr::LAr::Endcap::Cryostat::EmecHecLAr::Sector", "LArMgr::LAr::Endcap::Cryostat::EmecHecLAr::Cylinder", "LArMgr::LAr::Endcap::Cryostat::Sector", "LArMgr::LAr::Endcap::Cryostat::Cone", "LArMgr::LAr::Endcap::Cryostat::Cylinder"]) kwargs.setdefault("ECCryLArVolumes", ["LArMgr::Moderator*", "LArMgr::LAr::Endcap::Cryostat::FcalLAr", "LArMgr::LAr::Endcap::Cryostat::EmecHecLAr", "LArMgr::LAr::Endcap::Cryostat::MotherVolume"]) kwargs.setdefault("ECCryMixVolumes", ["LArMgr::LAr::FCAL::LiquidArgonC", "LArMgr::LAr::Endcap::Cryostat::EmecHecLAr::Sector::Mixed", "LArMgr::LAr::Endcap::Cryostat::Sector::Mixed", "LArMgr::LAr::Endcap::Cryostat::Cone::Mixed", "LArMgr::LAr::Endcap::Cryostat::ExtraCyl_beforePS", "LArMgr::LAr::Endcap::Cryostat::Cylinder::Mixed"]) kwargs.setdefault("ECSupportVolumes", ["LArMgr::LAr::EMEC::ExtraCyl_afterPS", "LArMgr::LAr::EMEC::InnerTransversalBars", "LArMgr::LAr::EMEC::InnerAluCone::*", "LArMgr::LAr::EMEC::OuterTransversalBars", "LArMgr::LAr::EMEC::OuterSupportMother", "LArMgr::LAr::EMEC::*Stretchers", "LArMgr::LAr::EMEC::Top*", "LArMgr::LAr::EMEC::Back*GTen", "LArMgr::LAr::EMEC::Back*Hole", "LArMgr::LAr::EMEC::Back*Bar", "LArMgr::LAr::EMEC::Back*Ring", "LArMgr::LAr::EMEC::Back*Ele", "LArMgr::LAr::EMEC::Back*Abs", "LArMgr::LAr::EMEC::BackInnerBarrette::Module::Phidiv", "LArMgr::LAr::EMEC::Back*Barrette::Module", "LArMgr::LAr::EMEC::Back*Barrettes", "LArMgr::LAr::EMEC::BackSupport*", "LArMgr::LAr::EMEC::Front*", "LArMgr::LAr::EMEC::Mother*"]) kwargs.setdefault("HECWheelVolumes", ["LArMgr::LAr::HEC::Mother", "LArMgr::LAr::HEC::LiquidArgon", "LArMgr::LAr::HEC::Clamp", "LArMgr::LAr::HEC::Clamp::LiquidArgon", "LArMgr::LAr::HEC::Module", "LArMgr::LAr::HEC::FrontModule", "LArMgr::LAr::HEC::RearModule", "LArMgr::LAr::HEC::Module::Depth", "LArMgr::LAr::HEC::Module::Depth::FirstAbsorber", "LArMgr::LAr::HEC::Module::Depth::FirstAbsorber::TieRod"]) # Running PID calibration hits? from G4AtlasApps.SimFlags import simFlags kwargs.setdefault("ParticleID",simFlags.ParticleID()) kwargs.setdefault("doEscapedEnergy",simFlags.CalibrationRun.get_Value()!='DeadLAr') # No effect currently outputCollectionName = "LArCalibrationHitDeadMaterial" from G4AtlasApps.SimFlags import simFlags if simFlags.CalibrationRun.get_Value() in ['LAr', 'LAr+Tile']: outputCollectionName = "LArCalibrationHitDeadMaterial_DEAD" kwargs.setdefault("HitCollectionName", outputCollectionName) return CfgMgr.LArG4__DeadSDTool(name, **kwargs)
def getLArInactiveSensitiveDetector(name="LArInactiveSensitiveDetector", **kwargs): ## Main configuration from G4AtlasApps.SimFlags import simFlags if simFlags.SimLayout.get_Value() not in ["tb_LArH6_2003","tb_LArH6_2002"]: kwargs.setdefault("BarrelPreVolumes",["LArMgr::LAr::Barrel::Presampler::Cathode*", "LArMgr::LAr::Barrel::Presampler::Anode*", "LArMgr::LAr::Barrel::Presampler::Prep*"]) kwargs.setdefault("BarrelVolumes",["LArMgr::LAr::EMB::*::Straight", "LArMgr::LAr::EMB::*::*Fold"]) kwargs.setdefault("ECPosInVolumes", ["LArMgr::LAr::EMEC::Pos::InnerWheel::Absorber", "LArMgr::LAr::EMEC::Pos::InnerWheel::Electrode", "LArMgr::LAr::EMEC::Pos::InnerWheel::Glue", "LArMgr::LAr::EMEC::Pos::InnerWheel::Lead", "LArMgr::LAr::EMEC::Pos::InnerCone::Absorber", "LArMgr::LAr::EMEC::Pos::InnerCone::Electrode", "LArMgr::LAr::EMEC::Pos::InnerCone::Glue", "LArMgr::LAr::EMEC::Pos::InnerCone::Lead", "LArMgr::LAr::EMEC::Pos::InnerSlice*::Absorber", "LArMgr::LAr::EMEC::Pos::InnerSlice*::Electrode", "LArMgr::LAr::EMEC::Pos::InnerSlice*::Glue", "LArMgr::LAr::EMEC::Pos::InnerSlice*::Lead"]) kwargs.setdefault("ECPosOutVolumes",["LArMgr::LAr::EMEC::Pos::OuterWheel::Lead", "LArMgr::LAr::EMEC::Pos::OuterWheel::Glue", "LArMgr::LAr::EMEC::Pos::OuterWheel::Electrode", "LArMgr::LAr::EMEC::Pos::OuterWheel::Absorber", "LArMgr::LAr::EMEC::Pos::Outer*Cone::Lead", "LArMgr::LAr::EMEC::Pos::Outer*Cone::Glue", "LArMgr::LAr::EMEC::Pos::Outer*Cone::Electrode", "LArMgr::LAr::EMEC::Pos::Outer*Cone::Absorber", "LArMgr::LAr::EMEC::Pos::OuterSlice*::Lead", "LArMgr::LAr::EMEC::Pos::OuterSlice*::Glue", "LArMgr::LAr::EMEC::Pos::OuterSlice*::Electrode", "LArMgr::LAr::EMEC::Pos::OuterSlice*::Absorber"]) kwargs.setdefault("ECNegInVolumes", ["LArMgr::LAr::EMEC::Neg::InnerWheel::Absorber", "LArMgr::LAr::EMEC::Neg::InnerWheel::Electrode", "LArMgr::LAr::EMEC::Neg::InnerWheel::Glue", "LArMgr::LAr::EMEC::Neg::InnerWheel::Lead", "LArMgr::LAr::EMEC::Neg::InnerCone::Absorber", "LArMgr::LAr::EMEC::Neg::InnerCone::Electrode", "LArMgr::LAr::EMEC::Neg::InnerCone::Glue", "LArMgr::LAr::EMEC::Neg::InnerCone::Lead", "LArMgr::LAr::EMEC::Neg::InnerSlice*::Absorber", "LArMgr::LAr::EMEC::Neg::InnerSlice*::Electrode", "LArMgr::LAr::EMEC::Neg::InnerSlice*::Glue", "LArMgr::LAr::EMEC::Neg::InnerSlice*::Lead"]) kwargs.setdefault("ECNegOutVolumes",["LArMgr::LAr::EMEC::Neg::OuterWheel::Lead", "LArMgr::LAr::EMEC::Neg::OuterWheel::Glue", "LArMgr::LAr::EMEC::Neg::OuterWheel::Electrode", "LArMgr::LAr::EMEC::Neg::OuterWheel::Absorber", "LArMgr::LAr::EMEC::Neg::Outer*Cone::Lead", "LArMgr::LAr::EMEC::Neg::Outer*Cone::Glue", "LArMgr::LAr::EMEC::Neg::Outer*Cone::Electrode", "LArMgr::LAr::EMEC::Neg::Outer*Cone::Absorber", "LArMgr::LAr::EMEC::Neg::OuterSlice*::Lead", "LArMgr::LAr::EMEC::Neg::OuterSlice*::Glue", "LArMgr::LAr::EMEC::Neg::OuterSlice*::Electrode", "LArMgr::LAr::EMEC::Neg::OuterSlice*::Absorber"]) #kwargs.setdefault("HECVolumes",["LAr::HEC::Inactive"]) #kwargs.setdefault("HECLocalVolumes",["LAr::HEC::Local::Inactive"]) kwargs.setdefault("HECWheelVolumes",["LArMgr::LAr::HEC::Module::Depth::Absorber::TieRod", "LArMgr::LAr::HEC::Module::Depth::Slice::TieRodDead", "LArMgr::LAr::HEC::Module::Depth::Absorber", "LArMgr::LAr::HEC::Module::Depth::Slice::TieRod", "LArMgr::LAr::HEC::Module::Depth::Slice::Electrode::Copper", "LArMgr::LAr::HEC::Module::Depth::Slice::Electrode"]) kwargs.setdefault("MiniMomVolumes",["LArMgr::MiniFCALMother"]) kwargs.setdefault("MiniVolumes",["LArMgr::MiniFCAL"]) kwargs.setdefault("MiniLayVolumes",["LArMgr::MiniFCAL::Layer"]) if simFlags.SimLayout.get_Value()=="tb_LArH6_2002": kwargs.setdefault("ECPosInVolumes", ["LArMgr::LAr::EMEC::Pos::InnerWheel::Absorber", "LArMgr::LAr::EMEC::Pos::InnerWheel::Electrode"]) kwargs.setdefault("ECPosOutVolumes",["LArMgr::LAr::EMEC::Pos::OuterWheel::Electrode", "LArMgr::LAr::EMEC::Pos::OuterWheel::Absorber"]) kwargs.setdefault("HECWheelVolumes",["LArMgr::LAr::HEC::Module::Depth::Absorber", "LArMgr::LAr::HEC::Module::Depth::Slice::Electrode", "LArMgr::LAr::HEC::Module::Depth::Slice::Electrode::Copper", "LArMgr::LAr::HEC::Module::Depth::Slice::TieRod"]) if simFlags.SimLayout.get_Value()!="tb_LArH6_2002": kwargs.setdefault("FCAL1Volumes",["LArMgr::LAr::FCAL::Module1::CableTrough", "LArMgr::LAr::FCAL::Module1::Absorber"]) kwargs.setdefault("FCAL2Volumes",["LArMgr::LAr::FCAL::Module2::CableTrough", "LArMgr::LAr::FCAL::Module2::Absorber", "LArMgr::LAr::FCAL::Module2::Rod"]) kwargs.setdefault("FCAL3Volumes",["LArMgr::LAr::FCAL::Module3::CableTrough", "LArMgr::LAr::FCAL::Module3::Absorber", "LArMgr::LAr::FCAL::Module3::Rod"]) # Running PID calibration hits? from G4AtlasApps.SimFlags import simFlags kwargs.setdefault("ParticleID",simFlags.ParticleID()) # No effect currently kwargs.setdefault("OutputCollectionNames", ["LArCalibrationHitInactive"]) return CfgMgr.LArG4__InactiveSDTool(name, **kwargs)
def getTileCTBGeoG4SDCalc(name="TileCTBGeoG4SDCalc", **kwargs): kwargs.setdefault("TileTB", True) from G4AtlasApps.SimFlags import simFlags if hasattr(simFlags, "ParticleID"): kwargs.setdefault("DoCalibHitParticleID", simFlags.ParticleID()) return CfgMgr.TileGeoG4SDCalc(name, **kwargs)