Regina Calculation Engine
|
Represents a 3-manifold from the SnapPea cusped census. More...
#include <manifold/snappeacensusmfd.h>
Public Member Functions | |
SnapPeaCensusManifold (char newSection, unsigned long newIndex) | |
Creates a new SnapPea census manifold with the given parameters. More... | |
SnapPeaCensusManifold (const SnapPeaCensusManifold &cloneMe)=default | |
Creates a clone of the given SnapPea census manifold. More... | |
virtual | ~SnapPeaCensusManifold () |
Destroys this structure. More... | |
char | section () const |
Returns the section of the SnapPea census to which this manifold belongs. More... | |
unsigned long | index () const |
Returns the index of this manifold within its particular section of the SnapPea census. More... | |
bool | operator== (const SnapPeaCensusManifold &compare) const |
Determines whether this and the given structure represent the same 3-manifold from the SnapPea census. More... | |
bool | operator!= (const SnapPeaCensusManifold &compare) const |
Determines whether this and the given structure represent different 3-manifolds from the SnapPea census. More... | |
SnapPeaCensusManifold & | operator= (const SnapPeaCensusManifold &cloneMe)=default |
Sets this to be a clone of the given SnapPea census manifold. More... | |
Triangulation< 3 > * | construct () const override |
Returns a triangulation of this 3-manifold, if such a construction has been implemented. More... | |
AbelianGroup * | homology () const override |
Returns the first homology group of this 3-manifold, if such a routine has been implemented. More... | |
bool | isHyperbolic () const override |
Returns whether or not this is a finite-volume hyperbolic manifold. More... | |
std::ostream & | writeName (std::ostream &out) const override |
Writes the common name of this 3-manifold as a human-readable string to the given output stream. More... | |
std::ostream & | writeTeXName (std::ostream &out) const override |
Writes the common name of this 3-manifold in TeX format to the given output stream. More... | |
std::ostream & | writeStructure (std::ostream &out) const override |
Writes details of the structure of this 3-manifold that might not be evident from its common name to the given output stream. More... | |
std::string | name () const |
Returns the common name of this 3-manifold as a human-readable string. More... | |
std::string | TeXName () const |
Returns the common name of this 3-manifold in TeX format. More... | |
std::string | structure () const |
Returns details of the structure of this 3-manifold that might not be evident from its common name. More... | |
AbelianGroup * | homologyH1 () const |
Returns the first homology group of this 3-manifold, if such a routine has been implemented. More... | |
bool | operator< (const Manifold &compare) const |
Determines in a fairly ad-hoc fashion whether this representation of this 3-manifold is "smaller" than the given representation of the given 3-manifold. More... | |
void | writeTextShort (std::ostream &out) const |
Writes a short text representation of this object to the given output stream. More... | |
void | writeTextLong (std::ostream &out) const |
Writes a detailed text representation of this object to the given output stream. More... | |
std::string | str () const |
Returns a short text representation of this object. More... | |
std::string | utf8 () const |
Returns a short text representation of this object using unicode characters. More... | |
std::string | detail () const |
Returns a detailed text representation of this object. More... | |
Static Public Attributes | |
static const char | SEC_5 |
Represents the collection of manifolds formed from five or fewer tetrahedra (both orientable and non-orientable). More... | |
static const char | SEC_6_OR |
Represents the collection of orientable manifolds formed from six tetrahedra. More... | |
static const char | SEC_6_NOR |
Represents the collection of non-orientable manifolds formed from six tetrahedra. More... | |
static const char | SEC_7_OR |
Represents the collection of orientable manifolds formed from seven tetrahedra. More... | |
static const char | SEC_7_NOR |
Represents the collection of non-orientable manifolds formed from seven tetrahedra. More... | |
Represents a 3-manifold from the SnapPea cusped census.
The SnapPea cusped census is the census of cusped hyperbolic 3-manifolds formed from up to seven tetrahedra. This census was tabulated by Callahan, Hildebrand and Weeks, and is shipped with SnapPea 3.0d3 (and also with Regina).
The census is split into five different sections according to number of tetrahedra and orientability. Each of these sections corresponds to one of the section constants defined in this class.
For further details regarding the SnapPea census, see "A census of cusped hyperbolic 3-manifolds", Patrick J. Callahan, Martin V. Hildebrand and Jeffrey R. Weeks, Math. Comp. 68 (1999), no. 225, pp. 321–332.
Note that this class is closely tied to SnapPeaCensusTri. In particular, the section constants defined in SnapPeaCensusTri and SnapPeaCensusManifold are identical, and so may be freely mixed. Furthermore, the section and index parameters of a SnapPeaCensusTri are identical to those of its corresponding SnapPeaCensusManifold.
All of the optional Manifold routines are implemented for this class.
|
inherited |
Returns a detailed text representation of this object.
This text may span many lines, and should provide the user with all the information they could want. It should be human-readable, should not contain extremely long lines (which cause problems for users reading the output in a terminal), and should end with a final newline. There are no restrictions on the underlying character set.
|
inherited |
Returns a short text representation of this object.
This text should be human-readable, should fit on a single line, and should not end with a newline. Where possible, it should use plain ASCII characters.
str()
.
|
inherited |
Returns a short text representation of this object using unicode characters.
Like str(), this text should be human-readable, should fit on a single line, and should not end with a newline. In addition, it may use unicode characters to make the output more pleasant to read. This string will be encoded in UTF-8.