columnflow.calibration
#
Object and event calibration tools.
Classes:
|
Base class for all calibrators. |
Functions:
|
Decorator for creating a new |
- class Calibrator(*args, requires_func=law.util.no_value, setup_func=law.util.no_value, sandbox=law.util.no_value, call_force=law.util.no_value, pick_cached_result=law.util.no_value, inst_dict=None, **kwargs)[source]#
Bases:
TaskArrayFunction
Base class for all calibrators.
Attributes:
Methods:
calibrator
([func, bases, mc_only, ...])Decorator for creating a new
Calibrator
subclass with additional, optional bases and attaching the decorated function to it ascall_func
.- exposed = True#
- classmethod calibrator(func=None, bases=(), mc_only=False, data_only=False, nominal_only=False, shifts_only=None, **kwargs)[source]#
Decorator for creating a new
Calibrator
subclass with additional, optional bases and attaching the decorated function to it ascall_func
.When mc_only (data_only) is True, the calibrator is skipped and not considered by other calibrators, selectors and producers in case they are evalauted on a
order.Dataset
(using thedataset_inst
attribute) whoseis_mc
(is_data
) attribute is False.When nominal_only is True or shifts_only is set, the calibrator is skipped and not considered by other calibrators, selectors and producers in case they are evalauted on a
order.Shift
(using theglobal_shift_inst
attribute) whose name does not match.All additional kwargs are added as class members of the new subclasses.
- Parameters:
func (Callable | None, default:
None
) – Function to be wrapped and integrated into newCalibrator
class.bases (tuple, default:
()
) – Additional bases for the newCalibrator
.mc_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on Monte Carlo simulation and skipped for real data.data_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on real data and skipped for Monte Carlo simulation.nominal_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on the nominal shift and skipped on any other shifts.shifts_only (Sequence[str] | set[str] | None, default:
None
) – Shift names that thisCalibrator
should only run on, skipping all other shifts.
- Return type:
DerivableMeta | Callable
- Returns:
New
Calibrator
subclass.
- calibrator(func=None, bases=(), mc_only=False, data_only=False, nominal_only=False, shifts_only=None, **kwargs)#
Decorator for creating a new
Calibrator
subclass with additional, optional bases and attaching the decorated function to it ascall_func
.When mc_only (data_only) is True, the calibrator is skipped and not considered by other calibrators, selectors and producers in case they are evalauted on a
order.Dataset
(using thedataset_inst
attribute) whoseis_mc
(is_data
) attribute is False.When nominal_only is True or shifts_only is set, the calibrator is skipped and not considered by other calibrators, selectors and producers in case they are evalauted on a
order.Shift
(using theglobal_shift_inst
attribute) whose name does not match.All additional kwargs are added as class members of the new subclasses.
- Parameters:
func (Callable | None, default:
None
) – Function to be wrapped and integrated into newCalibrator
class.bases (tuple, default:
()
) – Additional bases for the newCalibrator
.mc_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on Monte Carlo simulation and skipped for real data.data_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on real data and skipped for Monte Carlo simulation.nominal_only (bool, default:
False
) – Boolean flag indicating that thisCalibrator
should only run on the nominal shift and skipped on any other shifts.shifts_only (Sequence[str] | set[str] | None, default:
None
) – Shift names that thisCalibrator
should only run on, skipping all other shifts.
- Return type:
DerivableMeta | Callable
- Returns:
New
Calibrator
subclass.