Skip to main content

optiSLang 3D Postprocessing Script API 2025 R1

Toolbox

Last update: 16.07.2025

Data analysis and manipulation toolbox. More...

Classes

class  ComputeAbsoluteMaxima< TYPE >
 a struct which collects settings for ComputeAbsoluteMaxima More...
 
class  ComputeAbsoluteMinima< TYPE >
 a struct which collects settings for ComputeAbsoluteMinima More...
 
struct  ComputeNodalCoorDeviation
 a struct which collects settings for computeNodalCoorDeviation More...
 
class  ComputeRelativeMaxima< TYPE >
 a struct which collects settings for ComputeRelativeMaxima More...
 
class  ComputeRelativeMinima< TYPE >
 a struct which collects settings for ComputeRelativeMinima More...
 
class  ComputeSingleObjectPerObject< TYPE >
 a base class for algorithms that apply a simple algorithm to obtain a single object from another object More...
 
class  ComputeSingleObjectPerSample< TYPE >
 a base class for algorithms that apply a simple algorithm to obtain a single object from a single set of samples. More...
 
struct  ConvertToElement< TYPE >
 a struct which collects settings for convertToElement More...
 
struct  ConvertToNode< TYPE >
 a struct which collects settings for convertToNode More...
 
class  CopyFilledData< TYPE >
 a struct which collects settings for CopyFilledData More...
 
class  DistanceField
 represents a distance field for an unstructured grid More...
 
class  ExtractAboveThreshold< TYPE >
 a struct which collects settings for extractAboveThreshold More...
 
class  ExtractBelowThreshold< TYPE >
 a struct which collects settings for extractBelowThreshold More...
 
class  ExtractMissingDataFlags< TYPE >
 a struct which collects settings for ExtractMissingDataFlags More...
 
class  ExtractScalarsFromQuantity< TYPE >
 a struct which collects settings for extractAboveThreshold More...
 
struct  MeshMorpherSettings
 a class containing global settings for mesh morphing More...
 
class  ReplaceAboveThreshold< TYPE >
 a struct which collects settings for ReplaceAboveThreshold More...
 
class  ReplaceBelowThreshold< TYPE >
 a struct which collects settings for ReplaceBelowThreshold More...
 

Functions

Matrix checkPointsInElement (Structure database, Matrix coors)
 checks in which finite element which coordinates are located More...
 
Matrix checkPointsInVolume (Structure database, Matrix coors)
 checks which coordinates are in the interior of a volume More...
 
Matrix computeEuclidianDistancesNode (Structure database, Matrix reference_indices)
 computes the Euclidian distances of all nodes with respect to a given node set. More...
 
Matrix computeGraphDistancesNode (Structure database, Matrix reference_indices)
 computes the graph (i.e. normalized) distances of all nodes with respect to a given node set. More...
 
number computeLargestModelDimension (Structure database)
 computes the largest axial dimension of the mesh More...
 
 computeNodalCoorDeviation (Structure database, Structure mesh_project_target, MetaStructure mesh_project_contactor, number max_search_distance, bool number_sided_n2s_contact, string new_x_deviation_ident, string new_y_deviation_ident, string new_z_deviation_ident, string new_normal_deviation_ident, string new_design_ident, bool overwrite_existing, bool associate_face_normals)
 computes the deviation of nodal coordinates between two meshes More...
 
DataObjectVector computeNodalCoorDeviationVectorFromSignedDistance (Structure database, IndexMapper index_mapper, DataObjectPtr signed_distance, bool use_interpolated_missing_values, bool use_distancefield, bool mesh_smoothening)
 Computes the deviation vector (of node coordinates) given a signed distance vector and a reference mesh. The output will, of course, only contain the nodes on the boundary - all other are marked as "missing". More...
 
Matrix computeNodeIndicesWithOptimalSpatialDistribution (Structure database, number number, Matrix boundary_indices)
 
 computeSmoothenedCoorDeviationVector (Structure database, IndexMapper index_mapper, Matrix deviations, Matrix smoothened_deviations, Eigen::VectorXd missing_items_of_deviations)
 Computes the deviation vector (of node coordinates) given 3 vectors defining the desired deviation direction in 3d space and a reference mesh. The output will, only contain the nodes on the boundary - all other are marked as "missing". More...
 
