ATLAS Offline Software
Loading...
Searching...
No Matches
G4GeometryToolConfig Namespace Reference

Functions

 G4GeometryNotifierSvcCfg (flags, name="G4GeometryNotifierSvc", **kwargs)
 GeoDetectorToolCfg (flags, name='GeoDetectorTool', **kwargs)
 BeamPipeGeoDetectorToolCfg (flags, name='BeamPipe', **kwargs)
 PixelGeoDetectorToolCfg (flags, name='Pixel', **kwargs)
 SCTGeoDetectorToolCfg (flags, name='SCT', **kwargs)
 PLRGeoDetectorToolCfg (flags, name='PLR', **kwargs)
 BCMPrimeGeoDetectorToolCfg (flags, name='BCMPrime', **kwargs)
 ITkPixelGeoDetectorToolCfg (flags, name='ITkPixel', **kwargs)
 ITkStripGeoDetectorToolCfg (flags, name='ITkStrip', **kwargs)
 HGTDGeoDetectorToolCfg (flags, name='HGTD', **kwargs)
 HGTDServiceToolCfg (flags, name='HGTDServices', **kwargs)
 TRTGeoDetectorToolCfg (flags, name='TRT', **kwargs)
 IDetServicesMatGeoDetectorToolCfg (flags, name='IDetServicesMat', **kwargs)
 LArMgrGeoDetectorToolCfg (flags, name='LArMgr', **kwargs)
 TileGeoDetectorToolCfg (flags, name='Tile', **kwargs)
 LucidGeoDetectorToolCfg (flags, name='Lucid', **kwargs)
 ALFAGeoDetectorToolCfg (flags, name='ALFA', **kwargs)
 ZDCGeoDetectorToolCfg (flags, name='ZDC', **kwargs)
 AFPGeoDetectorToolCfg (flags, name='AFP', **kwargs)
 FwdRegionGeoDetectorToolCfg (flags, name='FwdRegion', **kwargs)
 MuonGeoDetectorToolCfg (flags, name='Muon', **kwargs)
 ToroidGeoDetectorToolCfg (flags, name="Toroid", **kwargs)
 ITKEnvelopeCfg (flags, name="ITK", **kwargs)
 IDETEnvelopeCfg (flags, name="IDET", **kwargs)
 CALOEnvelopeCfg (flags, name="CALO", **kwargs)
 ForwardRegionEnvelopeCfg (flags, name='ForwardRegion', **kwargs)
 MUONEnvelopeCfg (flags, name="MUONQ02", **kwargs)
 CosmicShortCutCfg (flags, name="CosmicShortCut", **kwargs)
 generateSubDetectorList (flags)
 ATLASEnvelopeCfg (flags, name="Atlas", **kwargs)
 MaterialDescriptionToolCfg (flags, name="MaterialDescriptionTool", **kwargs)
 VoxelDensityToolCfg (flags, name="VoxelDensityTool", **kwargs)
 ATLAS_RegionCreatorListCfg (flags)
 TB_RegionCreatorListCfg (flags)
 ATLAS_FieldMgrListCfg (flags)
 TB_FieldMgrListCfg (flags)
 GeometryConfigurationToolsCfg (flags)
 G4AtlasDetectorConstructionToolCfg (flags, name="G4AtlasDetectorConstructionTool", **kwargs)
 CavernInfraGeoDetectorToolCfg (flags, name='CavernInfra', **kwargs)
 CavernWorldCfg (flags, name="Cavern", **kwargs)

Variables

 CylindricalEnvelope
 PolyconicalEnvelope
 MaterialDescriptionTool
 VoxelDensityTool
 G4AtlasDetectorConstructionTool
 BoxEnvelope

Function Documentation

◆ AFPGeoDetectorToolCfg()

G4GeometryToolConfig.AFPGeoDetectorToolCfg ( flags,
name = 'AFP',
** kwargs )

Definition at line 194 of file G4GeometryToolConfig.py.

194def AFPGeoDetectorToolCfg(flags, name='AFP', **kwargs):
195 #set up geometry
196 from AtlasGeoModel.ForDetGeoModelConfig import ForDetGeometryCfg
197 result = ForDetGeometryCfg(flags)
198 kwargs.setdefault("DetectorName", "AFP")
199 kwargs.setdefault("GeoDetectorName", "AFP_GeoModel")
200 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
201 return result
202
203

◆ ALFAGeoDetectorToolCfg()

G4GeometryToolConfig.ALFAGeoDetectorToolCfg ( flags,
name = 'ALFA',
** kwargs )

Definition at line 176 of file G4GeometryToolConfig.py.

176def ALFAGeoDetectorToolCfg(flags, name='ALFA', **kwargs):
177 #set up geometry
178 from AtlasGeoModel.ForDetGeoModelConfig import ForDetGeometryCfg
179 result = ForDetGeometryCfg(flags)
180 kwargs.setdefault("DetectorName", "ALFA")
181 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
182 return result
183
184

◆ ATLAS_FieldMgrListCfg()

G4GeometryToolConfig.ATLAS_FieldMgrListCfg ( flags)

Definition at line 631 of file G4GeometryToolConfig.py.

631def ATLAS_FieldMgrListCfg(flags):
632 result = ComponentAccumulator()
633 fieldMgrList = []
634
635 if flags.Sim.TightMuonStepping:
636 tool = result.popToolsAndMerge(TightMuonsATLASFieldManagerToolCfg(flags))
637 fieldMgrList += [tool]
638 else:
639 tool = result.popToolsAndMerge(ATLASFieldManagerToolCfg(flags))
640 fieldMgrList += [tool]
641 if flags.Detector.GeometryBpipe:
642 tool = result.popToolsAndMerge(BeamPipeFieldManagerToolCfg(flags))
643 fieldMgrList += [tool]
644 if flags.Detector.GeometryID:
645 tool = result.popToolsAndMerge(InDetFieldManagerToolCfg(flags))
646 fieldMgrList += [tool]
647 if flags.Detector.GeometryITk or flags.Detector.GeometryHGTD: # TODO: while HGTD is included in the ITK envelope
648 tool = result.popToolsAndMerge(ITkFieldManagerToolCfg(flags))
649 fieldMgrList += [tool]
650 if flags.Detector.GeometryCalo and flags.Sim.MuonFieldOnlyInCalo:
651 tool = result.popToolsAndMerge(MuonsOnlyInCaloFieldManagerToolCfg(flags))
652 fieldMgrList += [tool]
653 if flags.Detector.GeometryMuon:
654 tool = result.popToolsAndMerge(MuonFieldManagerToolCfg(flags))
655 fieldMgrList += [tool]
656
657 #sort these forward ones later
658 if flags.Detector.GeometryFwdRegion: #or forward?
659 fieldMgrList+=[
660 result.popToolsAndMerge(Q1FwdFieldManagerToolCfg(flags)),
661 result.popToolsAndMerge(Q2FwdFieldManagerToolCfg(flags)),
662 result.popToolsAndMerge(Q3FwdFieldManagerToolCfg(flags)),
663 result.popToolsAndMerge(D1FwdFieldManagerToolCfg(flags)),
664 result.popToolsAndMerge(D2FwdFieldManagerToolCfg(flags)),
665 result.popToolsAndMerge(Q4FwdFieldManagerToolCfg(flags)),
666 result.popToolsAndMerge(Q5FwdFieldManagerToolCfg(flags)),
667 result.popToolsAndMerge(Q6FwdFieldManagerToolCfg(flags)),
668 result.popToolsAndMerge(Q7FwdFieldManagerToolCfg(flags)),
669 result.popToolsAndMerge(Q1HKickFwdFieldManagerToolCfg(flags)),
670 result.popToolsAndMerge(Q1VKickFwdFieldManagerToolCfg(flags)),
671 result.popToolsAndMerge(Q2HKickFwdFieldManagerToolCfg(flags)),
672 result.popToolsAndMerge(Q2VKickFwdFieldManagerToolCfg(flags)),
673 result.popToolsAndMerge(Q3HKickFwdFieldManagerToolCfg(flags)),
674 result.popToolsAndMerge(Q3VKickFwdFieldManagerToolCfg(flags)),
675 result.popToolsAndMerge(Q4VKickAFwdFieldManagerToolCfg(flags)),
676 result.popToolsAndMerge(Q4HKickFwdFieldManagerToolCfg(flags)),
677 result.popToolsAndMerge(Q4VKickBFwdFieldManagerToolCfg(flags)),
678 result.popToolsAndMerge(Q5HKickFwdFieldManagerToolCfg(flags)),
679 result.popToolsAndMerge(Q6VKickFwdFieldManagerToolCfg(flags)),
680 result.popToolsAndMerge(Q1HKickFwdFieldManagerToolCfg(flags)),
681 result.popToolsAndMerge(FwdRegionFieldManagerToolCfg(flags))]
682
683 result.setPrivateTools(fieldMgrList)
684 return result
685
686

