.. auto-generated by script ../../../../utils/nxdl2rst.py from the NXDL source NXbeam.nxdl.xml .. index:: ! NXbeam (base class) ! beam (base class) see: beam (base class); NXbeam .. _NXbeam: ====== NXbeam ====== **Status**: base class, extends :ref:`NXobject` **Description**: Properties of the neutron or X-ray beam at a given location. It will be referenced by beamline component groups within the :ref:`NXinstrument` group or by the :ref:`NXsample` group. Note that variables such as the incident energy could be scalar values or arrays. This group is especially valuable in storing the results of instrument simulations in which it is useful to specify the beam profile, time distribution etc. at each beamline component. Otherwise, its most likely use is in the :ref:`NXsample` group in which it defines the results of the neutron scattering by the sample, e.g., energy transfer, polarizations. **Symbols**: The symbols used in the schema to specify e.g. dimensions of arrays **nx**: Number of pixels of the horizontal axis (e.g. delay) of a FROG trace **ny**: Number of pixels of the vertical axis (e.g. frequency) of a FROG trace **Groups cited**: :ref:`NXdata` .. index:: NXdata (base class); used in base class **Structure**: .. _/NXbeam@default-attribute: .. index:: default (file attribute) **@default**: (optional) :ref:`NX_CHAR ` .. index:: plotting Declares which child group contains a path leading to a :ref:`NXdata` group. It is recommended (as of NIAC2014) to use this attribute to help define the path to the default dataset to be plotted. See https://www.nexusformat.org/2014_How_to_find_default_data.html for a summary of the discussion. .. _/NXbeam/distance-field: .. index:: distance (field) **distance**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_LENGTH `} Distance from sample .. _/NXbeam/incident_energy-field: .. index:: incident_energy (field) **incident_energy**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_ENERGY `} In the case of a monchromatic beam this is the scalar energy. Several other use cases are permitted, depending on the presence of other incident_energy_X fields. * In the case of a polychromatic beam this is an array of length m of energies, with the relative weights in incident_energy_weights. * In the case of a monochromatic beam that varies shot-to-shot, this is an array of energies, one for each recorded shot. Here, incident_energy_weights and incident_energy_spread are not set. * In the case of a polychromatic beam that varies shot-to-shot, this is an array of length m with the relative weights in incident_energy_weights as a 2D array. * In the case of a polychromatic beam that varies shot-to-shot and where the channels also vary, this is a 2D array of dimensions nP by m (slow to fast) with the relative weights in incident_energy_weights as a 2D array. Note, variants are a good way to represent several of these use cases in a single dataset, e.g. if a calibrated, single-value energy value is available along with the original spectrum from which it was calibrated. .. _/NXbeam/incident_energy_spread-field: .. index:: incident_energy_spread (field) **incident_energy_spread**: (optional) :ref:`NX_NUMBER ` {units=\ :ref:`NX_ENERGY `} The energy spread FWHM for the corresponding energy(ies) in incident_energy. In the case of shot-to-shot variation in the energy spread, this is a 2D array of dimension nP by m (slow to fast) of the spreads of the corresponding wavelength in incident_wavelength. .. _/NXbeam/incident_energy_weights-field: .. index:: incident_energy_weights (field) **incident_energy_weights**: (optional) :ref:`NX_NUMBER ` {units=\ :ref:`NX_ENERGY `} In the case of a polychromatic beam this is an array of length m of the relative weights of the corresponding energies in incident_energy. In the case of a polychromatic beam that varies shot-to-shot, this is a 2D array of dimensions np by m (slow to fast) of the relative weights of the corresponding energies in incident_energy. .. _/NXbeam/final_energy-field: .. index:: final_energy (field) **final_energy**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_ENERGY `} Energy on leaving beamline component .. _/NXbeam/energy_transfer-field: .. index:: energy_transfer (field) **energy_transfer**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_ENERGY `} Energy change caused by beamline component .. _/NXbeam/incident_wavelength-field: .. index:: incident_wavelength (field) **incident_wavelength**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_WAVELENGTH `} In the case of a monchromatic beam this is the scalar wavelength. Several other use cases are permitted, depending on the presence of other incident_wavelength_X fields. * In the case of a polychromatic beam this is an array of length m of wavelengths, with the relative weights in incident_wavelength_weights. * In the case of a monochromatic beam that varies shot-to-shot, this is an array of wavelengths, one for each recorded shot. Here, incident_wavelength_weights and incident_wavelength_spread are not set. * In the case of a polychromatic beam that varies shot-to-shot, this is an array of length m with the relative weights in incident_wavelength_weights as a 2D array. * In the case of a polychromatic beam that varies shot-to-shot and where the channels also vary, this is a 2D array of dimensions nP by m (slow to fast) with the relative weights in incident_wavelength_weights as a 2D array. Note, variants are a good way to represent several of these use cases in a single dataset, e.g. if a calibrated, single-value wavelength value is available along with the original spectrum from which it was calibrated. .. _/NXbeam/incident_wavelength_spread-field: .. index:: incident_wavelength_spread (field) **incident_wavelength_spread**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_WAVELENGTH `} Wavelength spread FWHM on entering component .. _/NXbeam/incident_beam_divergence-field: .. index:: incident_beam_divergence (field) **incident_beam_divergence**: (optional) :ref:`NX_FLOAT ` (Rank: 2, Dimensions: [2, j]) {units=\ :ref:`NX_ANGLE `} Divergence of beam entering this component .. _/NXbeam/extent-field: .. index:: extent (field) **extent**: (optional) :ref:`NX_FLOAT ` (Rank: 2, Dimensions: [2, j]) {units=\ :ref:`NX_LENGTH `} Size of the beam entering this component .. _/NXbeam/final_wavelength-field: .. index:: final_wavelength (field) **final_wavelength**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_WAVELENGTH `} Wavelength on leaving beamline component .. _/NXbeam/incident_polarization-field: .. index:: incident_polarization (field) **incident_polarization**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [4]) {units=\ :ref:`NX_ANY `} Incident polarization as a Stokes vector .. _/NXbeam/incident_polarization@units-attribute: .. index:: units (field attribute) **@units**: (optional) :ref:`NX_CHAR ` The units for this observable are not included in the NIAC list. Responsibility on correct formatting and parsing is handed to the user by using 'NX_ANY'. Correct parsing can still be implemented by using this attribute. | Fill with: * The unit unidata symbol if the unit has one (Example: 'T' for the unit of magnetic flux density tesla). * The unit unidata name if the unit has a name (Example: 'farad' for capacitance). * A string describing the units according to unidata unit operation notation, if the unit is a complex combination of named units and does not have a name. Example: for lightsource brilliance (SI) '1/(s.mm2.mrad2)'. Here: SI units are 'V2/m2'. .. _/NXbeam/final_polarization-field: .. index:: final_polarization (field) **final_polarization**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [4]) {units=\ :ref:`NX_ANY `} Polarization as Stokes vector on leaving beamline component .. _/NXbeam/final_polarization@units-attribute: .. index:: units (field attribute) **@units**: (optional) :ref:`NX_CHAR ` Here: SI units are 'V2/m2'. .. _/NXbeam/final_wavelength_spread-field: .. index:: final_wavelength_spread (field) **final_wavelength_spread**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_WAVELENGTH `} Wavelength spread FWHM of beam leaving this component .. _/NXbeam/final_beam_divergence-field: .. index:: final_beam_divergence (field) **final_beam_divergence**: (optional) :ref:`NX_FLOAT ` (Rank: 2, Dimensions: [2, j]) {units=\ :ref:`NX_ANGLE `} Divergence FWHM of beam leaving this component .. _/NXbeam/flux-field: .. index:: flux (field) **flux**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [i]) {units=\ :ref:`NX_FLUX `} flux incident on beam plane area .. _/NXbeam/pulse_energy-field: .. index:: pulse_energy (field) **pulse_energy**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_ENERGY `} Energy of a single pulse at the diagnostic point .. _/NXbeam/average_power-field: .. index:: average_power (field) **average_power**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_POWER `} Average power at the diagnostic point .. _/NXbeam/fluence-field: .. index:: fluence (field) **fluence**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_ANY `} Incident fluence at the diagnostic point .. _/NXbeam/fluence@units-attribute: .. index:: units (field attribute) **@units**: (optional) :ref:`NX_CHAR ` Here: SI units are ''J/m2'', customary ''mJ/cm2''. .. _/NXbeam/pulse_duration-field: .. index:: pulse_duration (field) **pulse_duration**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_TIME `} FWHM duration of the pulses at the diagnostic point .. _/NXbeam/frog_trace-field: .. index:: frog_trace (field) **frog_trace**: (optional) :ref:`NX_FLOAT ` (Rank: 2, Dimensions: [nx, ny]) FROG trace of the pulse. .. _/NXbeam/frog_delays-field: .. index:: frog_delays (field) **frog_delays**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [nx]) {units=\ :ref:`NX_TIME `} Horizontal axis of a FROG trace, i.e. delay. .. _/NXbeam/frog_frequencies-field: .. index:: frog_frequencies (field) **frog_frequencies**: (optional) :ref:`NX_FLOAT ` (Rank: 1, Dimensions: [ny]) {units=\ :ref:`NX_FREQUENCY `} Vertical axis of a FROG trace, i.e. frequency. .. _/NXbeam/chirp_type-field: .. index:: chirp_type (field) **chirp_type**: (optional) :ref:`NX_CHAR ` The type of chirp implemented .. _/NXbeam/chirp_GDD-field: .. index:: chirp_GDD (field) **chirp_GDD**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_TIME `} Group delay dispersion of the pulse for linear chirp .. _/NXbeam/DATA-group: **DATA**: (optional) :ref:`NXdata` Distribution of beam with respect to relevant variable e.g. wavelength. This is mainly useful for simulations which need to store plottable information at each beamline component. Hypertext Anchors ----------------- List of hypertext anchors for all groups, fields, attributes, and links defined in this class. * :ref:`/NXbeam/average_power-field ` * :ref:`/NXbeam/chirp_GDD-field ` * :ref:`/NXbeam/chirp_type-field ` * :ref:`/NXbeam/DATA-group ` * :ref:`/NXbeam/distance-field ` * :ref:`/NXbeam/energy_transfer-field ` * :ref:`/NXbeam/extent-field ` * :ref:`/NXbeam/final_beam_divergence-field ` * :ref:`/NXbeam/final_energy-field ` * :ref:`/NXbeam/final_polarization-field ` * :ref:`/NXbeam/final_polarization@units-attribute ` * :ref:`/NXbeam/final_wavelength-field ` * :ref:`/NXbeam/final_wavelength_spread-field ` * :ref:`/NXbeam/fluence-field ` * :ref:`/NXbeam/fluence@units-attribute ` * :ref:`/NXbeam/flux-field ` * :ref:`/NXbeam/frog_delays-field ` * :ref:`/NXbeam/frog_frequencies-field ` * :ref:`/NXbeam/frog_trace-field ` * :ref:`/NXbeam/incident_beam_divergence-field ` * :ref:`/NXbeam/incident_energy-field ` * :ref:`/NXbeam/incident_energy_spread-field ` * :ref:`/NXbeam/incident_energy_weights-field ` * :ref:`/NXbeam/incident_polarization-field ` * :ref:`/NXbeam/incident_polarization@units-attribute ` * :ref:`/NXbeam/incident_wavelength-field ` * :ref:`/NXbeam/incident_wavelength_spread-field ` * :ref:`/NXbeam/pulse_duration-field ` * :ref:`/NXbeam/pulse_energy-field ` * :ref:`/NXbeam@default-attribute ` **NXDL Source**: https://github.com/nexusformat/definitions/blob/main/base_classes/NXbeam.nxdl.xml