From dc1f845b4e11aa893a12b1e5291484ef7d5c3035 Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 9 Aug 2023 18:06:05 +0200 Subject: [PATCH 01/10] Readds base classes for mpes (from commit 843283a) # Conflicts: # base_classes/NXaperture.nxdl.xml --- base_classes/NXaperture.nxdl.xml | 35 ++++--- base_classes/NXbeam.nxdl.xml | 141 ++++++++++++++++++++++++++++- base_classes/NXinstrument.nxdl.xml | 25 +++++ base_classes/NXprocess.nxdl.xml | 15 +++ 4 files changed, 202 insertions(+), 14 deletions(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 8619be18ff..47e5fb7c63 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -3,7 +3,7 @@ @@ -59,11 +56,6 @@ other component groups. - - - Use this group to describe the shape of the aperture - - location and shape of aperture @@ -87,7 +79,28 @@ Description of aperture - describe any additional information in a note + + Shape of the aperture. + + + + + + + + + + + + + + + + The relevant dimension for the aperture, i.e. slit width, pinhole and iris + diameter + + + describe any additional information in a note* .. index:: plotting diff --git a/base_classes/NXbeam.nxdl.xml b/base_classes/NXbeam.nxdl.xml index 68fd0b4147..7d82f37532 100644 --- a/base_classes/NXbeam.nxdl.xml +++ b/base_classes/NXbeam.nxdl.xml @@ -61,11 +61,45 @@ Distance from sample. Note, it is recommended to use NXtransformations instead. - Energy carried by each particle of the beam on entering the beamline component + + Energy carried by each particle of the beam on entering the beamline component. + + In the case of a monochromatic 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. + + + + 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. + + + + + 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. + + Energy carried by each particle of the beam on leaving the beamline component @@ -174,18 +208,59 @@ - Polarization vector on entering beamline component + + Incident polarization as a Stokes vector + on entering beamline component + + + + 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. + + - Polarization vector on leaving beamline component + + Polarization as Stokes vector on leaving beamline component + + + + 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. + + @@ -245,6 +320,66 @@ + + + Energy of a single pulse at the diagnostic point + + + + + Average power at the diagnostic point + + + + + Incident fluence at the diagnostic point + + + + Here: SI units are 'J/m2', customary 'mJ/cm2'. + + + + + + FWHM duration of the pulses at the diagnostic point + + + + + FROG trace of the pulse. + + + + + + + + + Horizontal axis of a FROG trace, i.e. delay. + + + + + + + + Vertical axis of a FROG trace, i.e. frequency. + + + + + + + + The type of chirp implemented + + + + + Group delay dispersion of the pulse for linear chirp + + Distribution of beam with respect to relevant variable e.g. wavelength. This is mainly diff --git a/base_classes/NXinstrument.nxdl.xml b/base_classes/NXinstrument.nxdl.xml index 15e7645403..c357d7b7f2 100644 --- a/base_classes/NXinstrument.nxdl.xml +++ b/base_classes/NXinstrument.nxdl.xml @@ -42,6 +42,31 @@ short name for instrument, perhaps the acronym + + + Energy resolution of the experiment (FWHM or gaussian broadening) + + + + + Momentum resolution of the experiment (FWHM) + + + + + Angular resolution of the experiment (FWHM) + + + + + Spatial resolution of the experiment (Airy disk radius) + + + + + Temporal resolution of the experiment (FWHM) + + diff --git a/base_classes/NXprocess.nxdl.xml b/base_classes/NXprocess.nxdl.xml index d7d1a80f84..65b16c169a 100644 --- a/base_classes/NXprocess.nxdl.xml +++ b/base_classes/NXprocess.nxdl.xml @@ -43,6 +43,21 @@ Date and time of processing. + + + Describes the operations of image registration + + + + + Describes the operations of image distortion correction + + + + + Describes the operations of calibration procedures, e.g. axis calibrations. + + The note will contain information about how the data was processed From 31bdf0d831b3fb8ed7093b6575b5c23c2bc7fb2d Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 16 Aug 2023 12:12:56 +0200 Subject: [PATCH 02/10] Revert to older classes # Conflicts: # base_classes/NXdetector.nxdl.xml --- base_classes/NXaperture.nxdl.xml | 169 ++++++++++-------- .../NXcollectioncolumn.nxdl.xml | 6 +- contributed_definitions/NXmpes.nxdl.xml | 17 +- 3 files changed, 97 insertions(+), 95 deletions(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 47e5fb7c63..7e64513caf 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -1,14 +1,14 @@ - + - - - A beamline aperture. This group is deprecated, use NXslit instead. - - + + + A beamline aperture. This group is deprecated, use NXslit instead. + + - - NeXus positions components by applying a set of translations and rotations - to apply to the component starting from 0, 0, 0. The order of these operations - is critical and forms what NeXus calls a dependency chain. The depends_on - field defines the path to the top most operation of the dependency chain or the - string "." if located in the origin. Usually these operations are stored in a - NXtransformations group. But NeXus allows them to be stored anywhere. - - 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. - - .. image:: aperture/aperture.png - :width: 40% - + + NeXus positions components by applying a set of translations and rotations + to apply to the component starting from 0, 0, 0. The order of these operations + is critical and forms what NeXus calls a dependency chain. The depends_on + field defines the path to the top most operation of the dependency chain or the + string "." if located in the origin. Usually these operations are stored in a + NXtransformations group. But NeXus allows them to be stored anywhere. + + 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. + + .. image:: aperture/aperture.png + :width: 40% + - - This is the group recommended for holding the chain of translation - and rotation operations necessary to position the component within - the instrument. The dependency chain may however traverse similar groups in - other component groups. - + + This is the group recommended for holding the chain of translation + and rotation operations necessary to position the component within + the instrument. The dependency chain may however traverse similar groups in + other component groups. + + + + + Stores the raw positions of aperture motors. + - location and shape of aperture - - .. TODO: documentation needs improvement, contributions welcome - - * description of terms is poor and leaves much to interpretation - * Describe what is meant by translation _here_ and ... - * Similar throughout base classes - * Some base classes do this much better - * Such as where is the gap written? - + location and shape of aperture + + .. TODO: documentation needs improvement, contributions welcome + + * description of terms is poor and leaves much to interpretation + * Describe what is meant by translation _here_ and ... + * Similar throughout base classes + * Some base classes do this much better + * Such as where is the gap written? - location and shape of each blade + + location and shape of each blade + - - Absorbing material of the aperture + + + + Absorbing material of the aperture + - Description of aperture + + Description of aperture + - Shape of the aperture. - - - - - - - - - - - - - - - - The relevant dimension for the aperture, i.e. slit width, pinhole and iris - diameter - - - describe any additional information in a note* + + Shape of the aperture. + + + + + + + + + + + + + + + + + The relevant dimension for the aperture, i.e. slit width, pinhole and iris + diameter + + + + + describe any additional information in a note* + + - .. 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. + .. 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. diff --git a/contributed_definitions/NXcollectioncolumn.nxdl.xml b/contributed_definitions/NXcollectioncolumn.nxdl.xml index 5348d55b5f..288ede79ca 100644 --- a/contributed_definitions/NXcollectioncolumn.nxdl.xml +++ b/contributed_definitions/NXcollectioncolumn.nxdl.xml @@ -8,7 +8,7 @@ # 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. +# version 2 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 @@ -23,8 +23,8 @@ --> - Subclass of NXelectronanalyser to describe the electron collection column of a - photoelectron analyser. + Subclass of NXelectronanalyser to describe the electron collection + column of a photoelectron analyser. diff --git a/contributed_definitions/NXmpes.nxdl.xml b/contributed_definitions/NXmpes.nxdl.xml index c2bfe957c6..3e015854f9 100644 --- a/contributed_definitions/NXmpes.nxdl.xml +++ b/contributed_definitions/NXmpes.nxdl.xml @@ -8,7 +8,7 @@ # 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. +# version 2 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 @@ -22,13 +22,9 @@ # For further information, see http://www.nexusformat.org --> - - This is the most general application definition for multidimensional - photoelectron spectroscopy. + This is the most general application definition for multidimensional + photoelectron spectroscopy. @@ -196,7 +192,6 @@ with higher granularity in the data description.--> - Description of the detector type. @@ -328,11 +323,6 @@ with higher granularity in the data description.--> other metadata file. In the case these are not available, free-text description. - In the case of a fixed temperature measurement this is the scalar temperature of @@ -349,7 +339,6 @@ It seems quite contorted to ask to create a separate timestamp array when we hav - From 1a1d4743a2d77112b52d5a287f7c0b14be7ea3c0 Mon Sep 17 00:00:00 2001 From: Rubel Date: Thu, 24 Aug 2023 15:02:08 +0200 Subject: [PATCH 03/10] Regeneration of the nexus file for fixing the changes coming from old version of yaml. Removing unintensional comments # Conflicts: # base_classes/NXbeam.nxdl.xml # base_classes/NXdetector.nxdl.xml # base_classes/NXentry.nxdl.xml # base_classes/NXinstrument.nxdl.xml # base_classes/NXprocess.nxdl.xml # base_classes/NXsample.nxdl.xml # base_classes/NXsource.nxdl.xml --- base_classes/NXaperture.nxdl.xml | 2 +- base_classes/NXbeam.nxdl.xml | 141 +----------------- base_classes/NXinstrument.nxdl.xml | 25 ---- base_classes/NXprocess.nxdl.xml | 15 -- .../NXcollectioncolumn.nxdl.xml | 8 +- contributed_definitions/NXmpes.nxdl.xml | 12 +- 6 files changed, 14 insertions(+), 189 deletions(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 7e64513caf..23c325e191 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -8,7 +8,7 @@ # 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 2 of the License, or (at your option) any later version. +# 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 diff --git a/base_classes/NXbeam.nxdl.xml b/base_classes/NXbeam.nxdl.xml index 7d82f37532..68fd0b4147 100644 --- a/base_classes/NXbeam.nxdl.xml +++ b/base_classes/NXbeam.nxdl.xml @@ -61,45 +61,11 @@ Distance from sample. Note, it is recommended to use NXtransformations instead. - - Energy carried by each particle of the beam on entering the beamline component. - - In the case of a monochromatic 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. - + Energy carried by each particle of the beam on entering the beamline component - - - 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. - - - - - 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. - - Energy carried by each particle of the beam on leaving the beamline component @@ -208,59 +174,18 @@ - - Incident polarization as a Stokes vector - on entering beamline component - + Polarization vector on entering beamline component - - - 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. - - - - Polarization as Stokes vector on leaving beamline component - + Polarization vector on leaving beamline component - - - 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. - - @@ -320,66 +245,6 @@ - - - Energy of a single pulse at the diagnostic point - - - - - Average power at the diagnostic point - - - - - Incident fluence at the diagnostic point - - - - Here: SI units are 'J/m2', customary 'mJ/cm2'. - - - - - - FWHM duration of the pulses at the diagnostic point - - - - - FROG trace of the pulse. - - - - - - - - - Horizontal axis of a FROG trace, i.e. delay. - - - - - - - - Vertical axis of a FROG trace, i.e. frequency. - - - - - - - - The type of chirp implemented - - - - - Group delay dispersion of the pulse for linear chirp - - Distribution of beam with respect to relevant variable e.g. wavelength. This is mainly diff --git a/base_classes/NXinstrument.nxdl.xml b/base_classes/NXinstrument.nxdl.xml index c357d7b7f2..15e7645403 100644 --- a/base_classes/NXinstrument.nxdl.xml +++ b/base_classes/NXinstrument.nxdl.xml @@ -42,31 +42,6 @@ short name for instrument, perhaps the acronym - - - Energy resolution of the experiment (FWHM or gaussian broadening) - - - - - Momentum resolution of the experiment (FWHM) - - - - - Angular resolution of the experiment (FWHM) - - - - - Spatial resolution of the experiment (Airy disk radius) - - - - - Temporal resolution of the experiment (FWHM) - - diff --git a/base_classes/NXprocess.nxdl.xml b/base_classes/NXprocess.nxdl.xml index 65b16c169a..d7d1a80f84 100644 --- a/base_classes/NXprocess.nxdl.xml +++ b/base_classes/NXprocess.nxdl.xml @@ -43,21 +43,6 @@ Date and time of processing. - - - Describes the operations of image registration - - - - - Describes the operations of image distortion correction - - - - - Describes the operations of calibration procedures, e.g. axis calibrations. - - The note will contain information about how the data was processed diff --git a/contributed_definitions/NXcollectioncolumn.nxdl.xml b/contributed_definitions/NXcollectioncolumn.nxdl.xml index 288ede79ca..67a64aa9ea 100644 --- a/contributed_definitions/NXcollectioncolumn.nxdl.xml +++ b/contributed_definitions/NXcollectioncolumn.nxdl.xml @@ -8,7 +8,7 @@ # 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 2 of the License, or (at your option) any later version. +# 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 @@ -21,10 +21,10 @@ # # For further information, see http://www.nexusformat.org --> - + - Subclass of NXelectronanalyser to describe the electron collection - column of a photoelectron analyser. + Subclass of NXelectronanalyser to describe the electron collection + column of a photoelectron analyser. diff --git a/contributed_definitions/NXmpes.nxdl.xml b/contributed_definitions/NXmpes.nxdl.xml index 3e015854f9..74fbf40b65 100644 --- a/contributed_definitions/NXmpes.nxdl.xml +++ b/contributed_definitions/NXmpes.nxdl.xml @@ -8,7 +8,7 @@ # 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 2 of the License, or (at your option) any later version. +# 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 @@ -21,10 +21,10 @@ # # For further information, see http://www.nexusformat.org --> - + - This is the most general application definition for multidimensional - photoelectron spectroscopy. + This is the most general application definition for multidimensional + photoelectron spectroscopy. @@ -303,8 +303,8 @@ List of comma-separated elements from the periodic table - that are contained in the sample. - If the sample substance has multiple components, all + that are contained in the sample. + If the sample substance has multiple components, all elements from each component must be included in `atom_types`. From 67808e273ae3846172b59ceb4a898a9d24320506 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Thu, 31 Aug 2023 16:35:08 +0200 Subject: [PATCH 04/10] Typo fix --- base_classes/NXaperture.nxdl.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 23c325e191..0fe4ec6d76 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -38,7 +38,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% From c339f4183a96bd3a060762077430a9c396b5c06d Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 16 Sep 2024 15:48:12 +0200 Subject: [PATCH 05/10] format base classes and applications in accordance to existing NIAC version # Conflicts: # applications/NXarpes.nxdl.xml # applications/nyaml/NXarpes.yaml # base_classes/NXbeam.nxdl.xml # base_classes/NXdata.nxdl.xml # base_classes/NXdetector.nxdl.xml # base_classes/NXentry.nxdl.xml # base_classes/NXenvironment.nxdl.xml # base_classes/NXinstrument.nxdl.xml # base_classes/NXmonochromator.nxdl.xml # base_classes/NXroot.nxdl.xml # base_classes/NXsample.nxdl.xml # base_classes/NXsample_component.nxdl.xml # base_classes/NXsensor.nxdl.xml # base_classes/NXsource.nxdl.xml # base_classes/NXsubentry.nxdl.xml # base_classes/NXtransformations.nxdl.xml # base_classes/NXuser.nxdl.xml # base_classes/nyaml/NXaperture.yaml # base_classes/nyaml/NXbeam.yaml # base_classes/nyaml/NXdata.yaml # base_classes/nyaml/NXdetector.yaml # base_classes/nyaml/NXentry.yaml # base_classes/nyaml/NXenvironment.yaml # base_classes/nyaml/NXinstrument.yaml # base_classes/nyaml/NXmonochromator.yaml # base_classes/nyaml/NXprocess.yaml # base_classes/nyaml/NXroot.yaml # base_classes/nyaml/NXsample.yaml # base_classes/nyaml/NXsample_component.yaml # base_classes/nyaml/NXsensor.yaml # base_classes/nyaml/NXsource.yaml # base_classes/nyaml/NXsubentry.yaml # base_classes/nyaml/NXtransformations.yaml # base_classes/nyaml/NXuser.yaml --- Makefile | 21 +------ base_classes/NXaperture.nxdl.xml | 100 +++++++++++++++---------------- 2 files changed, 49 insertions(+), 72 deletions(-) diff --git a/Makefile b/Makefile index 3a882c2568..e1d0696fa5 100644 --- a/Makefile +++ b/Makefile @@ -60,9 +60,6 @@ test :: clean :: $(RM) -rf $(BUILD_DIR) - $(RM) -rf $(BASE_CLASS_DIR)/$(NYAML_SUBDIR) - $(RM) -rf $(APPDEF_DIR)/$(NYAML_SUBDIR) - $(RM) -rf $(CONTRIB_DIR)/$(NYAML_SUBDIR) prepare :: $(PYTHON) -m dev_tools manual --prepare --build-root $(BUILD_DIR) @@ -97,24 +94,10 @@ all :: @echo "HTML built: `ls -lAFgh $(BUILD_DIR)/manual/build/html/index.html`" @echo "PDF built: `ls -lAFgh $(BUILD_DIR)/manual/build/latex/nexus.pdf`" -$(BASE_CLASS_DIR)/%.nxdl.xml : $(BASE_CLASS_DIR)/$(NYAML_SUBDIR)/%.yaml - nyaml2nxdl $< --output-file $@ - -$(CONTRIB_DIR)/%.nxdl.xml : $(CONTRIB_DIR)/$(NYAML_SUBDIR)/%.yaml - nyaml2nxdl $< --output-file $@ - -$(APPDEF_DIR)/%.nxdl.xml : $(APPDEF_DIR)/$(NYAML_SUBDIR)/%.yaml - nyaml2nxdl $< --output-file $@ - -nxdl: $(YBC_NXDL_TARGETS) $(YCONTRIB_NXDL_TARGETS) $(YAPPDEF_NXDL_TARGETS) - -nyaml: - $(MAKE) -f nyaml.mk - # NeXus - Neutron and X-ray Common Data Format # -# Copyright (C) 2008-2024 NeXus International Advisory Committee (NIAC) +# Copyright (C) 2008-2022 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 @@ -130,4 +113,4 @@ nyaml: # 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 +# For further information, see http://www.nexusformat.org \ No newline at end of file diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 0fe4ec6d76..6c83b277b0 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -1,9 +1,9 @@ - + - - NeXus positions components by applying a set of translations and rotations - to apply to the component starting from 0, 0, 0. The order of these operations - is critical and forms what NeXus calls a dependency chain. The depends_on - field defines the path to the top most operation of the dependency chain or the - string "." if located in the origin. Usually these operations are stored in a - NXtransformations group. But NeXus allows them to be stored anywhere. - - 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 (asymmetric) geometries an NXoff_geometry group can be used to provide an unambiguous reference. - - .. image:: aperture/aperture.png - :width: 40% - + + NeXus positions components by applying a set of translations and rotations + to apply to the component starting from 0, 0, 0. The order of these operations + is critical and forms what NeXus calls a dependency chain. The depends_on + field defines the path to the top most operation of the dependency chain or the + string "." if located in the origin. Usually these operations are stored in a + NXtransformations group. But NeXus allows them to be stored anywhere. + + 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 (asymmetric) geometries an NXoff_geometry group can be used to provide an unambiguous reference. + + .. image:: aperture/aperture.png + :width: 40% + - - This is the group recommended for holding the chain of translation - and rotation operations necessary to position the component within - the instrument. The dependency chain may however traverse similar groups in - other component groups. - + + This is the group recommended for holding the chain of translation + and rotation operations necessary to position the component within + the instrument. The dependency chain may however traverse similar groups in + other component groups. + @@ -59,32 +59,26 @@ - location and shape of aperture - - .. TODO: documentation needs improvement, contributions welcome - - * description of terms is poor and leaves much to interpretation - * Describe what is meant by translation _here_ and ... - * Similar throughout base classes - * Some base classes do this much better - * Such as where is the gap written? + location and shape of aperture + + .. TODO: documentation needs improvement, contributions welcome + + * description of terms is poor and leaves much to interpretation + * Describe what is meant by translation _here_ and ... + * Similar throughout base classes + * Some base classes do this much better + * Such as where is the gap written? + - - location and shape of each blade - + location and shape of each blade - - - - Absorbing material of the aperture - + + Absorbing material of the aperture - - Description of aperture - + Description of aperture @@ -116,15 +110,15 @@ - .. 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. + .. 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. From e28a7390cfa7b0ee369c1dc54ef79c2f4d4838db Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 23 Sep 2024 16:55:20 +0200 Subject: [PATCH 06/10] revert unintentional changes from cherry-pick --- Makefile | 21 +++++++++++++++++-- .../NXcollectioncolumn.nxdl.xml | 6 +++--- contributed_definitions/NXmpes.nxdl.xml | 17 ++++++++++++--- 3 files changed, 36 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index e1d0696fa5..3a882c2568 100644 --- a/Makefile +++ b/Makefile @@ -60,6 +60,9 @@ test :: clean :: $(RM) -rf $(BUILD_DIR) + $(RM) -rf $(BASE_CLASS_DIR)/$(NYAML_SUBDIR) + $(RM) -rf $(APPDEF_DIR)/$(NYAML_SUBDIR) + $(RM) -rf $(CONTRIB_DIR)/$(NYAML_SUBDIR) prepare :: $(PYTHON) -m dev_tools manual --prepare --build-root $(BUILD_DIR) @@ -94,10 +97,24 @@ all :: @echo "HTML built: `ls -lAFgh $(BUILD_DIR)/manual/build/html/index.html`" @echo "PDF built: `ls -lAFgh $(BUILD_DIR)/manual/build/latex/nexus.pdf`" +$(BASE_CLASS_DIR)/%.nxdl.xml : $(BASE_CLASS_DIR)/$(NYAML_SUBDIR)/%.yaml + nyaml2nxdl $< --output-file $@ + +$(CONTRIB_DIR)/%.nxdl.xml : $(CONTRIB_DIR)/$(NYAML_SUBDIR)/%.yaml + nyaml2nxdl $< --output-file $@ + +$(APPDEF_DIR)/%.nxdl.xml : $(APPDEF_DIR)/$(NYAML_SUBDIR)/%.yaml + nyaml2nxdl $< --output-file $@ + +nxdl: $(YBC_NXDL_TARGETS) $(YCONTRIB_NXDL_TARGETS) $(YAPPDEF_NXDL_TARGETS) + +nyaml: + $(MAKE) -f nyaml.mk + # NeXus - Neutron and X-ray Common Data Format # -# Copyright (C) 2008-2022 NeXus International Advisory Committee (NIAC) +# Copyright (C) 2008-2024 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 @@ -113,4 +130,4 @@ all :: # 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 \ No newline at end of file +# For further information, see http://www.nexusformat.org diff --git a/contributed_definitions/NXcollectioncolumn.nxdl.xml b/contributed_definitions/NXcollectioncolumn.nxdl.xml index 67a64aa9ea..5348d55b5f 100644 --- a/contributed_definitions/NXcollectioncolumn.nxdl.xml +++ b/contributed_definitions/NXcollectioncolumn.nxdl.xml @@ -21,10 +21,10 @@ # # For further information, see http://www.nexusformat.org --> - + - Subclass of NXelectronanalyser to describe the electron collection - column of a photoelectron analyser. + Subclass of NXelectronanalyser to describe the electron collection column of a + photoelectron analyser. diff --git a/contributed_definitions/NXmpes.nxdl.xml b/contributed_definitions/NXmpes.nxdl.xml index 74fbf40b65..c2bfe957c6 100644 --- a/contributed_definitions/NXmpes.nxdl.xml +++ b/contributed_definitions/NXmpes.nxdl.xml @@ -21,7 +21,11 @@ # # For further information, see http://www.nexusformat.org --> - + + This is the most general application definition for multidimensional photoelectron spectroscopy. @@ -192,6 +196,7 @@ + Description of the detector type. @@ -303,8 +308,8 @@ List of comma-separated elements from the periodic table - that are contained in the sample. - If the sample substance has multiple components, all + that are contained in the sample. + If the sample substance has multiple components, all elements from each component must be included in `atom_types`. @@ -323,6 +328,11 @@ other metadata file. In the case these are not available, free-text description. + In the case of a fixed temperature measurement this is the scalar temperature of @@ -339,6 +349,7 @@ + From 75239de7b72567de53bbfcd16f3206458f6e2358 Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Sun, 29 Sep 2024 13:54:21 +0200 Subject: [PATCH 07/10] Reverted incorrect reintroduction of the statement that NXaperture were deprecated. It is not! --- base_classes/NXaperture.nxdl.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index 6c83b277b0..bd12811ff5 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -23,7 +23,10 @@ --> - A beamline aperture. This group is deprecated, use NXslit instead. + A beamline aperture. + + Note, the group was incorrectly documented as deprecated, + but it is not and it is in common use. From a6d12c163368e87752c3f5eda9dd1ebce1c9a52b Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Sun, 29 Sep 2024 14:05:23 +0200 Subject: [PATCH 08/10] Reintroduced incorrectly removed NXoff_geometry --- base_classes/NXaperture.nxdl.xml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index bd12811ff5..dcf718f4d8 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -23,10 +23,9 @@ --> - A beamline aperture. + A beamline aperture. - Note, the group was incorrectly documented as deprecated, - but it is not and it is in common use. + Note, the group was incorrectly documented as deprecated, but it is not and it is in common use. @@ -55,6 +54,11 @@ other component groups. + + + Use this group to describe the shape of the aperture. + + Stores the raw positions of aperture motors. From 00fd72dcb20dda79c0200298e15d500346e3dc4a Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Sun, 29 Sep 2024 14:41:24 +0200 Subject: [PATCH 09/10] Whitespaces --- base_classes/NXaperture.nxdl.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index dcf718f4d8..cef93d0d9c 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -112,7 +112,7 @@ - describe any additional information in a note* + Describe any additional information in a note. From 37c810fb3f73f4e2c9c66ce46416f4b4fa94f21a Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Sun, 29 Sep 2024 14:51:21 +0200 Subject: [PATCH 10/10] Guiding user on how to detail aperture geometry --- base_classes/NXaperture.nxdl.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/base_classes/NXaperture.nxdl.xml b/base_classes/NXaperture.nxdl.xml index cef93d0d9c..32964dc6a8 100644 --- a/base_classes/NXaperture.nxdl.xml +++ b/base_classes/NXaperture.nxdl.xml @@ -26,6 +26,8 @@ A beamline aperture. 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. @@ -66,7 +68,7 @@ - location and shape of aperture + Location and shape of aperture .. TODO: documentation needs improvement, contributions welcome