◆ ATLAS_RegionCreatorListCfg()

G4GeometryToolConfig.ATLAS_RegionCreatorListCfg ( flags)

Definition at line 514 of file G4GeometryToolConfig.py.

514def ATLAS_RegionCreatorListCfg(flags):
515 result = ComponentAccumulator()
516 regionCreatorList = []
517
518 if flags.Detector.GeometryCavern or flags.Sim.CavernBackground not in [CavernBackground.Off, CavernBackground.Signal]:
519 regionCreatorList += [
520 result.popToolsAndMerge(SX1PhysicsRegionToolCfg(flags)),
521 result.popToolsAndMerge(BedrockPhysicsRegionToolCfg(flags)),
522 result.popToolsAndMerge(CavernShaftsConcretePhysicsRegionToolCfg(flags))]
523 #regionCreatorList += ['CavernShaftsAirPhysicsRegionTool'] # Not used currently
524 if flags.Detector.GeometryID:
525 if flags.Detector.GeometryPixel:
526 regionCreatorList += [result.popToolsAndMerge(PixelPhysicsRegionToolCfg(flags))]
527 if flags.Detector.GeometrySCT:
528 regionCreatorList += [result.popToolsAndMerge(SCTPhysicsRegionToolCfg(flags))]
529 if flags.Detector.GeometryTRT:
530 regionCreatorList += [result.popToolsAndMerge(TRTPhysicsRegionToolCfg(flags))]
531 if flags.GeoModel.Run in [LHCPeriod.Run2, LHCPeriod.Run3]:
532 # TODO: should we support old geometry tags with Run == "UNDEFINED" and flags.GeoModel.IBLLayout not in ["noIBL", "UNDEFINED"]?
533 regionCreatorList += [result.popToolsAndMerge(TRT_ArPhysicsRegionToolCfg(flags))] #'TRT_KrPhysicsRegionTool'
534 # FIXME dislike the ordering here, but try to maintain the same ordering as in the old configuration.
535 if flags.Detector.GeometryBpipe:
536 if flags.Sim.BeamPipeSimMode is not BeamPipeSimMode.Normal:
537 regionCreatorList += [result.popToolsAndMerge(BeampipeFwdCutPhysicsRegionToolCfg(flags))]
538 if not flags.Detector.GeometryFwdRegion and (flags.Detector.GeometryAFP or flags.Detector.GeometryALFA or flags.Detector.GeometryZDC):
539 regionCreatorList += [result.popToolsAndMerge(FWDBeamLinePhysicsRegionToolCfg(flags))]
540 if flags.Detector.GeometryITk:
541 if flags.Detector.GeometryITkPixel:
542 regionCreatorList += [result.popToolsAndMerge(ITkPixelPhysicsRegionToolCfg(flags))]
543 if flags.Detector.GeometryITkStrip:
544 regionCreatorList += [result.popToolsAndMerge(ITkStripPhysicsRegionToolCfg(flags))]
545 if flags.Detector.GeometryHGTD:
546 regionCreatorList += [result.popToolsAndMerge(HGTDPhysicsRegionToolCfg(flags))]
547 if flags.Detector.GeometryITk or flags.Detector.GeometryHGTD: # TODO: I do not know why this is only for ITk (and HGTD)
548 # FIXME dislike the ordering here, but try to maintain the same ordering as in the old configuration.
549 if flags.Detector.GeometryBpipe:
550 if flags.Sim.BeamPipeSimMode is not BeamPipeSimMode.Normal:
551 regionCreatorList += [result.popToolsAndMerge(BeampipeFwdCutPhysicsRegionToolCfg(flags))]
552 if not flags.Detector.GeometryFwdRegion and (flags.Detector.GeometryAFP or flags.Detector.GeometryALFA or flags.Detector.GeometryZDC):
553 regionCreatorList += [result.popToolsAndMerge(FWDBeamLinePhysicsRegionToolCfg(flags))]
554 if flags.Detector.GeometryCalo:
555 if flags.Detector.GeometryLAr:
556 # Shower parameterization overrides the calibration hit flag
557 if flags.Sim.LArParameterization is not LArParameterization.NoFrozenShowers \
558 and flags.Sim.CalibrationRun in [CalibrationRun.LAr, CalibrationRun.LArTile, CalibrationRun.LArTileZDC, CalibrationRun.DeadLAr]:
559 Logging.log.info('You requested both calibration hits and frozen showers / parameterization in the LAr.')
560 Logging.log.info(' Such a configuration is not allowed, and would give junk calibration hits where the showers are modified.')
561 Logging.log.info(' Please try again with a different value of either flags.Sim.LArParameterization (' + str(flags.Sim.LArParameterization.value) + ') or flags.Sim.CalibrationRun ('+str(flags.Sim.CalibrationRun.value)+')')
562 raise RuntimeError('Configuration not allowed')
563 regionCreatorList += [
564 result.popToolsAndMerge(EMBPhysicsRegionToolCfg(flags)),
565 result.popToolsAndMerge(EMECPhysicsRegionToolCfg(flags)),
566 result.popToolsAndMerge(HECPhysicsRegionToolCfg(flags)),
567 result.popToolsAndMerge(FCALPhysicsRegionToolCfg(flags))]
568 fullCommandList = '\t'.join(flags.Sim.G4Commands)
569 if flags.Sim.LArParameterization is LArParameterization.FrozenShowers or 'EMECPara' in fullCommandList:
570 # EMECPara Physics region is used by Woodcock tracking
571 # and by EMEC Frozen Showers (the latter is not part
572 # of production configurations). NB The 'EMB'
573 # PhysicsRegion seems to be used by the Frozen Showers
574 # parametrization also. Unclear if this is correct -
575 # not a big issue as Frozen Showers are not used in
576 # the EMB in production configurations.
577 regionCreatorList += [
578 result.popToolsAndMerge(EMECParaPhysicsRegionToolCfg(flags))]
579 if flags.Sim.LArParameterization is not LArParameterization.NoFrozenShowers:
580 regionCreatorList += [result.popToolsAndMerge(FCALParaPhysicsRegionToolCfg(flags)),
581 result.popToolsAndMerge(FCAL2ParaPhysicsRegionToolCfg(flags))]
582 if flags.Sim.LArParameterization in [LArParameterization.DeadMaterialFrozenShowers, LArParameterization.FrozenShowersFCalOnly, LArParameterization.FastCaloSim]: # TODO Check this makes sense
583 pass
584 regionCreatorList += [
585 result.popToolsAndMerge(PreSampLArPhysicsRegionToolCfg(flags)),
586 result.popToolsAndMerge(DeadMaterialPhysicsRegionToolCfg(flags))]
587 if flags.Sim.LArParameterization is LArParameterization.FastCaloSim:
588 regionCreatorList += [result.popToolsAndMerge(CALOPhysicsRegionToolCfg(flags))]
589
592 if flags.Detector.GeometryMuon:
593 #todo - add the line below
594 regionCreatorList += [
595 result.popToolsAndMerge(DriftWallPhysicsRegionToolCfg(flags)),
596 result.popToolsAndMerge(DriftWall1PhysicsRegionToolCfg(flags)),
597 result.popToolsAndMerge(DriftWall2PhysicsRegionToolCfg(flags))]
598 if flags.Sim.CavernBackground not in [CavernBackground.Off, CavernBackground.Read] and not flags.Sim.RecordFlux:
599 regionCreatorList += [result.popToolsAndMerge(MuonSystemFastPhysicsRegionToolCfg(flags))]
600 result.setPrivateTools(regionCreatorList)
601 return result
602
603

◆ ATLASEnvelopeCfg()

G4GeometryToolConfig.ATLASEnvelopeCfg ( flags,
name = "Atlas",
** kwargs )

Definition at line 415 of file G4GeometryToolConfig.py.

415def ATLASEnvelopeCfg(flags, name="Atlas", **kwargs):
416 result = ComponentAccumulator()
417
418 kwargs.setdefault("DetectorName", "Atlas")
419 kwargs.setdefault("NSurfaces", 18)
420
421 innerRadii = [0.0] * 18
422 kwargs.setdefault("InnerRadii", innerRadii)
423
424
426
427
428 AtlasForwardOuterR = 2751.
429 AtlasOuterR1 = 14201.
430 AtlasOuterR2 = 14201.
431 # if flags.Beam.Type is not BeamType.Cosmics and not flags.Detector.GeometryMuon and not \
432 # (flags.Sim.CavernBackground is not CavernBackground.Signal):
433 if not (flags.Detector.GeometryMuon or flags.Detector.GeometryCavern):
434 AtlasOuterR1 = 4251.
435 AtlasOuterR2 = 4251.
436 if not flags.Detector.GeometryCalo:
437 AtlasOuterR1 = 1150.
438 AtlasOuterR2 = 1150.
439
440 outerRadii = [0.0] * 18
441 for i in (0, 1, 16, 17):
442 outerRadii[i] = 1501.
443 for i in (2, 3, 14, 15):
444 outerRadii[i] = AtlasForwardOuterR
445 for i in (4, 5, 12, 13):
446 outerRadii[i] = AtlasOuterR2
447 for i in range(6, 12):
448 outerRadii[i] = AtlasOuterR1
449
450
451 if flags.Sim.WorldRRange:
452 routValue = flags.Sim.WorldRRange
453 if flags.Sim.WorldRRange > max(AtlasOuterR1, AtlasOuterR2):
454 for i in range(4, 14):
455 outerRadii[i] = routValue
456 else:
457 raise RuntimeError('getATLASEnvelope: ERROR flags.Sim.WorldRRange must be > %f. Current value %f' % (max(AtlasOuterR1, AtlasOuterR2), routValue) )
458 kwargs.setdefault("OuterRadii", outerRadii)
459
460
461 zSurfaces = [-26046., -23001., -23001., -22031., -22031., -12899., -12899., -6741., -6741., 6741., 6741., 12899., 12899., 22031., 22031., 23001., 23001., 26046.] # FIXME units mm??
462
463 if flags.Detector.GeometryFwdRegion or flags.Detector.GeometryAFP or flags.Detector.GeometryALFA or flags.Detector.GeometryZDC:
464 zSurfaces[0] = -400000.
465 zSurfaces[17] = 400000.
466
467 #leave a check in for WorldRrange and WorldZrange?
468 if flags.Sim.WorldZRange:
469 if flags.Sim.WorldZRange < 26046.:
470 raise RuntimeError('getATLASEnvelope: ERROR flags.Sim.WorldZRange must be > 26046. Current value: %f' % flags.Sim.WorldZRange)
471 zSurfaces[17] = flags.Sim.WorldZRange + 100.
472 zSurfaces[16] = flags.Sim.WorldZRange + 50.
473 zSurfaces[15] = flags.Sim.WorldZRange + 50.
474 zSurfaces[14] = flags.Sim.WorldZRange
475 zSurfaces[13] = flags.Sim.WorldZRange
476 zSurfaces[0] = -flags.Sim.WorldZRange - 100.
477 zSurfaces[1] = -flags.Sim.WorldZRange - 50.
478 zSurfaces[2] = -flags.Sim.WorldZRange - 50.
479 zSurfaces[3] = -flags.Sim.WorldZRange
480 zSurfaces[4] = -flags.Sim.WorldZRange
481
482 kwargs.setdefault("ZSurfaces", zSurfaces)
483 SubDetectorList = result.popToolsAndMerge(generateSubDetectorList(flags))
484 kwargs.setdefault("SubDetectors", SubDetectorList)
485 result.setPrivateTools(PolyconicalEnvelope(name, **kwargs))
486 return result
487
488
#define max(a, b)
Definition cfImp.cxx:41

◆ BCMPrimeGeoDetectorToolCfg()

G4GeometryToolConfig.BCMPrimeGeoDetectorToolCfg ( flags,
name = 'BCMPrime',
** kwargs )

Definition at line 82 of file G4GeometryToolConfig.py.

82def BCMPrimeGeoDetectorToolCfg(flags, name='BCMPrime', **kwargs):
83 #set up geometry
84 from BCMPrimeGeoModelXml.BCMPrimeGeoModelConfig import BCMPrimeGeometryCfg
85 result = BCMPrimeGeometryCfg(flags)
86 kwargs.setdefault("DetectorName", "BCMPrime")
87 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
88 return result
89
90

◆ BeamPipeGeoDetectorToolCfg()

G4GeometryToolConfig.BeamPipeGeoDetectorToolCfg ( flags,
name = 'BeamPipe',
** kwargs )

Definition at line 46 of file G4GeometryToolConfig.py.

46def BeamPipeGeoDetectorToolCfg(flags, name='BeamPipe', **kwargs):
47 #set up geometry
48 from BeamPipeGeoModel.BeamPipeGMConfig import BeamPipeGeometryCfg
49 result = BeamPipeGeometryCfg(flags)
50 kwargs.setdefault("DetectorName", "BeamPipe")
51 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
52 return result
53
54

◆ CALOEnvelopeCfg()

G4GeometryToolConfig.CALOEnvelopeCfg ( flags,
name = "CALO",
** kwargs )

Definition at line 300 of file G4GeometryToolConfig.py.

