2.3.3.3.55. NXcalibration

Status:

base class, extends NXobject

Description:

Subclass of NXprocess to describe post-processing calibrations.

Symbols:

The symbols used in the schema to specify e.g. dimensions of arrays

ncoeff: Number of coefficients of the calibration function

ncal: Number of points of the calibrated and uncalibrated axes

Groups cited:

NXdata, NXidentifier, NXserialized

Structure:

@default: (optional) NX_CHAR

Declares which child group contains a path leading ...

Declares which child group contains a path leading to a NXdata group.

It is recommended (as of NIAC2014) to use this attribute to help define the path to the default dataset to be plotted. See https://www.nexusformat.org/2014_How_to_find_default_data.html for a summary of the discussion.

description: (optional) NX_CHAR

A description of the procedures employed.

start_time: (optional) NX_DATE_TIME

The start time of the calibration.

end_time: (optional) NX_DATE_TIME

The end time of the calibration.

calibration_interval: (optional) NX_FLOAT {units=NX_TIME}

The time difference between the start and end time of the calibration. ...

The time difference between the start and end time of the calibration. Or the value directly comes from the instrument.

validity_period: (optional) NX_DATE_TIME

The period for which the calibration is valid. Usually, every instrument or pa ...

The period for which the calibration is valid. Usually, every instrument or part of the needs to be calibrated at regular intervals.

calibration_type: (optional) NX_CHAR

The type of calibration, e.g., active calibration, passive calibration, ...

The type of calibration, e.g., active calibration, passive calibration, or according to the laboratory defined type.

physical_quantity: (optional) NX_CHAR

The physical quantity of the calibration, e.g., ...

The physical quantity of the calibration, e.g., energy, momentum, time, etc.

last_process: (optional) NX_CHAR

Indicates the name of the last operation applied in the NXprocess sequence.

applied: (optional) NX_BOOLEAN

Has the calibration been applied?

calibration_software: (optional) NX_CHAR

Name of the software used for this calibration.

@version: (optional) NX_CHAR

Software version.

original_axis: (optional) NX_FLOAT (Rank: 1, Dimensions: [ncal]) {units=NX_ANY}

Vector containing the data coordinates in the original uncalibrated axis

@symbol: (optional) NX_CHAR

The symbol of the axis to be used in the fit_function, e.g., `energy`, `E`. ...

The symbol of the axis to be used in the fit_function, e.g., energy, E. This should comply to the following naming rules (similar to python’s naming rules):

  • A variable name must start with a letter or the underscore character

  • A variable name cannot start with a number

  • A variable name can only contain alpha-numeric characters and underscores (A-z, 0-9, and _ )

  • Variable names are case-sensitive (age, Age and AGE are three different variables)

@input_path: (optional) NX_CHAR

The path from which this data is derived, e.g., raw detector axis. ...

The path from which this data is derived, e.g., raw detector axis. Should be a valid NeXus path name, e.g., /entry/instrument/detector/raw.

input_SYMBOL: (optional) NX_FLOAT (Rank: 1, Dimensions: [ncal]) {units=NX_ANY}

Additional input axis to be used in the formula. ...

Additional input axis to be used in the formula. The part after input_ is used as the symbol to be used in the fit_function, i.e., if the field name is input_my_field you should refer to this axis by my_field in the fit_function.

@input_path: (optional) NX_CHAR

The path from which this data is derived, e.g., raw detector axis. ...

The path from which this data is derived, e.g., raw detector axis. Should be a valid NeXus path name, e.g., /entry/instrument/detector/raw.

coefficients: (optional) NX_FLOAT (Rank: 1, Dimensions: [ncoeff]) {units=NX_ANY}

For non-linear energy calibrations, e.g. in a TOF, a polynomial function is fi ...

For non-linear energy calibrations, e.g. in a TOF, a polynomial function is fit to a set of features (peaks) at well defined energy positions to determine E(TOF). Here we can store the array of fit coefficients.

fit_function: (optional) NX_CHAR

For non-linear energy calibrations. Here we can store the formula of the ...

For non-linear energy calibrations. Here we can store the formula of the fit function.

Use a0, a1, …, an for the coefficients, corresponding to the values in the coefficients field.

Use x0, x1, …, xn for the nth position in the original_axis field. If there is the symbol attribute specified for the original_axis this may be used instead of x. If you want to use the whole axis use x. Alternate axis can also be available as specified by the input_SYMBOL field. The data should then be referred here by the SYMBOL name, e.g., for a field name input_my_field it should be referred here by my_field or my_field0 if you want to read the zeroth element of the array.

The formula should be numpy compliant.

scaling: (optional) NX_FLOAT {units=NX_ANY}

For linear calibration. Scaling parameter. ...

For linear calibration. Scaling parameter. This should yield the relation calibrated_axis = scaling * original_axis + offset.

offset: (optional) NX_FLOAT {units=NX_ANY}

For linear calibration. Offset parameter. ...

For linear calibration. Offset parameter. This should yield the relation calibrated_axis = scaling * original_axis + offset.

mapping_MAPPING: (optional) NX_FLOAT

Mapping data for calibration. ...

Mapping data for calibration.

This can be used to map data points from uncalibrated to calibrated values, i.e., by multiplying each point in the input axis by the corresponding point in the mapping data.

calibrated_AXIS: (optional) NX_FLOAT (Rank: 1, Dimensions: [ncal]) {units=NX_ANY}

A vector representing the axis after calibration, matching the data length

@output_path: (optional) NX_CHAR

The path to which this data is written, e.g., the calibrated energy. ...

The path to which this data is written, e.g., the calibrated energy. Should be a valid NeXus path name, e.g., /entry/data/energy.

calibration_method: (optional) NXidentifier

A digital persistent identifier (e.g., DOI, ISO standard) referring to a detai ...

A digital persistent identifier (e.g., DOI, ISO standard) referring to a detailed description of a calibration method but no actual calibration data.

calibration_reference: (optional) NXidentifier

A digital persistent identifier (e.g., a DOI) referring to a publicly availabl ...

A digital persistent identifier (e.g., a DOI) referring to a publicly available calibration measurement used for this instrument, e.g., a measurement of a known standard containing calibration information. The axis values may be copied or linked in the appropriate NXcalibration fields for reference.

calibration_object: (optional) NXserialized

A file serialisation of a calibration which may not be publicly available (ext ...

A file serialisation of a calibration which may not be publicly available (externally from the nexus file).

This metadata can be a documentation of the source (file) or database (entry) from which pieces of information have been extracted for consumption (e.g. in a research data management system (RDMS)). It is also possible to include the actual file by using the file field.

The axis values may be copied or linked in the appropriate NXcalibration fields for reference.

DATA: (optional) NXdata

Any data acquired/used during the calibration that does not fit the `NX_FLOAT` ...

Any data acquired/used during the calibration that does not fit the NX_FLOAT fields above. NXdata groups can be used for multidimensional data which are relevant to the calibration

Hypertext Anchors

List of hypertext anchors for all groups, fields, attributes, and links defined in this class.

NXDL Source:

https://github.com/FAIRmat-NFDI/nexus_definitions/tree/fairmat/contributed_definitions/NXcalibration.nxdl.xml