    

 ## On this page

  

 

 # IncompatibleMeshMapper Class Reference

 Last update: 16.07.2025 

imports data from an incompatible mesh [More...](class_incompatible_mesh_mapper.xhtml#details)

## <a name="pub-types"></a>Public Types

<a id="a7c3eb7b21b8e3254d697b15a4192a7fe"></a>typedef boost::shared\_ptr&lt; [CoorTransformationBase](class_coor_transformation_base.xhtml) &gt; [CoorTransformationBasePtr](class_mesh_mapper_base.xhtml#a7c3eb7b21b8e3254d697b15a4192a7fe) a pointer to a rigid transformation algorithm object   
 enum [Type](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7) {   
 [eCOMPATIBLE](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a459203ce56429dc8706ca2740bd69841) =0, [eINCOMPATIBLE](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7abb012f96e4409688aa1c1b06b645f184), [eINCOMPATIBLE\_CPP](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a29ad298ad8ef76fee66b8f94a6d463c3), [eINCOMPATIBLE\_RAY](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a5a8514eef49d57792d68c382249f7e77),   
 [eGRID](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a284b6ad33acf2df5fcd062adc42ad59c), [eP2VOLUME](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7adede4088d718f7458095afc816edd231), [eMORPHED\_MESH](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7afc6b02161f5d04720e7f94015730e580)  
 } an enum type defining the type of the derived class [More...](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7)  
 ## <a name="pub-methods"></a>Public Member Functions

<a id="ac225d733c7c2cc84e76682c9f5b4c7d2"></a>virtual string **generateScriptOfSettingsDefinition** (string variable\_ident) <a id="af9bbeb70b3ec25f946b2ca5e365448a5"></a> [IncompatibleMeshMapper](class_incompatible_mesh_mapper.xhtml#af9bbeb70b3ec25f946b2ca5e365448a5) () constructor   
 <a id="aed5aa97ce27c71905a5f29493dbffef6"></a>virtual [Type](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7) **mapperType** () <a id="a5c42ba8c9ccf82aa3241bea39388223d"></a>virtual string **mapperTypeIdent** () ## <a name="pub-attribs"></a>Public Attributes

<a id="ae7320dfe5b79f04926b5794f5593b9de"></a>bool [deviations\_along\_boundary\_normal](class_incompatible_mesh_mapper.xhtml#ae7320dfe5b79f04926b5794f5593b9de) If true, then the algorithm will enforce colinearity of the normal vectors of the reference mesh boundary and the coordinate deviations. Default: true.   
 number [maximum\_search\_distance](class_incompatible_mesh_mapper.xhtml#ac94d772107063be0645673d9156260dd) destructor [More...](#ac94d772107063be0645673d9156260dd)  
 <a id="aa2671490b3d6f1995d621f6a567d64f0"></a>bool [number\_sided\_projection](class_incompatible_mesh_mapper.xhtml#aa2671490b3d6f1995d621f6a567d64f0) If true, then one uses number-sided node-to-segment detection, else only one-sided node-to-segment (reference-to-design) detection is used (default: false)   
 bool [overwrite\_existing](class_incompatible_mesh_mapper.xhtml#ade25e60bd85c8b4abd4f5b416cae0eb9) If true, then existing data objects will be replaced. [More...](#ade25e60bd85c8b4abd4f5b416cae0eb9)  
 string [transferred\_data\_ident\_prefix](class_incompatible_mesh_mapper.xhtml#ae79cc32e0a89d7a67bb2cfc469d95e6a) The prefix for re-transferred data. [More...](#ae79cc32e0a89d7a67bb2cfc469d95e6a)  
 <a id="a25dc38ad33af95b4c9b51c09e532c46f"></a>bool [use\_half\_space\_test\_for\_associating\_faces](class_incompatible_mesh_mapper.xhtml#a25dc38ad33af95b4c9b51c09e532c46f) If true, the algorithm tries to associate the correct boundary segments by assuming that the normal vectors of linked segments point into the same half space. default: true.   
 <a id="details" name="details"></a>## Detailed Description

imports data from an incompatible mesh

- The meshes can be incompatible (and deformed)
- Deformations should be rather small, i.e. they must be detectable by the 'Inside-Outside test' of Wang et al.
- Eroded elements can not be detected
- Non-matching boundary portions (due to cut-offs, holes, etc.) will be marked as eroded elements
- Zones with erroneous detection or with larger distance than the maximum search distance are marked as eroded elements
- Coordinate deviations will be projected onto the nodal normal vectors of the boundary. These are, therefore, not the true deviation vectors. They are suitable for simulation of deformed geometries.
- If nodal normal deviations are imported, interior nodes and boundary nodes with incorrect normal will be marked as eroded in the deviation objects.
- If number-sided node-to-segment projection is used, one can treat differently fine meshes better, but may lose the ability to simulate deformed geometries.
- [Element](class_element.xhtml "Repesents the geometry of a finite element within a mesh. ") data objects are imported by converting them to node objects, project theme and convert them back to element objects. This will introduce some degree of data smoothing.
- The ability of simulating geometry deviations can be restored by enforcing the colinearity of the normal vectors of the reference mesh boundary and the deviation vectors



## Member Enumeration Documentation

<a id="a1d1cfd8ffb84e947f82999c682b666a7"></a>## [◆ ](#a1d1cfd8ffb84e947f82999c682b666a7)Type

 enum [Type](class_mesh_mapper_base.xhtml#a1d1cfd8ffb84e947f82999c682b666a7)  inherited 

an enum type defining the type of the derived class

Enumerator<a id="a1d1cfd8ffb84e947f82999c682b666a7a459203ce56429dc8706ca2740bd69841"></a>eCOMPATIBLE compatible mesh mapper

<a id="a1d1cfd8ffb84e947f82999c682b666a7abb012f96e4409688aa1c1b06b645f184"></a>eINCOMPATIBLE incompatible mesh mapper

<a id="a1d1cfd8ffb84e947f82999c682b666a7a29ad298ad8ef76fee66b8f94a6d463c3"></a>eINCOMPATIBLE\_CPP incompatible mesh mapper (closest point projection)

<a id="a1d1cfd8ffb84e947f82999c682b666a7a5a8514eef49d57792d68c382249f7e77"></a>eINCOMPATIBLE\_RAY incompatible mesh mapper (along user-specified direction)

<a id="a1d1cfd8ffb84e947f82999c682b666a7a284b6ad33acf2df5fcd062adc42ad59c"></a>eGRID grid mesh mapper

<a id="a1d1cfd8ffb84e947f82999c682b666a7adede4088d718f7458095afc816edd231"></a>eP2VOLUME point-to-volume mesh mapper

<a id="a1d1cfd8ffb84e947f82999c682b666a7afc6b02161f5d04720e7f94015730e580"></a>eMORPHED\_MESH mesh mapper used morphing





## Member Data Documentation

<a id="ac94d772107063be0645673d9156260dd"></a>## [◆ ](#ac94d772107063be0645673d9156260dd)maximum\_search\_distance

 number maximum\_search\_distance

destructor

The maximum search distance (default: infinity)





<a id="ade25e60bd85c8b4abd4f5b416cae0eb9"></a>## [◆ ](#ade25e60bd85c8b4abd4f5b416cae0eb9)overwrite\_existing

 bool overwrite\_existing

If true, then existing data objects will be replaced.

This option is used by transferData





<a id="ae79cc32e0a89d7a67bb2cfc469d95e6a"></a>## [◆ ](#ae79cc32e0a89d7a67bb2cfc469d95e6a)transferred\_data\_ident\_prefix

 string transferred\_data\_ident\_prefix

The prefix for re-transferred data.

transferData is able to transfer the data to the new database, and to transfer the same data back This strategy allows to check the error that is obtained when transferring data between two meshes, since one can compare it with the original data on the same mesh. If the prefix is an empty string, then no data will be created. Else one choses the new quantity ident as "prefix\[original\_quantity\_ident\]"