NXapm_paraprobe_results_surfacer¶
Status:
application definition, extends NXobject
Description:
Results of a paraprobe-surfacer tool run.
Symbols:
The symbols used in the schema to specify e.g. dimensions of arrays.
n_ions: The total number of ions in the reconstruction.
n_v_tri: The number of vertices of the alpha complex.
n_f_tri: The number of faces of the alpha complex.
n_f_tri_xdmf: The total number of XDMF values to represent all faces of triangles via XDMF.
n_f_tet_xdmf: The total number of XDMF values to represent all faces of tetrahedra via XDMF.
- Groups cited:
NXcg_alpha_complex, NXcg_face_list_data_structure, NXcg_tetrahedron_set, NXcg_triangle_set, NXcoordinate_system_set, NXcs_computer, NXcs_cpu, NXcs_filter_boolean_mask, NXcs_gpu, NXcs_io_obj, NXcs_io_sys, NXcs_mm_sys, NXcs_profiling_event, NXcs_profiling, NXentry, NXfabrication, NXprocess, NXtransformations, NXuser
Structure:
ENTRY: (required) NXentry
@version: (required) NX_CHAR
Version specifier of this application definition.
definition: (required) NX_CHAR
Official NeXus NXDL schema with which this file was written.
Obligatory value:
NXapm_paraprobe_results_surfacer
program: (required) NX_CHAR
Given name of the program/software/tool with which this NeXus (configuration) file was generated.
@version: (required) NX_CHAR
Ideally program version plus build number, or commit hash or description of ever persistent resources where the source code of the program and build instructions can be found so that the program can be configured ideally in such a manner that the result of this computational process is recreatable in the same deterministic manner.
analysis_identifier: (optional) NX_CHAR
Ideally, a (globally persistent) unique identifier for referring to this analysis.
analysis_description: (optional) NX_CHAR
Possibility for leaving a free-text description about this analysis.
start_time: (required) NX_DATE_TIME
ISO 8601 formatted time code with local time zone offset to UTC information included when the analysis behind this results file was started, i.e. the paraprobe-tool executable started as a process.
end_time: (required) NX_DATE_TIME
ISO 8601 formatted time code with local time zone offset to UTC information included when the analysis behind this results file were completed and the paraprobe-tool executable exited as a process.
config_filename: (required) NX_CHAR
The absolute path and name of the config file for this analysis.
@version: (required) NX_CHAR
At least SHA256 strong hash of the specific config_file for tracking provenance.
results_path: (optional) NX_CHAR
Path to the directory where the tool should store NeXus/HDF5 results of this analysis. If not specified results will be stored in the current working directory.
status: (required) NX_CHAR
A statement whether the paraprobe-tool executable managed to process the analysis or failed prematurely.
This status is written to the results file after the end_time at which point the executable must not compute any analysis. Only when this status message is present and shows success, the user should consider the results. In all other cases it might be that the executable has terminated prematurely or another error occurred.
Any of these values:
success
|failure
USER: (recommended) NXuser
If used, contact information and eventually details of at least the person who performed this analysis.
name: (required) NX_CHAR
affiliation: (recommended) NX_CHAR
address: (optional) NX_CHAR
email: (recommended) NX_CHAR
orcid: (recommended) NX_CHAR
orcid_platform: (recommended) NX_CHAR
telephone_number: (optional) NX_CHAR
role: (recommended) NX_CHAR
social_media_name: (optional) NX_CHAR
social_media_platform: (optional) NX_CHAR
COORDINATE_SYSTEM_SET: (required) NXcoordinate_system_set
Details about the coordinate system conventions used.
TRANSFORMATIONS: (required) NXtransformations
The individual coordinate systems which should be used. Field names should be prefixed with the following controlled terms indicating which individual coordinate system is described:
paraprobe
lab
specimen
laser
leap
detector
recon
PROCESS: (optional) NXprocess
window: (required) NXcs_filter_boolean_mask
A bitmask which identifies which of the ions in the dataset were analyzed. Computations of alpha complexes may have filtered this ion set further but this process is deterministic.
number_of_ions: (required) NX_UINT {units=NX_UNITLESS}
Number of ions covered by the mask. The mask may be 0 for most.
bitdepth: (required) NX_UINT {units=NX_UNITLESS}
Number of bits assumed matching on a default datatype. (e.g. 8 bits for a C-style uint8).
mask: (required) NX_UINT (Rank: 1, Dimensions: [i]) {units=NX_UNITLESS}
The unsigned integer array representing the content of the mask. If padding is used the padded bits are set to 0. The mask is for convenience always as large as the entire dataset as it will be stored compressed anyway. The convenience feature with this is that then the mask can be decoded with numpy and mirrored against the evaporation_id array and one immediately can filter out all points that were used by the paraprobe. The length of the array adds to the next unsigned integer if the number of ions in the dataset is not an integer multiple of the bitdepth.
POINT_SET_WRAPPING: (optional) NXprocess
Paraprobe-surfacer can be used to load a ROI that is the entire or a sub-set of the ion point cloud. In the point_cloud_wrapping process the tool computes a triangulated surface mesh which encloses the ROI/point cloud. This mesh can be seen as a model for the edge of the dataset. Different algorithms can be used with paraprobe-surfacer to create this mesh such as convex hulls, alpha-shapes as their generalization, or alpha wrappings. Ideally, the resulting mesh should be a watertight polyhedron. This polyhedron is not necessarily convex. For some algorithms there is no guarantee that the resulting mesh yields a watertight mesh.
alpha_complex: (optional) NXcg_alpha_complex
dimensionality: (required) NX_UINT {units=NX_UNITLESS}
Any of these values:
2
|3
type: (required) NX_CHAR
Any of these values:
convex_hull
alpha_shape
alpha_wrapping
other
undefined
mode: (required) NX_CHAR
Any of these values:
general
|regularized
alpha: (required) NX_NUMBER {units=NX_LENGTH}
offset: (optional) NX_NUMBER {units=NX_LENGTH}
window: (required) NXcs_filter_boolean_mask
A bitmask which identifies exactly all those ions whose positions were considered when defining the filtered point set from which the alpha complex was then in fact computed. This window can be different to the entire window as irrelevant ions might have been filtered out to reduce the computational costs of the alpha complex analysis.
number_of_ions: (required) NX_UINT {units=NX_UNITLESS}
Number of ions covered by the mask. The mask value for most may be 0.
bitdepth: (required) NX_UINT {units=NX_UNITLESS}
Number of bits assumed matching on a default datatype. (e.g. 8 bits for a C-style uint8).
mask: (required) NX_UINT (Rank: 1, Dimensions: [n_ions]) {units=NX_UNITLESS}
The unsigned integer array representing the content of the mask. If padding is used the padded bits are set to 0. The mask is for convenience always as large as the entire dataset as it will be stored compressed anyway. The convenience feature with this is that then the mask can be decoded with numpy and mirrored against the evaporation_id array and one immediately can filter out all points that were used by the paraprobe. The length of the array adds to the next unsigned integer if the number of ions in the dataset is not an integer multiple of the bitdepth.
triangle_set: (optional) NXcg_triangle_set
The set of triangles in the coordinate system paraprobe which discretizes the exterior surface of the alpha complex.
identifier_offset: (required) NX_INT {units=NX_UNITLESS}
Integer which specifies the first index to be used for distin- guishing triangles. Identifiers are defined either implicitly or explicitly. For implicit indexing the identifiers are defined on the interval [identifier_offset, identifier_offset+c-1].
is_watertight: (optional) NX_BOOLEAN
Do the triangles define a triangulated surface mesh which is watertight?
volume: (optional) NX_FLOAT {units=NX_VOLUME}
The volume which the triangulated surface mesh encloses provided that the mesh is watertight.
triangles: (required) NXcg_face_list_data_structure
dimensionality: (required) NX_POSINT {units=NX_UNITLESS}
number_of_vertices: (required) NX_POSINT {units=NX_UNITLESS}
Number of vertices.
number_of_faces: (required) NX_POSINT {units=NX_UNITLESS}
Number of faces.
vertex_identifier_offset: (required) NX_INT {units=NX_UNITLESS}
face_identifier_offset: (required) NX_INT {units=NX_UNITLESS}
vertices: (required) NX_FLOAT (Rank: 2, Dimensions: [n_v_tri, 3]) {units=NX_LENGTH}
faces: (required) NX_UINT (Rank: 2, Dimensions: [n_f_tri, 3]) {units=NX_UNITLESS}
xdmf_topology: (required) NX_UINT (Rank: 1, Dimensions: [n_f_tri_xdmf]) {units=NX_UNITLESS}
A list of as many tuples of XDMF topology key, XDMF number of vertices and a triple of vertex indices specifying each triangle. The total number of entries is n_f_tri * (1+1+3).
interior_tetrahedra: (optional) NXcg_tetrahedron_set
The set of tetrahedra which represent the interior volume of the complex if that is a closed 2-manifold.
identifier_offset: (required) NX_INT {units=NX_UNITLESS}
Integer which specifies the first index to be used for distin- guishing tetrahedra. Identifiers are defined either implicitly or explicitly. For implicit indexing the identifiers are defined on the interval [identifier_offset, identifier_offset+c-1]. For explicit indexing the identifier array has to be defined.
volume: (optional) NX_FLOAT {units=NX_VOLUME}
The accumulated volume of all interior tetrahedra.
tetrahedra: (required) NXcg_face_list_data_structure
number_of_vertices: (required) NX_POSINT {units=NX_UNITLESS}
Number of vertices.
number_of_faces: (required) NX_POSINT {units=NX_UNITLESS}
Number of faces.
vertex_identifier_offset: (required) NX_INT {units=NX_UNITLESS}
face_identifier_offset: (required) NX_INT {units=NX_UNITLESS}
vertices: (required) NX_FLOAT (Rank: 2, Dimensions: [n_v_tet, 3]) {units=NX_LENGTH}
xdmf_topology: (required) NX_UINT (Rank: 1, Dimensions: [n_f_tet_xdmf]) {units=NX_UNITLESS}
A list of as many tuples of XDMF topology key, XDMF number of vertices and a triple of vertex indices specifying each triangle. The total number of entries is n_f_tet * (1+1+4).
TRIANGLE_SET_WRAPPING: (optional) NXprocess
In the future we may want to wrap other primitives like triangles or polylines.
performance: (recommended) NXcs_profiling
current_working_directory: (required) NX_CHAR
command_line_call: (optional) NX_CHAR
start_time: (recommended) NX_DATE_TIME
end_time: (recommended) NX_DATE_TIME
total_elapsed_time: (required) NX_NUMBER
number_of_processes: (required) NX_POSINT
number_of_threads: (required) NX_POSINT
number_of_gpus: (required) NX_POSINT
CS_COMPUTER: (recommended) NXcs_computer
name: (recommended) NX_CHAR
operating_system: (required) NX_CHAR
@version: (required) NX_CHAR
uuid: (optional) NX_CHAR
CS_CPU: (optional) NXcs_cpu
CS_GPU: (optional) NXcs_gpu
CS_MM_SYS: (optional) NXcs_mm_sys
total_physical_memory: (required) NX_NUMBER
CS_IO_SYS: (optional) NXcs_io_sys
CS_IO_OBJ: (required) NXcs_io_obj
CS_PROFILING_EVENT: (required) NXcs_profiling_event
start_time: (optional) NX_DATE_TIME
end_time: (optional) NX_DATE_TIME
description: (required) NX_CHAR
elapsed_time: (required) NX_NUMBER
number_of_processes: (required) NX_POSINT
Specify if it was different from the number_of_processes in the NXcs_profiling super class.
number_of_threads: (required) NX_POSINT
Specify if it was different from the number_of_threads in the NXcs_profiling super class.
number_of_gpus: (required) NX_POSINT
Specify if it was different from the number_of_threads in the NXcs_profiling super class.
max_virtual_memory_snapshot: (recommended) NX_NUMBER
max_resident_memory_snapshot: (recommended) NX_NUMBER
Hypertext Anchors¶
List of hypertext anchors for all groups, fields, attributes, and links defined in this class.
/NXapm_paraprobe_results_surfacer/ENTRY/analysis_description-field
/NXapm_paraprobe_results_surfacer/ENTRY/analysis_identifier-field
/NXapm_paraprobe_results_surfacer/ENTRY/config_filename-field
/NXapm_paraprobe_results_surfacer/ENTRY/config_filename@version-attribute
/NXapm_paraprobe_results_surfacer/ENTRY/COORDINATE_SYSTEM_SET-group
/NXapm_paraprobe_results_surfacer/ENTRY/COORDINATE_SYSTEM_SET/TRANSFORMATIONS-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/command_line_call-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_CPU-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_CPU/FABRICATION-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_CPU/FABRICATION/identifier-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_CPU/name-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_GPU-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_GPU/FABRICATION-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_GPU/FABRICATION/identifier-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_GPU/name-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_IO_SYS-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_IO_SYS/CS_IO_OBJ-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_IO_SYS/CS_IO_OBJ/name-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_IO_SYS/CS_IO_OBJ/technology-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_MM_SYS-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_PROFILING_EVENT-group
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_PROFILING_EVENT/description-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_PROFILING_EVENT/end_time-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/CS_PROFILING_EVENT/start_time-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/name-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/operating_system-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/operating_system@version-attribute
/NXapm_paraprobe_results_surfacer/ENTRY/performance/CS_COMPUTER/uuid-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/current_working_directory-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/end_time-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/number_of_gpus-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/number_of_processes-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/number_of_threads-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/start_time-field
/NXapm_paraprobe_results_surfacer/ENTRY/performance/total_elapsed_time-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/alpha-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/mode-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/offset-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/triangle_set-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/type-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/window-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/POINT_SET_WRAPPING/alpha_complex/window/mask-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/TRIANGLE_SET_WRAPPING-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/window-group
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/window/bitdepth-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/window/mask-field
/NXapm_paraprobe_results_surfacer/ENTRY/PROCESS/window/number_of_ions-field
/NXapm_paraprobe_results_surfacer/ENTRY/program@version-attribute
/NXapm_paraprobe_results_surfacer/ENTRY/USER/affiliation-field
/NXapm_paraprobe_results_surfacer/ENTRY/USER/orcid_platform-field
/NXapm_paraprobe_results_surfacer/ENTRY/USER/social_media_name-field
/NXapm_paraprobe_results_surfacer/ENTRY/USER/social_media_platform-field
/NXapm_paraprobe_results_surfacer/ENTRY/USER/telephone_number-field