DataObjectVector computeSmoothenedCoorDeviationVector (Structure database, IndexMapper index_mapper, DataObjectPtr distance_vector_x, DataObjectPtr distance_vector_y, DataObjectPtr distance_vector_z, bool use_interpolated_missing_values)
 Computes the deviation vector (of node coordinates) given 3 vectors defining the desired deviation direction in 3d space and a reference mesh. The output will, only contain the nodes on the boundary - all other are marked as "missing". More...
 
Matrix computeTopologicalDistancesElement (Structure database, Matrix reference_indices)
 computes the topological distances of all elements with respect to a given element set. More...
 
Matrix computeTopologicalDistancesNode (Structure database, Matrix reference_indices)
 computes the topological distances of all nodes with respect to a given node set. More...
 
Structure extractSubstructure (Structure database, Matrix nodes, Matrix elements)
 
Matrix globalIndexFromElementSet (Structure database, string part_ident, string set_ident)
 
Matrix globalIndexFromNodeSet (Structure database, string part_ident, string set_ident)
 
Matrix identifyElementsAdjacentToNodes (Structure database, Matrix node_indices)
 
Matrix identifyNodesInRange (Structure database, number min_x, number max_x, number min_y, number max_y, number min_z, number max_z)
 identifies all nodes being in the defined rectangular region More...
 
Matrix identifyNodesNearFixedBoundary (Structure database)
 identifies all FE nodes being which are part of the current reference set and which touch the fixed boundary More...
 
Matrix identifyNodesOfElements (Structure database, Matrix element_indices)
 
Matrix identifyNodesOnBoundary (Structure database)
 identifies all FE nodes being on the boundary surface of a FEM mesh More...
 
Matrix identifyNodesOnBoundaryEdges (Structure database)
 identifies all FE nodes being on the boundary and on an edge of a FEM mesh or of the active domain. More...
 
Matrix identifyNodesOnBoundaryNearSharpFeatures (Structure database, number cos_angle_limit)
 identifies all FE nodes on the boundary, at boundary edges and at boundary points with sharp edges/corners More...
 
Matrix identifyNodesOnReferenceSetBoundary (Structure database)
 identifies all FE nodes being on the edge of the current reference set (neighbours of nodes being not part of it) More...
 
Matrix identifyNodesOnSurfaceAndReferenceSetBoundary (Structure database)
 identifies all FE nodes being on the boundary surface of a FEM mesh AND on the edge of the current reference set (neighbours of nodes being not part of it) More...
 
Matrix identifyNodesOnSurfacePatches (Structure database, Matrix reference_indices, number cos_angle_limit=0.75)
 identifies all FE nodes being on the boundary surface of a FEM mesh AND which define a single or multiple surface patches. A surface patch is defined by a part of the boundary that is delimited by an edge with too sharp angle between surface segements. More...
 
Matrix indexDifference (Matrix A, Matrix B)
 
Matrix indexIntersection (Matrix A, Matrix B)
 
