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)
 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 627 of file G4GeometryToolConfig.py.

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

◆ ATLAS_RegionCreatorListCfg()

G4GeometryToolConfig.ATLAS_RegionCreatorListCfg ( flags)

Definition at line 510 of file G4GeometryToolConfig.py.

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

◆ ATLASEnvelopeCfg()

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

Definition at line 411 of file G4GeometryToolConfig.py.

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

290def CALOEnvelopeCfg(flags, name="CALO", **kwargs):
291 result = ComponentAccumulator()
292
293 kwargs.setdefault("DetectorName", "CALO")
294 if flags.GeoModel.Run >= LHCPeriod.Run4:
295 # Make room for HGTD (3420 mm < |z| < 3545 mm) but include JMTube and JMPlug
296 kwargs.setdefault("NSurfaces", 22)
297 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?
298 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?
299 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?
300 else:
301 kwargs.setdefault("NSurfaces", 18)
302 kwargs.setdefault("InnerRadii", [41.,41.,41.,41.,41.,41.,120.,120.,1148.,1148.,120.,120.,41.,41.,41.,41.,41.,41.]) #FIXME Units?
303 kwargs.setdefault("OuterRadii", [415.,415.,3795.,3795.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,4251.,3795.,3795.,415.,415.]) #FIXME Units?
304 kwargs.setdefault("ZSurfaces", [-6781.,-6747.,-6747.,-6530.,-6530.,-4587.,-4587.,-3475.,-3475.,3475.,3475.,4587.,4587.,6530.,6530.,6747.,6747.,6781.]) #FIXME Units?
305 SubDetectorList=[]
306 if flags.Detector.GeometryLAr:
307 toolLArMgr = result.popToolsAndMerge(LArMgrGeoDetectorToolCfg(flags))
308 SubDetectorList += [ toolLArMgr ]
309 if flags.Detector.GeometryTile:
310 toolTile = result.popToolsAndMerge(TileGeoDetectorToolCfg(flags))
311 SubDetectorList += [ toolTile ]
312 kwargs.setdefault("SubDetectors", SubDetectorList)
313 result.setPrivateTools(PolyconicalEnvelope(name, **kwargs))
314 return result
315
316

◆ CavernInfraGeoDetectorToolCfg()

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

Definition at line 740 of file G4GeometryToolConfig.py.

740def CavernInfraGeoDetectorToolCfg(flags, name='CavernInfra', **kwargs):
741 from AtlasGeoModel.CavernGMConfig import CavernGeometryCfg
742 result = CavernGeometryCfg(flags)
743 kwargs.setdefault("DetectorName", "CavernInfra")
744 result.setPrivateTools(result.popToolsAndMerge(GeoDetectorToolCfg(flags, name, **kwargs)))
745 return result
746
747

◆ CavernWorldCfg()

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

Definition at line 748 of file G4GeometryToolConfig.py.

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

◆ CosmicShortCutCfg()

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

Definition at line 363 of file G4GeometryToolConfig.py.

363def CosmicShortCutCfg(flags, name="CosmicShortCut", **kwargs):
364 kwargs.setdefault("DetectorName", "TTR_BARREL")
365 kwargs.setdefault("NSurfaces", 14)
366 kwargs.setdefault("InnerRadii", [70.,70.,12500.,12500.,12500.,12500.,13000.,13000.,12500.,12500.,12500.,12500.,70.,70.]) #FIXME Units?
367 kwargs.setdefault("OuterRadii", [12501.,12501.,12501.,12501.,13001.,13001.,13001.,13001.,13001.,13001.,12501.,12501.,12501.,12501.]) #FIXME Units?
368 kwargs.setdefault("ZSurfaces", [-22031.,-22030.,-22030.,-12901.,-12901.,-12900.,-12900., 12900.,12900.,12901.,12901.,22030.,22030.,22031.]) #FIXME Units?
369 SubDetectorList=[]
370 kwargs.setdefault("SubDetectors", SubDetectorList)
371 return PolyconicalEnvelope(name, **kwargs)
372
373

◆ ForwardRegionEnvelopeCfg()

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

Definition at line 317 of file G4GeometryToolConfig.py.

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

◆ 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 702 of file G4GeometryToolConfig.py.

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

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

◆ 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 690 of file G4GeometryToolConfig.py.

