met_filters#

Selector related to MET filters.

Selectors#

class met_filters(*args, **kwargs)[source]#

Bases: Selector

call_func(events, **kwargs)#

Compute a selection mask to filter out noisy/anomalous high-MET events (MET filters).

Individual filter decisions based on different criteria are stored as bool-valued columns in the input NanoAOD. The columns to apply are specified via an auxiliary config entry:

cfg.x.met_filters = {
    "Flag.globalSuperTightHalo2016Filter",
    "Flag.HBHENoiseFilter",
    "Flag.HBHENoiseIsoFilter",
    "Flag.EcalDeadCellTriggerPrimitiveFilter",
    "Flag.BadPFMuonFilter",
    "Flag.BadPFMuonDzFilter",
    "Flag.eeBadScFilter",
    "Flag.ecalBadCalibFilter",
}

get_met_filters can be adapted in a subclass in case they are stored differently in the config.

The specified columns are interpreted as booleans, with missing values treated as True, i.e. the event is considered to have passed the corresponding filter.

Returns a bool array containing the logical AND of all input columns.

Parameters:

events (Array) – Array containing events in the NanoAOD format

Return type:

Array

Returns:

Array containing logical AND of all input filter columns

data_only = False#
get_met_filters()#

Function to obtain met filters from the config.

By default, this is done using

return config_inst.x.met_filters
Return type:

Iterable[str]

Returns:

list or set of met filters to be applied

init_func()#
Return type:

None

mc_only = False#
nominal_only = False#
shifts_only = None#
uses = {'event'}#