A simplex with a free vertex. More...
#include <SimplexWithFreeVertex.h>
Public Types | |
| typedef T | Number |
| The number type. | |
| typedef QualityFunction::Vertex | Vertex |
| The class for a vertex. | |
|
typedef Simplex< N, Vertex, Number > | Simplex |
| A simplex of vertices. | |
| typedef Simplex::Face | Face |
| The face of a simplex. | |
Public Member Functions | |
Constructors etc. | |
| SimplexWithFreeVertex () | |
| Default constructor. Un-initialized memory. | |
| SimplexWithFreeVertex (const Face &face) | |
| Construct from a face. | |
| SimplexWithFreeVertex (const SimplexWithFreeVertex &other) | |
| Copy constructor. | |
| SimplexWithFreeVertex & | operator= (const SimplexWithFreeVertex &other) |
| Assignment operator. | |
| ~SimplexWithFreeVertex () | |
| Trivial destructor. | |
Accessors. | |
| Vertex | getFreeVertex () const |
| Return the free vertex. | |
| void | computeBBox (BBox< N, T > *bb) const |
| Calculate a bounding box around the simplex. | |
Manipulators. | |
| void | set (const Face &face) |
| Set the fixed face. | |
| void | setFunction (const Vertex &v) |
| Set the free vertex. Prepare for function calls. | |
| void | set (const Vertex &v) |
| Set the free vertex. Prepare for function and/or gradient calls. | |
Mathematical functions | |
| Number | operator() () const |
| Return the quality metric. | |
| void | computeGradient (Vertex *gradient) const |
| Calculate the gradient of the quality metric. | |
| Number | operator() (const Number minimumDeterminant) const |
| Return the modified quality metric. | |
| void | computeGradient (const Number minimumDeterminant, Vertex *gradient) const |
| Calculate the gradient of the modified quality metric. | |
| Number | getDeterminant () const |
| Return the determinant. | |
| Number | computeContent () const |
| Return the content. | |
| void | computeGradientOfContent (Vertex *gradient) const |
| Calculate the gradient of the content. | |
A simplex with a free vertex.
| QF | is the quality functor for the simplex. | |
| N | is the dimension. | |
| T | is the number type. By default it is double. |
This class implements a simplex with a free vertex. It is used to optimize the position of the free vertex. One can set the fixed vertices with the SimplexWithFreeVertex(const Face& face) constructor or with set(const Face& face).
If you are going to use the gradient of the quality function, Jacobian determinant, content, etc. then set the free vertex with set(const Vertex& v). If you don't need gradient information, then use setFunction(const Vertex& v).
This class provides the following mathematical functions. The gradients are with respect to the free vertex.
1.6.3