Skip to content
Snippets Groups Projects
Commit 64e201f5 authored by Jan Kotanski's avatar Jan Kotanski
Browse files

New upstream version 0.2.3

parent 3295dd86
No related branches found
No related tags found
No related merge requests found
Showing
with 2402 additions and 0 deletions
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl" ?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2014-2016 NeXus International Advisory Committee (NIAC)
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 3 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# For further information, see http://www.nexusformat.org
-->
<definition name="NXstxm" extends="NXobject" type="group"
category="application"
xmlns="http://definition.nexusformat.org/nxdl/3.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd"
version="1.1"
>
<symbols>
<doc>These symbols will be used below to coordinate the shapes of the datasets.</doc>
<symbol name="numP"><doc>total number of scan points</doc></symbol>
<symbol name="numE"><doc>number of photon energies scanned</doc></symbol>
<symbol name="numY"><doc>number of pixels in Y direction</doc></symbol>
<symbol name="numX"><doc>number of pixels in X direction</doc></symbol>
</symbols>
<doc>
Application definition for a STXM instrument.
The interferometer
position measurements, monochromator photon energy values and
detector measurements are all treated as NXdetectors and stored
within the NXinstrument group as lists of values stored in
chronological order. The NXdata group then holds another version
of the data in a regular 3D array (NumE by NumY by NumX, for a
total of NumP points in a sample image stack type scan). The former
data values should be stored with a minimum loss of precision, while
the latter values can be simplified and/or approximated in order to
fit the constraints of a regular 3D array. 'Line scans' and 'point spectra'
are just sample_image scan types with reduced dimensions in the same way
as single images have reduced E dimensions compared to image 'stacks'.
</doc>
<group type="NXentry">
<field name="title"/>
<field name="start_time" type="NX_DATE_TIME"/>
<field name="end_time" type="NX_DATE_TIME"/>
<field name="definition" type="NX_CHAR" minOccurs="1" maxOccurs="1">
<doc> Official NeXus NXDL schema to which this file conforms </doc>
<enumeration>
<item value="NXstxm"/>
</enumeration>
</field>
<group type="NXinstrument" minOccurs="1" maxOccurs="1">
<group type="NXsource" minOccurs="1" maxOccurs="1">
<field name="type" minOccurs="1" maxOccurs="1"/>
<field name="name" minOccurs="1" maxOccurs="1"/>
<field name="probe" minOccurs="1" maxOccurs="1"/>
</group>
<group type="NXmonochromator" name="monochromator" minOccurs="1" maxOccurs="1">
<field name="energy" minOccurs="1" maxOccurs="1">
<dimensions rank="1">
<dim index="1" value="NumP" />
</dimensions>
</field>
</group>
<group type="NXdetector" minOccurs="1">
<field name="data" type="NX_NUMBER">
<dimensions>
<doc> Detector data should be presented with the first dimension corresponding to the
scan point and subsequent dimensions corresponding to the output of the detector.
Detectors that provide more than one value per scan point should have
a data array of rank 1+d, where d is the dimensions of the array provided per
scan point. For example, an area detector should have an NXdetector data array
of 3 dimensions, with the first being the set of scan points and the latter
two being the x- and y- extent of the detector </doc>
<dim index="1" value="NumP" />
</dimensions>
</field>
</group>
<group type="NXdetector" name="sample_x" minOccurs="0" maxOccurs="1">
<doc> Measurements of the sample position from the x-axis interferometer.</doc>
<field name="data" type="NX_FLOAT">
<dimensions rank="1">
<dim index="1" value="NumP" />
</dimensions>
</field>
</group>
<group type="NXdetector" name="sample_y" minOccurs="0" maxOccurs="1">
<doc> Measurements of the sample position from the y-axis interferometer.</doc>
<field name="data" type="NX_FLOAT">
<dimensions rank="1">
<dim index="1" value="NumP" />
</dimensions>
</field>
</group>
<group type="NXdetector" name="sample_z" minOccurs="0" maxOccurs="1">
<doc> Measurements of the sample position from the z-axis interferometer.</doc>
<field name="data" type="NX_FLOAT">
<dimensions rank="1">
<dim index="1" value="NumP" />
</dimensions>
</field>
</group>
</group>
<group type="NXsample">
<field name="rotation_angle" type="NX_FLOAT" />
</group>
<group type="NXdata">
<field name="stxm_scan_type" minOccurs="1" maxOccurs="1">
<doc> Label for typical scan types as a convenience for humans.
Each label corresponds to a specific set of axes being scanned
to produce a data array of shape:
* sample point spectrum: (photon_energy,)
* sample line spectrum: (photon_energy, sample_y/sample_x)
* sample image: (sample_y, sample_x)
* sample image stack: (photon_energy, sample_y, sample_x)
* sample focus: (zoneplate_z, sample_y/sample_x)
* osa image: (osa_y, osa_x)
* osa focus: (zoneplate_z, osa_y/osa_x)
* detector image: (detector_y, detector_x)
The "generic scan" string is to be used when none of the
other choices are appropriate.
</doc>
<enumeration>
<item value="sample point spectrum"/>
<item value="sample line spectrum"/>
<item value="sample image"/>
<item value="sample image stack"/>
<item value="sample focus"/>
<item value="osa image"/>
<item value="osa focus"/>
<item value="detector image"/>
<item value="generic scan"/>
</enumeration>
</field>
<field name="data" type="NX_NUMBER" signal="1">
<doc> Detectors that provide more than one value per scan point should be summarised
to a single value per scan point for this array in order to simplify plotting.
Note that 'Line scans' and focus type scans measure along one spatial dimension
but are not restricted to being parallel to the X or Y axes. Such scans
should therefore use a single dimension for the positions along the spatial
line. The 'sample_x' and 'sample_y' fields should then contain lists of the
x- and y-positions and should both have the 'axis' attribute pointing to the same dimension.</doc>
</field>
<field name="energy" type="NX_FLOAT" minOccurs="1" maxOccurs="1">
<doc> List of photon energies of the X-ray beam. If scanned through multiple values,
then an 'axis' attribute will be required to link the field to the appropriate data array dimension.</doc>
<dimensions rank="1">
<dim index="1" value="NumE" />
</dimensions>
</field>
<field name="sample_y" type="NX_FLOAT" minOccurs="1" maxOccurs="1">
<doc> List of Y positions on the sample. If scanned through multiple values,
then an 'axis' attribute will be required to link the field to the appropriate data array dimension.</doc>
<dimensions rank="1">
<dim index="1" value="NumY" />
</dimensions>
</field>
<field name="sample_x" type="NX_FLOAT" minOccurs="1" maxOccurs="1">
<doc> List of X positions on the sample. If scanned through multiple values,
then an 'axis' attribute will be required to link the field to the appropriate data array dimension.</doc>
<dimensions rank="1">
<dim index="1" value="NumX" />
</dimensions>
</field>
</group>
<group type="NXmonitor" name="control" minOccurs="0" maxOccurs="1">
<field name="data" type="NX_FLOAT">
<doc> Values to use to normalise for time-variations in photon flux. Typically, the synchrotron storage ring
electron beam current is used as a proxy for the X-ray beam intensity. Array must have same shape as the
NXdata groups.</doc>
</field>
</group>
</group>
</definition>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment