.. auto-generated by script ../../../../utils/nxdl2rst.py from the NXDL source ../../../../contributed_definitions/NXmx.nxdl.xml .. index:: ! NXmx (contributed definition) ! mx (contributed definition) see: mx (contributed definition); NXmx .. _NXmx: ==== NXmx ==== **Status**: contributed definition, extends :ref:`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**: :ref:`NXattenuator`, :ref:`NXbeam`, :ref:`NXcollection`, :ref:`NXdata`, :ref:`NXdetector_module`, :ref:`NXdetector`, :ref:`NXentry`, :ref:`NXinstrument`, :ref:`NXsample`, :ref:`NXtransformations` .. index:: NXentry (base class); used in contributed definition, NXinstrument (base class); used in contributed definition, NXattenuator (base class); used in contributed definition, NXdetector (base class); used in contributed definition, NXtransformations (base class); used in contributed definition, NXcollection (base class); used in contributed definition, NXdetector_module (base class); used in contributed definition, NXsample (base class); used in contributed definition, NXbeam (base class); used in contributed definition, NXdata (base class); used in contributed definition **Structure**: **(entry)**: :ref:`NXentry` .. index:: title (data field) **title**: :ref:`NX_CHAR ` .. index:: start_time (data field) **start_time**: :ref:`NX_DATE_TIME ` .. index:: end_time (data field) **end_time**: :ref:`NX_DATE_TIME ` .. index:: definition (data field) **definition**: :ref:`NX_CHAR ` NeXus NXDL schema to which this file conforms Obligatory value: ``NXmx`` **(instrument)**: :ref:`NXinstrument` **(attenuator)**: :ref:`NXattenuator` .. index:: attenuator_transmission (data field) **attenuator_transmission**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_UNITLESS `} **(detector)**: :ref:`NXdetector` .. index:: depends_on (data field) **depends_on**: :ref:`NX_CHAR ` .. index:: data (data field) **data[np, i, j]**: :ref:`NX_NUMBER ` .. index:: description (data field) **description**: :ref:`NX_CHAR ` name/manufacturer/model/etc. information .. index:: time_per_channel (data field) **time_per_channel**: :ref:`NX_CHAR ` {units=\ :ref:`NX_TIME `} todo: define more clearly .. index:: distance (data field) **distance**: :ref:`NX_FLOAT ` {units=\ :ref:`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. .. index:: dead_time (data field) **dead_time**: :ref:`NX_FLOAT ` {units=\ :ref:`NX_TIME `} Detector dead time .. index:: count_time (data field) **count_time**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_TIME `} Elapsed actual counting time .. index:: beam_center_x (data field) **beam_center_x**: :ref:`NX_FLOAT ` {units=\ :ref:`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. .. index:: beam_center_y (data field) **beam_center_y**: :ref:`NX_FLOAT ` {units=\ :ref:`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. .. index:: angular_calibration_applied (data field) **angular_calibration_applied**: :ref:`NX_BOOLEAN ` True when the angular calibration has been applied in the electronics, false otherwise. .. index:: angular_calibration (data field) **angular_calibration[i, j]**: :ref:`NX_FLOAT ` Angular calibration data. .. index:: flatfield_applied (data field) **flatfield_applied**: :ref:`NX_BOOLEAN ` True when the flat field correction has been applied in the electronics, false otherwise. .. index:: flatfield (data field) **flatfield[i, j]**: :ref:`NX_FLOAT ` Flat field correction data. .. index:: flatfield_error (data field) **flatfield_error[i, j]**: :ref:`NX_FLOAT ` Errors of the flat field correction data. .. index:: pixel_mask_applied (data field) **pixel_mask_applied**: :ref:`NX_BOOLEAN ` True when the pixel mask correction has been applied in the electronics, false otherwise. .. index:: pixel_mask (data field) **pixel_mask[i, j]**: :ref:`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. .. index:: countrate_correction__applied (data field) **countrate_correction__applied**: :ref:`NX_BOOLEAN ` True when a count-rate correction has already been applied in the data recorded here, false otherwise. .. index:: bit_depth_readout (data field) **bit_depth_readout**: :ref:`NX_INT ` How many bits the electronics record per pixel. .. index:: detector_readout_time (data field) **detector_readout_time**: :ref:`NX_FLOAT ` {units=\ :ref:`NX_TIME `} Time it takes to read the detector (typically milliseconds). This is important to know for time resolved experiments. .. index:: frame_time (data field) **frame_time**: :ref:`NX_FLOAT ` {units=\ :ref:`NX_TIME `} This is time for each frame. This is exposure_time + readout time. .. index:: gain_setting (data field) **gain_setting**: :ref:`NX_CHAR ` The gain setting of the detector. This influences background. .. index:: saturation_value (data field) **saturation_value**: :ref:`NX_INT ` The value at which the detector goes into saturation. Data above this value is known to be invalid. .. index:: sensor_material (data field) **sensor_material**: :ref:`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. .. index:: sensor_thickness (data field) **sensor_thickness**: :ref:`NX_FLOAT ` {units=\ :ref:`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. .. index:: threshold_energy (data field) **threshold_energy**: :ref:`NX_FLOAT ` {units=\ :ref:`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. .. index:: type (data field) **type**: :ref:`NX_CHAR ` Description of type such as scintillator, ccd, pixel, image plate, CMOS, ... **(transformations)**: :ref:`NXtransformations` Suggested location for axes (transformations) to do with the detector **(collection)**: :ref:`NXcollection` Suggested container for detailed non-standard detector information like corrections applied automatically or performance settings. **(detector_module)**: :ref:`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. .. index:: data_origin (data field) **data_origin**: :ref:`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. .. index:: data_size (data field) **data_size**: :ref:`NX_INT ` Two values for the size of the module in pixels in each direction. .. index:: module_offset (data field) **module_offset**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_LENGTH `} Offset of the module in regards to the origin of the detector in an arbitrary direction. .. index:: transformation_type (attribute) **@transformation_type**: :ref:`NX_CHAR ` Obligatory value: ``translation`` .. index:: vector (attribute) **@vector**: :ref:`NX_CHAR ` .. index:: offset (attribute) **@offset**: :ref:`NX_CHAR ` .. index:: depends_on (attribute) **@depends_on**: :ref:`NX_CHAR ` .. index:: fast_pixel_direction (data field) **fast_pixel_direction**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_LENGTH `} Values along the direction of fastest varying pixel direction.The direction itself is given through the vector attribute .. index:: transformation_type (attribute) **@transformation_type**: :ref:`NX_CHAR ` Obligatory value: ``translation`` .. index:: vector (attribute) **@vector**: :ref:`NX_CHAR ` .. index:: offset (attribute) **@offset**: :ref:`NX_CHAR ` .. index:: depends_on (attribute) **@depends_on**: :ref:`NX_CHAR ` .. index:: slow_pixel_direction (data field) **slow_pixel_direction**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_LENGTH `} Values along the direction of slow varying pixel direction. The direction itself is given through the vector attribute .. index:: transformation_type (attribute) **@transformation_type**: :ref:`NX_CHAR ` Obligatory value: ``translation`` .. index:: vector (attribute) **@vector**: :ref:`NX_CHAR ` .. index:: offset (attribute) **@offset**: :ref:`NX_CHAR ` .. index:: depends_on (attribute) **@depends_on**: :ref:`NX_CHAR ` .. index:: fast_pixel_size (data field) **fast_pixel_size**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_LENGTH `} Values along the direction of fastest varying pixel direction.The direction itself is given through the vector attribute .. index:: transformation_type (attribute) **@transformation_type**: :ref:`NX_CHAR ` Obligatory value: ``translation`` .. index:: vector (attribute) **@vector**: :ref:`NX_CHAR ` .. index:: offset (attribute) **@offset**: :ref:`NX_CHAR ` .. index:: depends_on (attribute) **@depends_on**: :ref:`NX_CHAR ` .. index:: slow_pixel_size (data field) **slow_pixel_size**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_LENGTH `} Values along the direction of slow varying pixel direction. The direction itself is given through the vector attribute .. index:: transformation_type (attribute) **@transformation_type**: :ref:`NX_CHAR ` Obligatory value: ``translation`` .. index:: vector (attribute) **@vector**: :ref:`NX_CHAR ` .. index:: offset (attribute) **@offset**: :ref:`NX_CHAR ` .. index:: depends_on (attribute) **@depends_on**: :ref:`NX_CHAR ` **(sample)**: :ref:`NXsample` .. index:: name (data field) **name**: :ref:`NX_CHAR ` Descriptive name of sample .. index:: depends_on (data field) **depends_on**: :ref:`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. .. index:: temperature (data field) **temperature**: :ref:`NX_CHAR ` {units=\ :ref:`NX_TEMPERATURE `} **(beam)**: :ref:`NXbeam` .. index:: incident_wavelength (data field) **incident_wavelength**: :ref:`NX_NUMBER ` {units=\ :ref:`NX_WAVELENGTH `} .. index:: flux (data field) **flux**: :ref:`NX_FLOAT ` {units=\ :ref:`NX_FLUX `} flux incident on beam plane area .. index:: incident_polarisation_stokes (data field) **incident_polarisation_stokes[np, 4]**: :ref:`NX_CHAR ` **incident_wavelength_spectrum**: :ref:`NXdata` **(transformations)**: :ref:`NXtransformations` Suggested location for sample goniometer or other axes (transformations) **(data)**: :ref:`NXdata` **Source**: Automatically generated from https://github.com/nexusformat/definitions/blob/master/contributed_definitions/NXmx.nxdl.xml