Matrix indexUnion (Matrix A, Matrix B)
 
 template (ExtractBelowThresholdNode) ExtractBelowThreshold< NODE_DATA >
 
 template (ExtractBelowThresholdElement) ExtractBelowThreshold< ELEMENT_DATA >
 
 template (ExtractAboveThresholdNode) ExtractAboveThreshold< NODE_DATA >
 
 template (ExtractBelowThresholdScalar) ExtractBelowThreshold< SCALAR_DATA >
 
 template (ExtractAboveThresholdElement) ExtractAboveThreshold< ELEMENT_DATA >
 
 template (CopyFilledDataNode) CopyFilledData< NODE_DATA >
 
 template (ExtractMissingDataFlagsNode) ExtractMissingDataFlags< NODE_DATA >
 
 template (ExtractAboveThresholdScalar) ExtractAboveThreshold< SCALAR_DATA >
 
 template (ExtractScalarsFromQuantityNode) ExtractScalarsFromQuantity< NODE_DATA >
 
 template (CopyFilledDataElement) CopyFilledData< ELEMENT_DATA >
 
 template (ExtractMissingDataFlagsElement) ExtractMissingDataFlags< ELEMENT_DATA >
 
 template (ComputeAbsoluteMaximaNode) ComputeAbsoluteMaxima< NODE_DATA >
 
 template (ComputeAbsoluteMinimaNode) ComputeAbsoluteMinima< NODE_DATA >
 
 template (ExtractScalarsFromQuantityElement) ExtractScalarsFromQuantity< ELEMENT_DATA >
 
 template (CopyFilledDataScalar) CopyFilledData< SCALAR_DATA >
 
 template (ComputeAbsoluteMaximaElement) ComputeAbsoluteMaxima< ELEMENT_DATA >
 
 template (ComputeAbsoluteMinimaElement) ComputeAbsoluteMinima< ELEMENT_DATA >
 
 template (ReplaceAboveThresholdNode) ReplaceAboveThreshold< NODE_DATA >
 
 template (ReplaceBelowThresholdNode) ReplaceBelowThreshold< NODE_DATA >
 
 template (ExtractMissingDataFlagsScalar) ExtractMissingDataFlags< SCALAR_DATA >
 
 template (ReplaceAboveThresholdElement) ReplaceAboveThreshold< ELEMENT_DATA >
 
 template (ReplaceBelowThresholdElement) ReplaceBelowThreshold< ELEMENT_DATA >
 
 template (ReplaceAboveThresholdScalar) ReplaceAboveThreshold< SCALAR_DATA >
 
 template (ReplaceBelowThresholdScalar) ReplaceBelowThreshold< SCALAR_DATA >
 
 template (ComputeRelativeMaximaNode) ComputeRelativeMaxima< NODE_DATA >
 
 template (ComputeRelativeMinimaNode) ComputeRelativeMinima< NODE_DATA >
 
 template (ComputeRelativeMinimaElement) ComputeRelativeMinima< ELEMENT_DATA >
 
 template (ComputeRelativeMaximaElement) ComputeRelativeMaxima< ELEMENT_DATA >
 
 template (ConvertNodeToNode) ConvertToNode< NODE_DATA >
 
 template (ConvertNodeToElement) ConvertToElement< NODE_DATA >
 
 template (ConvertElementToNode) ConvertToNode< ELEMENT_DATA >
 
 template (ConvertElementToElement) ConvertToElement< ELEMENT_DATA >
 
 template (ComputeSingleObjectPerSampleNode) ComputeSingleObjectPerSample< NODE_DATA >
 
 template (ComputeSingleObjectPerSampleElement) ComputeSingleObjectPerSample< ELEMENT_DATA >
 
 template (ComputeSingleObjectPerSampleScalar) ComputeSingleObjectPerSample< SCALAR_DATA >
 
 template (ComputeSingleObjectPerObjectNode) ComputeSingleObjectPerObject< NODE_DATA >
 
 template (ComputeSingleObjectPerObjectElement) ComputeSingleObjectPerObject< ELEMENT_DATA >
 
 template (ComputeSingleObjectPerObjectScalar) ComputeSingleObjectPerObject< SCALAR_DATA >
 

Variables

MeshMorpherSettings mesh_morpher_settings
 global settings for mesh morphing
 

Detailed Description

Data analysis and manipulation toolbox.

Function Documentation

◆ checkPointsInElement()

Matrix checkPointsInElement ( Structure  database,
Matrix  coors 
)

checks in which finite element which coordinates are located

Parameters
databasecontains the mesh (FEM)
coorsthe coordinates of the points to be tested (3*N, each column is one coordinate in 3d)
Returns
a column vector indicating outside by -1 and else the index of the finite element (with respect to indexMapper)

◆ checkPointsInVolume()

Matrix checkPointsInVolume ( Structure  database,
Matrix  coors 
)

checks which coordinates are in the interior of a volume

Parameters
databasecontains the mesh
coorsthe coordinates of the points to be tested (3*N, each column is one coordinate in 3d)
Returns
a column vector indicating outside by 0 and inside by 1

◆ computeEuclidianDistancesNode()

Matrix computeEuclidianDistancesNode ( Structure  database,
Matrix  reference_indices 
)

computes the Euclidian distances of all nodes with respect to a given node set.

Returns
a vector containing the euclidian distances of each node to the respective reference nodes The euclidian distance between two nodes defines the distance between two nodes in Euclidian space (ignoring mesh topology). Numerical complexity is O(n*m) with n = number of nodes, m=number of reference nodes;
Parameters
databasethe database containing the reference mesh
reference_indicesa vector containing the indices to nodes the define the zero distances (e.g. reference boundary)

◆ computeGraphDistancesNode()

Matrix computeGraphDistancesNode ( Structure  database,
Matrix  reference_indices 
)

computes the graph (i.e. normalized) distances of all nodes with respect to a given node set.

Returns
a vector containing the graph distances of each node to the respective reference nodes The graph distance defines between two nodes how many graph edges are used at least to connect the two nodes.
Parameters
databasethe database containing the reference mesh
reference_indicesa vector containing the indices to nodes the define the zero distances (e.g. reference boundary)

◆ computeLargestModelDimension()

number computeLargestModelDimension ( Structure  database)

computes the largest axial dimension of the mesh

Parameters
databasecontains the mesh
Returns
the largest dimension of the mesh along one of the axis.

◆ computeNodalCoorDeviation()

computeNodalCoorDeviation ( Structure  database,
Structure  mesh_project_target,
MetaStructure  mesh_project_contactor,
number  max_search_distance,
bool  number_sided_n2s_contact,
string  new_x_deviation_ident,
string  new_y_deviation_ident,
string  new_z_deviation_ident,
string  new_normal_deviation_ident,
string  new_design_ident,
bool  overwrite_existing,
bool  associate_face_normals 
)

computes the deviation of nodal coordinates between two meshes

Parameters
mesh_project_targetis the mesh to which the deviation is measured. the difference vector will be the difference of the coordinates of mesh_project_contactor minus the coordinates of mesh_project_target. On requires that the onSurface flags were set in the mesh_project_target mesh!
mesh_project_contactoris the mesh from which the deviation is to be measured. If mesh_project_target and mesh_project_contactor are compatible, a simple algorithm is used which only takes the nodal coordinates (and the normal vectors on the boundary of mesh-from) as reference. If both are incompatible, then a real closest-point projection is performed. Usually, mesh_project_contactor is one of the imported design meshes. It must be identical or compatible with the mesh stored in database. If mesh_project_contactor is empty, one takes the mesh from database instead. The coordinate deviation is computes such that coor[contactor]+deviation = coor[target]
max_search_distancethe maximum search distance used in closest-point projection.
number_sided_n2s_contactdefines if a number sided node-to-surface projection is used in closest-point projection (recommended). If not, only the boundary nodes of mesh_project_contactor are chosen.
new_x_deviation_identthe ident of the nodal deviation object along x direction (if empty: no object will be created)
new_y_deviation_identthe ident of the nodal deviation object along y direction (if empty: no object will be created)
new_z_deviation_identthe ident of the nodal deviation object along z direction (if empty: no object will be created)
new_normal_deviation_identthe ident of the nodal deviation object along normal direction (if empty: no object will be created)
new_design_identthe design ident of all new objects
databasethe database where all objects are to be inserted.
overwrite_existingis true if already existing output data objects will be replaced. In this case, also all depending objects of the already existing one will be deleted.
associate_face_normalsif true, then the detection tries to associate only those boundary faces which point into the same half space. This may be good for thin-walled structures, but may fail in case of large deformations.

◆ computeNodalCoorDeviationVectorFromSignedDistance()

DataObjectVector computeNodalCoorDeviationVectorFromSignedDistance ( Structure  database,
IndexMapper  index_mapper,
DataObjectPtr  signed_distance,
bool  use_interpolated_missing_values,
bool  use_distancefield,
bool  mesh_smoothening 
)

Computes the deviation vector (of node coordinates) given a signed distance vector and a reference mesh. The output will, of course, only contain the nodes on the boundary - all other are marked as "missing".

Parameters
meshThe reference mesh
index_mapperthe index mapper all data refer to
signed_distanceThe signed distance ("deviation") vector based on the reference mesh.
use_interpolated_missing_valuesIf true, then one takes the interpolated value if the input has missing items. Otherwise, missing items in the input will be also missing in the output.
use_distancefieldIf false: Use normal vectors on the boundary. Else: Use distance field for geometric morphing.
mesh_smootheningif true: use iterative smoothening, if false: no smoothening
Returns
A vector with 3 objects: the deviation along x [0], y [1], and z [2] direction.

◆ computeNodeIndicesWithOptimalSpatialDistribution()

Matrix computeNodeIndicesWithOptimalSpatialDistribution ( Structure  database,
number  number,
Matrix  boundary_indices 
)
Returns
a vector with node indices
Parameters
numberthe number of indices
boundary_indicesthe boundary indices, e.g. obtained from identifyNodesOnBoundaryEdges
databasethe database containing the reference mesh

◆ computeSmoothenedCoorDeviationVector() [1/2]

computeSmoothenedCoorDeviationVector ( Structure  database,
IndexMapper  index_mapper,
Matrix  deviations,
Matrix  smoothened_deviations,
Eigen::VectorXd  missing_items_of_deviations 
)

Computes the deviation vector (of node coordinates) given 3 vectors defining the desired deviation direction in 3d space and a reference mesh. The output will, only contain the nodes on the boundary - all other are marked as "missing".

Parameters
meshThe reference mesh
index_mapperthe index mapper all data refer to
deviations3 columns containing the axial deviations
Returns
A matrix with 3 columns: the deviation along x [0], y [1], and z [2] direction.

◆ computeSmoothenedCoorDeviationVector() [2/2]

DataObjectVector computeSmoothenedCoorDeviationVector ( Structure  database,
IndexMapper  index_mapper,
DataObjectPtr  distance_vector_x,
DataObjectPtr  distance_vector_y,
DataObjectPtr  distance_vector_z,
bool  use_interpolated_missing_values 
)

Computes the deviation vector (of node coordinates) given 3 vectors defining the desired deviation direction in 3d space and a reference mesh. The output will, only contain the nodes on the boundary - all other are marked as "missing".

Parameters
meshThe reference mesh
index_mapperthe index mapper all data refer to
distance_vector_xThe distance ("deviation") vector along x axis based on the reference mesh.
distance_vector_yThe distance ("deviation") vector along y axis based on the reference mesh.
distance_vector_zThe distance ("deviation") vector along z axis based on the reference mesh.
use_interpolated_missing_valuesIf true, then one takes the interpolated value if the input has missing items. Otherwise, missing items in the input will be also missing in the output.
Returns
A vector with 3 objects: the deviation along x [0], y [1], and z [2] direction.

◆ computeTopologicalDistancesElement()

Matrix computeTopologicalDistancesElement ( Structure  database,
Matrix  reference_indices 
)

computes the topological distances of all elements with respect to a given element set.

Returns
a vector containing the topological distances of each element to the respective reference elements The topological distance between two nodes defines the minimum cumulative distance along the graph edges to connect the two elements.
Parameters
databasethe database containing the reference mesh
reference_indicesa vector containing the indices to elements the define the zero distances (e.g. reference boundary)

◆ computeTopologicalDistancesNode()

Matrix computeTopologicalDistancesNode ( Structure  database,
Matrix  reference_indices 
)

computes the topological distances of all nodes with respect to a given node set.

Returns
a vector containing the topological distances of each node to the respective reference nodes The topological distance between two nodes defines the minimum cumulative distance along the graph edges to connect the two nodes.
Parameters
databasethe database containing the reference mesh
reference_indicesa vector containing the indices to nodes the define the zero distances (e.g. reference boundary)

◆ extractSubstructure()

Structure extractSubstructure ( Structure  database,
Matrix  nodes,
Matrix  elements 
)
Returns
a database containing only the specified spatial substructure of the original data
Parameters
databasethe original database
nodesthe global indices of the nodes to be exported
elementsthe global indices of the elements to be exported

The given indices refer to the curently active sets. All nodes being part of the given elements must be part of the specified list of nodes. The output database has the following properties:

  • smaller mesh (limited to the node/elements)
  • smaller node and element sets (limtied to the node/elements)
  • copy of all scalar objects
  • copy of all field objects, but with reduced dimension
  • copy of all random fields, but with reduced dimension (probably not optimal -> recreation the random field is recommended)
  • copy of all FMOP, but with reduced dimension (probably not optimal -> recreation the FMOP is recommended)

◆ globalIndexFromElementSet()

Matrix globalIndexFromElementSet ( Structure  database,
string  part_ident,
string  set_ident 
)
Returns
a column vector containing the global indices of all elements that are in the given element set and in the currently set reference element set
Parameters
databasethe database containing the reference mesh
part_identthe part ident of the element set
set_identthe ident of the element set within the part

◆ globalIndexFromNodeSet()

Matrix globalIndexFromNodeSet ( Structure  database,
string  part_ident,
string  set_ident 
)
Returns
a column vector containing the global indices of all nodes that are in the given node set and in the currently set reference node set
Parameters
databasethe database containing the reference mesh
part_identthe part ident of the node set
set_identthe ident of the node set within the part

◆ identifyElementsAdjacentToNodes()

