1.4. Strategies for storing information in NeXus data files¶
NeXus may appear daunting, at first, to use. The number of base classes is quite large as well as is the number of application definitions. This chapter describes some of the strategies that have been recommended for how to store information in NeXus data files.
When we use the term storing, some might be helped if they consider this as descriptions for how to classify their data.
It is intended for this chapter to grow, with the addition of different use cases as they are presented for suggestions.
1.4.1. Strategies: The simplest case(s)¶
Perhaps the simplest case might be either a step scan with two or more columns of data. Another simple case might be a single image acquired by an area detector. In either of these hypothetical cases, the situation is so simple that there is little addition information available to be described (for whatever reason).
1.4.1.1. Step scan with two or more data columns¶
Consider the case where we wish to store the data from a step scan. This case may involve two or more related 1-D arrays of data to be saved, each having the same length. For our hypothetical case, we’lll have these positioners as arrays:
positioner arrays | detector arrays |
---|---|
ar , ay , dy |
I0 , I00 , time , Epoch , photodiode |
1.4.2. Strategies: The wavelength¶
Where should the wavelength of my experiment be written? This is one of the Frequently Asked Questions. The canonical location to store wavelength has been:
/NXentry/NXinstrument/NXcrystal/wavelength
More recently, this location makes more sense to many:
/NXentry/NXinstrument/NXmonochromator/wavelength
NXcrystal describes a crystal monochromator or analyzer. Recently, scientists with monochromatic radiation not defined by a crystal, such as from an electron-beam undulator or a neutron helical velocity selector, were not satisfied with creating a fictitious instance of a crystal just to preserve the wavelength from their instrument. Thus, the addition of the NXmonochromator base class to NeXus, which also allows “energy” to be specified if one is so inclined.
Note
See the Class path specification section for a short discussion of the difference between the HDF5 path and the NeXus symbolic class path.
1.4.3. Strategies: The next case¶
The NIAC: The NeXus International Advisory Committee welcomes suggestions for additional sections in this chapter.