ATLAS Offline Software
Loading...
Searching...
No Matches
python.JetAnalysisConfig.RScanJetAnalysisConfig Class Reference
Inheritance diagram for python.JetAnalysisConfig.RScanJetAnalysisConfig:
Collaboration diagram for python.JetAnalysisConfig.RScanJetAnalysisConfig:

Public Member Functions

 __init__ (self)
 instanceName (self)
 makeAlgs (self, config)

Public Attributes

str jetCollection = "AnalysisJets") :
 recalibratePhyslite

Detailed Description

the ConfigBlock for the r-scan jet sequence

Definition at line 544 of file JetAnalysisConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.JetAnalysisConfig.RScanJetAnalysisConfig.__init__ ( self)

Definition at line 547 of file JetAnalysisConfig.py.

547 def __init__ (self) :
548 super (RScanJetAnalysisConfig, self).__init__ ()
549 self.addOption ('containerName', '', type=str,
550 noneAction='error',
551 info="the name of the output container after calibration.")
552 self.addOption ('jetCollection', '', type=str,
553 noneAction='error',
554 info="the jet container to run on. It is interpreted to determine "
555 "the correct config blocks to call for small- or large-R jets.")
556 self.addOption ('recalibratePhyslite', True, type=bool,
557 info="whether to run the CP::JetCalibrationAlg on PHYSLITE "
558 "derivations. The default is True.")
559

Member Function Documentation

◆ instanceName()

python.JetAnalysisConfig.RScanJetAnalysisConfig.instanceName ( self)
Return the instance name for this block

Definition at line 560 of file JetAnalysisConfig.py.

560 def instanceName (self) :
561 """Return the instance name for this block"""
562 return self.containerName
563

◆ makeAlgs()

python.JetAnalysisConfig.RScanJetAnalysisConfig.makeAlgs ( self,
config )

Definition at line 564 of file JetAnalysisConfig.py.

564 def makeAlgs (self, config) :
565
566 # Self-select: only run for r-scan jets (radius 2 or 6)
567 radius = config.getContainerMeta(self.containerName, 'jetRadius', failOnMiss=True)
568 if radius not in [2, 6]:
569 return
570
571 jetCollectionName=self.jetCollection
572 if(self.jetCollection=="AnalysisJets") :
573 jetCollectionName="AntiKt4EMPFlowJets"
574 if(self.jetCollection=="AnalysisLargeRJets") :
575 jetCollectionName="AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets"
576
577 jetInput = config.getContainerMeta(self.containerName, 'jetInput', failOnMiss=True)
578
579 if not config.isPhyslite() or self.recalibratePhyslite:
580 if jetInput not in ["LCTopo", "HI"]:
581 raise ValueError(
582 "Unsupported input type '{0}' for R-scan jets!".format(jetInput) )
583 # Create calibration tool before algorithm (EventLoop ordering)
584 calibToolName = 'JetCalibTool_' + jetCollectionName[:-4]
585 calibTool = config.createPublicTool( 'JetCalibrationTool', calibToolName )
586 calibTool.JetCollection = jetCollectionName[:-4]
587 if jetInput=="LCTopo":
588 calibTool.ConfigFile = \
589 "JES_MC16Recommendation_Rscan{0}LC_Feb2022_R21.config".format(radius)
590 if config.dataType() is DataType.Data:
591 calibTool.CalibSequence = "JetArea_Residual_EtaJES_GSC_Insitu"
592 else:
593 calibTool.CalibSequence = "JetArea_Residual_EtaJES_GSC_Smear"
594 elif jetInput=="HI":
595 calibTool.ConfigFile = \
596 "JES_MC16_HI_Jan2021_5TeV.config"
597 if config.dataType() is DataType.Data:
598 calibTool.CalibSequence = "EtaJES_Insitu"
599 else:
600 calibTool.CalibSequence = "EtaJES"
601 calibTool.IsData = (config.dataType() is DataType.Data)
602 # Prepare the jet calibration algorithm
603 alg = config.createAlgorithm( 'CP::JetCalibrationAlg', 'JetCalibrationAlg' )
604 alg.HIsetup = jetInput == "HI"
605 alg.calibrationTool = f'{calibTool.getType()}/{calibTool.getName()}'
606 alg.jets = config.readName (self.containerName)
607 warnings.warn_explicit(
608 "Uncertainties for R-Scan jets are not yet released!",
609 JetUncertaintyWarning, filename='', lineno=0)
610
611
if(pathvar)

Member Data Documentation

◆ jetCollection

str python.JetAnalysisConfig.RScanJetAnalysisConfig.jetCollection = "AnalysisJets") :

Definition at line 572 of file JetAnalysisConfig.py.

◆ recalibratePhyslite

python.JetAnalysisConfig.RScanJetAnalysisConfig.recalibratePhyslite

Definition at line 579 of file JetAnalysisConfig.py.


The documentation for this class was generated from the following file: