Regina Calculation Engine
|
Triangulations of manifolds in all supported dimensions. More...
Classes | |
class | regina::Example< dim > |
This class offers static routines for constructing a variety of sample dim-dimensional triangulations. More... | |
class | regina::Example< 2 > |
Offers routines for constructing a variety of sample 2-dimensional triangulations. More... | |
class | regina::Example< 3 > |
Offers routines for constructing a variety of sample 3-dimensional triangulations. More... | |
class | regina::Example< 4 > |
Offers routines for constructing a variety of sample 4-dimensional triangulations. More... | |
class | regina::FaceNumbering< dim, subdim > |
Specifies how subdim-faces are numbered within a dim-dimensional simplex. More... | |
class | regina::FacePair |
Represents a pair of tetrahedron face numbers. More... | |
class | regina::FacetPairing< 3 > |
Represents the dual graph of a 3-manifold triangulation. More... | |
struct | regina::FacetSpec< dim > |
A lightweight class used to refer to a particular facet of a particular top-dimensional simplex in a dim-dimensional triangulation. More... | |
class | regina::BoundaryComponent< dim > |
A component of the boundary of a dim-manifold triangulation. More... | |
class | regina::Component< dim > |
A connected component of a dim-manifold triangulation. More... | |
class | regina::Face< dim, subdim > |
Represents a subdim-face in the skeleton of a dim-dimensional triangulation. More... | |
class | regina::FaceEmbedding< dim, subdim > |
Details how a subdim-face of a dim-dimensional triangulation appears within each top-dimensional simplex. More... | |
class | regina::FacetPairing< dim > |
Represents the dual graph of a dim-manifold triangulation; that is, the pairwise matching of facets of dim-dimensional simplices. More... | |
class | regina::Isomorphism< dim > |
Represents a combinatorial isomorphism from one dim-manifold triangulation into another. More... | |
class | regina::Triangulation< dim > |
A dim-dimensional triangulation, built by gluing together dim-dimensional simplices along their (dim-1)-dimensional facets. More... | |
class | regina::HomologicalData |
Data type that deals with all the detailed homological information in a manifold. More... | |
class | regina::XMLTriangulationReader< dim > |
An XML packet reader that reads a single dim-dimensional triangulation. More... | |
class | regina::XMLTriangulationReader< 2 > |
An XML packet reader that reads a single 2-dimensional triangulation. More... | |
class | regina::XMLTriangulationReader< 3 > |
An XML packet reader that reads a single 3-dimensional triangulation. More... | |
class | regina::XMLTriangulationReader< 4 > |
An XML packet reader that reads a single 4-dimensional triangulation. More... | |
Typedefs | |
typedef Example< 2 > | regina::Dim2ExampleTriangulation |
Deprecated typedef for backward compatibility. More... | |
typedef Example< 3 > | regina::NExampleTriangulation |
Deprecated typedef for backward compatibility. More... | |
typedef Example< 4 > | regina::Dim4ExampleTriangulation |
Deprecated typedef for backward compatibility. More... | |
typedef FacePair | regina::NFacePair |
Deprecated typedef for backward compatibility. More... | |
typedef FacetPairing< 3 > | regina::NFacePairing |
Deprecated typedef for backward compatibility. More... | |
typedef FacetSpec< 2 > | regina::Dim2TriangleEdge |
Deprecated typedef for backward compatibility. More... | |
typedef FacetSpec< 3 > | regina::NTetFace |
Deprecated typedef for backward compatibility. More... | |
typedef FacetSpec< 4 > | regina::Dim4PentFacet |
Deprecated typedef for backward compatibility. More... | |
typedef HomologicalData | regina::NHomologicalData |
Deprecated typedef for backward compatibility. More... | |
Functions | |
static Triangulation< 2 > * | regina::Example< 2 >::orientable (unsigned genus, unsigned punctures) |
Returns a triangulation of the given orientable surface. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::nonOrientable (unsigned genus, unsigned punctures) |
Returns a triangulation of the given non-orientable surface. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::sphereTetrahedron () |
Returns the four-triangle 2-sphere formed from the boundary of a tetrahedron. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::sphereOctahedron () |
Returns the eight-triangle 2-sphere formed from the boundary of an octahedron. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::disc () |
Returns a one-triangle disc. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::annulus () |
Returns a two-triangle annulus. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::mobius () |
Returns a one-triangle Mobius band. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::torus () |
Returns a two-triangle torus. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::rp2 () |
Returns a two-triangle projective plane. More... | |
static Triangulation< 2 > * | regina::Example< 2 >::kb () |
Returns a two-triangle Klein bottle. More... | |
template<int dim> | |
int | regina::faceOppositeEdge (int i, int j) |
Returns the (dim-2)-face number that is opposite the edge joining vertices i and j in a dim-dimensional simplex. More... | |
regina::FacePair::FacePair () | |
Creates a new face pair (0,1). More... | |
regina::FacePair::FacePair (int newFirst, int newSecond) | |
Creates a new face pair from the two given face numbers. More... | |
regina::FacePair::FacePair (const FacePair &cloneMe)=default | |
Creates a new face pair that is a clone of the given pair. More... | |
unsigned | regina::FacePair::lower () const |
Returns the smaller of the two face numbers in this pair. More... | |
unsigned | regina::FacePair::upper () const |
Returns the larger of the two face numbers in this pair. More... | |
bool | regina::FacePair::isBeforeStart () const |
Determines if this face pair represents a before-the-start value. More... | |
bool | regina::FacePair::isPastEnd () const |
Determines if this face pair represents a past-the-end value. More... | |
FacePair | regina::FacePair::complement () const |
Returns the complement of this face pair. More... | |
FacePair & | regina::FacePair::operator= (const FacePair &cloneMe)=default |
Sets this face pair to be a copy of the given pair. More... | |
bool | regina::FacePair::operator== (const FacePair &other) const |
Determines if this and the given face pair are equal. More... | |
bool | regina::FacePair::operator!= (const FacePair &other) const |
Determines if this and the given face pair are not equal. More... | |
bool | regina::FacePair::operator< (const FacePair &other) const |
Determines if this is less than the given face pair. More... | |
bool | regina::FacePair::operator> (const FacePair &other) const |
Determines if this is greater than the given face pair. More... | |
bool | regina::FacePair::operator<= (const FacePair &other) const |
Determines if this is less than or equal to the given face pair. More... | |
bool | regina::FacePair::operator>= (const FacePair &other) const |
Determines if this is greater than or equal to the given face pair. More... | |
FacePair & | regina::FacePair::operator++ () |
Increments this face pair. More... | |
FacePair | regina::FacePair::operator++ (int) |
Increments this face pair. More... | |
FacePair & | regina::FacePair::operator-- () |
Decrements this face pair. More... | |
FacePair | regina::FacePair::operator-- (int) |
Decrements this face pair. More... | |
std::ostream & | regina::operator<< (std::ostream &out, const FacePair &pair) |
Writes the given face pair to the given output stream. More... | |
regina::FacetPairing< 3 >::FacetPairing (const FacetPairing &cloneMe) | |
Creates a new face pairing that is a clone of the given face pairing. More... | |
regina::FacetPairing< 3 >::FacetPairing (const Triangulation< 3 > &tri) | |
Creates the face pairing of the given 3-manifold triangulation. More... | |
void | regina::FacetPairing< 3 >::followChain (size_t &tet, FacePair &faces) const |
Follows a chain as far as possible from the given point. More... | |
bool | regina::FacetPairing< 3 >::hasTripleEdge () const |
Determines whether this face pairing contains a triple edge. More... | |
bool | regina::FacetPairing< 3 >::hasBrokenDoubleEndedChain () const |
Determines whether this face pairing contains a broken double-ended chain. More... | |
bool | regina::FacetPairing< 3 >::hasOneEndedChainWithDoubleHandle () const |
Determines whether this face pairing contains a one-ended chain with a double handle. More... | |
bool | regina::FacetPairing< 3 >::hasWedgedDoubleEndedChain () const |
Determines whether this face pairing contains a wedged double-ended chain. More... | |
bool | regina::FacetPairing< 3 >::hasOneEndedChainWithStrayBigon () const |
Determines whether this face pairing contains a one-ended chain with a stray bigon. More... | |
bool | regina::FacetPairing< 3 >::hasTripleOneEndedChain () const |
Determines whether this face pairing contains a triple one-ended chain. More... | |
bool | regina::FacetPairing< 3 >::hasSingleStar () const |
Determines whether this face pairing contains a single-edged star. More... | |
bool | regina::FacetPairing< 3 >::hasDoubleStar () const |
Determines whether this face pairing contains a double-edged star. More... | |
bool | regina::FacetPairing< 3 >::hasDoubleSquare () const |
Determines whether this face pairing contains a double-edged square. More... | |
regina::FacetSpec< dim >::FacetSpec () | |
Creates a new specifier with no initialisation. More... | |
regina::FacetSpec< dim >::FacetSpec (int newSimp, int newFacet) | |
Creates a new specifier referring to the given facet of the given simplex. More... | |
regina::FacetSpec< dim >::FacetSpec (const FacetSpec< dim > &cloneMe)=default | |
Creates a new specifier referring to the same simplex facet as the given specifier. More... | |
bool | regina::FacetSpec< dim >::isBoundary (size_t nSimplices) const |
Determines if this specifier represents the overall boundary. More... | |
bool | regina::FacetSpec< dim >::isBeforeStart () const |
Determines if this specifier represents a before-the-start value. More... | |
bool | regina::FacetSpec< dim >::isPastEnd (size_t nSimplices, bool boundaryAlso) const |
Determines if this specifier represents a past-the-end value. More... | |
void | regina::FacetSpec< dim >::setFirst () |
Sets this specifier to the first facet of the first simplex. More... | |
void | regina::FacetSpec< dim >::setBoundary (size_t nSimplices) |
Sets this specifier to the overall boundary. More... | |
void | regina::FacetSpec< dim >::setBeforeStart () |
Sets this specifier to before-the-start. More... | |
void | regina::FacetSpec< dim >::setPastEnd (size_t nSimplices) |
Sets this specifier to past-the-end. More... | |
FacetSpec & | regina::FacetSpec< dim >::operator= (const FacetSpec< dim > &other)=default |
Sets this specifier to the value of the given specifier. More... | |
FacetSpec & | regina::FacetSpec< dim >::operator++ () |
Increments this specifier. More... | |
FacetSpec | regina::FacetSpec< dim >::operator++ (int) |
Increments this specifier. More... | |
FacetSpec & | regina::FacetSpec< dim >::operator-- () |
Decrements this specifier. More... | |
FacetSpec | regina::FacetSpec< dim >::operator-- (int) |
Decrements this specifier. More... | |
bool | regina::FacetSpec< dim >::operator== (const FacetSpec< dim > &other) const |
Determines if this and the given specifier are identical. More... | |
bool | regina::FacetSpec< dim >::operator!= (const FacetSpec< dim > &other) const |
Determines if this and the given specifier are not identical. More... | |
bool | regina::FacetSpec< dim >::operator< (const FacetSpec< dim > &other) const |
Determines if this is less than the given specifier. More... | |
bool | regina::FacetSpec< dim >::operator<= (const FacetSpec< dim > &other) const |
Determines if this is less than or equal to the given specifier. More... | |
template<int dim> | |
std::ostream & | regina::operator<< (std::ostream &out, const FacetSpec< dim > &spec) |
Writes the given facet specifier to the given output stream. More... | |
regina::HomologicalData::SortedArray::SortedArray () | |
Construct an empty array. More... | |
regina::HomologicalData::SortedArray::SortedArray (const SortedArray &)=default | |
Construct a clone of the given array. More... | |
SortedArray & | regina::HomologicalData::SortedArray::operator= (const SortedArray &)=default |
Set this to a clone of the given array. More... | |
size_t | regina::HomologicalData::SortedArray::size () const |
Return the number of elements in this array. More... | |
unsigned long | regina::HomologicalData::SortedArray::operator[] (size_t index) const |
Return the integer at the given index in this array. More... | |
ptrdiff_t | regina::HomologicalData::SortedArray::index (unsigned long value) const |
Finds the index of the given integer in this array. More... | |
void | regina::HomologicalData::SortedArray::push_back (unsigned long value) |
Pushes the given integer onto the end of this array. More... | |
regina::HomologicalData::HomologicalData (const Triangulation< 3 > &input) | |
Takes as input a triangulation. More... | |
regina::HomologicalData::HomologicalData (const HomologicalData &h) | |
Copy constructor. More... | |
regina::HomologicalData::~HomologicalData () | |
Destructor. More... | |
void | regina::HomologicalData::writeTextShort (std::ostream &out) const |
Writes a short text representation of this object to the given output stream. More... | |
const MarkedAbelianGroup & | regina::HomologicalData::homology (unsigned q) |
This routine gives access to the manifold's homology computed with the regular CW-decomposition. More... | |
const MarkedAbelianGroup & | regina::HomologicalData::bdryHomology (unsigned q) |
This routine gives access to the homology of the boundary of the manifold, computed with the regular CW-decomposition. More... | |
const HomMarkedAbelianGroup & | regina::HomologicalData::bdryHomologyMap (unsigned q) |
This routine gives access to the homomorphism from the homology of the boundary to the homology of the manifold. More... | |
const MarkedAbelianGroup & | regina::HomologicalData::dualHomology (unsigned q) |
This routine gives access to the manifold's homology computed with the dual CW-decomposition. More... | |
const HomMarkedAbelianGroup & | regina::HomologicalData::h1CellAp () |
Returns the isomorphism from dualHomology(1) to homology(1) given by a cellular approximation to the identity map on the manifold. More... | |
unsigned long | regina::HomologicalData::countStandardCells (unsigned dimension) |
Returns the number of cells of the given dimension in the standard genuine CW-decomposition of the manifold. More... | |
unsigned long | regina::HomologicalData::countDualCells (unsigned dimension) |
Returns the number of cells of the given dimension in the dual CW-decomposition of the manifold. More... | |
unsigned long | regina::HomologicalData::countBdryCells (unsigned dimension) |
Returns the number of cells of the given dimension in the standard CW-decomposition of the boundary of the manifold. More... | |
long | regina::HomologicalData::eulerChar () |
The proper Euler characteristic of the manifold, computed from the dual CW-decomposition. More... | |
const std::vector< std::pair< Integer, std::vector< unsigned long > > > & | regina::HomologicalData::torsionRankVector () |
Returns the torsion form rank vector. More... | |
const std::string & | regina::HomologicalData::torsionRankVectorString () |
Same as torsionRankVector() but returns as a human-readable string. More... | |
const std::vector< LargeInteger > & | regina::HomologicalData::torsionSigmaVector () |
Returns the 2-torsion sigma vector. More... | |
const std::string & | regina::HomologicalData::torsionSigmaVectorString () |
Same as torsionSigmaVector() but returns as a human-readable string. More... | |
const std::vector< std::pair< Integer, std::vector< int > > > & | regina::HomologicalData::torsionLegendreSymbolVector () |
Returns the odd p-torsion Legendre symbol vector. More... | |
const std::string & | regina::HomologicalData::torsionLegendreSymbolVectorString () |
Same as torsionLegendreSymbolVector() but returns as a human-readable string. More... | |
bool | regina::HomologicalData::formIsHyperbolic () |
Returns true iff torsion linking form is ‘hyperbolic’ in the linking-form sense of the word. More... | |
bool | regina::HomologicalData::formIsSplit () |
Returns true iff the torsion linking form is split. More... | |
bool | regina::HomologicalData::formSatKK () |
Returns true iff the torsion linking form satisfies the Kawauchi-Kojima 2-torsion condition. More... | |
const std::string & | regina::HomologicalData::embeddabilityComment () |
Returns a comment on whether the manifold might embed in a homology 3-sphere or 4-sphere. More... | |
HomologicalData & | regina::HomologicalData::operator= (const HomologicalData &)=delete |
regina::XMLTriangulationReader< dim >::XMLTriangulationReader (XMLTreeResolver &resolver) | |
Creates a new triangulation reader. More... | |
XMLElementReader * | regina::XMLTriangulationReader< dim >::startPropertySubElement (const std::string &subTagName, const regina::xml::XMLPropertyDict &subTagProps) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation. More... | |
regina::XMLTriangulationReader< 2 >::XMLTriangulationReader (XMLTreeResolver &resolver) | |
Creates a new triangulation reader. More... | |
XMLElementReader * | regina::XMLTriangulationReader< 2 >::startPropertySubElement (const std::string &subTagName, const regina::xml::XMLPropertyDict &subTagProps) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation. More... | |
regina::XMLTriangulationReader< 3 >::XMLTriangulationReader (XMLTreeResolver &resolver) | |
Creates a new triangulation reader. More... | |
XMLElementReader * | regina::XMLTriangulationReader< 3 >::startPropertySubElement (const std::string &subTagName, const regina::xml::XMLPropertyDict &subTagProps) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation. More... | |
regina::XMLTriangulationReader< 4 >::XMLTriangulationReader (XMLTreeResolver &resolver) | |
Creates a new triangulation reader. More... | |
XMLElementReader * | regina::XMLTriangulationReader< 4 >::startPropertySubElement (const std::string &subTagName, const regina::xml::XMLPropertyDict &subTagProps) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation. More... | |
Variables | |
int | regina::FacetSpec< dim >::simp |
The simplex referred to. More... | |
int | regina::FacetSpec< dim >::facet |
The facet of the simplex referred to. More... | |
Friends | |
class | regina::FacetPairing< 3 >::detail::FacetPairingBase< 3 > |
Closed Triangulations | |
static Triangulation< 3 > * | regina::Example< 3 >::threeSphere () |
Returns a one-tetrahedron triangulation of the 3-sphere. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::bingsHouse () |
Returns the two-tetrahedron triangulation of the 3-sphere that is dual to Bing's house with two rooms. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::s2xs1 () |
Returns a two-tetrahedron triangulation of the product space S^2 x S^1 . More... | |
static Triangulation< 3 > * | regina::Example< 3 >::rp2xs1 () |
Returns a three-tetrahedron triangulation of the non-orientable product space RP^2 x S^1 . More... | |
static Triangulation< 3 > * | regina::Example< 3 >::rp3rp3 () |
Returns a triangulation of the connected sum RP^3 # RP^3 . More... | |
static Triangulation< 3 > * | regina::Example< 3 >::lens (size_t p, size_t q) |
Returns a triangulation of the lens space L(p,q) . More... | |
static Triangulation< 3 > * | regina::Example< 3 >::poincareHomologySphere () |
Returns the five-tetrahedron triangulation of the Poincare homology sphere. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::weeks () |
Returns a nine-tetrahedron minimal triangulation of the Weeks manifold. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::weberSeifert () |
Returns a one-vertex triangulation of the Weber-Seifert dodecahedral space. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::smallClosedOrblHyperbolic () |
Returns the nine-tetrahedron closed orientable hyperbolic 3-manifold with volume 0.94270736. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::smallClosedNonOrblHyperbolic () |
Returns the eleven-tetrahedron closed non-orientable hyperbolic 3-manifold with volume 2.02988321. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::sphere600 () |
Returns the boundary 3-sphere of the regular 600-cell. More... | |
Finite Bounded Triangulations | |
static Triangulation< 3 > * | regina::Example< 3 >::lst (size_t a, size_t b) |
Returns the layered solid torus LST(a,b,c) . More... | |
static Triangulation< 3 > * | regina::Example< 3 >::solidKleinBottle () |
Returns a triangulation of the solid Klein bottle. More... | |
Ideal Triangulations | |
static Triangulation< 3 > * | regina::Example< 3 >::figureEight () |
Returns a two-tetrahedron ideal triangulation of the figure eight knot complement. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::trefoil () |
Returns a two-tetrahedron ideal triangulation of the trefoil knot complement. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::whiteheadLink () |
Returns a four-tetrahedron ideal triangulation of the Whitehead link complement. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::gieseking () |
Returns the one-tetrahedron ideal triangulation of the non-orientable Gieseking manifold. More... | |
static Triangulation< 3 > * | regina::Example< 3 >::cuspedGenusTwoTorus () |
Returns a triangulation of a solid genus two torus with a cusped boundary. More... | |
Closed Triangulations | |
static Triangulation< 4 > * | regina::Example< 4 >::fourSphere () |
Returns a two-pentachoron triangulation of the 4-sphere. More... | |
static Triangulation< 4 > * | regina::Example< 4 >::simplicialFourSphere () |
Returns the standard six-pentachoron triangulation of the 4-sphere as the boundary of a 5-simplex. More... | |
static Triangulation< 4 > * | regina::Example< 4 >::rp4 () |
Returns a four-pentachoron triangulation of real projective 4-space. More... | |
static Triangulation< 4 > * | regina::Example< 4 >::s3xs1 () |
Returns a two-pentachoron triangulation of the product space S^3 x S^1 . More... | |
static Triangulation< 4 > * | regina::Example< 4 >::s3xs1Twisted () |
Returns a two-pentachoron triangulation of the twisted product space S^3 x~ S^1 . More... | |
Ideal Triangulations | |
static Triangulation< 4 > * | regina::Example< 4 >::cappellShaneson () |
Returns a two-pentachoron triangulation of a Cappell-Shaneson 2-knot complement in the 4-sphere. More... | |
Constructions from 3-Manifold Triangulations | |
static Triangulation< 4 > * | regina::Example< 4 >::iBundle (const Triangulation< 3 > &base) |
Returns a triangulation of the product M x I , where M is the given 3-manifold triangulation. More... | |
static Triangulation< 4 > * | regina::Example< 4 >::s1Bundle (const Triangulation< 3 > &base) |
Returns a triangulation of the product M x S1 , where M is the given 3-manifold triangulation. More... | |
static Triangulation< 4 > * | regina::Example< 4 >::bundleWithMonodromy (const Triangulation< 3 > &base, const Isomorphism< 3 > &monodromy) |
Returns a bundle formed from a given 3-manifold and a given monodromy. More... | |
Triangulations of manifolds in all supported dimensions.
typedef Example<2> regina::Dim2ExampleTriangulation |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef FacetSpec<2> regina::Dim2TriangleEdge |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef Example<4> regina::Dim4ExampleTriangulation |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef FacetSpec<4> regina::Dim4PentFacet |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef Example<3> regina::NExampleTriangulation |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef FacePair regina::NFacePair |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef FacetPairing<3> regina::NFacePairing |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
typedef FacetSpec<3> regina::NTetFace |
Deprecated typedef for backward compatibility.
This typedef will be removed in a future release of Regina.
|
static |
Returns a two-triangle annulus.
This is isomorphic to the triangulation returned by the generic routine ballBundle(), though it will have a different packet label.
const MarkedAbelianGroup& regina::HomologicalData::bdryHomology | ( | unsigned | q | ) |
This routine gives access to the homology of the boundary of the manifold, computed with the regular CW-decomposition.
q | the dimension of the homology group: can be 0, 1 or 2. |
const HomMarkedAbelianGroup& regina::HomologicalData::bdryHomologyMap | ( | unsigned | q | ) |
This routine gives access to the homomorphism from the homology of the boundary to the homology of the manifold.
q | the dimension of the map: can be 0, 1 or 2. |
|
static |
Returns the two-tetrahedron triangulation of the 3-sphere that is dual to Bing's house with two rooms.
|
static |
Returns a bundle formed from a given 3-manifold and a given monodromy.
Specifically, let M be the given 3-manifold triangulation. This routine builds the bundle M x I
, and then identifies the two copies of M on the boundary according to the given homeomorphism from M to itself. The homeomorphism must be expressed as a combinatorial automorphism, which means that for a non-trivial monodromy you may need to do some work to find a sufficiently symmetric 3-manifold triangulation to begin with.
The resulting manifold will contain 82 pentachora for each original tetrahedron of M, and will contain many internal vertices. It is highly recommended that you call Triangulation<4>::intelligentSimplify() afterwards if you do not need to preserve the combinatorial structure.
base | the 3-manifold triangulation M, as described above. |
monodromy | the homeomorphism from M to itself, as described above. |
|
static |
Returns a two-pentachoron triangulation of a Cappell-Shaneson 2-knot complement in the 4-sphere.
This triangulation is described and analysed in "Triangulating a Cappell-Shaneson knot complement", Budney, Burton and Hillman, Mathematical Research Letters 19 (2012), no. 5, 1117-1126.
FacePair regina::FacePair::complement | ( | ) | const |
Returns the complement of this face pair.
The complement is the pair containing the two faces not included in this face pair.
|
inline |
Returns the number of cells of the given dimension in the standard CW-decomposition of the boundary of the manifold.
This is a subcomplex of the complex used in countStandardCells().
dimension | the dimension of the cells in question; this must be 0, 1 or 2. |
|
inline |
Returns the number of cells of the given dimension in the dual CW-decomposition of the manifold.
This is typically much smaller than countStandardCells().
dimension | the dimension of the cells in question; this must be 0, 1, 2 or 3. |
|
inline |
Returns the number of cells of the given dimension in the standard genuine CW-decomposition of the manifold.
In the case that the triangulation is a proper triangulation of a manifold (or delta-complex decomposition) it simply returns the same information as in the Triangulation<3> vertex, edge, face and tetrahedron lists.
In the case that this is an ideal triangulation, this algorithm returns the details of the corresponding compact manifold with boundary a union of closed surfaces.
dimension | the dimension of the cells in question; this must be 0, 1, 2 or 3. |
|
static |
Returns a triangulation of a solid genus two torus with a cusped boundary.
This triangulation has one internal finite vertex and one genus two ideal vertex.
|
static |
const MarkedAbelianGroup& regina::HomologicalData::dualHomology | ( | unsigned | q | ) |
This routine gives access to the manifold's homology computed with the dual CW-decomposition.
This routine is typically faster than homology() since the dual CW-decomposition generally has far fewer cells.
Note that the groups returned by homology() and dualHomology() are isomorphic, though they are generally described by different presentations.
q | the dimension of the homology group: can be 0, 1, 2 or 3. |
|
inline |
Returns a comment on whether the manifold might embed in a homology 3-sphere or 4-sphere.
Basically, this routine runs through all the Kawauchi-Kojima conditions, plus a few other ‘elementary’ conditions.
Each comment will be formatted as one or more English sentences (i.e., with capitalisation and punctuation). The comments themselves are subject to change between releases of Regina, since later releases may have more detailed tests at their disposal.
This routine is available for both orientable and non-orientable triangulations. In the non-orientable case it may return additional information regarding the orientable double cover.
|
inline |
The proper Euler characteristic of the manifold, computed from the dual CW-decomposition.
This routine calculates the Euler characteristic of the corresponding compact triangulated 3-manifold, with each ideal vertex treated as a surface boundary component.
This routine returns the same value as Triangulation<3>::eulerCharManifold(), though it computes it in a different way.
On the other hand, this routine differs from Triangulation<3>::eulerCharTri(), which handles ideal triangulations in a non-standard way (treating each ideal vertex as just a single vertex).
|
inline |
Returns the (dim-2)-face number that is opposite the edge joining vertices i and j in a dim-dimensional simplex.
This function is offered because its implementation is faster than working through the FaceNumbering class.
The arguments i and j do not need to appear in ascending order.
i | the first vertex of an edge in a dim-dimensional simplex. This must be between 0 and dim inclusive. |
j | the second vertex of an edge in a dim-dimensional simplex. This must be between 0 and dim inclusive, and must be different from i. |
|
inline |
Creates a new face pair (0,1).
|
default |
Creates a new face pair that is a clone of the given pair.
cloneMe | the face pair to clone. |
regina::FacePair::FacePair | ( | int | newFirst, |
int | newSecond | ||
) |
Creates a new face pair from the two given face numbers.
The two given numbers need not be in any particular order.
newFirst | the first face number in the new pair. |
newSecond | the second face number in the new pair. |
|
inline |
Creates a new face pairing that is a clone of the given face pairing.
cloneMe | the face pairing to clone. |
|
inline |
Creates the face pairing of the given 3-manifold triangulation.
This describes how the tetrahedron faces of the given triangulation are joined together in pairs.
tri | the triangulation whose face pairing should be constructed. |
|
inline |
Creates a new specifier with no initialisation.
This specifier must be initialised before it is used.
|
default |
Creates a new specifier referring to the same simplex facet as the given specifier.
cloneMe | the specifier to clone. |
|
inline |
Creates a new specifier referring to the given facet of the given simplex.
newSimp | the given simplex; see the class notes for allowable values of this parameter. |
newFacet | the given facet; this should be between 0 and dim inclusive. |
|
static |
Returns a two-tetrahedron ideal triangulation of the figure eight knot complement.
void regina::FacetPairing< 3 >::followChain | ( | size_t & | tet, |
FacePair & | faces | ||
) | const |
Follows a chain as far as possible from the given point.
A chain is the underlying face pairing for a layered chain; specifically it involves one tetrahedron joined to a second along two faces, the remaining two faces of the second tetrahedron joined to a third and so on. A chain can involve as few as one tetrahedron or as many as we like. Note that the remaining two faces of the first tetrahedron and the remaining two faces of the final tetrahedron remain unaccounted for by this structure.
This routine begins with two faces of a given tetrahedron, described by parameters tet and faces. If these two faces are both joined to some different tetrahedron, parameter tet will be changed to this new tetrahedron and parameter faces will be changed to the remaining faces of this new tetrahedron (i.e., the two faces that were not joined to the original faces of the original tetrahedron).
This procedure is repeated as far as possible until either the two faces in question join to two different tetrahedra, the two faces join to each other, or at least one of the two faces is unmatched.
Thus, given one end of a chain, this procedure can be used to follow the face pairings through to the other end of the chain.
tet | the index in the underlying triangulation of the tetrahedron to begin at. This parameter will be modified directly by this routine as a way of returning the results. |
faces | the pair of face numbers in the given tetrahedron at which we begin. This parameter will also be modified directly by this routine as a way of returning results. |
bool regina::HomologicalData::formIsHyperbolic | ( | ) |
Returns true iff torsion linking form is ‘hyperbolic’ in the linking-form sense of the word.
To be a little more precise, Poincare-duality in a compact orientable boundaryless manifold gives an isomorphism between the torsion subgroup of H_1(M) denoted tH_1(M) and Hom(tH_1(M),Q/Z), where Q is the rationals and Z the integers. The associated bilinear form (with values in Q/Z) is said to be ‘hyperbolic’ if tH_1(M) splits as a direct sum A+B such that Poincare duality sends A to Hom(B,Q/Z) and B to Hom(A,Q/Z).
true
iff the torsion linking form is hyperbolic.
|
inline |
Returns true iff the torsion linking form is split.
true
iff the linking form is split.
|
inline |
Returns true iff the torsion linking form satisfies the Kawauchi-Kojima 2-torsion condition.
This condition states that on all elements x of order 2^k, 2^{k-1}form(x,x) = 0.
This is a neccessary condition for an orientable 3-manifold perhaps with boundary to embed in a homology 4-sphere.
true
iff the form satisfies the 2-torsion condition of Kawauchi-Kojima.
|
inlinestatic |
|
static |
Returns the one-tetrahedron ideal triangulation of the non-orientable Gieseking manifold.
const HomMarkedAbelianGroup& regina::HomologicalData::h1CellAp | ( | ) |
Returns the isomorphism from dualHomology(1) to homology(1) given by a cellular approximation to the identity map on the manifold.
bool regina::FacetPairing< 3 >::hasBrokenDoubleEndedChain | ( | ) | const |
Determines whether this face pairing contains a broken double-ended chain.
A chain involves a sequence of tetrahedra, each joined to the next along two faces, and is described in detail in the documentation for followChain().
A one-ended chain is a chain in which the first tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered solid torus). A double-ended chain is a chain in which the first tetrahedron is joined to itself along one face and the final tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered lens space).
A broken double-ended chain consists of two one-ended chains (using distinct sets of tetrahedra) joined together along one face. The remaining two faces (one from each chain) that were unaccounted for by the individual one-ended chains remain unaccounted for by this broken double-ended chain.
In this routine we are interested specifically in finding a broken double-ended chain that is not a part of a complete double-ended chain, i.e., the final two unaccounted faces are not joined together.
A face pairing containing a broken double-ended chain cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Face pairing graphs and 3-manifold enumeration", Benjamin A. Burton, J. Knot Theory Ramifications 13 (2004), 1057–1101.
true
if and only if this face pairing contains a broken double-ended chain that is not part of a complete double-ended chain. bool regina::FacetPairing< 3 >::hasDoubleSquare | ( | ) | const |
Determines whether this face pairing contains a double-edged square.
A double-edged square involves four distinct tetrahedra that meet each other as follows. Two pairs of tetrahedra are joined along two pairs of faces each. Then each tetrahedron is joined along a single face to one tetrahedron of the other pair. The four tetrahedron faces not yet joined to anything (one from each tetrahedron) remain unaccounted for by this structure.
true
if and only if this face pairing contains a double-edged square. bool regina::FacetPairing< 3 >::hasDoubleStar | ( | ) | const |
Determines whether this face pairing contains a double-edged star.
A double-edged star involves two tetrahedra that are adjacent along two separate pairs of faces, where the four remaining faces of these tetrahedra are joined to four entirely new tetrahedra (so that none of the six tetrahedra described in this structure are the same).
true
if and only if this face pairing contains a double-edged star. bool regina::FacetPairing< 3 >::hasOneEndedChainWithDoubleHandle | ( | ) | const |
Determines whether this face pairing contains a one-ended chain with a double handle.
A chain involves a sequence of tetrahedra, each joined to the next along two faces, and is described in detail in the documentation for followChain().
A one-ended chain is a chain in which the first tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered solid torus).
A one-ended chain with a double handle begins with a one-ended chain. The two faces that are unaccounted for by this one-ended chain must be joined to two different tetrahedra, and these two tetrahedra must be joined to each other along two faces. The remaining two faces of these two tetrahedra remain unaccounted for by this structure.
A face pairing containing a one-ended chain with a double handle cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Face pairing graphs and 3-manifold enumeration", Benjamin A. Burton, J. Knot Theory Ramifications 13 (2004), 1057–1101.
true
if and only if this face pairing contains a one-ended chain with a double handle. bool regina::FacetPairing< 3 >::hasOneEndedChainWithStrayBigon | ( | ) | const |
Determines whether this face pairing contains a one-ended chain with a stray bigon.
A chain involves a sequence of tetrahedra, each joined to the next along two faces, and is described in detail in the documentation for followChain().
A one-ended chain is a chain in which the first tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered solid torus).
A one-ended chain with a stray bigon describes the following structure. We begin with a one-ended chain. Two new tetrahedra are added; these are joined to each other along two pairs of faces, and one of the new tetrahedra is joined to the end of the one-ended chain. We then ensure that:
Aside from these constraints, the remaining four tetrahedron faces (two faces of the far new tetrahedron, one face of the other new tetrahedron, and one face at the end of the chain) remain unaccounted for by this structure.
A face pairing containing a structure of this type cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Enumeration of non-orientable 3-manifolds using face-pairing graphs and union-find", Benjamin A. Burton, Discrete Comput. Geom. 38 (2007), no. 3, 527–571.
true
if and only if this face pairing contains a one-ended chain with a stray bigon. bool regina::FacetPairing< 3 >::hasSingleStar | ( | ) | const |
Determines whether this face pairing contains a single-edged star.
A single-edged star involves two tetrahedra that are adjacent along a single face, where the six remaining faces of these tetrahedra are joined to six entirely new tetrahedra (so that none of the eight tetrahedra described in this structure are the same).
true
if and only if this face pairing contains a single-edged star. bool regina::FacetPairing< 3 >::hasTripleEdge | ( | ) | const |
Determines whether this face pairing contains a triple edge.
A triple edge is where two different tetrahedra are joined along three of their faces.
A face pairing containing a triple edge cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Face pairing graphs and 3-manifold enumeration", Benjamin A. Burton, J. Knot Theory Ramifications 13 (2004), 1057–1101.
true
if and only if this face pairing contains a triple edge. bool regina::FacetPairing< 3 >::hasTripleOneEndedChain | ( | ) | const |
Determines whether this face pairing contains a triple one-ended chain.
A chain involves a sequence of tetrahedra, each joined to the next along two faces, and is described in detail in the documentation for followChain().
A one-ended chain is a chain in which the first tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered solid torus).
A triple one-ended chain is created from three one-ended chains as follows. Two new tetrahedra are added, and each one-ended chain is joined to each of the new tetrahedra along a single face. The remaining two faces (one from each of the new tetrahedra) remain unaccounted for by this structure.
A face pairing containing a triple one-ended chain cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Enumeration of non-orientable 3-manifolds using face-pairing graphs and union-find", Benjamin A. Burton, Discrete Comput. Geom. 38 (2007), no. 3, 527–571.
true
if and only if this face pairing contains a triple one-ended chain. bool regina::FacetPairing< 3 >::hasWedgedDoubleEndedChain | ( | ) | const |
Determines whether this face pairing contains a wedged double-ended chain.
A chain involves a sequence of tetrahedra, each joined to the next along two faces, and is described in detail in the documentation for followChain().
A one-ended chain is a chain in which the first tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered solid torus). A double-ended chain is a chain in which the first tetrahedron is joined to itself along one face and the final tetrahedron is also joined to itself along one face (i.e., the underlying face pairing for a layered lens space).
A wedged double-ended chain is created from two one-ended chains as follows. Two new tetrahedra are added, and each one-ended chain is joined to each of the new tetrahedra along a single face. In addition, the two new tetrahedra are joined to each other along a single face. The remaining two faces (one from each of the new tetrahedra) remain unaccounted for by this structure.
An alternative way of viewing a wedged double-ended chain is as an ordinary double-ended chain, where one of the internal tetrahedra is removed and replaced with a pair of tetrahedra joined to each other. Whereas the original tetrahedron met its two neighbouring tetrahedra along two faces each (giving a total of four face identifications), the two new tetrahedra now meet each of the two neighbouring tetrahedra along a single face each (again giving four face identifications).
Note that if this alternate construction is used to replace one of the end tetrahedra of the double-ended chain (not an internal tetrahedron), the resulting structure will either be a triple edge or a one-ended chain with a double handle (according to whether the original chain has zero or positive length). See hasTripleEdge() and hasOneEndedChainWithDoubleHandle() for further details.
A face pairing containing a wedged double-ended chain cannot model a closed minimal irreducible P^2-irreducible 3-manifold triangulation on more than two tetrahedra. See "Enumeration of non-orientable 3-manifolds using face-pairing graphs and union-find", Benjamin A. Burton, Discrete Comput. Geom. 38 (2007), no. 3, 527–571.
true
if and only if this face pairing contains a wedged double-ended chain.
|
inline |
Copy constructor.
h | the homological data to clone. |
|
inline |
Takes as input a triangulation.
This class takes its own copy of the input triangulation. This means that the input triangulation can change or even be destroyed, and this homological data will happily continue to work with the original triangulation as it was first passed to the constructor.
input | the triangulation to use. |
const MarkedAbelianGroup& regina::HomologicalData::homology | ( | unsigned | q | ) |
This routine gives access to the manifold's homology computed with the regular CW-decomposition.
This routine is typically slower than dualHomology(), since dualHomology() uses the dual CW-decomposition which typically has an order of magnitude fewer cells.
Note that the groups returned by homology() and dualHomology() are isomorphic, though they are generally described by different presentations.
q | the dimension of the homology group: can be 0, 1, 2 or 3. |
|
static |
Returns a triangulation of the product M x I
, where M is the given 3-manifold triangulation.
The boundary of this product will consist of two copies of M, both combinatorially isomorphic to the original triangulation. If n is the number of tetrahedra in M, then the first copy of M on the boundary is obtained by mapping vertices 0,1,2,3 of tetrahedron i of M to vertices 0,1,2,3 of pentachoron i, and the second copy is obtained by mapping vertices 0,1,2,3 of tetrahedron i of M to vertices 0,1,2,3 of pentachoron n+i.
The product itself will contain 82 pentachora for each original tetrahedron of M, and will contain many internal vertices. It is highly recommended that you call Triangulation<4>::intelligentSimplify() afterwards if you do not need to preserve the combinatorial structure.
base | the 3-manifold triangulation M, as described above. |
|
inline |
Finds the index of the given integer in this array.
This routine runs in logarithmic time (it uses a binary search).
value | the integer to search for. |
|
inline |
Determines if this face pair represents a before-the-start value.
true
if and only if this face pair is before-the-start.
|
inline |
Determines if this specifier represents a before-the-start value.
true
if and only if this specifier is before-the-start.
|
inline |
Determines if this specifier represents the overall boundary.
nSimplices | the number of simplices under consideration. Note that the boundary is represented in this specifier as simplex nSimplices, facet 0. |
true
if and only if this specifier represents the overall boundary.
|
inline |
Determines if this face pair represents a past-the-end value.
true
if and only if this face pair is past-the-end.
|
inline |
Determines if this specifier represents a past-the-end value.
You can optionally declare the overall boundary to be past-the-end as well as the already predefined past-the-end value.
nSimplices | the number of simplices under consideration. Note that past-the-end is represented in this specifier as simplex nSimplices, facet 1. |
boundaryAlso | true if the overall boundary should be considered past-the-end in addition to the predefined past-the-end value. |
true
if and only if this specifier is past-the-end.
|
static |
Returns a two-triangle Klein bottle.
This is isomorphic to the triangulation returned by the generic routine twistedSphereBundle(), though it will have a different packet label.
|
static |
Returns a triangulation of the lens space L(p,q)
.
The triangulation uses a layered lens space, which is conjectured (but not proven in all cases) to be the triangulation requiring the fewest tetrahedra.
p | a parameter of the desired lens space. |
q | a parameter of the desired lens space. |
|
inline |
Returns the smaller of the two face numbers in this pair.
|
static |
Returns the layered solid torus LST(a,b,c)
.
This is a parameterised triangulation of the solid torus. It has two boundary triangles and three boundary edges, and the meridional disc of the solid torus cuts these boundary edges a, b and c times respectively.
Only the parameters a and b are passed as arguments to this routine. The third parameter c will be deduced automatically as c = (a + b).
a | the first parameter of the layered solid torus. |
b | the second parameter of the layered solid torus. |
|
static |
Returns a one-triangle Mobius band.
This is isomorphic to the triangulation returned by the generic routine twistedBallBundle(), though it will have a different packet label.
|
static |
Returns a triangulation of the given non-orientable surface.
genus | the non-orientable genus of the surface, i.e., the number of crosscaps that it contains; this must be greater than or equal to one. |
punctures | the number of punctures in the surface; this must be greater than or equal to zero. |
|
inline |
Determines if this and the given face pair are not equal.
other | the pair to compare with this. |
true
if and only if this and the given pair are not equal.
|
inline |
Determines if this and the given specifier are not identical.
other | the specifier to compare with this. |
true
if and only if this and the given specifier are not equal. FacePair& regina::FacePair::operator++ | ( | ) |
Increments this face pair.
It will be set to the following face pair in the lexicographical ordering, or to a past-the-end value if there are no more face pairs.
This is a preincrement operator: the object will be changed, and then a reference to it will be returned.
|
inline |
Increments this specifier.
It will be changed to point to the next simplex facet.
Facets are ordered first by simplex index and then by facet number. The overall boundary appears after all other facets.
|
inline |
Increments this face pair.
It will be set to the following face pair in the lexicographical ordering, or to a past-the-end value if there are no more face pairs.
This is a postincrement operator: the object will be changed, but a copy of the original reference will be returned.
|
inline |
Increments this specifier.
It will be changed to point to the next simplex facet.
Facets are ordered first by simplex index and then by facet number. The overall boundary appears after all other facets.
FacePair& regina::FacePair::operator-- | ( | ) |
Decrements this face pair.
It will be set to the previous face pair in the lexicographical ordering, or to a before-the-start value if there are no previous face pairs.
This is a predecrement operator: the object will be changed, and then a reference to it will be returned.
|
inline |
Decrements this specifier.
It will be changed to point to the previous simplex facet.
Facets are ordered first by simplex index and then by facet number. The overall boundary appears after all other facets.
|
inline |
Decrements this face pair.
It will be set to the previous face pair in the lexicographical ordering, or to a before-the-start value if there are no previous face pairs.
This is a postdecrement operator: the object will be changed, but a copy of the original reference will be returned.
|
inline |
Decrements this specifier.
It will be changed to point to the previous simplex facet.
Facets are ordered first by simplex index and then by facet number. The overall boundary appears after all other facets.
|
inline |
Determines if this is less than the given face pair.
other | the pair to compare with this. |
true
if and only if this is less than other.
|
inline |
Determines if this is less than the given specifier.
other | the specifier to compare with this. |
true
if and only if this is less than the given specifier. std::ostream& regina::operator<< | ( | std::ostream & | out, |
const FacePair & | pair | ||
) |
Writes the given face pair to the given output stream.
out | the output stream to which to write. |
pair | the face pair to write. |
std::ostream& regina::operator<< | ( | std::ostream & | out, |
const FacetSpec< dim > & | spec | ||
) |
Writes the given facet specifier to the given output stream.
out | the output stream to which to write. |
spec | the specifier to write. |
|
inline |
Determines if this is less than or equal to the given face pair.
other | the pair to compare with this. |
true
if and only if this is less than or equal to other.
|
inline |
Determines if this is less than or equal to the given specifier.
other | the specifier to compare with this. |
true
if and only if this is less than or equal to the given specifier. Sets this face pair to be a copy of the given pair.
cloneMe | the face pair to clone. |
|
default |
Sets this specifier to the value of the given specifier.
other | the given specifier. |
|
default |
Set this to a clone of the given array.
|
inline |
Determines if this and the given face pair are equal.
other | the pair to compare with this. |
true
if and only if this and the given pair are equal.
|
inline |
Determines if this and the given specifier are identical.
other | the specifier to compare with this. |
true
if and only if this and the given specifier are equal.
|
inline |
Determines if this is greater than the given face pair.
other | the pair to compare with this. |
true
if and only if this is greater than other.
|
inline |
Determines if this is greater than or equal to the given face pair.
other | the pair to compare with this. |
true
if and only if this is greater than or equal to other.
|
inline |
Return the integer at the given index in this array.
index | the requested array index; this must be between 0 and size()-1 inclusive. |
|
static |
Returns a triangulation of the given orientable surface.
genus | the genus of the surface; this must be greater than or equal to zero. |
punctures | the number of punctures in the surface; this must be greater than or equal to zero. |
|
static |
Returns the five-tetrahedron triangulation of the Poincare homology sphere.
|
inline |
Pushes the given integer onto the end of this array.
value | the integer to insert into this array. |
|
static |
Returns a two-triangle projective plane.
|
static |
Returns a three-tetrahedron triangulation of the non-orientable product space RP^2 x S^1
.
|
static |
Returns a triangulation of the connected sum RP^3 # RP^3
.
|
static |
Returns a four-pentachoron triangulation of real projective 4-space.
|
static |
Returns a triangulation of the product M x S1
, where M is the given 3-manifold triangulation.
This simply calls iBundle() and then glues together the two copies of M on the boundary.
The product will contain 82 pentachora for each original tetrahedron of M, and will contain many internal vertices. It is highly recommended that you call Triangulation<4>::intelligentSimplify() afterwards if you do not need to preserve the combinatorial structure.
base | the 3-manifold triangulation M, as described above. |
|
inlinestatic |
Returns a two-tetrahedron triangulation of the product space S^2 x S^1
.
This is identical to calling the generic routine sphereBundle().
|
inlinestatic |
Returns a two-pentachoron triangulation of the product space S^3 x S^1
.
This is identical to calling the generic routine sphereBundle().
|
inlinestatic |
Returns a two-pentachoron triangulation of the twisted product space S^3 x~ S^1
.
This is identical to calling the generic routine twistedSphereBundle().
|
inline |
Sets this specifier to before-the-start.
|
inline |
Sets this specifier to the overall boundary.
nSimplices | the number of simplices under consideration. Note that the boundary is represented in this specifier as simplex nSimplices, facet 0. |
|
inline |
Sets this specifier to the first facet of the first simplex.
|
inline |
Sets this specifier to past-the-end.
nSimplices | the number of simplices under consideration. Note that past-the-end is represented in this specifier as simplex nSimplices, facet 1. |
|
inlinestatic |
Returns the standard six-pentachoron triangulation of the 4-sphere as the boundary of a 5-simplex.
This is identical to calling the generic routine simplicialSphere().
|
inline |
Return the number of elements in this array.
|
static |
Returns the eleven-tetrahedron closed non-orientable hyperbolic 3-manifold with volume 2.02988321.
|
static |
Returns the nine-tetrahedron closed orientable hyperbolic 3-manifold with volume 0.94270736.
|
static |
Returns a triangulation of the solid Klein bottle.
This is isomorphic to the triangulation returned by the generic routine twistedBallBundle(), though it will have a different packet label.
|
inline |
Construct an empty array.
|
default |
Construct a clone of the given array.
|
static |
Returns the boundary 3-sphere of the regular 600-cell.
This is a triangulation of the 3-sphere that is a simplicial complex, and in which every edge has degree five.
The triangulation was extracted from the Benedetti-Lutz library of triangulations. See: http://page.math.tu-berlin.de/~lutz/stellar/library_of_triangulations.html
|
static |
Returns the eight-triangle 2-sphere formed from the boundary of an octahedron.
|
static |
Returns the four-triangle 2-sphere formed from the boundary of a tetrahedron.
This is isomorphic to the triangulation returned by the generic routine simplicialSphere(), though it will have a different packet label.
|
inline |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation.
If subTagName names an XML element that describes an optional property of a triangulation (such as H1
or fundgroup
for 3-manifold triangulations), then this function should return a corresponding element reader.
Otherwise this function should return a new XMLElementReader, which will cause the XML element to be ignored.
subTagName | the name of the XML subelement opening tag. |
subTagProps | the properties associated with the subelement opening tag. |
|
inline |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation.
If subTagName names an XML element that describes an optional property of a triangulation (such as H1
or fundgroup
for 3-manifold triangulations), then this function should return a corresponding element reader.
Otherwise this function should return a new XMLElementReader, which will cause the XML element to be ignored.
subTagName | the name of the XML subelement opening tag. |
subTagProps | the properties associated with the subelement opening tag. |
XMLElementReader* regina::XMLTriangulationReader< 3 >::startPropertySubElement | ( | const std::string & | subTagName, |
const regina::xml::XMLPropertyDict & | subTagProps | ||
) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation.
If subTagName names an XML element that describes an optional property of a triangulation (such as H1
or fundgroup
for 3-manifold triangulations), then this function should return a corresponding element reader.
Otherwise this function should return a new XMLElementReader, which will cause the XML element to be ignored.
subTagName | the name of the XML subelement opening tag. |
subTagProps | the properties associated with the subelement opening tag. |
XMLElementReader* regina::XMLTriangulationReader< 4 >::startPropertySubElement | ( | const std::string & | subTagName, |
const regina::xml::XMLPropertyDict & | subTagProps | ||
) |
Returns an XML element reader for the given optional property of a dim-dimensional triangulation.
If subTagName names an XML element that describes an optional property of a triangulation (such as H1
or fundgroup
for 3-manifold triangulations), then this function should return a corresponding element reader.
Otherwise this function should return a new XMLElementReader, which will cause the XML element to be ignored.
subTagName | the name of the XML subelement opening tag. |
subTagProps | the properties associated with the subelement opening tag. |
|
static |
|
inline |
Returns the odd p-torsion Legendre symbol vector.
This is the last of the three Kawauchi-Kojima invariants.
For details, see "Algebraic classification of linking pairings on 3-manifolds", Akio Kawauchi and Sadayoshi Kojima, Math. Ann. 253 (1980), 29–42.
|
inline |
Same as torsionLegendreSymbolVector() but returns as a human-readable string.
|
inline |
Returns the torsion form rank vector.
This is the first of the three Kawauchi-Kojima complete invariants of the torsion linking form.
This vector describes the rank of the torsion subgroup of H1, given in prime power form. It is a vector of pairs (p, x), where p is a prime and x is its exponent.
For details, see "Algebraic classification of linking pairings on 3-manifolds", Akio Kawauchi and Sadayoshi Kojima, Math. Ann. 253 (1980), 29–42.
|
inline |
Same as torsionRankVector() but returns as a human-readable string.
|
inline |
Returns the 2-torsion sigma vector.
This is the second of the three Kawauchi-Kojima invariants. It is orientation-sensitive.
For details, see "Algebraic classification of linking pairings on 3-manifolds", Akio Kawauchi and Sadayoshi Kojima, Math. Ann. 253 (1980), 29–42.
|
inline |
Same as torsionSigmaVector() but returns as a human-readable string.
This is an orientation-sensitive invariant.
|
static |
Returns a two-triangle torus.
This is isomorphic to the triangulation returned by the generic routine sphereBundle(), though it will have a different packet label.
|
static |
Returns a two-tetrahedron ideal triangulation of the trefoil knot complement.
|
inline |
Returns the larger of the two face numbers in this pair.
|
static |
Returns a one-vertex triangulation of the Weber-Seifert dodecahedral space.
This 3-manifold is described in "Die beiden Dodekaederraume", C. Weber and H. Seifert, Math. Z. 37 (1933), no. 1, 237-253. The triangulation returned by this routine (with 23 tetrahedra) is given in "The Weber-Seifert dodecahedral space is non-Haken", Benjamin A. Burton, J. Hyam Rubinstein and Stephan Tillmann, Trans. Amer. Math. Soc. 364:2 (2012), pp. 911-932.
|
static |
Returns a nine-tetrahedron minimal triangulation of the Weeks manifold.
The Weeks manifold is the smallest-volume closed hyperbolic 3-manifold, with a volume of roughly 0.9427. Note that there are nine minimal triangulations of the Weeks manifold (of course this routine returns just one).
|
static |
Returns a four-tetrahedron ideal triangulation of the Whitehead link complement.
void regina::HomologicalData::writeTextShort | ( | std::ostream & | out | ) | const |
Writes a short text representation of this object to the given output stream.
Note this only writes pre-computed data. Thus if you have not yet asked HomologicalData to compute anything about this triangulation, writeTextShort may be empty.
out | the output stream to which to write. |
|
inline |
Creates a new triangulation reader.
resolver | the master resolver that will be used to fix dangling packet references after the entire XML file has been read. |
|
inline |
Creates a new triangulation reader.
resolver | the master resolver that will be used to fix dangling packet references after the entire XML file has been read. |
|
inline |
Creates a new triangulation reader.
resolver | the master resolver that will be used to fix dangling packet references after the entire XML file has been read. |
|
inline |
Creates a new triangulation reader.
resolver | the master resolver that will be used to fix dangling packet references after the entire XML file has been read. |
|
inline |
Destructor.
int regina::FacetSpec< dim >::facet |
The facet of the simplex referred to.
The facet number is between 0 and dim inclusive.
int regina::FacetSpec< dim >::simp |
The simplex referred to.
Simplex numbering begins at 0.