ATLAS Offline Software
Classes | Functions | Variables
python.JetAnalysisConfig Namespace Reference

Classes

class  LargeRJetAnalysisConfig
 
class  PreJetAnalysisConfig
 
class  RScanJetAnalysisConfig
 
class  SmallRJetAnalysisConfig
 

Functions

def _largeLCTopoConfigFile (config, self)
 
def makeJetAnalysisConfig (seq, containerName, jetCollection, runGhostMuonAssociation=None)
 
def makeSmallRJetAnalysisConfig (seq, containerName, jetCollection, jetInput, runJvtUpdate=None, runNNJvtUpdate=None, runFJvtUpdate=None, runJvtSelection=None, runFJvtSelection=None, jvtWP=None, fJvtWP=None, runJvtEfficiency=None, runFJvtEfficiency=None, systematicsModelJES=None, systematicsModelJER=None)
 
def makeRScanJetAnalysisConfig (seq, containerName, jetCollection, jetInput, radius)
 
def makeLargeRJetAnalysisConfig (seq, containerName, jetCollection, jetInput, largeRMass=None)
 

Variables

 largeRMass
 

Function Documentation

◆ _largeLCTopoConfigFile()

def python.JetAnalysisConfig._largeLCTopoConfigFile (   config,
  self 
)
private

Definition at line 482 of file JetAnalysisConfig.py.

482 def _largeLCTopoConfigFile(config, self):
483  is_sim = config.dataType() in {DataType.FullSim}
484  if self.largeRMass == "Comb":
485  if config.dataType() is DataType.Data:
486  return "JES_MC16recommendation_FatJet_Trimmed_JMS_comb_March2021.config"
487  if is_sim:
488  return "JES_MC16recommendation_FatJet_Trimmed_JMS_comb_17Oct2018.config"
489  elif self.largeRMass == "Calo":
490  if config.dataType() is DataType.Data:
491  return "JES_MC16recommendation_FatJet_Trimmed_JMS_comb_March2021.config"
492  if is_sim:
493  return "JES_MC16recommendation_FatJet_Trimmed_JMS_calo_12Oct2018.config "
494  elif self.largeRMass == "TA":
495  if config.dataType() is DataType.Data:
496  return "JES_MC16recommendation_FatJet_Trimmed_JMS_comb_March2021.config"
497  if is_sim:
498  return "JES_MC16recommendation_FatJet_Trimmed_JMS_TA_12Oct2018.config"
499  return None
500 
501 

◆ makeJetAnalysisConfig()

def python.JetAnalysisConfig.makeJetAnalysisConfig (   seq,
  containerName,
  jetCollection,
  runGhostMuonAssociation = None 
)
Create a jet analysis algorithm sequence
  The jet collection is interpreted and selects the correct function to call,
  makeSmallRJetAnalysisConfig, makeRScanJetAnalysisConfig or
  makeLargeRJetAnalysisConfig

  Keyword arguments
    jetCollection -- The jet container to run on.

Definition at line 744 of file JetAnalysisConfig.py.

744 def makeJetAnalysisConfig( seq, containerName, jetCollection,
745  runGhostMuonAssociation = None):
746  """Create a jet analysis algorithm sequence
747  The jet collection is interpreted and selects the correct function to call,
748  makeSmallRJetAnalysisConfig, makeRScanJetAnalysisConfig or
749  makeLargeRJetAnalysisConfig
750 
751  Keyword arguments
752  jetCollection -- The jet container to run on.
753  """
754 
755  # Remove b-tagging calibration from the container name
756  btIndex = jetCollection.find('_BTagging')
757  if btIndex != -1:
758  jetCollection = jetCollection[:btIndex]
759 
760  jetCollectionName=jetCollection
761  if(jetCollection=="AnalysisJets") :
762  jetCollectionName="AntiKt4EMPFlowJets"
763  if(jetCollection=="AnalysisLargeRJets") :
764  jetCollectionName="AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets"
765 
766  #AntiKt10UFO CSSKSoftDropBeta100Zcut10Jets
767 
768  if jetCollectionName == 'AntiKtVR30Rmax4Rmin02PV0TrackJets' :
769  # don't to anything on track jets
770  config = PreJetAnalysisConfig (containerName, jetCollection)
771  config.setOptionValue ('runOriginalObjectLink', False)
772  config.setOptionValue ('runGhostMuonAssociation', False)
773  seq.append (config)
774  return
775 
776  # interpret the jet collection
777  collection_pattern = re.compile(
778  r"AntiKt(\d+)(EMTopo|EMPFlow|LCTopo|TrackCaloCluster|UFO|Track)(TrimmedPtFrac5SmallR20|CSSKSoftDropBeta100Zcut10)?Jets")
779  match = collection_pattern.match(jetCollectionName)
780  if not match:
781  raise ValueError(
782  "Jet collection {0} does not match expected pattern!".format(jetCollectionName) )
783  radius = int(match.group(1) )
784  if radius not in [2, 4, 6, 10]:
785  raise ValueError("Jet collection has an unsupported radius '{0}'!".format(radius) )
786  jetInput = match.group(2)
787 
788 
789  config = PreJetAnalysisConfig (containerName, jetCollection)
790  config.runOriginalObjectLink = (btIndex != -1)
791  config.setOptionValue ('runGhostMuonAssociation', runGhostMuonAssociation)
792  seq.append (config)
793 
794  if radius == 4:
795  makeSmallRJetAnalysisConfig(seq, containerName,
796  jetCollection, jetInput=jetInput)
797  elif radius in [2, 6]:
798  makeRScanJetAnalysisConfig(seq, containerName,
799  jetCollection, jetInput=jetInput, radius=radius)
800  else:
801  trim = match.group(3)
802  if trim == "":
803  raise ValueError("Untrimmed large-R jets are not supported!")
804  makeLargeRJetAnalysisConfig(seq, containerName,
805  jetCollection, jetInput=jetInput)
806 
807 
808 