Matrix identifyElementsAdjacentToNodes ( Structure  database,
Matrix  node_indices 
)
Returns
a column vector containing the global indices of all elements that are connected to the given list of nodes
Parameters
databasethe database containing the reference mesh
node_indicesindices (global indices) of all nodes to be considered

◆ identifyNodesInRange()

Matrix identifyNodesInRange ( Structure  database,
number  min_x,
number  max_x,
number  min_y,
number  max_y,
number  min_z,
number  max_z 
)

identifies all nodes being in the defined rectangular region

Parameters
databasethe database containing the mesh and refernece node set
min_xlower bound for X
max_xupper bound for X
min_ylower bound for Y
max_yupper bound for Y
min_zlower bound for Z
max_zupper bound for Z
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesNearFixedBoundary()

Matrix identifyNodesNearFixedBoundary ( Structure  database)

identifies all FE nodes being which are part of the current reference set and which touch the fixed boundary

Parameters
databasecontains the FEM mesh
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOfElements()

Matrix identifyNodesOfElements ( Structure  database,
Matrix  element_indices 
)
Returns
a column vector containing the global indices of all nodes that belong to the givven list of elements
Parameters
databasethe database containing the reference mesh
element_indicesindices (global indices) of all elements to be considered

◆ identifyNodesOnBoundary()

Matrix identifyNodesOnBoundary ( Structure  database)

identifies all FE nodes being on the boundary surface of a FEM mesh

Parameters
databasecontains the FEM mesh
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOnBoundaryEdges()

Matrix identifyNodesOnBoundaryEdges ( Structure  database)

identifies all FE nodes being on the boundary and on an edge of a FEM mesh or of the active domain.

Parameters
databasecontains the FEM mesh
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOnBoundaryNearSharpFeatures()

Matrix identifyNodesOnBoundaryNearSharpFeatures ( Structure  database,
number  cos_angle_limit 
)

identifies all FE nodes on the boundary, at boundary edges and at boundary points with sharp edges/corners

Parameters
databasecontains the FEM mesh
cos_angle_limitthe cosine of the limiting angle between neighbouring normal vectors. If the actual scalar product is larger than the value defined here, it is considered as a sharp feature. "0" means e.g. an angle of >90°
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOnReferenceSetBoundary()

Matrix identifyNodesOnReferenceSetBoundary ( Structure  database)

identifies all FE nodes being on the edge of the current reference set (neighbours of nodes being not part of it)

Note
Advantage: Works also for nsets in interior of volumes. Disadvantage: All nodes of the bounding element layer are token as boundary. Check method identifyNodesOnSurfaceAndReferenceSetBoundary as alternative.
Parameters
databasecontains the FEM mesh
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOnSurfaceAndReferenceSetBoundary()

Matrix identifyNodesOnSurfaceAndReferenceSetBoundary ( Structure  database)

identifies all FE nodes being on the boundary surface of a FEM mesh AND on the edge of the current reference set (neighbours of nodes being not part of it)

Parameters
databasecontains the FEM mesh
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ identifyNodesOnSurfacePatches()

Matrix identifyNodesOnSurfacePatches ( Structure  database,
Matrix  reference_indices,
number  cos_angle_limit = 0.75 
)

identifies all FE nodes being on the boundary surface of a FEM mesh AND which define a single or multiple surface patches. A surface patch is defined by a part of the boundary that is delimited by an edge with too sharp angle between surface segements.

Parameters
databasecontains the FEM mesh
cos_angle_limitthe cosine of the limiting angle between neighbouring normal vectors. If the actual scalar product is larger than the value defined here, it is considered as a sharp feature. "0" means e.g. an angle of >90°
referenceindices contains the global indices of the FEM nodes which are located on the surface patch(es) to be identified.
Returns
a vector with indices. Each index corresponds to a node and is the index in a dataobject.

◆ indexDifference()

Matrix indexDifference ( Matrix  A,
Matrix  B 
)
Returns
a column vector containing the difference of the indices A-B
Parameters
Athe first index matrix
Bthe second index matrix

◆ indexIntersection()

Matrix indexIntersection ( Matrix  A,
Matrix  B 
)
Returns
a column vector containing the intersection of the indices A and B
Parameters
Athe first index matrix
Bthe second index matrix

◆ indexUnion()

Matrix indexUnion ( Matrix  A,
Matrix  B 
)
Returns
a column vector containing the union of all indices
Parameters
Athe first index matrix
Bthe second index matrix

Connect with Ansys