Status:
application definition, extends NXobject, version 2.0
Description:
This is the application definition for x-ray or neutron tomography raw data. In tomography a number of dark field images are measured, some bright field images and, of course the sample. In order to distinguish between them images carry a image_key.
Symbols:
These symbols will be used below to coordinate datasets with the same shape.
nFrames: number of frames
xsize: number of pixels in X direction
ysize: number of pixels in Y direction
Structure:
entry: NXentry
title: NX_CHAR
start_time: NX_DATE_TIME
end_time: NX_DATE_TIME
definition: NX_CHAR
Official NeXus NXDL schema to which this file conforms
Obligatory value: NXtomo
instrument: NXinstrument
(source): NXsource
detector: NXdetector
data[nFrames, xsize, ysize]: NX_INT
image_key[nFrames]: NX_INT
In order to distinguish between sample projectrions, dark and flat images, a magic number is recorded per frame. The key is as follows:
- projection = 0
- flat field = 1
- dark field = 2
- invalid = 3
x_pixel_size: NX_FLOAT {units=NX_LENGTH}
y_pixel_size: NX_FLOAT {units=NX_LENGTH}
distance: NX_FLOAT {units=NX_LENGTH}
Distance between detector and samplex_rotation_axis_pixel_position: NX_FLOAT
y_rotation_axis_pixel_position: NX_FLOAT
sample: NXsample
name: NX_CHAR
Descriptive name of samplerotation_angle[nFrames]: NX_FLOAT {units=NX_ANGLE}
In practice this axis is always aligned along one pixel direction on the detector and usually vertical. There are experiments with horizontal rotation axes, so this would need to be indicated somehow. For now the best way for that is an open question.x_translation[nFrames]: NX_FLOAT {units=NX_LENGTH}
control: NXmonitor
data: NXdata
data –> /NXentry/NXinstrument/detector:NXdetector/data
rotation_angle –> /NXentry/NXsample/rotation_angle
image_key –> /NXentry/NXinstrument/detector:NXdetector/image_key