Bring NXapm back that has been accepted now by the NIAC#396
Closed
mkuehbach wants to merge 2 commits into
Closed
Conversation
…pdefs and baseclasses where inconsistent with those from the NIAC on their current main ecc9361
Reviewer's GuideThis pull request reintroduces the NXapm application definition for atom probe microscopy, restoring both YAML and NXDL files and extending several base classes (NXprocess, NXinstrument_apm, NXimage, NXspectrum, NXapm_simulation) to support detailed metadata and workflows, while also applying formatting clean-ups and year updates across various definition files. Class diagram for the new NXapm application definition and related base classesclassDiagram
class NXapm {
<<application>>
+NXentry[1..*]
}
class NXentry {
+definition: NX_CHAR
+run_number: NX_UINT
+experiment_alias: NX_CHAR
+experiment_description: NX_CHAR
+start_time: NX_DATE_TIME
+end_time: NX_DATE_TIME
+elapsed_time: NX_FLOAT
+operation_mode: NX_CHAR
+userID: NXuser
+sample: NXsample
+specimen: NXsample
+consistent_rotations: NXparameters
+NAMED_reference_frame: NXcoordinate_system
+measurement: NXapm_measurement
+simulation: NXapm_simulation
+atom_probeID: NXroi_process
+profiling: NXcs_profiling
}
class NXapm_measurement {
+status: NX_CHAR
+quality: NX_CHAR
+instrument: NXinstrument_apm
+eventID: NXevent_data_apm
}
class NXinstrument_apm {
+type: NX_CHAR
+location: NX_CHAR
+flight_path: NX_FLOAT
+reflectron: NXcomponent
+local_electrode: NXlens_em
+ion_detector: NXdetector
+pulser: NXcomponent
+stage: NXmanipulator
+analysis_chamber: NXcomponent
+buffer_chamber: NXcomponent
+load_lock_chamber: NXcomponent
+getter_pump: NXpump
+roughening_pump: NXpump
+turbomolecular_pump: NXpump
}
class NXroi_process {
+initial_specimen: NXimage
+final_specimen: NXimage
+raw_data: NXprocess
+hit_finding: NXprocess
+hit_spatial_filtering: NXprocess
+voltage_and_bowl: NXprocess
+mass_to_charge_conversion: NXprocess
+reconstruction: NXapm_reconstruction
+ranging: NXapm_ranging
}
class NXprocess {
+program: NX_CHAR
+sequence_index: NX_POSINT
+version: NX_CHAR
+date: NX_DATE_TIME
+(NXnote)
+(NXparameters)
+(NXdata)
}
class NXimage {
+image_2d: NXdata
}
class NXapm_simulation {
<<group>>
}
class NXcs_profiling {
+programID: NXprogram
+environment: NXcollection
}
class NXcs_profiling_event {
+start_time: NX_DATE_TIME
+end_time: NX_DATE_TIME
+description: NX_CHAR
+elapsed_time: NX_NUMBER
+max_processes: NX_UINT
+max_threads: NX_UINT
+max_gpus: NX_UINT
+max_virtual_memory_snapshot: NX_NUMBER[n_processes]
+max_resident_memory_snapshot: NX_NUMBER[n_processes]
}
NXapm --> NXentry
NXentry --> NXapm_measurement
NXentry --> NXapm_simulation
NXentry --> NXroi_process
NXentry --> NXcs_profiling
NXapm_measurement --> NXinstrument_apm
NXapm_measurement --> NXevent_data_apm
NXroi_process --> NXimage : initial_specimen
NXroi_process --> NXimage : final_specimen
NXroi_process --> NXprocess : raw_data
NXroi_process --> NXprocess : hit_finding
NXroi_process --> NXprocess : hit_spatial_filtering
NXroi_process --> NXprocess : voltage_and_bowl
NXroi_process --> NXprocess : mass_to_charge_conversion
NXroi_process --> NXapm_reconstruction : reconstruction
NXroi_process --> NXapm_ranging : ranging
NXcs_profiling --> NXcs_profiling_event
NXprocess --> NXnote
NXprocess --> NXparameters
NXprocess --> NXdata
NXimage --> NXdata : image_2d
Class diagram for the updated NXprocess base classclassDiagram
class NXprocess {
+program: NX_CHAR
+sequence_index: NX_POSINT
+version: NX_CHAR
+date: NX_DATE_TIME
+(NXnote)
+(NXparameters)
+(NXdata)
}
class NXnote {
}
class NXparameters {
}
class NXdata {
}
NXprocess --> NXnote
NXprocess --> NXparameters
NXprocess --> NXdata
Class diagram for the new NXcs_profiling_event base classclassDiagram
class NXcs_profiling_event {
+start_time: NX_DATE_TIME
+end_time: NX_DATE_TIME
+description: NX_CHAR
+elapsed_time: NX_NUMBER
+max_processes: NX_UINT
+max_threads: NX_UINT
+max_gpus: NX_UINT
+max_virtual_memory_snapshot: NX_NUMBER[n_processes]
+max_resident_memory_snapshot: NX_NUMBER[n_processes]
}
Class diagram for the updated NXlens_em base classclassDiagram
class NXlens_em {
+pole_type: NX_CHAR
+number_of_poles: NX_UINT
}
Class diagram for the updated NXfabrication base classclassDiagram
class NXfabrication {
+date: NX_DATE_TIME
+capability: NX_CHAR
}
Class diagram for the updated NXentry base classclassDiagram
class NXentry {
+entry_identifier: NX_CHAR
+identifier_entry: NX_CHAR
}
Class diagram for the updated NXcomponent base classclassDiagram
class NXcomponent {
+identifierNAME: NX_CHAR
}
Class diagram for the updated NXcg_primitive and NXcg_roi contributed definitionsclassDiagram
class NXcg_primitive {
}
class NXcg_roi {
}
Class diagram for the updated NXactuator, NXcoordinate_system, NXdata, NXhistory, NXresolution, NXroot base classesclassDiagram
class NXactuator {
}
class NXcoordinate_system {
}
class NXdata {
}
class NXhistory {
}
class NXresolution {
}
class NXroot {
}
Class diagram for the updated NXcg_face_list_data_structure, NXcg_half_edge_data_structure, NXcg_hexahedron, NXcg_parallelogram, NXcg_polygon, NXcg_polyhedron, NXcg_polyline, NXcg_tetrahedron, NXcg_triangle contributed definitionsclassDiagram
class NXcg_face_list_data_structure {
}
class NXcg_half_edge_data_structure {
}
class NXcg_hexahedron {
}
class NXcg_parallelogram {
}
class NXcg_polygon {
}
class NXcg_polyhedron {
}
class NXcg_polyline {
}
class NXcg_tetrahedron {
}
class NXcg_triangle {
}
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Collaborator
Author
|
Superseeded by #400 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary by Sourcery
Bring back the NXapm application definition and broaden the NeXus schema with new base classes and extended process definitions for atom probe microscopy data.
New Features:
Enhancements: