This file contains a definition of a general geometric complex which represents a polyhedron. More...
#include "chomp/system/config.h"#include "chomp/system/textfile.h"#include "chomp/struct/integer.h"#include "chomp/struct/hashsets.h"#include "chomp/homology/chains.h"#include "chomp/homology/gcomplex.h"#include <iostream>#include <fstream>#include <iomanip>#include <cstdlib>Go to the source code of this file.
Classes | |
| class | chomp::homology::gcomplex< cell, euclidom > |
| The class that defines a geometric complex - a set of cells (cubes, simplices, etc). More... | |
| class | chomp::homology::mvcellmap< cell, euclidom, element > |
| This class represents a multivalued map whose domain is a geometric complex. More... | |
Namespaces | |
| namespace | chomp |
This namespace contains the entire CHomP library interface. | |
| namespace | chomp::homology |
This namespace contains the core of the homology computation procedures and related classes and templates contained in the CHomP C++ library. | |
Functions | |
| template<class cell > | |
| int | chomp::homology::boundarycoef (const cell &, int i) |
| template<class cell > | |
| int | chomp::homology::boundarylength (const cell &) |
| template<class cell > | |
| cell | chomp::homology::boundarycell (const cell &, int i) |
| template<class element > | |
| int_t | chomp::homology::findelem (const multitable< element > &tab, const element &e, int_t len) |
| Finds the given element in the table of given length. | |
| template<class cell , class euclidom > | |
| chaincomplex< euclidom > & | chomp::homology::createchaincomplex (chaincomplex< euclidom > &c, const gcomplex< cell, euclidom > &g, bool quiet=false) |
| Creates an algebraic chain complex based on the data from the given geometric cell complex. | |
| template<class cell , class euclidom > | |
| std::ostream & | chomp::homology::writechaincomplex (std::ostream &out, const gcomplex< cell, euclidom > &g, bool symbolicnames=false, bool quiet=false) |
| Writes out a chain complex of the geometric cell complex. | |
| template<class cell , class euclidom > | |
| chaincomplex< euclidom > & | chomp::homology::createchaincomplex (chaincomplex< euclidom > &c, const gcomplex< cell, euclidom > &g, const gcomplex< cell, euclidom > &rel, bool quiet=false) |
| Creates a relative algebraic chain complex with the data from the given pair of geometric cell complexes. | |
| template<class cell , class euclidom > | |
| std::ostream & | chomp::homology::writegenerators (std::ostream &out, const chain< euclidom > *hom, const chaincomplex< euclidom > &c, const gcomplex< cell, euclidom > &g, const int *level=NULL) |
| Writes the homology generators of the geometric complex to a file. | |
| template<class cell , class euclidom > | |
| gcomplex< cell, euclidom > & | chomp::homology::creategraph (const mvmap< cell, cell > &m, gcomplex< cell, euclidom > &graph) |
| Add a graph of a multivalued cell map to the cell complex. | |
| template<class cell , class euclidom > | |
| bool | chomp::homology::acyclic (gcomplex< cell, euclidom > &c) |
| Checks whether this chain complex is acyclic. | |
| template<class cell , class euclidom > | |
| std::ostream & | chomp::homology::operator<< (std::ostream &out, const gcomplex< cell, euclidom > &c) |
| Writes a geometric complex to the output stream in the text format. | |
| template<class cell , class euclidom > | |
| std::istream & | chomp::homology::operator>> (std::istream &in, gcomplex< cell, euclidom > &c) |
| Reads a geometric complex from an input stream in the text format. | |
| template<class cell , class euclidom , class element > | |
| void | chomp::homology::creategraph (const mvcellmap< cell, euclidom, element > &m, gcomplex< cell, euclidom > &c, bool addbd) |
| Creates the full graph of a map as a cellular complex. | |
| template<class cell , class euclidom , class element > | |
| void | chomp::homology::creategraph (const mvcellmap< cell, euclidom, element > &m, const gcomplex< cell, euclidom > &rel, gcomplex< cell, euclidom > &c, bool addbd) |
| Creates the full graph of a map as a cellular complex. | |
| template<class cell , class euclidom , class element > | |
| void | chomp::homology::createcellmap (const mvcellmap< cell, euclidom, element > &m, mvcellmap< cell, euclidom, cell > &cm) |
| Creates the graph of the map as a cell complex while reducing as possible. | |
| template<class cell , class euclidom , class element > | |
| bool | chomp::homology::createcellmap (const mvcellmap< cell, euclidom, element > &m, const mvcellmap< cell, euclidom, element > &rel, mvcellmap< cell, euclidom, cell > &cm, bool verifyacyclicity) |
| Creates the graph of the map as a cell complex while reducing as possible. | |
| template<class cell , class euclidom , class element > | |
| std::ostream & | chomp::homology::operator<< (std::ostream &out, const mvcellmap< cell, euclidom, element > &m) |
| Writes a multivalued cellular map to the output stream. | |
This file contains a definition of a general geometric complex which represents a polyhedron.
It can be either a cubical complex, a simplicial complex, or a general CW-complex. Several procedures related to the homology computation are also implemented.
Definition in file gcomplex.h.
1.7.1