Skip to content

Commit 228a4c6

Browse files
committed
Add new application definition for PEEM experiments
This extends NXmpes and adds some new groups and fields and also adjusts some existing fields' classes
1 parent 7977c7e commit 228a4c6

File tree

2 files changed

+315
-0
lines changed

2 files changed

+315
-0
lines changed
Lines changed: 201 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
3+
<!--
4+
# NeXus - Neutron and X-ray Common Data Format
5+
#
6+
# Copyright (C) 2014-2022 NeXus International Advisory Committee (NIAC)
7+
#
8+
# This library is free software; you can redistribute it and/or
9+
# modify it under the terms of the GNU Lesser General Public
10+
# License as published by the Free Software Foundation; either
11+
# version 3 of the License, or (at your option) any later version.
12+
#
13+
# This library is distributed in the hope that it will be useful,
14+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
15+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16+
# Lesser General Public License for more details.
17+
#
18+
# You should have received a copy of the GNU Lesser General Public
19+
# License along with this library; if not, write to the Free Software
20+
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21+
#
22+
# For further information, see http://www.nexusformat.org
23+
-->
24+
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="application" type="group" extends="NXmpes" name="NXmpes_peem" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
25+
<doc>
26+
This is a general application definition for a photo-electron emission or low
27+
energy electron microscopy/diffraction experiment.
28+
</doc>
29+
<group type="NXentry">
30+
<field name="definition">
31+
<attribute name="version" />
32+
<enumeration>
33+
<item value="NXmpes_peem" />
34+
</enumeration>
35+
</field>
36+
<group type="NXmonitor" recommended="true" />
37+
<group type="NXinstrument">
38+
<group type="NXinsertion_device" optional="true" />
39+
<group type="NXmonochromator" recommended="true" />
40+
<group type="NXbeam" name="beam_probe" optional="true">
41+
<attribute name="flux" />
42+
<field name="incident_energy" type="NX_FLOAT" />
43+
<field name="incident_polarization_stokes" type="NX_NUMBER" />
44+
<field name="depends_on" />
45+
<group type="NXtransformations">
46+
<group name="direction" type="NX_number">
47+
<doc>
48+
default is [0,0,1]
49+
</doc>
50+
</group>
51+
<field name="reference_plane" type="NX_NUMBER">
52+
<doc>
53+
defined as normal to the plane used to measure azimuth. Default is [0,1,0]
54+
through the origin
55+
</doc>
56+
</field>
57+
</group>
58+
</group>
59+
<group type="NXoptical_system_em">
60+
<field name="field_of_view" type="NX_FLOAT">
61+
<doc>
62+
One or two values for size of image on sample or in another space along slow and
63+
fast pixel dimensions.
64+
</doc>
65+
<attribute name="units" />
66+
</field>
67+
<field name="working_distance" type="NX_FLOAT" />
68+
<field name="magnification" type="NX_FLOAT" />
69+
</group>
70+
<group type="NXelectronanalyser">
71+
<group type="NXcollectioncolumn">
72+
<field name="scheme">
73+
<doc>
74+
Scheme of the electron collection column.
75+
</doc>
76+
<enumeration>
77+
<item value="standard" />
78+
<item value="angular dispersive" />
79+
<item value="selective area" />
80+
<item value="deflector" />
81+
<item value="PEEM" />
82+
<item value="PEEM dark-field" />
83+
<item value="LEEM" />
84+
<item value="LEEM dark-field" />
85+
<item value="LEED" />
86+
<item value="dispersive plane" />
87+
<item value="momentum microscope" />
88+
</enumeration>
89+
</field>
90+
<field name="mode" recommended="true">
91+
<doc>
92+
Labelling of the lens setting in use
93+
</doc>
94+
</field>
95+
<field name="projection">
96+
<doc>
97+
The space projected in the angularly dispersive direction
98+
</doc>
99+
<enumeration>
100+
<item value="real" />
101+
<item value="reciprocal" />
102+
<item value="energy" />
103+
</enumeration>
104+
</field>
105+
<group name="extractor_voltage" type="NXlens_em" />
106+
<group name="objective_lens" type="NXlens_em">
107+
<doc>
108+
list of electromagnetic lenses of the microscope column.
109+
</doc>
110+
</group>
111+
</group>
112+
<!--other EM lenses in column-->
113+
<group type="NXebeam_column" name="electron_gun" optional="true">
114+
<group name="field_aperture" type="NXaperture_em" />
115+
<group name="beam" type="NXbeam" />
116+
</group>
117+
<group type="NXenergydispersion" optional="true">
118+
<group name="entrance_slit" type="NXaperture_em" optional="true">
119+
<doc>
120+
Size, position and shape of the entrance slit in dispersive analyzers. To add
121+
additional or other slits use an APERTURE group in this group.
122+
</doc>
123+
</group>
124+
<group name="exit_slit" type="NXaperture_em" optional="true">
125+
<doc>
126+
Size, position and shape of the exit slit in dispersive analyzers. To add
127+
additional or other slits use an APERTURE group in this group.
128+
</doc>
129+
</group>
130+
<field name="energy_interval" type="NX_FLOAT">
131+
<doc>
132+
only in dispersive mode
133+
</doc>
134+
</field>
135+
<field name="center_energy" type="NX_FLOAT">
136+
<doc>
137+
Center of the energy window (only in dispersive mode)
138+
</doc>
139+
</field>
140+
</group>
141+
<group type="NXdetector">
142+
<field name="depends_on" />
143+
<group name="transformations" type="NXtransformations">
144+
<doc>
145+
Virtual transformations to sample that map the pixels onto sample coordinates.
146+
</doc>
147+
</group>
148+
<group type="NXdetector_module">
149+
<doc>
150+
For detectors with irregular pixel sizes or composed by modules tiled together.
151+
</doc>
152+
</group>
153+
<field name="dark_image" type="NX_NUMBER">
154+
<doc>
155+
external link to a dark image file.
156+
</doc>
157+
</field>
158+
<field name="flatfield_image" type="NX_NUMBER">
159+
<doc>
160+
external link to a flat field image.
161+
</doc>
162+
</field>
163+
<field name="data" type="NX_NUMBER" />
164+
</group>
165+
<group type="NXmanipulator">
166+
<doc>
167+
Manipulator for positioning and rotating of the sample.
168+
</doc>
169+
<group type="NXpositioner">
170+
<doc>
171+
One of a group of sample positioners
172+
</doc>
173+
</group>
174+
<!--other NXpositioners-->
175+
<field name="sample_bias" type="NX_FLOAT">
176+
<doc>
177+
Start voltage (sample retarding potential).
178+
</doc>
179+
</field>
180+
</group>
181+
</group>
182+
</group>
183+
<group name="coordinate_system_set" type="NXcoordinate_system_set">
184+
<doc>
185+
Collection of useful coordinate system. The common reference system should be
186+
the sample with all the positioner set to zero. Define at least the beam
187+
reference at sample position and the gravity direction. Add the crystal cell
188+
orientation if necessary.
189+
</doc>
190+
</group>
191+
<group type="NXsample">
192+
<field name="depends_on" />
193+
<group type="NXtransformations">
194+
<doc>
195+
The origin is at the sample position in the center of the detector field of
196+
view, with all the manipulator positioners set to zero.
197+
</doc>
198+
</group>
199+
</group>
200+
</group>
201+
</definition>
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
category: application
2+
doc: |
3+
This is a general application definition for a photo-electron emission or low energy electron microscopy/diffraction experiment.
4+
type: group
5+
(NXmpes)NXmpes_peem:
6+
(NXentry):
7+
definition:
8+
\@version:
9+
enumeration: [NXmpes_peem]
10+
(NXmonitor):
11+
exists: recommended
12+
(NXinstrument):
13+
(NXinsertion_device):
14+
exists: optional # only when PEEM uses synchrotron light
15+
(NXmonochromator): # incoming_beam_monochromator
16+
exists: recommended
17+
(NXbeam)beam_probe:
18+
exists: optional # as we record it in NXsample
19+
\@flux: # that will point to the NXmonitor data field
20+
incident_energy(NX_FLOAT): # link to monochromator energy
21+
incident_polarization_stokes(NX_NUMBER):
22+
depends_on:
23+
(NXtransformations):
24+
direction(NX_number):
25+
doc:
26+
default is [0,0,1]
27+
reference_plane(NX_NUMBER): #how is that for our AC-PEEM?
28+
doc:
29+
defined as normal to the plane used to measure azimuth. Default is [0,1,0] through the origin
30+
(NXoptical_system_em):
31+
field_of_view(NX_FLOAT):
32+
doc: |
33+
One or two values for size of image on sample or in another space along slow and fast pixel dimensions.
34+
\@units:
35+
working_distance(NX_FLOAT):
36+
magnification(NX_FLOAT):
37+
(NXelectronanalyser):
38+
(NXcollectioncolumn): # supplement base application definition
39+
scheme:
40+
doc: |
41+
Scheme of the electron collection column.
42+
enumeration: [standard, angular dispersive, selective area, deflector, PEEM, PEEM dark-field, LEEM, LEEM dark-field, LEED, dispersive plane, momentum microscope]
43+
mode:
44+
exists: recommended
45+
doc:
46+
Labelling of the lens setting in use
47+
projection:
48+
doc:
49+
The space projected in the angularly dispersive direction
50+
enumeration: [real, reciprocal, energy]
51+
extractor_voltage(NXlens_em):
52+
objective_lens(NXlens_em):
53+
doc:
54+
list of electromagnetic lenses of the microscope column.
55+
# other EM lenses in column
56+
(NXebeam_column)electron_gun:
57+
exists: optional # when doing LEEM/LEED
58+
field_aperture(NXaperture_em):
59+
beam(NXbeam):
60+
(NXenergydispersion):
61+
exists: optional
62+
entrance_slit(NXaperture_em): # changed from NXaperture
63+
exists: optional
64+
doc: |
65+
Size, position and shape of the entrance slit in dispersive analyzers. To add
66+
additional or other slits use an APERTURE group in this group.
67+
exit_slit(NXaperture_em): # changed from NXaperture
68+
exists: optional
69+
doc: |
70+
Size, position and shape of the exit slit in dispersive analyzers. To add
71+
additional or other slits use an APERTURE group in this group.
72+
energy_interval(NX_FLOAT):
73+
doc:
74+
only in dispersive mode
75+
center_energy(NX_FLOAT):
76+
doc:
77+
Center of the energy window (only in dispersive mode)
78+
(NXdetector):
79+
depends_on:
80+
transformations(NXtransformations):
81+
doc:
82+
Virtual transformations to sample that map the pixels onto sample coordinates.
83+
(NXdetector_module):
84+
doc:
85+
For detectors with irregular pixel sizes or composed by modules tiled together.
86+
dark_image(NX_NUMBER):
87+
doc:
88+
external link to a dark image file.
89+
flatfield_image(NX_NUMBER):
90+
doc:
91+
external link to a flat field image.
92+
data(NX_NUMBER):
93+
(NXmanipulator):
94+
doc: |
95+
Manipulator for positioning and rotating of the sample.
96+
(NXpositioner):
97+
doc: |
98+
One of a group of sample positioners
99+
# other NXpositioners
100+
sample_bias(NX_FLOAT):
101+
doc:
102+
Start voltage (sample retarding potential).
103+
coordinate_system_set(NXcoordinate_system_set):
104+
doc:
105+
Collection of useful coordinate system. The common reference system should
106+
be the sample with all the positioner set to zero. Define at least the beam
107+
reference at sample position and the gravity direction.
108+
Add the crystal cell orientation if necessary.
109+
(NXsample):
110+
depends_on:
111+
(NXtransformations): # links to fields in NXmanipulator
112+
doc:
113+
The origin is at the sample position in the center of the detector field of view,
114+
with all the manipulator positioners set to zero.

0 commit comments

Comments
 (0)