NXapm_paraprobe_config_surfacer

Status:

application definition, extends NXobject

Description:

Configuration of a paraprobe-surfacer tool run in atom probe microscopy.

Symbols:

The symbols used in the schema to specify e.g. dimensions of arrays.

n_alpha_values: Number of alpha values (and offset values) to probe.

n_values: How many different match values does the filter specify.

Groups cited:

NXapm_input_ranging, NXapm_input_reconstruction, NXcg_cylinder_set, NXcg_ellipsoid_set, NXcg_face_list_data_structure, NXcg_hexahedron_set, NXcs_filter_boolean_mask, NXcs_profiling, NXentry, NXmatch_filter, NXprocess, NXspatial_filter, NXsubsampling_filter

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

time_stamp: (required) NX_DATE_TIME

ISO 8601 formatted time code with local time zone offset to UTC information included when this configuration file was created.

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.

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.

number_of_processes: (required) NX_UINT {units=NX_UNITLESS}

For now a support field for the tool to identify how many individual analyses the tool should executed as part of the analysis.

PROCESS: (required) NXprocess

dataset: (required) NXapm_input_reconstruction

filename: (required) NX_CHAR

@version: (required) NX_CHAR

dataset_name_reconstruction: (required) NX_CHAR

dataset_name_mass_to_charge: (required) NX_CHAR

iontypes: (required) NXapm_input_ranging

filename: (required) NX_CHAR

@version: (required) NX_CHAR

group_name_iontypes: (required) NX_CHAR

spatial_filter: (optional) NXspatial_filter

windowing_method: (required) NX_CHAR

CG_ELLIPSOID_SET: (optional) NXcg_ellipsoid_set

dimensionality: (required) NX_POSINT

cardinality: (required) NX_POSINT

identifier_offset: (required) NX_INT

center: (required) NX_NUMBER

half_axes_radii: (required) NX_NUMBER

orientation: (required) NX_NUMBER

CG_CYLINDER_SET: (optional) NXcg_cylinder_set

dimensionality: (required) NX_POSINT

cardinality: (required) NX_POSINT

identifier_offset: (required) NX_INT

center: (required) NX_NUMBER

height: (required) NX_NUMBER

radii: (required) NX_NUMBER

CG_HEXAHEDRON_SET: (optional) NXcg_hexahedron_set

dimensionality: (required) NX_POSINT

cardinality: (required) NX_POSINT

identifier_offset: (required) NX_INT

hexahedra: (required) NXcg_face_list_data_structure

CS_FILTER_BOOLEAN_MASK: (optional) NXcs_filter_boolean_mask

number_of_objects: (required) NX_UINT

bitdepth: (required) NX_UINT

mask: (required) NX_UINT

identifier: (required) NX_UINT

evaporation_id_filter: (optional) NXsubsampling_filter

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

iontype_filter: (optional) NXmatch_filter

method: (required) NX_CHAR

match: (required) NX_NUMBER (Rank: 1, Dimensions: [n_values]) {units=NX_UNITLESS}

hit_multiplicity_filter: (optional) NXmatch_filter

method: (required) NX_CHAR

match: (required) NX_NUMBER (Rank: 1, Dimensions: [n_values]) {units=NX_UNITLESS}

surface_meshing: (required) NXprocess

preprocessing_method: (required) NX_CHAR

Specifies the method that is used to preprocess the point cloud. The main purpose of this setting is to specify whether the point cloud should be segmented or not during the preprocessing to identify which points are more likely lying close to the edge of the point cloud. These points could be more relevant than the interior points for certain alpha-shape constructions.

By default no such filtering is used during pre-processing. By contrast, the option kuehbach activates a preprocessing during which a Hoshen-Kopelman percolation analysis is used to identify which points are closer to the edge of the dataset. This can reduce the number of points in the alpha-shape computation and thus improve performance substantially. Details about the methods are reported in M. Kühbach et al..

Any of these values: default | kuehbach

preprocessing_kernel_width: (required) NX_UINT {units=NX_UNITLESS}

When using the kuehbach preprocessing, this is the width of the kernel for identifying which ions are in voxels close to the edge of the point cloud.

alpha_value_choice: (required) NX_CHAR

Specifies which method to use to define the alpha value. The value convex_hull_naive is the default. This instructs the tool to use a fast specialized algorithm for computing only the convex hull. The resulting triangles can be skinny.

The value convex_hull_refine computes first also a convex_hull_naive but refines the mesh by triangle flipping and splitting to improve the quality of the mesh.

The value smallest_solid instructs the CGAL library to choose a value which realizes an alpha-shape that is the smallest solid.

The value cgal_optimal instructs the library to choose a value which the library considers as an optimal value. Details are define in the respective section of the CGAL library on 3D alpha shapes.

The value set_of_values instructs to compute a list of alpha-shapes for the specified alpha-values.

The value set_of_alpha_wrappings instructs the library to generate a set of so-called alpha wrappings. These are a method which is similar to alpha shapes but provide additional guarantees though such as watertightness and proximity constraints on the resulting wrapping.

Any of these values:

  • convex_hull_naive

  • convex_hull_refine

  • smallest_solid

  • cgal_optimal

  • set_of_values

  • set_of_alpha_wrappings

alpha_values: (required) NX_FLOAT (Rank: 1, Dimensions: [n_alpha_values]) {units=NX_LENGTH}

Array of alpha values to use when alpha_value_choice is set_of_values or when alpha_value_choice is set_of_alpha_wrappings.

offset_values: (required) NX_FLOAT (Rank: 1, Dimensions: [n_alpha_values]) {units=NX_LENGTH}

Array of offset values to use when alpha_value_choice is set_of_alpha_wrappings. The array of alpha_values and offset_values define a sequence of (alpha and offset value).

has_exterior_facets: (required) NX_BOOLEAN

Specifies if the tool should compute the set of exterior triangle facets for each alpha complex (for convex hull, alpha shapes, and wrappings)

has_closure: (required) NX_BOOLEAN

Specifies if the tool should check if the alpha complex of exterior triangular facets is a closed polyhedron.

has_interior_tetrahedra: (required) NX_BOOLEAN

Specifies if the tool should compute all interior tetrahedra of the alpha complex (currently only for alpha shapes).

performance: (required) NXcs_profiling

current_working_directory: (required) NX_CHAR

Hypertext Anchors

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

NXDL Source:

https://github.com/FAIRmat-Experimental/nexus_definitions/tree/fairmat/contributed_definitions/NXapm_paraprobe_config_surfacer.nxdl.xml