ess.reduce.nexus.merge.Rule#

class ess.reduce.nexus.merge.Rule(*, paths, warn=None, error=None)[source]#

Tolerances on the spread (maximum minus minimum) of the values of NXlogs.

The spread is taken over the values of all runs, so a single run whose values vary too much fails the check as well. A tolerance is converted to the unit of the log. Scipp does not convert between units with an offset, such as K and degC, even though a spread is a difference: write the tolerance of such a log in the log’s unit.

__init__(*, paths, warn=None, error=None)#

Methods

__init__(*, paths[, warn, error])

matches(path)

Attributes

error

A larger spread is an error.

warn

A larger spread is a warning.

paths

Glob patterns (fnmatch.fnmatchcase()) on absolute paths of NXlog groups, such as '/entry/instrument/*/target_value'.

error: Variable | None = None#

A larger spread is an error. Zero, in any unit, requires identical values.

paths: tuple[str, ...]#

Glob patterns (fnmatch.fnmatchcase()) on absolute paths of NXlog groups, such as '/entry/instrument/*/target_value'. * also matches /.

warn: Variable | None = None#

A larger spread is a warning.