Unit Categories allowed in NXDL specifications

Unit categories in NXDL specifications describe the expected type of units for a NeXus field. They should describe valid units consistent with the section on NeXus units in Volume I. The values for unit categories are restricted (by an enumeration) to the following table.

Table 2.2. Unit Types allowed in NXDL specifications

termdescription
NX_ANGLE example: degrees or radians or arcminutes or
NX_ANY usage: things like logs that aren't picky on units
NX_AREA example: m2 or barns
NX_CROSS_SECTION example: barns
NX_CHARGE example: pC or C
NX_CURRENT example: A
NX_DIMENSIONLESS for fields where the units cancel out, example: "" or mm/mm (NOTE: not the same as NX_UNITLESS)
NX_EMITTANCE emittance (length * angle) of a radiation source, example: nm*rad
NX_ENERGY example: J or keV
NX_FLUX example: s-1 cm-2
NX_FREQUENCY example: Hz
NX_LENGTH example: m
NX_MASS example: g
NX_MASS_DENSITY example: g cm-3
NX_MOLECULAR_WEIGHT example: g mol-1
NX_PER_AREA example: cm-2
NX_PER_LENGTH example: cm-1
NX_PERIOD (alias to NX_TIME) period of pulsed source, example: microseconds
NX_POWER example: W
NX_PRESSURE example: Pa
NX_PULSES (alias to NX_NUMBER) clock pulses
NX_SCATTERING_LENGTH_DENSITY example: cm-2
NX_SOLID_ANGLE example: sr | steradian
NX_TEMPERATURE example: K
NX_TIME example: s
NX_TIME_OF_FLIGHT (alias to NX_TIME) example: s
NX_VOLTAGE example: V
NX_VOLUME example: m3
NX_UNITLESS for fields that don't have a unit (e.g. hkl) so that they don't inherit the wrong units (NOTE: not the same as NX_DIMENSIONLESS)
NX_WAVELENGTH example: Angstrom
NX_WAVENUMBER units for Q, example: Angstrom-1 or nm-1