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: changes to contributed definitions #1427

Draft
wants to merge 1,153 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1153 commits
Select commit Hold shift + click to select a range
47f7a30
Merge pull request #242 from FAIRmat-NFDI/NXopt_workshop_updates
RonHildebrandt Jul 4, 2024
bd1ba65
Merge branch 'fairmat' into sprint22_matwerk
atomprobe-tc Jul 4, 2024
138f40b
Merge pull request #258 from FAIRmat-NFDI/sprint22_matwerk
mkuehbach Jul 4, 2024
2d65b0f
Merge branch 'fairmat' into sprint22_clear_duplicates_for_circuits
atomprobe-tc Jul 4, 2024
8633744
Refactoring of base class umbrella for description of a computer base…
atomprobe-tc Jul 4, 2024
232cc40
Final minor fixes
atomprobe-tc Jul 4, 2024
fa24bbf
done
atomprobe-tc Jul 4, 2024
2f06550
fix mpes-structure.rst
lukaspie Jul 4, 2024
17399f1
Merge pull request #249 from FAIRmat-NFDI/246-finalize-nxxps
lukaspie Jul 4, 2024
28c3726
Merge pull request #260 from FAIRmat-NFDI/sprint22_clear_duplicates_f…
mkuehbach Jul 4, 2024
71ea669
Merge branch 'fairmat' into sprint22_corrector
Jul 4, 2024
fe64f3d
Remove previous deleted file
Jul 4, 2024
0e96bf4
make geometries and source recommended in xps
lukaspie Jul 8, 2024
9e8dc2f
Merge pull request #264 from FAIRmat-NFDI/small-xps-fixes
lukaspie Jul 8, 2024
1ff2e2e
change docs in NXcollectioncolumn
lukaspie Jul 8, 2024
2f8dbdd
regenerate nxdl files
lukaspie Jul 9, 2024
26d4faa
Merge pull request #265 from FAIRmat-NFDI/docs-in-nxcollectioncolumn
lukaspie Jul 9, 2024
8cd2d5c
small modifications to clarify NXmpes
lukaspie Jul 9, 2024
b45e417
Base class refactoring for NXms proposal removing too small base clas…
atomprobe-tc Jul 9, 2024
ddfbd01
Following @lukaspie suggestion to rename the base classes related to …
atomprobe-tc Jul 9, 2024
a56552b
remove changes to polarization in NXbeam
lukaspie Jul 9, 2024
4456194
remove changes to final_polarization in NXbeam
lukaspie Jul 9, 2024
87bd254
Removed remaining references to NXms and renamed NXslip_system_set
atomprobe-tc Jul 9, 2024
0beac13
Removed the two tiny base classes NXmicrostructure_snapshot and *_set
atomprobe-tc Jul 9, 2024
171e23a
Refactored NXmicrostructure_feature_set to map to NXmicrostructure_re…
atomprobe-tc Jul 9, 2024
612c550
Removed NXmicrostructure_recon
atomprobe-tc Jul 9, 2024
f88f38d
Fix documentation generation
atomprobe-tc Jul 9, 2024
9b23f4e
Continuing on NXmicrostructure
atomprobe-tc Jul 9, 2024
e92255b
Finished NXmicrostructure
atomprobe-tc Jul 10, 2024
78ddc2a
Fix docs CI to only keep orphan branch
lukaspie Jul 10, 2024
d1442c3
Finalized data model for NXmicrostructure_imm
atomprobe-tc Jul 10, 2024
19172d2
Finished data model example for NXmicrostructure_kanapy
atomprobe-tc Jul 10, 2024
d1e8958
add step to remove build artifacts
lukaspie Jul 10, 2024
2af174c
Activate .github/workflows/fairmat-build-pages.yaml
lukaspie Jul 10, 2024
32afbb1
readd units to NXbeam polarization
lukaspie Jul 10, 2024
6d55dc1
move existing docs before making orphan branch
lukaspie Jul 10, 2024
f8f256a
reactivate ci workflow
lukaspie Jul 10, 2024
c034f39
modify moving of existing docs
lukaspie Jul 10, 2024
2cf1f20
remove commented CI code that is not needed anymore
lukaspie Jul 10, 2024
bce9eb6
Merge pull request #268 from FAIRmat-NFDI/237-repository-extremely-large
lukaspie Jul 10, 2024
fe38c94
Opened NXem_conventions for usage in methods other than electron micr…
atomprobe-tc Jul 11, 2024
293161a
Consolidated based classes related to NXem_conventions into NXcoordin…
atomprobe-tc Jul 11, 2024
bf5c6d5
Refactored NXmicrostructure_score_config
atomprobe-tc Jul 11, 2024
87ef8ed
Refactored NXmicrostructure_gragles_config
atomprobe-tc Jul 11, 2024
028bce9
Even make html runs through locally
atomprobe-tc Jul 11, 2024
b19701c
remove _source build artifacts before docs deployment
lukaspie Jul 11, 2024
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
11fa448
pull out modifications for fairmat-2024-contributed
lukaspie Sep 20, 2024
c61e6af
bring in multi line doc handling in dev_tools
lukaspie Sep 24, 2024
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
91 changes: 91 additions & 0 deletions contributed_definitions/NXamplifier.nxdl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?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-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
# License as published by the Free Software Foundation; either
# 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
# 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" name="NXamplifier" extends="NXobject" type="group" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
Base classed definition for amplifier devices.
</doc>
<group name="hardware" type="NXfabrication">
<doc>
(IC, device) (NXmanufacturer?)
</doc>
</group>
<field name="num_of_channels" type="NX_NUMBER">
<doc>
The number of preamplifier channels are assgined.
</doc>
</field>
<field name="active_channels" type="NX_NUMBER">
<doc>
The number of preamplifier channels are ready tp to be used. (array for active
channels)
</doc>
</field>
<field name="openloop_amplification" type="NX_NUMBER">
<doc>
The output signal does not go through a feedback loop to adjust the
amplification of the amplifier. (array for active channels)
</doc>
</field>
<!--amplification(NX_NUMBER):
doc: !!! The ratio of the amplitude of the output signal to the amplitude of the input signal. (array for active channels) # From google.-->
<field name="signal_over_noise" type="NX_NUMBER">
<doc>
The ratio of the amplitue of the useful signal to the amplitude of the noise in
the output signal of the amplifier. S/N=V_signal/V_noise. (array for active
channels)
</doc>
</field>
<field name="crosstalk_factor" type="NX_NUMBER">
<doc>
(if active &gt;1)
</doc>
</field>
<field name="crosstalk_compensation" type="NX_BOOLEAN">
<doc>
for reducing interferences between different signalling pathways
</doc>
</field>
<field name="bandwidth" type="NX_NUMBER" units="NX_FREQUENCY">
<doc>
The spectrum of frequency it can amplify, from its lowest to highest frequency
limits.
</doc>
</field>
<field name="low_pass" type="NX_NUMBER" units="NX_FREQUENCY">
<doc>
Order and cut-off frequency of the low-pass filter applied on the demodulated
signals (X,Y). Cut-off frq (low pass filter) (foreach DemodulatorChannels)
</doc>
</field>
<field name="hi_pass" type="NX_NUMBER" units="NX_FREQUENCY">
<doc>
Order and cut-off frequency of the high-pass filter applied on the demodulation
signal. Cut-off frq (hi pass filter) (foreach DemodulatorChannels)
</doc>
</field>
<!--voltage_amplifier_factor(NX_NUMBER):
doc: !!! Current Amplifier Factor typically refers to the gain of the probe current amplifier. (V/V)
current_amplifier_capacitive_cross_talk_compensation(NX_CHAR):
doc: !!! Reduces the effect of capacitive crosstalk in the circuit on experimental results.-->
</definition>
191 changes: 191 additions & 0 deletions contributed_definitions/NXapm_compositionspace_config.nxdl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
<?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="application" type="group" name="NXapm_compositionspace_config" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
Application definition for a configuration of the CompositionSpace tool used in atom probe.

* `A. Saxena et al. &lt;https://www.github.com/eisenforschung/CompositionSpace.git&gt;`_

This is an application definition for the common NFDI-MatWerk/FAIRmat infrastructure
use case IUC09 that explores how to improve the organization and results storage of the
CompositionSpace software using NeXus.
</doc>
<!--by default for appdefs the value of the exists keyword is required unless it is explicitly specified differently-->
<group type="NXentry" minOccurs="1" maxOccurs="1">
<field name="definition" type="NX_CHAR">
<attribute name="version" type="NX_CHAR" optional="true"/>
<enumeration>
<item value="NXapm_compositionspace_config"/>
</enumeration>
</field>
<group name="config" type="NXobject">
<group type="NXidentifier" optional="true"/>
<field name="analysis_identifier" type="NX_UINT" recommended="true"/>
<group name="reconstruction" type="NXserialized">
<doc>
Specification of the tomographic reconstruction used for this analysis.
Typically, reconstructions in the field of atom probe tomography are communicated via
files which store at least reconstructed ion positions and mass-to-charge-state-ratio
values. Container files like HDF5 though can store multiple reconstructions.
Therefore, the position and mass_to_charge concepts point to specific instances
to use for this analysis.
</doc>
<field name="type" type="NX_CHAR" optional="true"/>
<field name="path" type="NX_CHAR"/>
<field name="checksum" type="NX_CHAR" recommended="true"/>
<field name="algorithm" type="NX_CHAR" recommended="true"/>
<field name="position" type="NX_CHAR">
<doc>
Name of the node which resolves the reconstructed
ion position values to use for this analysis.
</doc>
</field>
<field name="mass_to_charge" type="NX_CHAR" optional="true">
<doc>
Name of the node which resolves the mass-to-charge-state ratio
values for each reconstructed ion to use for this analysis.
</doc>
</field>
</group>
<group name="ranging" type="NXserialized">
<doc>
Specification of the ranging definitions used for this analysis.

