Previous topic

3.5.7. NXmagnetic_kicker

Next topic

3.5.9. NXquadrupole_magnet

This Page

3.5.8. NXmxΒΆ

Status:

contributed definition, extends NXobject, version 1.2

Description:

functional application definition for macromolecular crystallography

Symbols:

These symbols will be used below to coordinate datasets with the same shape.

np: number of scan points

i: number of detector pixels in the slow direction

j: number of detector pixels in the fast direction

Groups cited:
NXattenuator, NXbeam, NXcollection, NXdata, NXdetector_module, NXdetector, NXentry, NXinstrument, NXsample, NXtransformations

Structure:

(entry): NXentry

title: NX_CHAR

start_time: NX_DATE_TIME

end_time: NX_DATE_TIME

definition: NX_CHAR

NeXus NXDL schema to which this file conforms

Obligatory value: NXmx

(instrument): NXinstrument

(attenuator): NXattenuator

attenuator_transmission: NX_NUMBER {units=NX_UNITLESS}

(detector): NXdetector

depends_on: NX_CHAR

data[np, i, j]: NX_NUMBER

description: NX_CHAR

name/manufacturer/model/etc. information

time_per_channel: NX_CHAR {units=NX_TIME}

todo: define more clearly

distance: NX_FLOAT {units=NX_LENGTH}

Distance from the sample to the beam center. This value is a guidance only, the proper geometry can be found following the depends_on axis chain.

dead_time: NX_FLOAT {units=NX_TIME}

Detector dead time

count_time: NX_NUMBER {units=NX_TIME}

Elapsed actual counting time

beam_center_x: NX_FLOAT {units=NX_LENGTH}

This is the x position where the direct beam would hit the detector. This is a length, not a pixel position, and can be outside of the actual detector.

beam_center_y: NX_FLOAT {units=NX_LENGTH}

This is the y position where the direct beam would hit the detector. This is a length, not a pixel position, and can be outside of the actual detector.

angular_calibration_applied: NX_BOOLEAN

True when the angular calibration has been applied in the electronics, false otherwise.

angular_calibration[i, j]: NX_FLOAT

Angular calibration data.

flatfield_applied: NX_BOOLEAN

True when the flat field correction has been applied in the electronics, false otherwise.

flatfield[i, j]: NX_FLOAT

Flat field correction data.

flatfield_error[i, j]: NX_FLOAT

Errors of the flat field correction data.

pixel_mask_applied: NX_BOOLEAN

True when the pixel mask correction has been applied in the electronics, false otherwise.

pixel_mask[i, j]: NX_INT

The 32-bit pixel mask for the detector. Contains a bit field for each pixel to signal dead, blind or high or otherwise unwanted or undesirable pixels. They have the following meaning:

  • bit 0: gap (pixel with no sensor)
  • bit 1: dead
  • bit 2: under responding
  • bit 3: over responding
  • bit 4: noisy
  • bit 5: -undefined-
  • bit 6: pixel is part of a cluster of problematic pixels (bit set in addition to others)
  • bit 7: -undefined-
  • bit 8: user defined mask (e.g. around beamstop)
  • bits 9-30: -undefined-
  • bit 31: virtual pixel (corner pixel with interpolated value)

Normal data analysis software would not take pixels into account when a bit in (mask & 0x0000FFFF) is set. Tag bit in the upper two bytes would indicate special pixel properties that normally would not be a sole reason to reject the intensity value (unless lower bits are set.

countrate_correction__applied: NX_BOOLEAN

True when a count-rate correction has already been applied in the data recorded here, false otherwise.

bit_depth_readout: NX_INT

How many bits the electronics record per pixel.

detector_readout_time: NX_FLOAT {units=NX_TIME}

Time it takes to read the detector (typically milliseconds). This is important to know for time resolved experiments.

frame_time: NX_FLOAT {units=NX_TIME}

This is time for each frame. This is exposure_time + readout time.

gain_setting: NX_CHAR

The gain setting of the detector. This influences background.

saturation_value: NX_INT

The value at which the detector goes into saturation. Data above this value is known to be invalid.

sensor_material: NX_CHAR

At times, radiation is not directly sensed by the detector. Rather, the detector might sense the output from some converter like a scintillator. This is the name of this converter material.

sensor_thickness: NX_FLOAT {units=NX_LENGTH}

At times, radiation is not directly sensed by the detector. Rather, the detector might sense the output from some converter like a scintillator. This is the thickness of this converter material.

threshold_energy: NX_FLOAT {units=NX_ENERGY}

Single photon counter detectors can be adjusted for a certain energy range in which they work optimally. This is the energy setting for this.

type: NX_CHAR

Description of type such as scintillator, ccd, pixel, image plate, CMOS, ...

(transformations): NXtransformations

Suggested location for axes (transformations) to do with the detector

(collection): NXcollection

Suggested container for detailed non-standard detector information like corrections applied automatically or performance settings.

(detector_module): NXdetector_module

This is the description of a detector module. Many detectors consist of multiple smaller modules. Sometimes it is important to know the exact position of such modules. This is the purpose of this group. It is a child group to NXdetector.

data_origin: NX_INT

A two value field which gives the index of the start of the modules data in the main area detector image in the underlying NXdetector module.

data_size: NX_INT

Two values for the size of the module in pixels in each direction.

module_offset: NX_NUMBER {units=NX_LENGTH}

Offset of the module in regards to the origin of the detector in an arbitrary direction.

@transformation_type: NX_CHAR

Obligatory value: translation

@vector: NX_CHAR

@offset: NX_CHAR

@depends_on: NX_CHAR

fast_pixel_direction: NX_NUMBER {units=NX_LENGTH}

Values along the direction of fastest varying pixel direction.The direction itself is given through the vector attribute

@transformation_type: NX_CHAR

Obligatory value: translation

@vector: NX_CHAR

@offset: NX_CHAR

@depends_on: NX_CHAR

slow_pixel_direction: NX_NUMBER {units=NX_LENGTH}

Values along the direction of slow varying pixel direction. The direction itself is given through the vector attribute

@transformation_type: NX_CHAR

Obligatory value: translation

@vector: NX_CHAR

@offset: NX_CHAR

@depends_on: NX_CHAR

fast_pixel_size: NX_NUMBER {units=NX_LENGTH}

Values along the direction of fastest varying pixel direction.The direction itself is given through the vector attribute

@transformation_type: NX_CHAR

Obligatory value: translation

@vector: NX_CHAR

@offset: NX_CHAR

@depends_on: NX_CHAR

slow_pixel_size: NX_NUMBER {units=NX_LENGTH}

Values along the direction of slow varying pixel direction. The direction itself is given through the vector attribute

@transformation_type: NX_CHAR

Obligatory value: translation

@vector: NX_CHAR

@offset: NX_CHAR

@depends_on: NX_CHAR

(sample): NXsample

name: NX_CHAR

Descriptive name of sample

depends_on: NX_CHAR

This should be an absolute requirement to have for any scan experiment. The reason it is optional is mainly to accommodate XFEL single shot exposures.

temperature: NX_CHAR {units=NX_TEMPERATURE}

(beam): NXbeam

incident_wavelength: NX_NUMBER {units=NX_WAVELENGTH}

flux: NX_FLOAT {units=NX_FLUX}

flux incident on beam plane area

incident_polarisation_stokes[np, 4]: NX_CHAR

incident_wavelength_spectrum: NXdata

(transformations): NXtransformations

Suggested location for sample goniometer or other axes (transformations)

(data): NXdata

Source:
Automatically generated from https://github.com/nexusformat/definitions/blob/master/contributed_definitions/NXmx.nxdl.xml