300def CALOEnvelopeCfg(flags, name="CALO", **kwargs):
301 result = ComponentAccumulator()
302
303 kwargs.setdefault("DetectorName", "CALO")
304 if flags.GeoModel.Run >= LHCPeriod.Run4:
305 # Make room for HGTD (3420 mm < |z| < 3545 mm) but include JMTube and JMPlug
306 kwargs.setdefault("NSurfaces", 22)
307 kwargs.setdefault("InnerRadii", [41.,41.,41.,41.,41.,41.,64.,64.,120.,120.,1148.,1148.,120.,120.,64.,64.,41.,41.,41.,41.,41.,41.]) #FIXME Units?
308 kwargs.setdefault("OuterRadii", [415.,415.,3795.,3795.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,3795.,3795.,415.,415.]) #FIXME Units?
309 kwargs.setdefault("ZSurfaces", [-6781.,-6747.,-6747.,-6530.,-6530.,-4587.,-4587.,-4472.,-4472.,-3545.,-3545.,3545.,3545.,4472.,4472.,4587.,4587.,6530.,6530.,6747.,6747.,6781.]) #FIXME Units?
310 else:
311 kwargs.setdefault("NSurfaces", 18)
312 kwargs.setdefault("InnerRadii", [41.,41.,41.,41.,41.,41.,120.,120.,1148.,1148.,120.,120.,41.,41.,41.,41.,41.,41.]) #FIXME Units?
313 kwargs.setdefault("OuterRadii", [415.,415.,3795.,3795.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,3795.,3795.,415.,415.]) #FIXME Units?
314 kwargs.setdefault("ZSurfaces", [-6781.,-6747.,-6747.,-6530.,-6530.,-4587.,-4587.,-3475.,-3475.,3475.,3475.,4587.,4587.,6530.,6530.,6747.,6747.,6781.]) #FIXME Units?
315 SubDetectorList=[]
316 if flags.Detector.GeometryLAr:
317 toolLArMgr = result.popToolsAndMerge(LArMgrGeoDetectorToolCfg(flags))
318 SubDetectorList += [ toolLArMgr ]
319 if flags.Detector.GeometryTile:
320 toolTile = result.popToolsAndMerge(TileGeoDetectorToolCfg(flags))
321 SubDetectorList += [ toolTile ]
322 kwargs.setdefault("SubDetectors", SubDetectorList)
323 result.setPrivateTools(PolyconicalEnvelope(name, **kwargs))
324 return result
325
326

◆ CavernInfraGeoDetectorToolCfg()

G4GeometryToolConfig.CavernInfraGeoDetectorToolCfg ( flags,
name = 'CavernInfra',
** kwargs )

Definition at line 744 of file G4GeometryToolConfig.py.

744def CavernInfraGeoDetectorToolCfg(flags, name='CavernInfra', **kwargs):
745 from AtlasGeoModel.CavernGMConfig import CavernGeometryCfg
746 result = CavernGeometryCfg(flags)
747 kwargs.setdefault("DetectorName", "CavernInfra")
748 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
749 return result
750
751

◆ CavernWorldCfg()

G4GeometryToolConfig.CavernWorldCfg ( flags,
name = "Cavern",
** kwargs )

Definition at line 752 of file G4GeometryToolConfig.py.

752def CavernWorldCfg(flags, name="Cavern", **kwargs):
753 result = ComponentAccumulator()
754 kwargs.setdefault("DetectorName", "World")
755 bedrockDX = 302700
756 bedrockDZ = 301000
757 if flags.Sim.CavernBackground is CavernBackground.Off:
758
759 if flags.Sim.ISFRun:
760 # for ISF cosmics simulation, set world volume to biggest possible case
761 bedrockDX = 1000.*3000 # 3 km
762 bedrockDZ = 1000.*3000 # 3 km
763 else:
764 from CosmicGenerator.CosmicGeneratorConfig import CavernPropertyCalculator
765 theCavernProperties = CavernPropertyCalculator()
766 if theCavernProperties.BedrockDX(flags) > bedrockDX:
767 bedrockDX = theCavernProperties.BedrockDX(flags)
768 if theCavernProperties.BedrockDZ(flags) > bedrockDZ:
769 bedrockDZ = theCavernProperties.BedrockDZ(flags)
770
771 kwargs.setdefault("dX", bedrockDX) #FIXME Units?
772 kwargs.setdefault("dY", 57300 + 41000 + 1000) # 1 extra metre to help voxelization... #FIXME Units?
773 kwargs.setdefault("dZ", bedrockDZ) #FIXME Units?
774 # Subtraction Solid - has to be a better way to do this!!
775 kwargs.setdefault("NumberOfHoles", 1)
776 kwargs.setdefault("HoleNames", ['BelowCavern'])
777 kwargs.setdefault("Hole_dX", [bedrockDX])
778 kwargs.setdefault("Hole_dY", [41000])
779 kwargs.setdefault("Hole_dZ", [bedrockDZ])
780
781 kwargs.setdefault("HolePosX", [0])
782 kwargs.setdefault("HolePosY", [-58300])
783 kwargs.setdefault("HolePosZ", [0])
784
785 subDetectorList = []
786 subDetectorList += [ result.popToolsAndMerge(CavernInfraGeoDetectorToolCfg(flags))]
787 subDetectorList += [ result.popToolsAndMerge(ATLASEnvelopeCfg(flags))]
788
789 kwargs.setdefault("SubDetectors", subDetectorList)
790 result.setPrivateTools(BoxEnvelope(name, **kwargs))
791 return result

◆ CosmicShortCutCfg()

G4GeometryToolConfig.CosmicShortCutCfg ( flags,
name = "CosmicShortCut",
** kwargs )

Definition at line 369 of file G4GeometryToolConfig.py.

369def CosmicShortCutCfg(flags, name="CosmicShortCut", **kwargs):
370 kwargs.setdefault("DetectorName", "TTR_BARREL")
371 kwargs.setdefault("NSurfaces", 14)
372 kwargs.setdefault("InnerRadii", [70.,70.,12500.,12500.,12500.,12500.,13000.,13000.,12500.,12500.,12500.,12500.,70.,70.]) #FIXME Units?
373 kwargs.setdefault("OuterRadii", [12501.,12501.,12501.,12501.,13001.,13001.,13001.,13001.,13001.,13001.,12501.,12501.,12501.,12501.]) #FIXME Units?
374 kwargs.setdefault("ZSurfaces", [-22031.,-22030.,-22030.,-12901.,-12901.,-12900.,-12900., 12900.,12900.,12901.,12901.,22030.,22030.,22031.]) #FIXME Units?
375 SubDetectorList=[]
376 kwargs.setdefault("SubDetectors", SubDetectorList)
377 return PolyconicalEnvelope(name, **kwargs)
378
379

◆ ForwardRegionEnvelopeCfg()

G4GeometryToolConfig.ForwardRegionEnvelopeCfg ( flags,
name = 'ForwardRegion',
** kwargs )

Definition at line 327 of file G4GeometryToolConfig.py.

