3.3.3.105. NXxas_pfy

Status:

application definition (contribution), extends NXxas

Description:

In partial fluorescence yield (PFY), only a selected portion of the ...

In partial fluorescence yield (PFY), only a selected portion of the fluorescence emission is detected, typically around a specific fluorescence line of the absorbing element (e.g. \(K\alpha\)). Experimentally, this energy selectivity can be achieved in several ways:

  • Energy-dispersive detector (e.g. silicon-drift diode, high-purity Ge detector, superconducting tunnel junction, etc.): the detector bins photons by emission energy into channels; the fluorescence line is isolated by selecting a channel range.

  • Grating spectrometer: a diffraction grating disperses the emitted photons by energy onto a 2D detector, providing higher energy resolution.

The top-level intensity field stores the ratio \(I_f/I_0\), where \(I_f\) is the selected fluorescence intensity and \(I_0\) is the incident beam intensity. This ratio is proportional to the absorption coefficient:

\[\mu(E) \propto I_f/I_0\]

PFY may be affected by detector dead-time and self-absorption effects. When the raw detector data and processing steps are available, they can be stored in the optional NXinstrument, NXcollection, and NXprocess groups, enabling full reproducibility of the data reduction.

Symbols:

The symbol(s) listed here will be used below to coordinate datasets ...

The symbol(s) listed here will be used below to coordinate datasets with the same shape.

nEnergy: Number of energy data points

nChannels: Number of selected detector channels within the emission energy window

nY: Number of pixel rows in the region of interest (ROI) on the grating-based spectrometer

nX: Number of pixel columns in the region of interest (ROI) on the grating-based spectrometer

Groups cited:

NXbeam, NXcollection, NXcoordinate_system, NXdetector, NXemission_lines, NXentry, NXgrating, NXinstrument, NXprocess, NXsample, NXtransformations

Structure:

ENTRY: (required) NXentry

definition: (required) NX_CHAR

Official NeXus NXDL schema to which this file conforms. ...

Official NeXus NXDL schema to which this file conforms.

Obligatory value: NXxas_pfy

intensity: (required) NX_FLOAT (Rank: 1, Dimensions: [nEnergy]) {units=NX_ANY}

The ratio :math:`I_f/I_0`, where :math:`I_f` is the selected ...

The ratio \(I_f/I_0\), where \(I_f\) is the selected fluorescence intensity and \(I_0\) is the incident beam intensity.

emission_lines: (required) NXemission_lines

The emission line(s) selected for the partial fluorescence ...

The emission line(s) selected for the partial fluorescence yield measurement, whether via a channel range or a grating-based spectrometer.

emission_energy_window: (required) NX_FLOAT (Rank: 1, Dimensions: [2]) {units=NX_ENERGY}

The lower and upper bounds :math:`[e_{min}, e_{max}]` of the ...

The lower and upper bounds \([e_{min}, e_{max}]\) of the detected emission energy window. This is the energy range over which fluorescence photons are accepted, whether defined by a detector channel range or a spectrometer region of interest.

beamline_coordinate_system: (optional) NXcoordinate_system

Beamline coordinate system with the sample at the origin: ...

Beamline coordinate system with the sample at the origin: x along the beam, y horizontal, z opposite to gravity.

origin: (required) NX_CHAR

Obligatory value: sample

x_direction: (required) NX_CHAR

Obligatory value: along incident beam

y_direction: (required) NX_CHAR

Obligatory value: horizontal perpendicular to beam

z_direction: (required) NX_CHAR

Obligatory value: opposite to gravity

x: (required) NX_NUMBER {units=NX_LENGTH}

Obligatory value: [1, 0, 0]

y: (required) NX_NUMBER {units=NX_LENGTH}

Obligatory value: [0, 1, 0]

z: (required) NX_NUMBER {units=NX_LENGTH}

Obligatory value: [0, 0, 1]

depends_on: (required) NX_CHAR

Should point to ...

Should point to transformations/beam.

transformations: (optional) NXtransformations

Two rotations relating the beamline frame to ...

Two rotations relating the beamline frame to the NeXus laboratory frame, plus direction vectors labeling beam and gravity.

beam: (required) NX_NUMBER {units=NX_UNITLESS}

Direction of the incident beam in the beamline ...

Direction of the incident beam in the beamline coordinate system.

@vector: (required) NX_NUMBER

Obligatory value: [1, 0, 0]

