Class MuonCalibrator

Inheritance Relationships

Base Type

Class Documentation

class MuonCalibrator : public xAH::Algorithm

Public Functions

MuonCalibrator()
virtual EL::StatusCode setupJob(EL::Job &job)
virtual EL::StatusCode fileExecute()
virtual EL::StatusCode histInitialize()
virtual EL::StatusCode changeInput(bool firstFile)
virtual EL::StatusCode initialize()
virtual EL::StatusCode execute()
virtual EL::StatusCode postExecute()
virtual EL::StatusCode finalize()
virtual EL::StatusCode histFinalize()

Public Members

std::string m_inContainerName = ""
std::string m_outContainerName = ""
std::string m_calibrationMode = "noOption"

Set calibrationMode property if different than noOption.

bool m_isRun3Geo = false

Switch on Run3 geometry for muon selector tool.

bool m_do2StationsHighPt = false
bool m_sort = true
std::string m_inputAlgoSystNames = ""

this is the name of the vector of names of the systematically varied containers produced by the upstream algo (e.g., the SC containers with calibration systematics)

std::string m_outputAlgoSystNames = "MuonCalibrator_Syst"
bool m_writeSystToMetadata = false

Write systematics names to metadata.

float m_systVal = 0.0
std::string m_systName = ""
bool m_forceDataCalib = false

Force MuonCalibrationPeriodTool.h to calibrate data.

MuonSelectorTool depends on a specific decoration existing on Muons, namely MuonSpectrometerPt. This is decorated by the MuonCalibrationAndSmearingTool. However, you do not calibrate data by default so this tool would not be run on data.

In the case where you need the tool to be forced to run on data in order to have this decoration on your muons, you need to flip this boolean. See the Muon Combined Performance Working Group twiki for more information.

Note

This should not modify the momentum of muons in data (according to the tool as of MuonMomentumCorrections-01-00-37).