327def ForwardRegionEnvelopeCfg(flags, name='ForwardRegion', **kwargs):
328 result = ComponentAccumulator()
329
330 kwargs.setdefault("DetectorName", "ForDetEnvelope")
331 SubDetectorList=[]
332
333 if flags.Detector.GeometryFwdRegion: # I.e. fully simulate the FwdRegion rather than using BeamTransport to get to Forward Detectors
334 toolFwdRegion = result.popToolsAndMerge(FwdRegionGeoDetectorToolCfg(flags))
335 SubDetectorList += [ toolFwdRegion ]
336
337 #TODO - migrate this over (WIP at the moment) (dnoel)
338 #toolFwdRegionProperties = ForwardRegionPropertiesCfg(flags)
339 #result.addPublicTool(toolFwdRegionProperties) #add this as a service later?
340 if flags.Detector.GeometryZDC:
341 toolZDC = result.popToolsAndMerge(ZDCGeoDetectorToolCfg(flags))
342 SubDetectorList += [ toolZDC ]
343 if flags.Detector.GeometryALFA:
344 toolALFA = result.popToolsAndMerge(ALFAGeoDetectorToolCfg(flags))
345 SubDetectorList += [ toolALFA ]
346 if flags.Detector.GeometryAFP:
347 toolAFP = result.popToolsAndMerge(AFPGeoDetectorToolCfg(flags))
348 SubDetectorList += [ toolAFP ]
349 kwargs.setdefault("SubDetectors", SubDetectorList)
350
351 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
352 return result
353
354

◆ FwdRegionGeoDetectorToolCfg()

G4GeometryToolConfig.FwdRegionGeoDetectorToolCfg ( flags,
name = 'FwdRegion',
** kwargs )

Definition at line 204 of file G4GeometryToolConfig.py.

204def FwdRegionGeoDetectorToolCfg(flags, name='FwdRegion', **kwargs):
205 #set up geometry
206 from AtlasGeoModel.ForDetGeoModelConfig import ForDetGeometryCfg
207 result = ForDetGeometryCfg(flags)
208 kwargs.setdefault("DetectorName", "FwdRegion")
209 kwargs.setdefault("GeoDetectorName", "ForwardRegionGeoModel")
210 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
211 return result
212
213

◆ G4AtlasDetectorConstructionToolCfg()

G4GeometryToolConfig.G4AtlasDetectorConstructionToolCfg ( flags,
name = "G4AtlasDetectorConstructionTool",
** kwargs )

Definition at line 706 of file G4GeometryToolConfig.py.

706def G4AtlasDetectorConstructionToolCfg(flags, name="G4AtlasDetectorConstructionTool", **kwargs):
707 result = ComponentAccumulator()
708
709
710 kwargs.setdefault("GeometryConfigurationTools", result.popToolsAndMerge(GeometryConfigurationToolsCfg(flags)))
711
712 kwargs.setdefault("FastSimMasterTool", result.addPublicTool(result.popToolsAndMerge(FastSimulationMasterToolCfg(flags))))
713
714 if "SenDetMasterTool" not in kwargs:
715 kwargs.setdefault("SenDetMasterTool",
716 result.addPublicTool(result.popToolsAndMerge(SensitiveDetectorMasterToolCfg(flags))))
717
718 if flags.Beam.Type is BeamType.TestBeam:
719 # Tile test beam
720 from G4AtlasTools.G4TestBeamGeometryConfig import TileTB_WorldEnvelopeCfg
721 kwargs.setdefault("World", result.popToolsAndMerge(TileTB_WorldEnvelopeCfg(flags)))
722 kwargs.setdefault("RegionCreators", []) # Empty for Tile test beam
723 kwargs.setdefault("FieldManagers", []) # Empty for Tile test beam
724 elif False: # This block is in case we ever decide to support LAr Test Beam again in Athena in the future
725 kwargs.setdefault("World", 'LArTB_World')
726 kwargs.setdefault("RegionCreators", result.popToolsAndMerge(TB_RegionCreatorListCfg(flags)))
727 kwargs.setdefault("FieldManagers", result.popToolsAndMerge(TB_FieldMgrListCfg(flags)))
728 else:
729 if flags.Detector.GeometryCavern:
730 kwargs.setdefault("World", result.popToolsAndMerge(CavernWorldCfg(flags)))
731 else:
732 kwargs.setdefault("World", result.popToolsAndMerge(ATLASEnvelopeCfg(flags)))
733 kwargs.setdefault("RegionCreators", result.popToolsAndMerge(ATLAS_RegionCreatorListCfg(flags)))
734 if flags.BField.solenoidOn or flags.BField.barrelToroidOn or flags.BField.endcapToroidOn:
735 kwargs.setdefault("FieldManagers", result.popToolsAndMerge(ATLAS_FieldMgrListCfg(flags)))
736
737 if flags.Sim.LArParameterization is LArParameterization.FastCaloSim:
738 kwargs.setdefault("G4CaloTransportTool", result.addPublicTool(result.popToolsAndMerge(G4CaloTransportToolCfg(flags))))
739
740 result.setPrivateTools(G4AtlasDetectorConstructionTool(name, **kwargs))
741 return result
742
743
Tool for the concrete implementation of a G4Atlas-based detector construction.

◆ G4GeometryNotifierSvcCfg()

G4GeometryToolConfig.G4GeometryNotifierSvcCfg ( flags,
name = "G4GeometryNotifierSvc",
** kwargs )

Definition at line 28 of file G4GeometryToolConfig.py.

28def G4GeometryNotifierSvcCfg(flags, name="G4GeometryNotifierSvc", **kwargs):
29 result = ComponentAccumulator()
30 kwargs.setdefault("ActivateLVNotifier", True)
31 kwargs.setdefault("ActivatePVNotifier", False)
32 result.addService(CompFactory.G4GeometryNotifierSvc(name, **kwargs), primary = True)
33 return result
34
35

◆ generateSubDetectorList()

G4GeometryToolConfig.generateSubDetectorList ( flags)

Definition at line 380 of file G4GeometryToolConfig.py.

380def generateSubDetectorList(flags):
381 result = ComponentAccumulator()
382 SubDetectorList=[]
383
384 if flags.Beam.Type is BeamType.Cosmics or flags.Sim.CavernBackground not in [CavernBackground.Off, CavernBackground.Signal]:
385 if flags.Beam.Type is BeamType.Cosmics and flags.hasFlag("Sim.ReadTR"):
386 SubDetectorList += [ CosmicShortCutCfg(flags) ]
387
388 if flags.Detector.GeometryMuon:
389 SubDetectorList += [ result.popToolsAndMerge(MUONEnvelopeCfg(flags)) ] #FIXME rename to MUON when safe
390 if flags.Detector.SpecialGeometryToroid:
391 SubDetectorList+=[result.popToolsAndMerge(ToroidGeoDetectorToolCfg(flags))]
392 if flags.Detector.GeometryID:
393 toolIDET = result.popToolsAndMerge(IDETEnvelopeCfg(flags))
394 SubDetectorList += [ toolIDET ]
395 if flags.Detector.GeometryITk or flags.Detector.GeometryHGTD: # TODO: HGTD is also here for now
396 toolITK = result.popToolsAndMerge(ITKEnvelopeCfg(flags))
397 SubDetectorList += [ toolITK ]
398 if flags.Detector.GeometryCalo:
399 toolCALO = result.popToolsAndMerge(CALOEnvelopeCfg(flags))
400 SubDetectorList += [ toolCALO ]
401 if flags.Detector.GeometryBpipe:
402 toolBpipe = result.popToolsAndMerge(BeamPipeGeoDetectorToolCfg(flags))
403 SubDetectorList += [ toolBpipe ]
404 if flags.Detector.GeometryLucid:
405 toolLucid = result.popToolsAndMerge(LucidGeoDetectorToolCfg(flags))
406 SubDetectorList += [ toolLucid ]
407 if flags.Detector.GeometryFwdRegion or flags.Detector.GeometryAFP or flags.Detector.GeometryALFA or flags.Detector.GeometryZDC:
408 toolFwdRegion = result.popToolsAndMerge(ForwardRegionEnvelopeCfg(flags))
409 SubDetectorList += [ toolFwdRegion ]
410
411 result.setPrivateTools(SubDetectorList)
412 return result
413
414

◆ GeoDetectorToolCfg()

G4GeometryToolConfig.GeoDetectorToolCfg ( flags,
name = 'GeoDetectorTool',
** kwargs )

Definition at line 36 of file G4GeometryToolConfig.py.

36def GeoDetectorToolCfg(flags, name='GeoDetectorTool', **kwargs):
37 result = ComponentAccumulator()
38 from Geo2G4.Geo2G4Config import Geo2G4SvcCfg
39 kwargs.setdefault("Geo2G4Svc", result.getPrimaryAndMerge(Geo2G4SvcCfg(flags)))
40 #add the GeometryNotifierSvc
41 kwargs.setdefault("GeometryNotifierSvc", result.getPrimaryAndMerge(G4GeometryNotifierSvcCfg(flags)))
42 result.setPrivateTools(CompFactory.GeoDetectorTool(name, **kwargs))
43 return result
44
45

◆ GeometryConfigurationToolsCfg()

G4GeometryToolConfig.GeometryConfigurationToolsCfg ( flags)

Definition at line 694 of file G4GeometryToolConfig.py.

694def GeometryConfigurationToolsCfg(flags):
695 geoConfigToolList = []
696 # The methods for these tools should be defined in the
697 # package containing each tool, so G4AtlasTools in this case
698 result =ComponentAccumulator()
699 geoConfigToolList += [result.popToolsAndMerge(MaterialDescriptionToolCfg(flags))]
700 geoConfigToolList += [result.popToolsAndMerge(VoxelDensityToolCfg(flags))]
701 result.setPrivateTools(geoConfigToolList)
702 return result
703
704
705@AccumulatorCache

◆ HGTDGeoDetectorToolCfg()

G4GeometryToolConfig.HGTDGeoDetectorToolCfg ( flags,
name = 'HGTD',
** kwargs )

Definition at line 109 of file G4GeometryToolConfig.py.

109def HGTDGeoDetectorToolCfg(flags, name='HGTD', **kwargs):
110 #set up geometry
111 if flags.HGTD.Geometry.useGeoModelXml:
112 from HGTD_GeoModelXml.HGTD_GeoModelConfig import HGTD_SimulationGeometryCfg
113 else:
114 from HGTD_GeoModel.HGTD_GeoModelConfig import HGTD_SimulationGeometryCfg
115
116 result = HGTD_SimulationGeometryCfg(flags)
117 kwargs.setdefault("DetectorName", "HGTD")
118 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
119 return result
120
121

◆ HGTDServiceToolCfg()

G4GeometryToolConfig.HGTDServiceToolCfg ( flags,
name = 'HGTDServices',
** kwargs )

Definition at line 122 of file G4GeometryToolConfig.py.

122def HGTDServiceToolCfg(flags, name='HGTDServices', **kwargs):
123 #set up geometry
124 from HGTD_GeoModelXml.HGTDServiceGeoModelConfig import HGTDServiceGeoModelCfg
125 result = HGTDServiceGeoModelCfg(flags)
126 kwargs.setdefault("DetectorName", "HGTDServices")
127 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
128 return result
129
130

◆ IDETEnvelopeCfg()

G4GeometryToolConfig.IDETEnvelopeCfg ( flags,
name = "IDET",
** kwargs )

Definition at line 272 of file G4GeometryToolConfig.py.

272def IDETEnvelopeCfg(flags, name="IDET", **kwargs):
273 result = ComponentAccumulator()
274 kwargs.setdefault("DetectorName", "IDET")
275 innerRadius = 37.*mm # RUN1 default
276 if flags.GeoModel.Run in [LHCPeriod.Run2, LHCPeriod.Run3]:
277 innerRadius = 28.9*mm #29.15*mm
278 kwargs.setdefault("InnerRadius", innerRadius)
279 kwargs.setdefault("OuterRadius", 1.148*m)
280 kwargs.setdefault("dZ", 347.5*cm)
281
282 SubDetectorList=[]
283 if flags.Detector.GeometryPixel:
284 toolPixel = result.popToolsAndMerge(PixelGeoDetectorToolCfg(flags))
285 SubDetectorList += [toolPixel]
286 if flags.Detector.GeometrySCT:
287 toolSCT = result.popToolsAndMerge(SCTGeoDetectorToolCfg(flags))
288 SubDetectorList += [toolSCT]
289 if flags.Detector.GeometryTRT:
290 toolTRT = result.popToolsAndMerge(TRTGeoDetectorToolCfg(flags))
291 SubDetectorList += [toolTRT]
292
293 toolIDetServices = result.popToolsAndMerge(IDetServicesMatGeoDetectorToolCfg(flags))
294 SubDetectorList += [toolIDetServices]
295 kwargs.setdefault("SubDetectors", SubDetectorList)
296 result.setPrivateTools(CylindricalEnvelope(name, **kwargs))
297 return result
298
299

◆ IDetServicesMatGeoDetectorToolCfg()

G4GeometryToolConfig.IDetServicesMatGeoDetectorToolCfg ( flags,
name = 'IDetServicesMat',
** kwargs )

Definition at line 140 of file G4GeometryToolConfig.py.

140def IDetServicesMatGeoDetectorToolCfg(flags, name='IDetServicesMat', **kwargs):
141 #set up geometry
142 from InDetServMatGeoModel.InDetServMatGeoModelConfig import InDetServiceMaterialCfg
143 result = InDetServiceMaterialCfg(flags)
144 kwargs.setdefault("DetectorName", "InDetServMat")
145 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
146 return result
147
148

◆ ITKEnvelopeCfg()

G4GeometryToolConfig.ITKEnvelopeCfg ( flags,
name = "ITK",
** kwargs )

Definition at line 237 of file G4GeometryToolConfig.py.

237def ITKEnvelopeCfg(flags, name="ITK", **kwargs):
238 result = ComponentAccumulator()
239
240 kwargs.setdefault("DetectorName", "ITK")
241 kwargs.setdefault("InnerRadius", 28.8*mm)
242 kwargs.setdefault("OuterRadius", 1.148*m)
243 if flags.GeoModel.Run >= LHCPeriod.Run4:
244 # ITk should include the HGTD (3420 mm < |z| < 3545 mm) for now
245 kwargs.setdefault("dZ", 354.5*cm)
246 else:
247 kwargs.setdefault("dZ", 347.5*cm)
248
249 SubDetectorList=[]
250 if flags.Detector.GeometryITkPixel:
251 toolITkPixel = result.popToolsAndMerge(ITkPixelGeoDetectorToolCfg(flags))
252 SubDetectorList += [toolITkPixel]
253 if flags.Detector.GeometryITkStrip:
254 toolITkStrip = result.popToolsAndMerge(ITkStripGeoDetectorToolCfg(flags))
255 SubDetectorList += [toolITkStrip]
256 if flags.Detector.GeometryPLR:
257 toolPLR = result.popToolsAndMerge(PLRGeoDetectorToolCfg(flags))
258 SubDetectorList += [toolPLR]
259 if flags.Detector.GeometryBCMPrime:
260 toolBCMPrime = result.popToolsAndMerge(BCMPrimeGeoDetectorToolCfg(flags))
261 SubDetectorList += [toolBCMPrime]
262 # TODO: for now HGTD is also here
263 if flags.Detector.GeometryHGTD:
264 toolHGTD = result.popToolsAndMerge(HGTDGeoDetectorToolCfg(flags))
265 SubDetectorList += [toolHGTD]
266
267 kwargs.setdefault("SubDetectors", SubDetectorList)
268 result.setPrivateTools(CylindricalEnvelope(name, **kwargs))
269 return result
270
271

◆ ITkPixelGeoDetectorToolCfg()

G4GeometryToolConfig.ITkPixelGeoDetectorToolCfg ( flags,
name = 'ITkPixel',
** kwargs )

Definition at line 91 of file G4GeometryToolConfig.py.

91def ITkPixelGeoDetectorToolCfg(flags, name='ITkPixel', **kwargs):
92 #set up geometry
93 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelSimulationGeometryCfg
94 result = ITkPixelSimulationGeometryCfg(flags)
95 kwargs.setdefault("DetectorName", "ITkPixel")
96 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
97 return result
98
99

◆ ITkStripGeoDetectorToolCfg()

G4GeometryToolConfig.ITkStripGeoDetectorToolCfg ( flags,
name = 'ITkStrip',
** kwargs )

Definition at line 100 of file G4GeometryToolConfig.py.

100def ITkStripGeoDetectorToolCfg(flags, name='ITkStrip', **kwargs):
101 #set up geometry
102 from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripSimulationGeometryCfg
103 result = ITkStripSimulationGeometryCfg(flags)
104 kwargs.setdefault("DetectorName", "ITkStrip")
105 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
106 return result
107
108

◆ LArMgrGeoDetectorToolCfg()

G4GeometryToolConfig.LArMgrGeoDetectorToolCfg ( flags,
name = 'LArMgr',
** kwargs )

Definition at line 149 of file G4GeometryToolConfig.py.

149def LArMgrGeoDetectorToolCfg(flags, name='LArMgr', **kwargs):
150 #set up geometry
151 from LArGeoAlgsNV.LArGMConfig import LArGMCfg
152 result = LArGMCfg(flags)
153 kwargs.setdefault("DetectorName", "LArMgr")
154 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
155 return result
156
157

◆ LucidGeoDetectorToolCfg()

G4GeometryToolConfig.LucidGeoDetectorToolCfg ( flags,
name = 'Lucid',
** kwargs )

Definition at line 167 of file G4GeometryToolConfig.py.

167def LucidGeoDetectorToolCfg(flags, name='Lucid', **kwargs):
168 #set up geometry
169 from AtlasGeoModel.ForDetGeoModelConfig import ForDetGeometryCfg
170 result=ForDetGeometryCfg(flags)
171 kwargs.setdefault("DetectorName", "LUCID")
172 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
173 return result
174
175

◆ MaterialDescriptionToolCfg()

G4GeometryToolConfig.MaterialDescriptionToolCfg ( flags,
name = "MaterialDescriptionTool",
** kwargs )

Definition at line 489 of file G4GeometryToolConfig.py.

489def MaterialDescriptionToolCfg(flags, name="MaterialDescriptionTool", **kwargs):
490
491 result = ComponentAccumulator()
492 kwargs.setdefault("TestBeam", flags.Beam.Type is BeamType.TestBeam)
493 result.setPrivateTools(MaterialDescriptionTool(name, **kwargs))
494 return result
495
496
Class to allow for not-standard material construction.

◆ MUONEnvelopeCfg()

G4GeometryToolConfig.MUONEnvelopeCfg ( flags,
name = "MUONQ02",
** kwargs )

Definition at line 355 of file G4GeometryToolConfig.py.

355def MUONEnvelopeCfg(flags, name="MUONQ02", **kwargs): #FIXME rename to MUON when safe (IS IT SAFE?))
356 result = ComponentAccumulator()
357 if not flags.Detector.GeometryMuon:
358 return result
359 kwargs.setdefault("DetectorName", "MUONQ02") #FIXME rename to MUON when safe
360 kwargs.setdefault("NSurfaces", 34)
361 kwargs.setdefault("InnerRadii", [1050.,1050.,1050.,1050.,436.7,436.7,279.,279.,70.,70.,420.,420.,3800.,3800.,4255.,4255.,4255.,4255.,4255.,4255.,3800.,3800.,420.,420.,70.,70.,279.,279.,436.7,436.7,1050.,1050.,1050.,1050.]) #FIXME Units?
362 kwargs.setdefault("OuterRadii", [1500.,1500.,2750.,2750.,12650.,12650.,13400.,13400.,14200.,14200.,14200.,14200.,14200.,14200.,14200.,14200.,13000.,13000.,14200.,14200.,14200.,14200.,14200.,14200.,14200.,14200.,13400.,13400.,12650.,12650.,2750.,2750.,1500.,1500.]) #FIXME Units?
363 kwargs.setdefault("ZSurfaces", [-26046.,-23001.,-23001.,-22030.,-22030.,-18650.,-18650.,-12900.,-12900.,-6783.,-6783.,-6748.,-6748.,-6550.,-6550.,-4000.,-4000.,4000.,4000.,6550.,6550.,6748.,6748.,6783.,6783.,12900.,12900.,18650.,18650.,22030.,22030.,23001.,23001.,26046.]) #FIXME Units?
364 kwargs.setdefault("SubDetectors", [result.popToolsAndMerge(MuonGeoDetectorToolCfg(flags))])
365 result.setPrivateTools(PolyconicalEnvelope(name, **kwargs))
366 return result
367
368

◆ MuonGeoDetectorToolCfg()

G4GeometryToolConfig.MuonGeoDetectorToolCfg ( flags,
name = 'Muon',
** kwargs )

Definition at line 214 of file G4GeometryToolConfig.py.

214def MuonGeoDetectorToolCfg(flags, name='Muon', **kwargs):
215 #set up geometry
216 result = ComponentAccumulator()
217 if not flags.Muon.usePhaseIIGeoSetup:
218 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
219 result.merge(MuonGeoModelCfg(flags))
220 kwargs.setdefault("DetectorName", "Muon")
221 else:
222 kwargs.setdefault("DetectorName", "MuonR4")
223 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
224 return result
225

◆ PixelGeoDetectorToolCfg()

G4GeometryToolConfig.PixelGeoDetectorToolCfg ( flags,
name = 'Pixel',
** kwargs )

Definition at line 55 of file G4GeometryToolConfig.py.

55def PixelGeoDetectorToolCfg(flags, name='Pixel', **kwargs):
56 #set up geometry
57 from PixelGeoModel.PixelGeoModelConfig import PixelSimulationGeometryCfg
58 result = PixelSimulationGeometryCfg(flags)
59 kwargs.setdefault("DetectorName", "Pixel")
60 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
61 return result
62
63

◆ PLRGeoDetectorToolCfg()

G4GeometryToolConfig.PLRGeoDetectorToolCfg ( flags,
name = 'PLR',
** kwargs )

Definition at line 73 of file G4GeometryToolConfig.py.

