2.3.3.3.35. NXapm_paraprobe_surfacer_results

Status:

application definition, extends NXobject

Description:

Application definition for results files of the paraprobe-surfacer tool. ...

Application definition for results files of the paraprobe-surfacer tool.

This tool is part of the paraprobe-toolbox. Inspect the base class NXapm_paraprobe_tool_results. The purpose and need of the paraprobe-surfacer tool is the generation of meshed representation of the surface of the the reconstructed volume (or a portion) of it using different algorithms from the computational geometry community.

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:

NXapm_paraprobe_tool_common, NXapm_paraprobe_tool_results, NXcg_alpha_complex, NXcg_face_list_data_structure, NXcg_tetrahedron_set, NXcg_triangle_set, NXcoordinate_system_set, NXcoordinate_system, NXcs_filter_boolean_mask, NXcs_profiling, NXentry, NXprogram, NXserialized, NXuser

Structure:

ENTRY: (required) NXentry

definition: (required) NX_CHAR

Obligatory value: NXapm_paraprobe_surfacer_results

@version: (required) NX_CHAR

point_set_wrapping: (required) NXapm_paraprobe_tool_results

Paraprobe-surfacer can be used to load a ROI that is the entire or a ...

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.

window: (required) NXcs_filter_boolean_mask

number_of_ions: (required) NX_UINT

bitdepth: (required) NX_UINT

mask: (required) NX_UINT

alpha_complexID: (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_ANY}

offset: (optional) NX_NUMBER {units=NX_LENGTH}

window: (required) NXcs_filter_boolean_mask

A bitmask which identifies exactly all those ions whose positions ...

A bitmask which identifies exactly all those ions whose positions were considered when defining the filtered point set from which that alpha_complex instance was computed.

This window can be different to the window of the point_set_wrapping parent group because irrelevant ions might have been filtered out in addition to the window defined in point_set_wrapping to reduce e.g. computational costs of the alpha complex computation.

number_of_ions: (required) NX_UINT {units=NX_UNITLESS}

Number of ions covered by the mask.

bitdepth: (required) NX_UINT {units=NX_UNITLESS}

Number of bits assumed matching on a default datatype.

mask: (required) NX_UINT (Rank: 1, Dimensions: [n_ions]) {units=NX_UNITLESS}

The bitfield of the mask. See :ref:`NXcs_filter_boolean_mask` for ...

The bitfield of the mask. See NXcs_filter_boolean_mask for how this bitfield is to be interpreted.

triangle_set: (optional) NXcg_triangle_set

The set of triangles in the coordinate system paraprobe ...

The set of triangles in the coordinate system paraprobe which discretizes the exterior surface of the alpha complex.

identifier_offset: (required) NX_INT

triangles: (required) NXcg_face_list_data_structure

dimensionality: (required) NX_POSINT

number_of_vertices: (required) NX_POSINT

number_of_faces: (required) NX_POSINT

vertex_identifier_offset: (required) NX_INT

face_identifier_offset: (required) NX_INT

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 ...

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).

is_watertight: (optional) NX_BOOLEAN

Do the triangles define a triangulated surface mesh that is watertight?

volume: (optional) NX_FLOAT {units=NX_VOLUME}

The volume which the triangulated surface mesh ...

The volume which the triangulated surface mesh encloses if that mesh is watertight.

interior_tetrahedra: (optional) NXcg_tetrahedron_set

The set of tetrahedra which represent the interior volume ...

The set of tetrahedra which represent the interior volume of the complex if that is a closed two-manifold.

identifier_offset: (required) NX_INT {units=NX_UNITLESS}

volume: (optional) NX_FLOAT {units=NX_VOLUME}

The accumulated volume of all interior tetrahedra.

tetrahedra: (optional) NXcg_face_list_data_structure

number_of_vertices: (required) NX_POSINT

number_of_faces: (required) NX_POSINT

vertex_identifier_offset: (required) NX_INT

face_identifier_offset: (required) NX_INT

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 ...

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).

common: (required) NXapm_paraprobe_tool_common

status: (required) NX_CHAR

analysis_identifier: (required) NX_UINT

config: (required) NXserialized

type: (required) NX_CHAR

path: (required) NX_CHAR

checksum: (required) NX_CHAR

algorithm: (required) NX_CHAR

programID: (required) NXprogram

program: (required) NX_CHAR

@version: (required) NX_CHAR

profiling: (recommended) NXcs_profiling

start_time: (required) NX_DATE_TIME

end_time: (required) NX_DATE_TIME

total_elapsed_time: (required) NX_FLOAT

current_working_directory: (required) NX_CHAR

number_of_processes: (required) NX_POSINT

number_of_threads: (required) NX_POSINT

number_of_gpus: (required) NX_POSINT

userID: (optional) NXuser

If used, metadata of at least the person who performed this analysis.

name: (required) NX_CHAR

coordinate_system_set: (required) NXcoordinate_system_set

paraprobe: (required) NXcoordinate_system

type: (required) NX_CHAR

handedness: (required) NX_CHAR

x: (required) NX_NUMBER (Rank: 1, Dimensions: [3]) {units=NX_LENGTH}

y: (required) NX_NUMBER (Rank: 1, Dimensions: [3]) {units=NX_LENGTH}

z: (required) NX_NUMBER (Rank: 1, Dimensions: [3]) {units=NX_LENGTH}

Hypertext Anchors

List of hypertext anchors for all groups, fields, attributes, and links defined in this class.

NXDL Source:

https://github.com/FAIRmat-NFDI/nexus_definitions/tree/fairmat/contributed_definitions/NXapm_paraprobe_surfacer_results.nxdl.xml