Regina Calculation Engine
|
A subclass of LPConstraintBase used for constraints defined entirely by homogeneous linear equations. More...
#include <enumerate/ntreeconstraint.h>
Public Types | |
enum | { nConstraints } |
Static Public Member Functions | |
static bool | addRows (LPInitialTableaux< LPConstraintBase >::Col *col, const int *columnPerm, const NTriangulation *tri) |
Explicitly constructs equations for the linear function(s) constrained by this class. More... | |
template<typename Integer > | |
static void | constrain (LPData< LPConstraintNone, Integer > &lp, unsigned numCols) |
Explicitly constraints each of these linear functions to an equality or inequality in the underlying tableaux. More... | |
static bool | verify (const NNormalSurface *s) |
Ensures that the given normal surface satisfies the extra constraints described by this class. More... | |
static bool | verify (const NAngleStructure *s) |
Ensures that the given angle structure satisfies the extra constraints described by this class. More... | |
static bool | supported (NormalCoords coords) |
Indicates whether the given coordinate system is supported by this constraint class. More... | |
A subclass of LPConstraintBase used for constraints defined entirely by homogeneous linear equations.
Any set of constraints defined entirely by homogeneous linear equations should derive from LPConstraintSubspace, not LPConstraintBase. In other words, any set of constraints derived from LPConstraintSubspace should simply restrict our attention to a vector subspace of the normal surface or angle structure coordinate system.
This class does not provide any additional functionality. It is merely a convenience to help describe and enforce preconditions.