3.3.1.26. NXguideΒΆ

Status:

base class, extends NXobject, version 1.0

Description:

A neutron optical element to direct the path of the beam.

NXguide is used by neutron instruments to describe a guide consists of several mirrors building a shape through which neutrons can be guided or directed. The simplest such form is box shaped although elliptical guides are gaining in popularity. The individual parts of a guide usually have common characteristics but there are cases where they are different. For example, a neutron guide might consist of 2 or 4 coated walls or a supermirror bender with multiple, coated vanes.

To describe polarizing supermirrors such as used in neutron reflection, it may be necessary to revise this definition of NXguide to include NXpolarizer and/or NXmirror.

When even greater complexity exists in the definition of what constitutes a guide, it has been suggested that NXguide be redefined as a NXcollection of NXmirror each having their own NXgeometry describing their location(s).

For the more general case when describing mirrors, consider using NXmirror.

NOTE: The NeXus International Advisory Committee welcomes comments for revision and improvement of this definition of NXguide.

Symbols:

nsurf: number of reflecting surfaces

nwl: number of wavelengths

Groups cited:
NXdata, NXgeometry

Structure:

description: NX_CHAR

A description of this particular instance of NXguide.

incident_angle: NX_FLOAT {units=NX_ANGLE}

TODO: documentation needed

bend_angle_x: NX_FLOAT {units=NX_ANGLE}

TODO: documentation needed

bend_angle_y: NX_FLOAT {units=NX_ANGLE}

TODO: documentation needed

interior_atmosphere: NX_CHAR

Any of these values: vacuum | helium | argon

external_material: NX_CHAR

external material outside substrate

m_value[nsurf]: NX_FLOAT

The m value for a supermirror, which defines the supermirror regime in multiples of the critical angle of Nickel.

substrate_material[nsurf]: NX_FLOAT

TODO: documentation needed

substrate_thickness[nsurf]: NX_FLOAT {units=NX_LENGTH}

TODO: documentation needed

coating_material[nsurf]: NX_FLOAT

TODO: documentation needed

substrate_roughness[nsurf]: NX_FLOAT {units=NX_LENGTH}

TODO: documentation needed

coating_roughness[nsurf]: NX_FLOAT {units=NX_LENGTH}

TODO: documentation needed

number_sections: NX_INT {units=NX_UNITLESS}

number of substrate sections (also called nsurf as an index in the NXguide specification)

(geometry): NXgeometry

TODO: Explain what this NXgeometry group means. What is intended here?

reflectivity: NXdata

Reflectivity as function of reflecting surface and wavelength

@signal: NX_CHAR

Obligatory value: data

@axes: NX_CHAR

Obligatory value: surface wavelength

@surface_indices: NX_CHAR

Obligatory value: 0

@wavelength_indices: NX_CHAR

Obligatory value: 1

data[nsurf, nwl]: NX_NUMBER

reflectivity of each surface as a function of wavelength

surface[nsurf]: NX_NUMBER {units=NX_ANY}

List of surfaces. Probably best to use index numbers but the specification is very loose.

wavelength[nwl]: NX_NUMBER {units=NX_WAVELENGTH}

wavelengths at which reflectivity was measured
NXDL Source:
https://github.com/nexusformat/definitions/blob/master/base_classes/NXguide.nxdl.xml