73def PLRGeoDetectorToolCfg(flags, name='PLR', **kwargs):
74 #set up geometry
75 from PLRGeoModelXml.PLR_GeoModelConfig import PLR_GeometryCfg
76 result = PLR_GeometryCfg(flags)
77 kwargs.setdefault("DetectorName", "PLR")
78 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
79 return result
80
81

◆ SCTGeoDetectorToolCfg()

G4GeometryToolConfig.SCTGeoDetectorToolCfg ( flags,
name = 'SCT',
** kwargs )

Definition at line 64 of file G4GeometryToolConfig.py.

64def SCTGeoDetectorToolCfg(flags, name='SCT', **kwargs):
65 #set up geometry
66 from SCT_GeoModel.SCT_GeoModelConfig import SCT_SimulationGeometryCfg
67 result = SCT_SimulationGeometryCfg(flags)
68 kwargs.setdefault("DetectorName", "SCT")
69 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
70 return result
71
72

◆ TB_FieldMgrListCfg()

G4GeometryToolConfig.TB_FieldMgrListCfg ( flags)

Definition at line 687 of file G4GeometryToolConfig.py.

687def TB_FieldMgrListCfg(flags):
688 fieldMgrList = []
689 result = ComponentAccumulator()
690 result.setPrivateTools(fieldMgrList)
691 return result
692
693

◆ TB_RegionCreatorListCfg()

G4GeometryToolConfig.TB_RegionCreatorListCfg ( flags)

Definition at line 604 of file G4GeometryToolConfig.py.

604def TB_RegionCreatorListCfg(flags):
605 regionCreatorList = []
606 result = ComponentAccumulator()
607 # Deliberately left commented out for now
608 #TODO - migrate below>>
609 #if (flags.GeoModel.AtlasVersion=="tb_LArH6_2003"):
610 # if (flags.Detector.GeometryLAr):
611 # regionCreatorList += [FCALPhysicsRegionTool(flags)]
612 #elif (flags.GeoModel.AtlasVersion=="tb_LArH6_2002"):
613 # if (flags.Detector.GeometryLAr):
614 # regionCreatorList += [HECPhysicsRegionTool(flags)]
615 #elif (flags.GeoModel.AtlasVersion=="tb_LArH6EC_2002"):
616 # if (flags.Detector.GeometryLAr):
617 # regionCreatorList += [EMECPhysicsRegionTool(flags)]
618 #elif (flags.GeoModel.AtlasVersion=="tb_LArH6_2004"):
619 # if (flags.Sim.LArTB_H6Hec.get_Value()):
620 # regionCreatorList += [HECPhysicsRegionTool(flags)]
621 # if (flags.Sim.LArTB_H6Emec.get_Value()):
622 # regionCreatorList += [EMECPhysicsRegionTool(flags)]
623 # if (flags.Sim.LArTB_H6Fcal.get_Value()):
624 # regionCreatorList += [FCALPhysicsRegionTool(flags)]
625 #<<migrate above
626 result.setPrivateTools(regionCreatorList)
627 return result
628
629

◆ TileGeoDetectorToolCfg()

G4GeometryToolConfig.TileGeoDetectorToolCfg ( flags,
name = 'Tile',
** kwargs )

Definition at line 158 of file G4GeometryToolConfig.py.

158def TileGeoDetectorToolCfg(flags, name='Tile', **kwargs):
159 #set up geometry
160 from TileGeoModel.TileGMConfig import TileGMCfg
161 result = TileGMCfg(flags)
162 kwargs.setdefault("DetectorName", "Tile")
163 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
164 return result
165
166

◆ ToroidGeoDetectorToolCfg()

G4GeometryToolConfig.ToroidGeoDetectorToolCfg ( flags,
name = "Toroid",
** kwargs )

Definition at line 226 of file G4GeometryToolConfig.py.

226def ToroidGeoDetectorToolCfg(flags, name="Toroid", **kwargs):
227 kwargs.setdefault("DetectorName", "Toroid")
228 result = ComponentAccumulator()
229 if not flags.Detector.SpecialGeometryToroid:
230 return result
231 from MuonGeoModelR4.MuonGeoModelConfig import ToroidGeoModelToolCfg
232 result.merge(ToroidGeoModelToolCfg(flags))
233 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
234 return result
235
236

◆ TRTGeoDetectorToolCfg()

G4GeometryToolConfig.TRTGeoDetectorToolCfg ( flags,
name = 'TRT',
** kwargs )

Definition at line 131 of file G4GeometryToolConfig.py.

131def TRTGeoDetectorToolCfg(flags, name='TRT', **kwargs):
132 #set up geometry
133 from TRT_GeoModel.TRT_GeoModelConfig import TRT_SimulationGeometryCfg
134 result = TRT_SimulationGeometryCfg(flags)
135 kwargs.setdefault("DetectorName", "TRT")
136 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
137 return result
138
139

◆ VoxelDensityToolCfg()

G4GeometryToolConfig.VoxelDensityToolCfg ( flags,
name = "VoxelDensityTool",
** kwargs )

Definition at line 497 of file G4GeometryToolConfig.py.

497def VoxelDensityToolCfg(flags, name="VoxelDensityTool", **kwargs):
498
499 voxelDensitySettings = {}
500 if flags.Detector.GeometryITkPixel:
501 voxelDensitySettings["ITkPixelDetector"] = 0.05
502 if flags.Detector.GeometryITkStrip:
503 voxelDensitySettings["ITkStrip::Barrel"] = 0.05
504 voxelDensitySettings["ITkStrip::ITkStrip_Forward"] = 0.05
505
507 voxelDensitySettings["ITkStrip::SCT_Forward"] = 0.05
508 kwargs.setdefault("VolumeVoxellDensityLevel",voxelDensitySettings)
509 result = ComponentAccumulator()
510 result.setPrivateTools(VoxelDensityTool(name, **kwargs))
511 return result
512
513
Class to allow for not-standard material construction.

◆ ZDCGeoDetectorToolCfg()

G4GeometryToolConfig.ZDCGeoDetectorToolCfg ( flags,
name = 'ZDC',
** kwargs )

Definition at line 185 of file G4GeometryToolConfig.py.

185def ZDCGeoDetectorToolCfg(flags, name='ZDC', **kwargs):
186 #set up geometry
187 from AtlasGeoModel.ForDetGeoModelConfig import ForDetGeometryCfg
188 result = ForDetGeometryCfg(flags)
189 kwargs.setdefault("DetectorName", "ZDC")
190 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
191 return result
192
193

Variable Documentation

◆ BoxEnvelope

G4GeometryToolConfig.BoxEnvelope

Definition at line 20 of file G4GeometryToolConfig.py.

◆ CylindricalEnvelope

G4GeometryToolConfig.CylindricalEnvelope

Definition at line 20 of file G4GeometryToolConfig.py.

◆ G4AtlasDetectorConstructionTool

G4GeometryToolConfig.G4AtlasDetectorConstructionTool

Definition at line 20 of file G4GeometryToolConfig.py.

◆ MaterialDescriptionTool

G4GeometryToolConfig.MaterialDescriptionTool

Definition at line 20 of file G4GeometryToolConfig.py.

◆ PolyconicalEnvelope

G4GeometryToolConfig.PolyconicalEnvelope

Definition at line 20 of file G4GeometryToolConfig.py.

◆ VoxelDensityTool

G4GeometryToolConfig.VoxelDensityTool

Definition at line 20 of file G4GeometryToolConfig.py.