Indices start from 1. The value 0 is reserved for the null model of unranged positions whose
iontype is unknown_type. The value 0 is also reserved for voxels that lie outside the dataset.
</doc>
<field name="type" type="NX_CHAR" optional="true"/>
<field name="path" type="NX_CHAR"/>
<field name="checksum" type="NX_CHAR" recommended="true"/>
<field name="algorithm" type="NX_CHAR" recommended="true"/>
<field name="ranging_definitions" type="NX_CHAR">
<doc>
Name of the (parent) node directly below which the ranging definitions for
(molecular) ions are stored.
</doc>
</field>
</group>
<group name="voxelization" type="NXprocess">
<doc>
Step during which the point cloud is discretized to compute element-specific composition fields.
Iontypes are atomically decomposed to correctly account for the multiplicity of each element that
was ranged for each ion.
</doc>
<field name="edge_length" type="NX_NUMBER" units="NX_LENGTH">
<doc>
Edge length of cubic voxels building the 3D grid that is used for discretizing
the point cloud.
</doc>
</field>
</group>
<group name="autophase" type="NXprocess">
<doc>
Optional step during which the subsequent segmentation step is prepared with the aim to eventually
reduce the dimensionality of the chemical space in which the machine learning model works.

In this step a supervised reduction of the dimensionality of the chemical space is quantified using
the (Gini) feature importance of each element to suggest which columns of the composition matrix
should be taken for the subsequent segmentation step.
</doc>
<field name="use" type="NX_BOOLEAN">
<doc>
Was the automated phase assignment used?
</doc>
</field>
<field name="initial_guess" type="NX_POSINT" units="NX_UNITLESS">
<doc>
Estimated guess for which a Gaussian mixture model is evaluted to preprocess a result that
is subsequenty post-processed with a random_forest_classifier to lower the number of
dimensions in the chemical space to the subset of trunc_species many elements with the
highest feature importance.
</doc>
</field>
<field name="trunc_species" type="NX_POSINT" units="NX_UNITLESS">
<doc>
The number of elements to use for reducing the dimensionality.
</doc>
</field>
<group name="random_forest_classifier" type="NXprocess" optional="true">
<doc>
Configuration for the random forest classification model.
</doc>
</group>
</group>
<group name="segmentation" type="NXprocess">
<doc>
Step during which the voxel set is segmented into voxel sets with different
chemical composition.
</doc>
<group name="pca" type="NXprocess" optional="true">
<doc>
A principal component analysis of the chemical space to guide a decision into how many sets of voxels
with different chemical composition the machine learning algorithm suggests to split the voxel set.
</doc>
</group>
<group name="ic_opt" type="NXprocess">
<doc>
The decision is guided through the evalution of the information criterion
minimization.
</doc>
<field name="n_max_ic_cluster" type="NX_POSINT" units="NX_UNITLESS">
<doc>
The maximum number of chemical classes to probe with the Gaussian mixture model
with which the voxel set is segmented into a mixture of voxels with that many different
chemical compositions.
</doc>
</field>
<group name="gaussian_mixture" type="NXprocess" optional="true">
<doc>
Configuration for the Gaussian mixture model that is used in the segmentation
step.
</doc>
</group>
</group>
</group>
<group name="clustering" type="NXprocess">
<doc>
Step during which the chemically segmented voxel sets are analyzed for their
spatial organization.
</doc>
<group name="dbscan" type="NXobject">
<doc>
Configuration for the DBScan algorithm that is used in the clustering step.
</doc>
<field name="eps" type="NX_FLOAT" units="NX_LENGTH">
<doc>
The maximum distance between voxel pairs in a neighborhood to be considered
connected.
</doc>
</field>
<field name="min_samples" type="NX_UINT" units="NX_UNITLESS">
<doc>
The number of voxels in a neighborhood for a voxel to be considered as a core
point.
</doc>
</field>
</group>
</group>
</group>
</group>
</definition>
Loading
Loading