690def GeometryConfigurationToolsCfg(flags):
691 geoConfigToolList = []
692 # The methods for these tools should be defined in the
693 # package containing each tool, so G4AtlasTools in this case
694 result =ComponentAccumulator()
695 geoConfigToolList += [result.popToolsAndMerge(MaterialDescriptionToolCfg(flags))]
696 geoConfigToolList += [result.popToolsAndMerge(VoxelDensityToolCfg(flags))]
697 result.setPrivateTools(geoConfigToolList)
698 return result
699
700
701@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 262 of file G4GeometryToolConfig.py.

262def IDETEnvelopeCfg(flags, name="IDET", **kwargs):
263 result = ComponentAccumulator()
264 kwargs.setdefault("DetectorName", "IDET")
265 innerRadius = 37.*mm # RUN1 default
266 if flags.GeoModel.Run in [LHCPeriod.Run2, LHCPeriod.Run3]:
267 innerRadius = 28.9*mm #29.15*mm
268 kwargs.setdefault("InnerRadius", innerRadius)
269 kwargs.setdefault("OuterRadius", 1.148*m)
270 kwargs.setdefault("dZ", 347.5*cm)
271
272 SubDetectorList=[]
273 if flags.Detector.GeometryPixel:
274 toolPixel = result.popToolsAndMerge(PixelGeoDetectorToolCfg(flags))
275 SubDetectorList += [toolPixel]
276 if flags.Detector.GeometrySCT:
277 toolSCT = result.popToolsAndMerge(SCTGeoDetectorToolCfg(flags))
278 SubDetectorList += [toolSCT]
279 if flags.Detector.GeometryTRT:
280 toolTRT = result.popToolsAndMerge(TRTGeoDetectorToolCfg(flags))
281 SubDetectorList += [toolTRT]
282
283 toolIDetServices = result.popToolsAndMerge(IDetServicesMatGeoDetectorToolCfg(flags))
284 SubDetectorList += [toolIDetServices]
285 kwargs.setdefault("SubDetectors", SubDetectorList)
286 result.setPrivateTools(CylindricalEnvelope(name, **kwargs))
287 return result
288
289

◆ 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 227 of file G4GeometryToolConfig.py.

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

◆ 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 485 of file G4GeometryToolConfig.py.

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

◆ MUONEnvelopeCfg()

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

Definition at line 345 of file G4GeometryToolConfig.py.

345def MUONEnvelopeCfg(flags, name="MUONQ02", **kwargs): #FIXME rename to MUON when safe (IS IT SAFE?))
346 result = ComponentAccumulator()
347
348 kwargs.setdefault("DetectorName", "MUONQ02") #FIXME rename to MUON when safe
349 kwargs.setdefault("NSurfaces", 34)
350 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?
351 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?
352 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?
353 SubDetectorList=[]
354 if flags.Detector.GeometryMuon:
355 toolMuon = result.popToolsAndMerge(MuonGeoDetectorToolCfg(flags))
356 SubDetectorList += [ toolMuon ]
357
358 kwargs.setdefault("SubDetectors", SubDetectorList)
359 result.setPrivateTools(PolyconicalEnvelope(name, **kwargs))
360 return result
361
362

◆ 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
226

◆ 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 683 of file G4GeometryToolConfig.py.

683def TB_FieldMgrListCfg(flags):
684 fieldMgrList = []
685 result = ComponentAccumulator()
686 result.setPrivateTools(fieldMgrList)
687 return result
688
689

◆ TB_RegionCreatorListCfg()

G4GeometryToolConfig.TB_RegionCreatorListCfg ( flags)

Definition at line 600 of file G4GeometryToolConfig.py.

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

◆ 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

◆ 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 493 of file G4GeometryToolConfig.py.

493def VoxelDensityToolCfg(flags, name="VoxelDensityTool", **kwargs):
494
495 voxelDensitySettings = {}
496 if flags.Detector.GeometryITkPixel:
497 voxelDensitySettings["ITkPixelDetector"] = 0.05
498 if flags.Detector.GeometryITkStrip:
499 voxelDensitySettings["ITkStrip::Barrel"] = 0.05
500 voxelDensitySettings["ITkStrip::ITkStrip_Forward"] = 0.05
501
503 voxelDensitySettings["ITkStrip::SCT_Forward"] = 0.05
504 kwargs.setdefault("VolumeVoxellDensityLevel",voxelDensitySettings)
505 result = ComponentAccumulator()
506 result.setPrivateTools(VoxelDensityTool(name, **kwargs))
507 return result
508
509
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.