Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fairmat 2024: add NXpositioner, shape, and size to NXaperture #1409

Merged
merged 10 commits into from
Sep 29, 2024
55 changes: 42 additions & 13 deletions base_classes/NXaperture.nxdl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,15 @@
#
# For further information, see http://www.nexusformat.org
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" category="base"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd"
name="NXaperture"
type="group" extends="NXobject">

<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" name="NXaperture" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
A beamline aperture.

Note, the group was incorrectly documented as deprecated, but it is not and it is in common use.</doc>
<!-- TODO compare with "screens" in SHADOW -->

Note, the group was incorrectly documented as deprecated, but it is not and it is in common use.

You can specify the geometry of the aperture using either NXoff_geometry or for simpler geometry shape and size.
</doc>
<!--TODO compare with "screens" in SHADOW-->
<field name="depends_on" type="NX_CHAR">
<doc>
NeXus positions components by applying a set of translations and rotations
Expand All @@ -45,7 +42,7 @@
The reference point of the aperture is its center in the x and y axis. The reference point on the z axis is the
surface of the aperture pointing towards the source.

In complex (asymmetic) geometries an NXoff_geometry group can be used to provide an unambiguous reference.
In complex (asymmetric) geometries an NXoff_geometry group can be used to provide an unambiguous reference.

.. image:: aperture/aperture.png
:width: 40%
Expand All @@ -61,12 +58,17 @@
</group>
<group type="NXoff_geometry">
<doc>
Use this group to describe the shape of the aperture
Use this group to describe the shape of the aperture.
</doc>
</group>
<group type="NXpositioner">
<doc>
Stores the raw positions of aperture motors.
</doc>
</group>
<group type="NXgeometry" deprecated="Use the field `depends_on` and :ref:`NXtransformations` to position the aperture and :ref:`NXoff_geometry` to describe its shape">
<doc>
location and shape of aperture
Location and shape of aperture

.. TODO: documentation needs improvement, contributions welcome

Expand All @@ -87,7 +89,34 @@
<field name="description">
<doc>Description of aperture</doc>
</field>
<group type="NXnote"><doc>describe any additional information in a note</doc></group>
<field name="shape">
<doc>
Shape of the aperture.
</doc>
<enumeration>
<item value="straight slit"/>
<item value="curved slit"/>
<item value="pinhole"/>
<item value="circle"/>
<item value="square"/>
<item value="hexagon"/>
<item value="octagon"/>
<item value="bladed"/>
<item value="open"/>
<item value="grid"/>
</enumeration>
</field>
<field name="size" type="NX_NUMBER" units="NX_LENGTH">
<doc>
The relevant dimension for the aperture, i.e. slit width, pinhole and iris
diameter
</doc>
</field>
<group type="NXnote">
<doc>
Describe any additional information in a note.
</doc>
</group>
<attribute name="default">
<doc>
.. index:: plotting
Expand Down
Loading