◆ makeLargeRJetAnalysisConfig()

def python.JetAnalysisConfig.makeLargeRJetAnalysisConfig (   seq,
  containerName,
  jetCollection,
  jetInput,
  largeRMass = None 
)
Add algorithms for the R=1.0 jets.

  Keyword arguments
    seq -- The sequence to add the algorithms to
    jetCollection -- The jet container to run on.
    jetInput -- The type of input used, read from the collection name.
    largeRMass -- Which large-R mass definition to use. Ignored if not running on large-R jets ("Comb", "Calo", "TA")

Definition at line 870 of file JetAnalysisConfig.py.

870 def makeLargeRJetAnalysisConfig( seq, containerName, jetCollection,
871  jetInput, largeRMass = None):
872  """Add algorithms for the R=1.0 jets.
873 
874  Keyword arguments
875  seq -- The sequence to add the algorithms to
876  jetCollection -- The jet container to run on.
877  jetInput -- The type of input used, read from the collection name.
878  largeRMass -- Which large-R mass definition to use. Ignored if not running on large-R jets ("Comb", "Calo", "TA")
879  """
880  config = LargeRJetAnalysisConfig (containerName, jetCollection, jetInput)
881  config.setOptionValue ('largeRMass', largeRMass)
882  seq.append (config)
883 

◆ makeRScanJetAnalysisConfig()

def python.JetAnalysisConfig.makeRScanJetAnalysisConfig (   seq,
  containerName,
  jetCollection,
  jetInput,
  radius 
)
Add algorithms for the R-scan jets.

  Keyword arguments
    seq -- The sequence to add the algorithms to
    jetCollection -- The jet container to run on.
    jetInput -- The type of input used, read from the collection name.
    radius -- The radius of the r-scan jets.

Definition at line 853 of file JetAnalysisConfig.py.

853 def makeRScanJetAnalysisConfig( seq, containerName, jetCollection,
854  jetInput, radius ):
855  """Add algorithms for the R-scan jets.
856 
857  Keyword arguments
858  seq -- The sequence to add the algorithms to
859  jetCollection -- The jet container to run on.
860  jetInput -- The type of input used, read from the collection name.
861  radius -- The radius of the r-scan jets.
862  """
863 
864  config = SmallRJetAnalysisConfig (containerName, jetCollection, jetInput, radius)
865  seq.append (config)
866 
867 
868 
869 

◆ makeSmallRJetAnalysisConfig()

def python.JetAnalysisConfig.makeSmallRJetAnalysisConfig (   seq,
  containerName,
  jetCollection,
  jetInput,
  runJvtUpdate = None,
  runNNJvtUpdate = None,
  runFJvtUpdate = None,
  runJvtSelection = None,
  runFJvtSelection = None,
  jvtWP = None,
  fJvtWP = None,
  runJvtEfficiency = None,
  runFJvtEfficiency = None,
  systematicsModelJES = None,
  systematicsModelJER = None 
)
Add algorithms for the R=0.4 jets.

  Keyword arguments
    seq -- The sequence to add the algorithms to
    jetCollection -- The jet container to run on.
    jetInput -- The type of input used, read from the collection name.
    runJvtUpdate -- Determines whether or not to update JVT on the jets
    runNNJvtUpdate -- Determines whether or not to update NN JVT on the jets
    runFJvtUpdate -- Determines whether or not to update forward JVT on the jets
    runJvtSelection -- Determines whether or not to run JVT selection on the jets
    runFJvtSelection -- Determines whether or not to run forward JVT selection on the jets
    jvtWP -- Defines the NNJvt WP to apply on the jets
    fJvtWP -- Defines the fJvt WP to apply on the jets
    runJvtEfficiency -- Determines whether or not to calculate the JVT efficiency
    runFJvtEfficiency -- Determines whether or not to calculate the forward JVT efficiency
    systematicsModelJES -- Which NP systematicsModelJES scheme should be used (All, Global, Category, Scenario)
    systematicsModelJER -- Which variant of the systematicsModelJES should be used (All, Full, Simple). Note that not all combinations of systematicsModelJES and systematicsModelJER are valid!

