Appendix E. Wrap Functions

Wrapping functions are available for generating the surface mesh for automotive applications for underhood thermal management (UTM) and external-aero analysis. Note that periodic meshes are not supported.

The following wrap functions are available.


Note:  These functions are not supported in a distributed parallel environment.


FeatureDescriptionFunction
Wrap objectsCreates the wrapper surface based on the objects and material point specified. The wrapper surface creation involves operations such as Octree creation, intersection, interface creation, projection and zone separation.
  • Specify the objects using an object-list or object-name-pattern*.

  • Specify a name for the new object.

  • Specify the material point ("material-point-name") to be used for the wrap operation.

  • Specify the sizing type (set "sizing-type" to "geodesic" or "volumetric".


    Note:  The size field should be computed prior to invoking this API.


(tgapi-wrap-objects '(object-list) 'new-object-name "material-point-name" "sizing-type")
(tgapi-wrap-objects '(object-list) "new-object-name" "material-point-name" "sizing-type")
(tgapi-wrap-objects "object-name-pattern*" 'new-object-name "material-point-name" "sizing-type")
(tgapi-wrap-objects "object-name-pattern*" "new-object-name" "material-point-name" "sizing-type")
Wrap objects with sealsSimilar to tgapi-wrap-objects with the addition of seal objects that are used during interface creation and projection only, in order to prevent leaks. Seal objects do not participate in imprinting and are not associated with the underlying geometry.
  • Specify the objects using an object-name (string or symbol) or object-list (string or symbol) or object-name-pattern* (string or symbol).

  • Specify a name for the new object.

  • Specify the material point ("material-point-name") to be used for the wrap operation.

  • Specify the sizing type (set "sizing-type" to "geodesic" or "volumetric".


    Note:  The size field should be computed prior to invoking this API.


  • Specify the seal objects using an object-name (string or symbol) or object-list (string or symbol) or object-name-pattern* (string or symbol).

(tgapi-wrap-objects-with-seals object-name-list-or-pattern 'new-object-name "material-point-name" "sizing-type" seal-object-name-list-or-pattern)
Imprint object featuresImprint feature edges on given mesh object, and returns feature path extracted after imprint.
  • Specify the mesh object using the mesh-object-name.

  • Choose whether to delete feature path edges far from geometry. Set separate-off-geometry-edges? to #t or #f.

  • Specify the distance tolerance (relative-distance) and angle tolerance (critical-angle) to determine the features far from the geometry, when separate-off-geometry-edges? is set to #t.

(tgapi-wrap-imprint-object-features 'mesh-object-name separate-off-geometry-edges? relative-distance critical-angle)
(tgapi-wrap-imprint-object-features "mesh-object-name" separate-off-geometry-edges? relative-distance critical-angle)
Smooth face nodesFace zones specifiedSmooth face nodes while preserving the features for the face zones specified.
  • Specify the face zones using a face-zone-id-list, face-zone-name-list, or face-zone-name-pattern*.

  • Specify the number of mean filter iterations (mean-filter-iterations). Mean filters use the average of adjacent face normal for smoothing. This method is better for smoothing spikes

  • Specify the number of median filter iterations (median-filter-iterations). Median filters use the median of adjacent face normal for smoothing. This method is better for feature preservation

  • Specify the number of layers (number-of-layers) to be smoothed.

Note:  You can use the mean and median filters individually or use both together.

(tgapi-wrap-smooth-face-zones-with-features-preserved '(face-zone-id-list) mean-filter-iterations median-filter-iterations number-of-layers)
(tgapi-wrap-smooth-face-zones-with-features-preserved '(face-zone-name-list) mean-filter-iterations median-filter-iterations number-of-layers)
(tgapi-wrap-smooth-face-zones-with-features-preserved "face-zone-name-pattern*" mean-filter-iterations median-filter-iterations number-of-layers)
Object face zone labels specifiedSmooth face nodes while preserving the features for the object face zone labels specified.
  • Specify the mesh object and the face zone labels using a face-zone-label-list or face-zone-label-name-pattern*.

  • Specify the number of mean filter iterations (mean-filter-iterations). Mean filters use the average of adjacent face normal for smoothing. This method is better for smoothing spikes

  • Specify the number of median filter iterations (median-filter-iterations). Median filters use the median of adjacent face normal for smoothing. This method is better for feature preservation

  • Specify the number of layers (number-of-layers) to be smoothed.

Note:  You can use the mean and median filters individually or use both together.

(tgapi-wrap-smooth-object-labels-with-features-preserved 'mesh-object-name '(face-zone-label-list) mean-filter-iterations median-filter-iterations number-of-layers)
(tgapi-wrap-smooth-object-labels-with-features-preserved 'mesh-object-name "face-zone-label-name-pattern*" mean-filter-iterations median-filter-iterations number-of-layers)
(tgapi-wrap-smooth-object-labels-with-features-preserved "mesh-object-name" '(face-zone-label-list) mean-filter-iterations median-filter-iterations number-of-layers)
(tgapi-wrap-smooth-object-labels-with-features-preserved "mesh-object-name" "face-zone-label-name-pattern*" mean-filter-iterations median-filter-iterations number-of-layers)
Face nodes far from geometrySmooth the face nodes of the mesh object which are far from the geometry. Specify the mesh object.(tgapi-wrap-smooth-object-off-geometry-faces 'mesh-object-name)
(tgapi-wrap-smooth-object-off-geometry-faces "mesh-object-name")
Separate object face zonesSeparate the mesh object face zones based on the underlying geometry.
  • Specify the mesh object.

  • Choose whether to remove saw tooth configurations (set remove-saw-tooth-configurations? to #t or #f).

    Specify an appropriate value for saw-tooth-feature-angle. This is used to identify angle-based features so as to avoid removal of saw-tooth configurations, while separating zones. For example, at the corner of a cuboid formed by six planar zones, a corner face is topologically a saw tooth configuration, but will not be rezoned if the saw-tooth-feature-angle specified is less than 90 degree. The recommended range is 30 to 60 degrees.

(tgapi-wrap-separate-object-face-zones 'mesh-object-name remove-saw-tooth-configurations? saw-tooth-feature-angle)
(tgapi-wrap-separate-object-face-zones "mesh-object-name" remove-saw-tooth-configurations? saw-tooth-feature-angle)
Remesh mesh objectRemesh the mesh object based on the sizing type specified.
  • Specify the mesh object.

  • Specify the feature-min-angle and feature-max-angle. The feature-min-angle and feature-max-angle limits are used to retain angle-based features. The recommended value for feature-max-angle is 180.

  • Specify the corner-angle. The corner-angle is the minimum angle between feature edges that will be preserved for corner nodes during remeshing.

  • Specify the sizing type (set "sizing-type" to "geodesic" or "volumetric").


    Note:  The size field should be computed prior to invoking this API.


  • Specify if you want to respect zone boundaries.

  • Specify the front-intersection-tolerance for checking intersections. The value specified should be in the range 0 to 1. The recommended value is 0.0, which can be increased if the remeshed patch shows intersections.

(tgapi-wrap-remesh-object 'mesh-object-name feature-min-angle feature-max-angle corner-angle "sizing-type" respect-zone-boundary? front-intersection-tolerance)
(tgapi-wrap-remesh-object "mesh-object-name" feature-min-angle feature-max-angle corner-angle "sizing-type" respect-zone-boundary? front-intersection-tolerance)
Delete unwetted object facesSeparate and delete the object faces that are not in the region of the given material points.
  • Specify the mesh object.

  • Specify the objects using a material-point-name-list or material-point-name-pattern*.

(tgapi-wrap-delete-unwetted-object-faces 'mesh-object-name material-point-name-list-or-pattern)
Resolve face intersectionsResolve face intersections for the mesh object specified.(tgapi-wrap-resolve-face-intersections-in-object 'mesh-object-name)
(tgapi-wrap-resolve-face-intersections-in-object "mesh-object-name")
Inflate object facesBy dihedral angleInflate mesh object faces based on the dihedral angle specified.
  • Specify the mesh object.

  • Specify an appropriate value for minimum-dihedral-angle. The minimum-dihedral-angle is the angle between faces connected by an edge. The faces will be inflated if the angle is less than the specified value.

  • Specify the absolute-min-offset and relative-min-offset.

    The absolute-min-offset is the absolute distance used to move the nodes to increase the gap. The relative-min-offset is the relative distance (as a factor of local edge length) used to move the nodes.

  • Specify the number of iterations (number-of-iterations).

  • Choose whether to remove saw tooth configurations (set remove-saw-tooth-configurations? to #t or #f.

(tgapi-wrap-inflate-object-faces-by-dihedral-angle 'mesh-object-name minimum-dihedral-angle absolute-min-offset relative-min-offset number-of-iterations remove-saw-tooth-configurations?)
(tgapi-wrap-inflate-object-faces-by-dihedral-angle "mesh-object-name" minimum-dihedral-angle absolute-min-offset relative-min-offset number-of-iterations remove-saw-tooth-configurations?)
By invalid normalInflate mesh object faces based on invalid normals.
  • Specify the mesh object.

  • Specify an appropriate value for number-of-layers. The number-of-layers is the number of layers of face nodes around the invalid normal location to be inflated.

  • Specify the absolute-min-offset and relative-min-offset.

    The absolute-min-offset is the absolute distance used to move the nodes to increase the gap. The relative-min-offset is the relative distance (as a factor of local edge length) used to move the nodes.

  • Specify the number of iterations (number-of-iterations).

  • Choose whether to remove saw tooth configurations (set remove-saw-tooth-configurations? to #t or #f.

(tgapi-wrap-inflate-object-faces-by-invalid-normal 'mesh-object-name number-of-layers absolute-min-offset relative-min-offset number-of-iterations remove-saw-tooth-configurations?)
(tgapi-wrap-inflate-object-faces-by-dihedral-angle "mesh-object-name" number-of-layers absolute-min-offset relative-min-offset number-of-iterations remove-saw-tooth-configurations?)
Improve mesh objectImprove mesh object qualityImprove the mesh object quality.
  • Specify the mesh object.

  • Enable aggressive improvement if required (set aggressively? to #t or #f. When this option is enabled, the features may not be preserved during the improve operation.

(tgapi-wrap-improve-object-quality 'mesh-object-name aggressively?)
(tgapi-wrap-improve-object-quality "mesh-object-name" aggressively?)
For tet meshingImprove mesh object for tet meshing.
  • Specify the mesh object.

  • Specify the material point ("material-point-name").

  • Set the max-cell-skewness, max-face-skewness, and max-face-size-change.

(tgapi-wrap-improve-object-for-tet-meshing 'mesh-object-name "material-point-name" max-cell-skewness max-face-skewness max-face-size-change)
(tgapi-wrap-improve-object-for-tet-meshing "mesh-object-name" "material-point-name" max-cell-skewness max-face-skewness max-face-size-change)
For prism meshingImprove mesh object for prism meshing. In general, zones will inherit the prism settings from the underlying geometry. For zones that do not inherit prism settings, the settings passed as arguments will be used.
  • Specify the mesh object.

  • Specify the number of layers (number-of-layers). The number of layers should be the same as that set for prism meshing.

  • Set the prism offset-method. Select one of the options "aspect-ratio", "last-ratio", "uniform", or "minimum-height".

  • Set the prism-aspect-ratio, if applicable.

  • Set the last-ratio-percentage, if applicable.

  • Set the prism-layer-first-height.

  • Set the prism-layer-growth-rate.

  • Specify the quality-measure to be used.

  • Set the max-cell-skewness and max-face-skewness.

  • Choose whether to retain the prisms (set keep-prisms? to #f or #t) (setting to #t requires beta features to be enabled).

Note:  A value of -1 can be used for the parameters that are not required for a particular offset method.

(tgapi-wrap-improve-object-for-prism-meshing 'mesh-object-name number-of-layers "offset-method" prism-aspect-ratio last-ratio-percentage prism-layer-first-height prism-layer-growth-rate quality-measure max-cell-skewness max-face-skewness keep-prisms?)
(tgapi-wrap-improve-object-for-prism-meshing "mesh-object-name" number-of-layers offset-method prism-aspect-ratio last-ratio-percentage prism-layer-first-height prism-layer-growth-rate quality-measure max-cell-skewness max-face-skewness keep-prisms?)