Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fairmat 2024: proposal on electron microscopy (EM) #1423

Open
wants to merge 1,199 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1199 commits
Select commit Hold shift + click to select a range
5ff3ed6
Merge pull request #266 from FAIRmat-NFDI/mpes-clarifications
lukaspie Jul 11, 2024
34aed4a
Merge pull request #269 from FAIRmat-NFDI/remove-build-artifacts-duri…
lukaspie Jul 11, 2024
f9c55a9
Finished NXmicrostructure_score_results and hope that commenting out …
atomprobe-tc Jul 11, 2024
ad8385c
Fixed the too stiff name of microstructure1
atomprobe-tc Jul 11, 2024
e36bd85
Initial version of NXmicrostructure_gragles_results
atomprobe-tc Jul 11, 2024
5dba9e3
Fixed grammar issue
atomprobe-tc Jul 11, 2024
9510a0c
Finished NXmicrostructure_gragles_results
Jul 11, 2024
9fba728
Implemented suggestions from @lukaspie
atomprobe-tc Jul 12, 2024
cc18a27
nxdl
atomprobe-tc Jul 12, 2024
a60bac2
NXdata linking of signal (#205)
domna Jul 15, 2024
2928374
Merge branch 'fairmat' into sprint22_microstructure
atomprobe-tc Jul 15, 2024
80bc77d
Merge branch 'fairmat' into sprint22_corrector
atomprobe-tc Jul 15, 2024
6086874
Roll back changes to NXmpes/instrument/pressure_gauge
lukaspie Jul 16, 2024
1d7000f
Merge pull request #271 from FAIRmat-NFDI/mpes-pressure-gauge
lukaspie Jul 16, 2024
20344e5
fix 2theta and use NXobject instead of collection.
RubelMozumder Jul 19, 2024
3e63e69
reproducibity check.
RubelMozumder Jul 22, 2024
cb28e27
Merge pull request #272 from FAIRmat-NFDI/XRD_2thta_fix
RubelMozumder Jul 22, 2024
9a9c006
add radius to NXenergydispersion
lukaspie Jul 23, 2024
3503580
Merge pull request #273 from FAIRmat-NFDI/add-energydispersion-radius
lukaspie Jul 23, 2024
f75a298
Xrd modification (#274)
RubelMozumder Jul 26, 2024
df05bd4
Merge branch 'fairmat' into sprint22_microstructure
atomprobe-tc Jul 30, 2024
4769817
Merge branch 'fairmat' into sprint22_corrector
atomprobe-tc Jul 30, 2024
bc15717
Merge pull request #275 from FAIRmat-NFDI/sprint22_corrector
mkuehbach Jul 30, 2024
be26bdf
Implementing suggestions from lukaspie
atomprobe-tc Jul 30, 2024
e907edb
Refactored NXcoordinate_system_em_ebsd into NXem_ebsd
atomprobe-tc Jul 30, 2024
3ff26a8
Merge branch 'sprint23_em_v3' into sprint22_microstructure
atomprobe-tc Jul 30, 2024
1fb6b46
Merge pull request #276 from FAIRmat-NFDI/sprint22_microstructure
mkuehbach Jul 30, 2024
f773a95
Fix naming bug for monochromator_em
atomprobe-tc Aug 6, 2024
5d93521
Bug fixes in images and spectrum and renaming of groups, refining pre…
atomprobe-tc Aug 9, 2024
20b9207
Add circuit to component
atomprobe-tc Aug 13, 2024
7a42b65
Adding routine tests for py3.12
atomprobe-tc Aug 13, 2024
0e1e39f
Added circuit and corrected laziness error
atomprobe-tc Aug 13, 2024
44a21ae
Editing NXem for aberrations in event data
atomprobe-tc Aug 13, 2024
03499a7
Extension of Doc for Optical spectroscopy and Raman
Aug 13, 2024
bcbe708
Update webpage for optical spectroscopy
Aug 13, 2024
58d7523
Further simplification of where and how to store aberrations
atomprobe-tc Aug 14, 2024
8b05200
change ellips name to optical spec
Aug 14, 2024
765626e
Use something from lensID
atomprobe-tc Aug 14, 2024
9186ed2
Correcting units for complex aberrations
atomprobe-tc Aug 14, 2024
1debcc9
Removed mandatory model for aberrations as clear for naming conventio…
atomprobe-tc Aug 14, 2024
7300b1c
Reference Rafal for aberration function
atomprobe-tc Aug 16, 2024
24d78d6
Fixed time(NX_TIME) bug
atomprobe-tc Aug 20, 2024
c12d7c5
fix_renaming_of_ellipsometry_to_optical_spec
Aug 26, 2024
08b7a86
add missed links
Aug 26, 2024
24b0d20
add missing #### in title...
Aug 26, 2024
9d4af2f
Merge pull request #279 from FAIRmat-NFDI/update_optical_spec_website
RonHildebrandt Aug 28, 2024
b259036
Merge branch 'fairmat' into sprint23_em_v3
atomprobe-tc Aug 30, 2024
a8cf2af
Clarified issues with depends_on, fixed typo pID for pfID in NXem_ebsd
atomprobe-tc Aug 30, 2024
132fc2a
Hooked in examples for usage of NXem_ebsd and NXem_eds into NXem
atomprobe-tc Aug 30, 2024
98d6784
Merge pull request #223 from FAIRmat-NFDI/namefit-docs
lukaspie Aug 30, 2024
41c61cb
Last cleaning for depends_on on this feature branch
atomprobe-tc Aug 30, 2024
71dcdda
<<<<Merge branch 'fairmat' into sprint23_em_v3
atomprobe-tc Aug 30, 2024
53f21ac
Initial draft of NXmpes_xps sub app-def
lukaspie Apr 25, 2023
16e94a4
Prepare NXmpes_xps for extending NXmpes
lukaspie May 4, 2023
65bfb91
Removed information already given in base classes
lukaspie May 4, 2023
d2d22f8
Removed some unneeded comments
lukaspie May 5, 2023
33492b8
Add description of instrument orientation
lukaspie May 5, 2023
b1e1039
Move orientation of instrument parts
lukaspie May 9, 2023
53fca26
Update transmission function information
lukaspie May 9, 2023
75a71e4
Update documentation, add comments for discussion
lukaspie May 9, 2023
11ff4da
Initial draft of NXmpes_xps sub app-def
lukaspie Apr 25, 2023
5cd71d7
Prepare NXmpes_xps for extending NXmpes
lukaspie May 4, 2023
5b76d23
Removed information already given in base classes
lukaspie May 4, 2023
27bf927
Removed some unneeded comments
lukaspie May 5, 2023
42f7f72
Add description of instrument orientation
lukaspie May 5, 2023
34e9046
Move orientation of instrument parts
lukaspie May 9, 2023
d60f860
Update transmission function information
lukaspie May 9, 2023
ffeb32c
Update documentation, add comments for discussion
lukaspie May 9, 2023
8880b42
fix NXmpes yaml
lukaspie Jan 4, 2024
0e2201c
update to current NXmpes status
lukaspie Jan 9, 2024
7600d27
refine NXtransformations
lukaspie Jan 9, 2024
563d4e9
add coordinate system and coordinate_system_set
lukaspie Jan 12, 2024
51b28b2
Adds mpes_xps to mpes structure
domna Jan 29, 2024
8029e66
rename to NXxps
lukaspie Feb 9, 2024
c0ee5a7
initial attempt at modeling XPS peak fitting
lukaspie Feb 13, 2024
8fd5c0c
add lineshape to NXpeak
lukaspie Feb 14, 2024
285de0c
update lineshape in NXpeak
lukaspie Feb 14, 2024
ac1f4e6
add NXbackground to NXfit_region
lukaspie Feb 14, 2024
a791fe5
add fitting method to NXpeak_model
lukaspie Feb 14, 2024
370f758
remove NXtransformations from NXcoordinate_system
lukaspie Feb 14, 2024
16be1b8
restructure NXfit with background and peaks
lukaspie Feb 15, 2024
ebae306
change to NXcoordinate_system_set, use NXfit in NXxps
lukaspie Feb 15, 2024
cbb06cd
add fit_function and parameters
lukaspie Feb 15, 2024
9bc7da8
use NXfit_function for peaks and backgrounds
lukaspie Feb 15, 2024
8f3856a
use NXdata in NXfit
lukaspie Feb 15, 2024
fb4652a
use new peak fitting in NXxps
lukaspie Feb 15, 2024
ecdafd3
add missing class name in NXxps
lukaspie Feb 15, 2024
45b9122
remove underscores from variable names in NXfit
lukaspie Feb 16, 2024
b0ff45c
update nyamls
lukaspie Feb 27, 2024
aa3d1a2
switch axes docs in NXfit
lukaspie Feb 27, 2024
4a0e293
use old nyaml dim notation for now
lukaspie Feb 27, 2024
b55affb
fix math notation
lukaspie Feb 27, 2024
1a70266
make nxdls
lukaspie Feb 28, 2024
5a96bfc
regenerate with nyaml==0.0.8
lukaspie Mar 4, 2024
435fe3c
make NXfit, NXpeak multi-dimensional
lukaspie Apr 10, 2024
15d4c51
redefine XPS coordinate system, small changes to XPS peak fitting
lukaspie Apr 10, 2024
7d1d9b0
required energy axis in XPS
lukaspie Apr 10, 2024
d9f01cf
fix dimensions issues
lukaspie Apr 10, 2024
25d0cb4
regenerate NXxps
lukaspie Apr 10, 2024
c9add02
make energy an NX_NUMBER
lukaspie Apr 10, 2024
097d889
remove unneeded depends_on enumerations
lukaspie Apr 19, 2024
6952cbb
align symbols across all fit-related definitions
lukaspie Apr 19, 2024
5b4410d
remove single and repeated parameters in fit
lukaspie May 2, 2024
4eab351
fix dimensions in NXpeak and NXfit_background
lukaspie May 22, 2024
f9304ba
use globlal_fit and error_function in NXfit, fix dimensions
lukaspie May 22, 2024
dbaca7e
docstring fixes in NXfit
lukaspie May 22, 2024
4b15fa3
NXfit extends NXprocess
lukaspie May 22, 2024
5b80901
fix math notation in NXfit_function
lukaspie May 22, 2024
123efd3
fix link in NXfit_function
lukaspie May 22, 2024
f4c0092
change requiredness for formulas in XPS fit
lukaspie May 22, 2024
7f37ded
small fixes for links
lukaspie May 22, 2024
c66c16e
fix issues with manual build
lukaspie May 22, 2024
8639de0
fix math notation
lukaspie May 22, 2024
c83cdc4
more math fixes
lukaspie May 22, 2024
6cc685f
regenerate NXxps and NXpeak nxdl files
lukaspie Jul 5, 2024
903d0e9
fix rebasing issues
lukaspie Jul 5, 2024
dfad4b5
make NXpeak spectrum-independent
lukaspie Aug 12, 2024
6ffb9d6
fix rebase conflicts
lukaspie Aug 30, 2024
fb0be54
fix nyaml-nxdl inconsistency
lukaspie Aug 30, 2024
e71ec46
add notes from both workshops
Sep 3, 2024
93033d6
added make nxdl and make local
Sep 3, 2024
db8b3ab
lowercase enumeration, source_type todo added, doc for ellipsometry_type
Sep 3, 2024
6a7efaf
HOW LONG? does it take to learn to make nxdl and local before commiti…
Sep 3, 2024
196f2a8
Fixes in EM
atomprobe-tc Sep 4, 2024
c7be812
Merging NXem_adf into NXem_img, enabling microstructure reconstructio…
atomprobe-tc Sep 4, 2024
073f941
Removal of non-standardized assumption that i, j, k can be used as co…
atomprobe-tc Sep 4, 2024
5659cc5
add missing elements in ellipsometry from specialized NXlens_opt
Sep 6, 2024
b6b6550
Add todo notes for beamsize and shape description
Sep 6, 2024
e1a9984
typo and note for possible rework/reconsideration of NXfabrication
Sep 6, 2024
6054ae7
Merge pull request #282 from FAIRmat-NFDI/add_workshop_notes_from_ell…
RonHildebrandt Sep 9, 2024
d2c213d
Merge branch 'fairmat' into sprint23_em_v3
atomprobe-tc Sep 9, 2024
5509209
Suggestions from lukaspie
atomprobe-tc Sep 9, 2024
788dd0b
Fixes apm
atomprobe-tc Sep 10, 2024
a5b46d4
Added undefined enum in NXidentifier
atomprobe-tc Sep 10, 2024
5a3e07d
Merge pull request #170 from FAIRmat-NFDI/158-xps-peak-fitting-in-nexus
lukaspie Sep 11, 2024
890c785
<Merge branch 'fairmat' into sprint23_em_v3
atomprobe-tc Sep 11, 2024
05df4f0
Merge pull request #278 from FAIRmat-NFDI/sprint23_em_v3
mkuehbach Sep 11, 2024
f0f7824
use NXidentifier in NXsample and NXfabrication
lukaspie Sep 10, 2024
d828f1f
rename sample name in NXoptical spectroscopy
lukaspie Sep 10, 2024
7f5cce6
make ellipsometer_type optional
lukaspie Sep 10, 2024
0b0538f
NXidentifier in NXoptical_spectroscopy instrument
lukaspie Sep 10, 2024
c40127f
remove NXsample name docs from NXoptical_spectroscopy
lukaspie Sep 10, 2024
0c6f1f9
add serial_number to NXfabrication
lukaspie Sep 11, 2024
3ceecff
use NXidentifier in NXmpes
lukaspie Sep 11, 2024
5058b2f
use NXidentifier consistently across all our contributed definitions
lukaspie Sep 11, 2024
cdc1719
decode binary strings in nxdl_utils.py
rettigl Sep 10, 2024
bbf8060
add function for decoding
rettigl Sep 10, 2024
7b03935
use NXidentifier in NXentry
lukaspie Sep 11, 2024
7f0c0c8
Merge pull request #283 from FAIRmat-NFDI/convert_binary_strings
lukaspie Sep 11, 2024
b6b3ba3
small changes to NXbeam and NXmonochromator
lukaspie Sep 11, 2024
f13e4a6
Merge pull request #285 from FAIRmat-NFDI/small-nxbeam-changes
lukaspie Sep 11, 2024
e147c24
typo fixes
lukaspie Sep 11, 2024
b90d494
Merge pull request #284 from FAIRmat-NFDI/use-nx-identifier
lukaspie Sep 11, 2024
0185e43
proper string decoding
lukaspie Sep 11, 2024
fb6c759
remove unneeded imports
lukaspie Sep 11, 2024
c543a14
black formatting
lukaspie Sep 11, 2024
4dec01e
remove code and move to pynxtools
lukaspie Sep 11, 2024
7bab9e2
remove unneeded requirements
lukaspie Sep 11, 2024
d6eabbb
escape black check
lukaspie Sep 11, 2024
e33d9a8
ignore flake8 issue
lukaspie Sep 11, 2024
f72c27f
isort imports
lukaspie Sep 11, 2024
9a9c70b
use less strict version of str decoding
lukaspie Sep 12, 2024
f40693e
slightly enhanced version of str decoding, test
lukaspie Sep 12, 2024
611af7c
remove flake error catching
lukaspie Sep 12, 2024
a2d1228
reset requirements.txt
lukaspie Sep 12, 2024
a9856f6
reformatting
lukaspie Sep 12, 2024
3039fe3
remove strict type checking
lukaspie Sep 12, 2024
b9e537c
add support for list of bytes
lukaspie Sep 12, 2024
c10e52a
formatting
lukaspie Sep 12, 2024
cf56332
Merge pull request #286 from FAIRmat-NFDI/strict-string-check
lukaspie Sep 13, 2024
6707259
add pulse_delay to NXbeam
lukaspie Sep 13, 2024
619e6f0
recreate nyaml file
lukaspie Sep 13, 2024
d3c5237
Merge pull request #288 from FAIRmat-NFDI/pulse-delay-in-nxbeam
lukaspie Sep 13, 2024
eae3eb1
Merge branch 'nexusformat/deifinitions/main' into fairmat-2024
lukaspie Sep 16, 2024
2a3e8bb
regenerate nyaml files
lukaspie Sep 16, 2024
b048270
various small fixes are merging main and fairmat
lukaspie Sep 16, 2024
1e50475
fix string No in NXelectron_level
lukaspie Sep 16, 2024
3faa2c6
remove unused MANIFEST.in
lukaspie Sep 16, 2024
5a28e07
manually reset NXem yaml file
lukaspie Sep 16, 2024
31f5e9d
format base classes and applications in accordance to existing NIAC v…
lukaspie Sep 16, 2024
2590928
revert changes to NXtransformations docs
lukaspie Sep 17, 2024
7ca8b20
add CSS tweak to hide summary
lukaspie Sep 18, 2024
b4aad7b
add css file
lukaspie Sep 18, 2024
08c4fcb
Merge pull request #293 from FAIRmat-NFDI/add-ccs-tweak-to-hide-summary
lukaspie Sep 18, 2024
09aa519
Suggestions from Lukas
atomprobe-tc Sep 19, 2024
139d664
fix dev_tools tests
lukaspie Sep 18, 2024
4abdc46
remove use of details_summary_hide
lukaspie Sep 18, 2024
d20af52
change refs in NXarpes
lukaspie Sep 19, 2024
101a093
move doc bundles to applications and base_classes
lukaspie Sep 19, 2024
4f52a8a
Merge commit '09aa5191d2e327d74f54e20aac091c94661b90fe' into fairmat-…
lukaspie Sep 19, 2024
5ac17fb
Reverting the proposal that NXmicrostructure is not just proposed for…
atomprobe-tc Sep 19, 2024
e430164
Merge commit '5ac17fba2c96b83b3aa40446ba3f57b877be93bf' into fairmat-…
lukaspie Sep 19, 2024
4e485a6
Revert one more microstructure
atomprobe-tc Sep 19, 2024
2b6e1c3
Merge commit '4e485a6cb4b185da158439b6e6c726e628eb1740' into fairmat-…
lukaspie Sep 19, 2024
81d927c
move new definitions to application and base_classes
lukaspie Sep 19, 2024
4bbc850
small update to mpes-structure
lukaspie Sep 19, 2024
69bc9dc
update category for NXxrd.nxdl. (#296)
RubelMozumder Sep 20, 2024
0200cd6
remove fairmat-specific files
lukaspie Sep 20, 2024
00645ff
remove nyaml files
lukaspie Sep 20, 2024
2287569
move NXdata_mpes* classes back to contributed
lukaspie Sep 20, 2024
1544232
revert small changes to the dev_tools
lukaspie Sep 20, 2024
105029a
change docs in NXcircuit
lukaspie Sep 20, 2024
aeeb4c5
pull out modifications for fairmat-2024-em
lukaspie Sep 20, 2024
eb8a3b2
remove classes from contributed that have been moved to base_classes
lukaspie Sep 24, 2024
8f5291b
update type in NXsource
lukaspie Sep 24, 2024
f419a09
add test on NXem application definition
lukaspie Oct 17, 2024
3bdbc5c
use pathlib.Path
lukaspie Oct 17, 2024
f3d155b
Merge remote-tracking branch 'upstream/main' into fairmat-2024-em
lukaspie Dec 11, 2024
2ed2370
parametrize test cases with fixtures
lukaspie Dec 11, 2024
cef5c28
resolve merge conflict on NXdetector
lukaspie Dec 11, 2024
84f27bf
black formatting on tests
lukaspie Dec 11, 2024
a99f94d
remove double NXpositioner from NXaperture
lukaspie Dec 11, 2024
098daa1
Merge remote-tracking branch 'upstream/main' into fairmat-2024-em
atomprobe-tc Jan 14, 2025
294468a
NXem_method removed as retrospectively considered a too tiny modifica…
atomprobe-tc Jan 14, 2025
c042083
Edits on em-specific base classes
atomprobe-tc Jan 14, 2025
da45241
Edits on NXem_ebsd based on Autumn NIAC feedback
atomprobe-tc Jan 14, 2025
dc71cc2
Latest edits on NXem_correlation before I propose to remove it cuz re…
atomprobe-tc Jan 14, 2025
2153187
Retracting NXem_correlation for now
atomprobe-tc Jan 14, 2025
7323fb5
Retraction of NXevent_data_em_set for the reason that just an additio…
atomprobe-tc Jan 14, 2025
7bc8d0a
Edits in preparation for moving NXinteraction_volume_em to the applic…
atomprobe-tc Jan 14, 2025
0c9a21f
Renaming of core base classes NXimage, NXspectrum fix incorrect usage…
atomprobe-tc Jan 14, 2025
281e842
Refactoring of NXcrystal_structure to NXphase
atomprobe-tc Jan 14, 2025
ab63fea
Renaming of NXcrystal_structure and NXphase complementing a refactori…
atomprobe-tc Jan 14, 2025
06688c1
Edits on NXphase formerly NXcrystal_structure
atomprobe-tc Jan 14, 2025
0fe77fb
Renamed NXion to NXatom reintroduction of NXcrystal_structure to use …
atomprobe-tc Jan 15, 2025
9f19af1
Fixing NXcrystal_structure
atomprobe-tc Jan 15, 2025
2ba035b
Completed refactoring and editing of NXatom, NXphase, NXcrystal_struc…
atomprobe-tc Jan 15, 2025
3cc6a20
Edited NXebeam_column
atomprobe-tc Jan 15, 2025
4de2788
Edits on NXevent_data_em
atomprobe-tc Jan 15, 2025
6ada848
Edited NXibeam, moving on to NXimage
atomprobe-tc Jan 15, 2025
e57e8bf
add specified coordinate systems for EM/APM
lukaspie Jan 16, 2025
821348a
Working on image and spectrum
atomprobe-tc Jan 16, 2025
27fc844
Unify concept naming convention from *_identifier to identifierNAME
atomprobe-tc Jan 16, 2025
080484d
Refactoring and removal of NXcrystal_structure in favour for NXunit_cell
atomprobe-tc Jan 16, 2025
f0cfc6d
Further edits and refactoring
atomprobe-tc Jan 16, 2025
5303700
Renamed NXrotation_set to NXrotation
atomprobe-tc Jan 16, 2025
6194481
Further working on em-specific base classes, next up: i) NXscanbox_em…
atomprobe-tc Jan 16, 2025
866d624
Completing first round of edits on base classes for NXem
atomprobe-tc Jan 17, 2025
c686273
Removing NXstage_lab after discussion with @lukaspie as a result of w…
atomprobe-tc Jan 17, 2025
df83b9e
Removed NX*_reference_frame.nxdl.xml after having spent more time wit…
atomprobe-tc Jan 17, 2025
d07a1cb
Merge remote-tracking branch 'upstream/main' into fairmat-2024-em
atomprobe-tc Feb 3, 2025
7fc7704
Edits in utility base classes of NXem
atomprobe-tc Feb 4, 2025
a6ccc8e
Removal of classes in contributed definitions that had been used whil…
atomprobe-tc Feb 4, 2025
77793ae
Editing and reviewing method-specific classes
atomprobe-tc Feb 4, 2025
3168f1b
BREAKING CHANGE NXem_msr to NXinstrument_em following the design of N…
atomprobe-tc Feb 4, 2025
4b4c97d
Refactored NXem, last steps remaining, i) check nameType partial, ii)…
atomprobe-tc Feb 4, 2025
c66ad94
Fixed templated concept paths in the tests
atomprobe-tc Feb 4, 2025
301a013
Added NXmanipulator from the fairmat-2024-mpes branch (commit 3255716…
atomprobe-tc Feb 5, 2025
7dfe9ef
Remaining issues solved, NXstage_lab refactored using NXmanipulator
atomprobe-tc Feb 5, 2025
4a7f283
Remove shell script for processing specific yaml to nxdl
atomprobe-tc Feb 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,488 changes: 1,488 additions & 0 deletions applications/NXem.nxdl.xml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2014-2024 NeXus International Advisory Committee (NIAC)
#
#
# Copyright (C) 2014-2025 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
# License as published by the Free Software Foundation; either
Expand All @@ -21,35 +21,49 @@
#
# For further information, see http://www.nexusformat.org
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" extends="NXobject" name="NXaberration" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" name="NXaberration" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
Quantified aberration coefficient in an aberration_model.
</doc>
<field name="magnitude" type="NX_FLOAT" units="NX_LENGTH"/>
<field name="uncertainty" type="NX_FLOAT" units="NX_LENGTH">
<field name="magnitude" type="NX_NUMBER" units="NX_ANY">
<doc>
Magnitude of the aberration
</doc>
</field>
<field name="magnitude_errors" type="NX_NUMBER" units="NX_ANY">
<doc>
Confidence
Uncertainty of the magnitude of the aberration
</doc>
</field>
<field name="uncertainty_model">
<field name="magnitude_errors_model" type="NX_CHAR">
<doc>
How was the uncertainty quantified e.g. via the 95% confidence interval.
Free-text description how magnitude_errors was quantified
e.g. via the 95% confidence interval, variance, standard deviation,
using which algorithm or statistical model.
</doc>
</field>
<field name="delta_time" type="NX_FLOAT" units="NX_TIME">
<field name="delta_time" type="NX_NUMBER" units="NX_TIME">
<doc>
Time elapsed since the last measurement.
</doc>
</field>
<field name="angle" type="NX_FLOAT" units="NX_ANGLE">
<field name="angle" type="NX_NUMBER" units="NX_ANGLE">
<doc>
For the CEOS definitions the C aberrations are radial-symmetric and have no
angle entry, while the A, B, D, S, or R aberrations are n-fold
For the CEOS definitions the C aberrations are radial-symmetric and have
no angle entry, while the A, B, D, S, or R aberrations are n-fold
symmetric and have an angle entry.
For the NION definitions the coordinate system differs to the one
used in CEOS and instead two aberration coefficients a and b are used.
</doc>
</field>
<field name="name"/>
<field name="alias"/>
<field name="name" type="NX_CHAR">
<doc>
Given name to this aberration.
</doc>
</field>
<field name="alias" type="NX_CHAR">
<doc>
Alias also used to name and refer to this specific type of aberration.
</doc>
</field>
</definition>
56 changes: 56 additions & 0 deletions base_classes/NXactivity.nxdl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2014-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
# License as published by the Free Software Foundation; either
# 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
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# 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
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" name="NXactivity" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
A planned or unplanned action that has a temporal extension and for some time depends on some entity.

This class is planned be used in the future as the super class for all other activities if inheritance
in base classes is supported in NeXus.
</doc>
<field name="start_time" type="NX_DATE_TIME">
<doc>
ISO 8601 formatted time code (with local time zone offset to UTC information
included) when this activity started.
</doc>
</field>
<field name="end_time" type="NX_DATE_TIME">
<doc>
ISO 8601 formatted time code (with local time zone offset to UTC information
included) when this activity ended.
</doc>
</field>
<field name="description">
<doc>
Short description of the activity.
</doc>
</field>
<group name="notes" type="NXnote">
<doc>
This can be any data or other descriptor acquired during the activity
(NXnote allows to add pictures, audio, movies). Alternatively, a
reference to the location or a unique identifier or other metadata file. In the
case these are not available, free-text description.
</doc>
</group>
</definition>
134 changes: 134 additions & 0 deletions base_classes/NXatom.nxdl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2014-2025 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
# License as published by the Free Software Foundation; either
# 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
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# 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
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" name="NXatom" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
Base class for documenting a set of atoms.

Atoms in the set may be bonded.
The set may have a net charge to represent
an ion. Such ion can be a molecular ion.
</doc>
<field name="name" type="NX_CHAR">
<doc>
Human-readable name for the set.

To provide an exemplar use case this field could be
used in the research field of atom probe tomography for
storing a standardized human-readable name of the element
or (molecular) ion like such as Al +++ or 12C +.
</doc>
</field>
<field name="identifier_chemical" type="NX_CHAR">
<doc>
Identifier used to refer to if the set of atoms represents a substance.
</doc>
<enumeration>
<item value="inchi"/>
</enumeration>
</field>
<field name="charge" type="NX_NUMBER" units="NX_CHARGE">
<doc>
Signed net (partial) charge of the (molecular) ion.

Different methods for computing charge are in use and care
needs to be exercised with respect to the integration. See
`T. A. Manz &lt;10.1039/c6ra04656h&gt;`_ and `N. G. Limas &lt;10.1039/C6RA05507A&gt;`_ for computational details.
</doc>
</field>
<field name="charge_state" type="NX_NUMBER" units="NX_UNITLESS">
<doc>
Charge reported in multiples of the charge of an electron.

For research using atom probe tomography the value should be set to
zero if the charge_state is unknown and irrecoverable, like it can happen
when classical ranging definition files in formats like RNG, RRNG are used.
These file formats do not document the charge state explicitly
but only the number of atoms of each element per molecular ion
surplus the mass-to-charge-state-ratio interval. Details on ranging definition
files can be found in the literature `M. K. Miller &lt;https://doi.org/10.1002/sia.1719&gt;`_.
</doc>
</field>
<field name="volume" type="NX_NUMBER" units="NX_VOLUME">
<doc>
Assumed volume affected by the set of atoms.

Neither individual atoms nor a set of cluster of these have a uniquely defined volume
as a computation demands some cut-off criterion.
</doc>
</field>
<!--define NXapm_ion extending NXatom for the specific use case of atom probe
geometry of the set
<group type="NXcg_point"/>-->
<field name="identifier" type="NX_CHAR">
<doc>
Identifier for each atom at locations as detailed by position.
</doc>
<dimensions rank="1">
<dim index="1" value="n_pos"/>
</dimensions>
</field>
<field name="type" type="NX_UINT" units="NX_UNITLESS">
<doc>
Nuclide information for each atom at locations as detailed by position.

One `approach &lt;https://doi.org/10.1017/S1431927621012241&gt;`_ for storing nuclide information efficiently
is via hashing with the following formula

:math:`H` is :math:`H = Z + N \cdot 256` with :math:`Z`

the number of protons and :math:`N` the number of neutrons
of each nuclide given as 8-bit unsigned integer values.
</doc>
<dimensions rank="1">
<dim index="1" value="n_pos"/>
</dimensions>
</field>
<field name="position" type="NX_NUMBER" units="NX_ANY">
<doc>
Position of each atom.
</doc>
<dimensions rank="2">
<dim index="1" value="n_pos"/>
<dim index="2" value="d"/>
</dimensions>
<attribute name="reference_frame" type="NX_CHAR">
<doc>
Path to a reference frame in which positions are defined
to resolve ambiguity when the reference frame is different
to the NeXus default reference frame (McStas).
</doc>
</attribute>
</field>
<field name="occupancy" type="NX_NUMBER" units="NX_DIMENSIONLESS">
<doc>
Relative occupancy of the atom position.

This field is useful for specifying the atomic motif in
instances of :ref:`NXunit_cell`.
</doc>
<dimensions rank="1">
<dim index="1" value="n_pos"/>
</dimensions>
</field>
</definition>
Loading
Loading