Implements operations for modifying the determinant of the Jacobian. More...
#include <SimplexModDet.h>
Public Types | |
typedef T | Number |
The number type. | |
Static Public Member Functions | |
Mathematical functions | |
static Number | getEpsilon () |
Return epsilon. | |
static Number | getDelta (const Number minDeterminant) |
Return delta. | |
static Number | getH (Number determinant, Number minDeterminant) |
Return a number that is close to the determinant when it is positive and small and positive when the determinant is negative. |
Implements operations for modifying the determinant of the Jacobian.
T | is the number type. By default it is double. |
This class cannot be constructed. Its member data and public member functions are static.
The Modified Determinant
See the documentation of the geom::SimplexJac class for information on the Jacobian matrix of a simplex. When the content of a simplex vanishes, its Jacobian matrix becomes singular. That is, its determinant vanishes. This presents a problem for some algebraic quality metrics. The condition number metric and the mean ratio metric (implemented in geom::SimplexCondNum and geom::SimplexMeanRatio) become singular as the content vanishes. In order to define these metrics for simplices with vanishing and negative content, we use a modified value of the Jacobian determinant which has the following properties:
Let be a number that is a little bigger than the machine precision. (We use 100 times the machine precision.) Define
The modified value of the determinant is
Usage
Consider a complex of simplices. (Perhaps the tetrahedra that are adjacent to a vertex.) Let minDeterminant
be the minimum determinant of the simplices in the complex and determinant
be the determinant of a given simplex. h(determinant,minDeterminant)
returns the modified determinant. If the minimum determinant is no less than then h()
returns the un-modified determinant.
static Number SimplexModDet< T >::getH | ( | Number | determinant, | |
Number | minDeterminant | |||
) | [static] |
Return a number that is close to the determinant when it is positive and small and positive when the determinant is negative.
Return