@depends_on: (required) NX_CHAR

Obligatory value: gravity

gravity: (required) NX_NUMBER {units=NX_UNITLESS}

Direction of gravity in the beamline coordinate ...

Direction of gravity in the beamline coordinate system.

@vector: (required) NX_NUMBER

Obligatory value: [0, 0, -1]

@depends_on: (required) NX_CHAR

Obligatory value: rotate_gravity_to_minus_y

rotate_gravity_to_minus_y: (required) NX_NUMBER {units=NX_ANGLE}

Active rotation moving gravity from the ...

Active rotation moving gravity from the beamline direction (-z) to the NeXus direction (-y).

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [1, 0, 0]

@depends_on: (required) NX_CHAR

Obligatory value: rotate_beam_to_plus_z

rotate_beam_to_plus_z: (required) NX_NUMBER {units=NX_ANGLE}

Active rotation moving the beam from the ...

Active rotation moving the beam from the beamline direction (+x) to the NeXus direction (+z).

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [0, 1, 0]

@depends_on: (required) NX_CHAR

Should point to ``.`` (the NeXus laboratory ...

Should point to . (the NeXus laboratory frame).

SAMPLE: (required) NXsample

depends_on: (optional) NX_CHAR

The sample is at the origin of the beamline ...

The sample is at the origin of the beamline coordinate system. Should point to /entry/beamline_coordinate_system.

INSTRUMENT: (optional) NXinstrument

beam: (optional) NXbeam

The incident X-ray beam.

depends_on: (optional) NX_CHAR

Should point to ...

Should point to beam/transformations/beam_direction.

transformations: (optional) NXtransformations

beam_direction: (required) NX_NUMBER {units=NX_UNITLESS}

Beam direction in the beamline coordinate ...

Beam direction in the beamline coordinate system. The beam travels along +x.

@vector: (required) NX_NUMBER

Obligatory value: [1, 0, 0]

@depends_on: (required) NX_CHAR

Should point to ...

Should point to /entry/beamline_coordinate_system or to /entry/sample.

i0: (recommended) NXdetector

Detector measuring the incident beam intensity \(I_0\).

data: (required) NX_NUMBER (Rank: 1, Dimensions: [nEnergy])

depends_on: (optional) NX_CHAR

Should point to ...

Should point to i0/transformations/i0_distance.

transformations: (optional) NXtransformations

i0_distance: (required) NX_NUMBER {units=NX_LENGTH}

Distance from the sample to the I0 detector, ...

Distance from the sample to the I0 detector, measured upstream along the beam (negative x direction in the beamline frame).

@transformation_type: (required) NX_CHAR

Obligatory value: translation

@vector: (required) NX_NUMBER

Obligatory value: [-1, 0, 0]

@depends_on: (required) NX_CHAR

Should point to /entry/sample.

grating: (optional) NXgrating

Diffraction grating used to select the emission energy ...

Diffraction grating used to select the emission energy in a grating-based spectrometer. Present only when a grating spectrometer is used instead of an energy-dispersive detector.

The grating lies on the line connecting the sample and the fluorescence detector (if): the azimuthal and polar angles must therefore match those of if/transformations, and only the distance differs.

depends_on: (optional) NX_CHAR

Should point to the last transformation in the ...

Should point to the last transformation in the chain, i.e. transformations/grating_distance.

transformations: (optional) NXtransformations

Transformation chain placing the grating relative ...

Transformation chain placing the grating relative to the sample. The azimuthal and polar angles must be equal to those of the fluorescence detector (if) to ensure colinearity.

grating_distance: (required) NX_NUMBER {units=NX_LENGTH}

Distance from the sample to the grating along ...

Distance from the sample to the grating along the sample-to-detector direction.

@transformation_type: (required) NX_CHAR

Obligatory value: translation

@vector: (required) NX_NUMBER

Obligatory value: [1, 0, 0]

@depends_on: (required) NX_CHAR

Obligatory value: grating_polar_angle

grating_polar_angle: (required) NX_NUMBER {units=NX_ANGLE}

Polar (elevation) angle of the grating above ...

Polar (elevation) angle of the grating above the horizontal beam plane. Must equal if/transformations/if_polar_angle.

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [0, -1, 0]

@depends_on: (required) NX_CHAR

Obligatory value: grating_azimuthal_angle

grating_azimuthal_angle: (required) NX_NUMBER {units=NX_ANGLE}

Azimuthal (horizontal) angle of the grating ...

Azimuthal (horizontal) angle of the grating from the incident beam direction. Must equal if/transformations/if_azimuthal_angle.

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [0, 0, 1]

@depends_on: (required) NX_CHAR

Should point to /entry/sample.

if: (recommended) NXdetector

Fluorescence detector measuring :math:`I_f`. When using an ...

Fluorescence detector measuring \(I_f\). When using an energy-dispersive detector, data holds the intensity integrated over the selected detector channels. When using a grating-based spectrometer, data holds the ROI integrated on the spectrometer detector. In both cases the data may be corrected for dead-time and self-absorption.

data: (required) NX_NUMBER (Rank: 1, Dimensions: [nEnergy])

dead_time: (optional) NX_FLOAT (Rank: 1, Dimensions: [nEnergy]) {units=NX_TIME}

Detector dead time per energy point.

count_time: (optional) NX_FLOAT (Rank: 1, Dimensions: [nEnergy]) {units=NX_TIME}

Detector live time per energy point.

depends_on: (optional) NX_CHAR

Should point to the last transformation in the ...

Should point to the last transformation in the chain, i.e. transformations/if_distance.

transformations: (optional) NXtransformations

Transformation chain placing the fluorescence ...

Transformation chain placing the fluorescence detector relative to the sample: azimuthal angle, polar angle, then distance. These angles are required to compute self-absorption corrections.

if_distance: (required) NX_NUMBER {units=NX_LENGTH}

Distance from the sample to the fluorescence ...

Distance from the sample to the fluorescence detector (or spectrometer entrance).

@transformation_type: (required) NX_CHAR

Obligatory value: translation

@vector: (required) NX_NUMBER

Obligatory value: [1, 0, 0]

@depends_on: (required) NX_CHAR

Obligatory value: if_polar_angle

if_polar_angle: (required) NX_NUMBER {units=NX_ANGLE}

Polar (elevation) angle of the detector above ...

Polar (elevation) angle of the detector above the horizontal beam plane. A value of 0 means the detector is in the horizontal plane; 90 degrees means it is directly above the sample.

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [0, -1, 0]

@depends_on: (required) NX_CHAR

Obligatory value: if_azimuthal_angle

if_azimuthal_angle: (required) NX_NUMBER {units=NX_ANGLE}

Azimuthal (horizontal) angle of the detector ...

Azimuthal (horizontal) angle of the detector from the incident beam direction. Rotation around the vertical z-axis. Typically around 90 degrees to minimize elastic scattering background.

@transformation_type: (required) NX_CHAR

Obligatory value: rotation

@vector: (required) NX_NUMBER

Obligatory value: [0, 0, 1]

@depends_on: (required) NX_CHAR

Should point to /entry/sample.

COLLECTION: (optional) NXcollection

Raw data as written by the acquisition software, ...

Raw data as written by the acquisition software, preserved without modification to allow independent reprocessing. Either detector_channels or detector_roi will be present depending on the detector type used; not both simultaneously.

detector_channels: (optional) NX_FLOAT (Rank: 2, Dimensions: [nEnergy, nChannels])

Raw channel counts per incident energy point for the ...

Raw channel counts per incident energy point for the selected channels of an energy-dispersive detector. Only the channels within the emission energy window are stored. Axis 0 is the energy scan axis; axis 1 enumerates the selected channels. Each value is the count in that channel for one energy point.

detector_roi: (optional) NX_FLOAT (Rank: 3, Dimensions: [nEnergy, nY, nX])

Raw detector image within the ROI per incident energy point. ...

Raw detector image within the ROI per incident energy point. Axis 0 is the energy scan axis; axes 1 and 2 span the 2D pixel grid of the downstream detector (nY rows, nX columns).

PROCESS: (optional) NXprocess

Description of how :ref:`intensity ...

Description of how intensity was obtained from the raw detector data (i0, if), including any applied correction, e.g., dead-time or self-absorption.

program: (optional) NX_CHAR

Name of the program used for processing.

version: (optional) NX_CHAR

Version of the program used for processing.

date: (optional) NX_DATE_TIME

Date and time of processing.

Hypertext Anchors

List of hypertext anchors for all groups, fields, attributes, and links defined in this class.

NXDL Source:

https://github.com/nexusformat/definitions/blob/main/contributed_definitions/NXxas_pfy.nxdl.xml