*elementtestvolumetricskew

Tests tetra elements using the volumetric skew element quality check.

Syntax

*elementtestvolumetricskew entity_type mark_id skew output_mark_id contour title

Type

HyperMesh Tcl Modify

Description

Tests tetra elements for whether or not they pass the volumetric skew element quality check, and puts those that fail on the specified output mark.

The tetra element volumetric skew corresponds directly to the Abaqus and Fluent CFD tetra element quality checks. It is calculated by fitting a sphere through the four vertex nodes of the element. An ideally shaped tetra element with nodes on that sphere would have a volume of 3.

I d e a l V o l = 8 * R a d i u s 9 * S q r t ( 3 )

So,

V o l S k e w = I d e a l V o l Re a l V o l I d e a l V o l

In the CFD community, this quantity is traditionally referred to as "skew." To differentiate it from the finite element quantity of the same name, HyperMesh notes this as "volumetric skew."

Inputs

entity_type
The entity types to be checked. Only elements are supported.
mark_id
The mark ID containing the tetra elements to test. Valid values are 1 and 2.
skew
The value to use as a threshold beyond which elements should be considered to have failed the test.
output_mark_id
The mark ID where the failed elements will be placed. Valid values are 1 and 2.
contour
A flag that determines how the results are presented. Valid values are:
  • 0 - Display the results of the test normally.
  • 1 - Display the elements color coded by their ratings.
  • 2 - Build a histogram showing the distribution of ratings.
title
The title to label the curve in the histogram. Only required, if contour is 2.

Example

To test all displayed elements for a skew of 0.6:
*createmark elems 1 "displayed"
*createmark elems 2
*elementtestvolumetricskew elems 1 0.6 0 0 ""

Errors

Incorrect usage results in a Tcl error. To detect errors, you can use the catch command:
if { [ catch {command_name...} ] } {
   # Handle error
}