Definition at line 809 of file JetAnalysisConfig.py.

809 def makeSmallRJetAnalysisConfig( seq, containerName, jetCollection, jetInput,
810  runJvtUpdate = None, runNNJvtUpdate = None, runFJvtUpdate = None,
811  runJvtSelection = None, runFJvtSelection = None,
812  jvtWP = None, fJvtWP = None,
813  runJvtEfficiency = None, runFJvtEfficiency = None,
814  systematicsModelJES = None, systematicsModelJER = None):
815  """Add algorithms for the R=0.4 jets.
816 
817  Keyword arguments
818  seq -- The sequence to add the algorithms to
819  jetCollection -- The jet container to run on.
820  jetInput -- The type of input used, read from the collection name.
821  runJvtUpdate -- Determines whether or not to update JVT on the jets
822  runNNJvtUpdate -- Determines whether or not to update NN JVT on the jets
823  runFJvtUpdate -- Determines whether or not to update forward JVT on the jets
824  runJvtSelection -- Determines whether or not to run JVT selection on the jets
825  runFJvtSelection -- Determines whether or not to run forward JVT selection on the jets
826  jvtWP -- Defines the NNJvt WP to apply on the jets
827  fJvtWP -- Defines the fJvt WP to apply on the jets
828  runJvtEfficiency -- Determines whether or not to calculate the JVT efficiency
829  runFJvtEfficiency -- Determines whether or not to calculate the forward JVT efficiency
830  systematicsModelJES -- Which NP systematicsModelJES scheme should be used (All, Global, Category, Scenario)
831  systematicsModelJER -- Which variant of the systematicsModelJES should be used (All, Full, Simple). Note that not all combinations of systematicsModelJES and systematicsModelJER are valid!
832  """
833 
834  if jetInput not in ["EMTopo", "EMPFlow"]:
835  raise ValueError(
836  "Unsupported input type '{0}' for R=0.4 jets!".format(jetInput) )
837 
838  config = SmallRJetAnalysisConfig (containerName, jetCollection, jetInput)
839  config.setOptionValue ('runJvtUpdate', runJvtUpdate)
840  config.setOptionValue ('runNNJvtUpdate', runNNJvtUpdate)
841  config.setOptionValue ('runFJvtUpdate', runFJvtUpdate)
842  config.setOptionValue ('runJvtSelection', runJvtSelection)
843  config.setOptionValue ('runFJvtSelection', runFJvtSelection)
844  config.setOptionValue ('jvtWP', jvtWP)
845  config.setOptionValue ('fJvtWP', fJvtWP)
846  config.setOptionValue ('runJvtEfficiency', runJvtEfficiency)
847  config.setOptionValue ('runFJvtEfficiency', runFJvtEfficiency)
848  config.setOptionValue ('systematicsModelJES', systematicsModelJES)
849  config.setOptionValue ('systematicsModelJER', systematicsModelJER)
850  seq.append (config)
851 
852 

Variable Documentation

◆ largeRMass

python.JetAnalysisConfig.largeRMass

Definition at line 484 of file JetAnalysisConfig.py.

python.JetAnalysisConfig._largeLCTopoConfigFile
def _largeLCTopoConfigFile(config, self)
Definition: JetAnalysisConfig.py:482
vtune_athena.format
format
Definition: vtune_athena.py:14
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
python.JetAnalysisConfig.makeLargeRJetAnalysisConfig
def makeLargeRJetAnalysisConfig(seq, containerName, jetCollection, jetInput, largeRMass=None)
Definition: JetAnalysisConfig.py:870
python.JetAnalysisConfig.makeSmallRJetAnalysisConfig
def makeSmallRJetAnalysisConfig(seq, containerName, jetCollection, jetInput, runJvtUpdate=None, runNNJvtUpdate=None, runFJvtUpdate=None, runJvtSelection=None, runFJvtSelection=None, jvtWP=None, fJvtWP=None, runJvtEfficiency=None, runFJvtEfficiency=None, systematicsModelJES=None, systematicsModelJER=None)
Definition: JetAnalysisConfig.py:809
python.JetAnalysisConfig.makeRScanJetAnalysisConfig
def makeRScanJetAnalysisConfig(seq, containerName, jetCollection, jetInput, radius)
Definition: JetAnalysisConfig.py:853
python.JetAnalysisConfig.makeJetAnalysisConfig
def makeJetAnalysisConfig(seq, containerName, jetCollection, runGhostMuonAssociation=None)
Definition: JetAnalysisConfig.py:744
if
if(febId1==febId2)
Definition: LArRodBlockPhysicsV0.cxx:567