Moka libraries
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
GMap3d::CHomology Class Reference

#include <compute-homology.hh>

Public Member Functions

 CHomology (CGMapVertex *AMap, int AMark=-1)
 Default constructor, itializing the gmap.
 
 ~CHomology ()
 Destructor.
 
bool computeSurfacicHomology ()
 
bool computeVolumicHomology ()
 
unsigned long size () const
 Return the memory size (in bytes) required for the matrixes.
 
unsigned int getH0FreeGenerators ()
 Return the number of H0 free generators.
 
unsigned int getH1FreeGenerators ()
 Return the number of H1 free generators.
 
unsigned int getH1TorsionGenerators ()
 Return the number of H1 torsion generators.
 
unsigned int getH2FreeGenerators ()
 Return the number of H2 generators.
 
unsigned int getH2TorsionGenerators ()
 Return the number of H2 torsion generators.
 
unsigned int getH3FreeGenerators ()
 Return the number of H3 generators.
 
bool getShowH0 () const
 Get the value of FShowH0.
 
bool getShowH1free () const
 Get the value of FShowH1free.
 
bool getShowH1torsion () const
 Get the value of FShowH1torsion.
 
bool getShowH2free () const
 Get the value of FShowH2free.
 
bool getShowH2torsion () const
 Get the value of FShowH2torsion.
 
bool getShowH3 () const
 Get the value of FShowH3.
 
void setShowH0 (bool AValue)
 Set the value of FShowH0 and update the selected darts accordingly.
 
void setShowH1free (bool AValue)
 Set the value of FShowH1free and update the selected darts accordingly.
 
void setShowH1torsion (bool AValue)
 Set the value of FShowH1torsion and update the selected darts accordingly.
 
void setShowH2free (bool AValue)
 Set the value of FShowH2free and update the selected darts accordingly.
 
void setShowH2torsion (bool AValue)
 Set the value of FShowH2torsion and update the selected darts accordingly.
 
void setShowH3 (bool AValue)
 Set the value of FShowH3 and update the selected darts accordingly.
 

Protected Member Functions

void computeIncidence (int ADim, bool AComputeNextCells=false)
 
int computeIncidenceNumber (CDart *ADart, int ADim, CDart *ADart2, int AIndex)
 
void updateSelectedDarts ()
 Update the marked darts depending on which generators are drawn.
 

Detailed Description

Definition at line 36 of file compute-homology.hh.

Constructor & Destructor Documentation

CHomology::CHomology ( CGMapVertex *  AMap,
int  AMark = -1 
)

Default constructor, itializing the gmap.

Definition at line 31 of file compute-homology.cc.

CHomology::~CHomology ( )

Destructor.

Definition at line 50 of file compute-homology.cc.

Member Function Documentation

void CHomology::computeIncidence ( int  ADim,
bool  AComputeNextCells = false 
)
protected

Compute the incidence matrix for cells of dimension ADim. The incidence matrix FMatrix[ADim] is updated.

Parameters
ADimthe dimension of the incidence matrix (0 for vertex-edge, 1 for edge-face, 2 for face-volume)
AComputeNextCellstrue to compute also the ADim+1 cells (ADim >= 0) && (ADim < 3)

Definition at line 146 of file compute-homology.cc.

int CHomology::computeIncidenceNumber ( CDart *  ADart,
int  ADim,
CDart *  ADart2,
int  AIndex 
)
protected

Compute the incidence number of cell c=(ADart,ADim), relatively to the cell c2=(ADart2,ADim+1). Incidence number is the number of times c is incident to c2. This number is signed depending if the two cells have the same orientation (+) or not (-).

Parameters
ADartA dart of the cell c
ADimThe dimension of the cell c
ADartA adart of the cell c2
AIndexA direct info which number each ADim cell (+i or -i).
Returns
The signed incidence number of c in c2

(ADim >= 0) && (ADim < 3)

Definition at line 65 of file compute-homology.cc.

bool CHomology::computeSurfacicHomology ( )

Compute the homology of the gmap as it was a 2D generalized map.

Returns
true if the homology is computed, false otherwise (case of not enough memory)

Definition at line 260 of file compute-homology.cc.

bool CHomology::computeVolumicHomology ( )

Compute the homology of the 3-gmap.

Returns
true if the homology is computed, false otherwise (case of not enough memory)

Definition at line 316 of file compute-homology.cc.

unsigned int CHomology::getH0FreeGenerators ( )

Return the number of H0 free generators.

Definition at line 392 of file compute-homology.cc.

unsigned int CHomology::getH1FreeGenerators ( )

Return the number of H1 free generators.

Definition at line 395 of file compute-homology.cc.

unsigned int CHomology::getH1TorsionGenerators ( )

Return the number of H1 torsion generators.

Definition at line 398 of file compute-homology.cc.

unsigned int CHomology::getH2FreeGenerators ( )

Return the number of H2 generators.

Definition at line 401 of file compute-homology.cc.

unsigned int CHomology::getH2TorsionGenerators ( )

Return the number of H2 torsion generators.

Definition at line 404 of file compute-homology.cc.

unsigned int CHomology::getH3FreeGenerators ( )

Return the number of H3 generators.

Definition at line 407 of file compute-homology.cc.

bool CHomology::getShowH0 ( ) const

Get the value of FShowH0.

Definition at line 410 of file compute-homology.cc.

bool CHomology::getShowH1free ( ) const

Get the value of FShowH1free.

Definition at line 412 of file compute-homology.cc.

bool CHomology::getShowH1torsion ( ) const

Get the value of FShowH1torsion.

Definition at line 414 of file compute-homology.cc.

bool CHomology::getShowH2free ( ) const

Get the value of FShowH2free.

Definition at line 416 of file compute-homology.cc.

bool CHomology::getShowH2torsion ( ) const

Get the value of FShowH2torsion.

Definition at line 418 of file compute-homology.cc.

bool CHomology::getShowH3 ( ) const

Get the value of FShowH3.

Definition at line 420 of file compute-homology.cc.

void CHomology::setShowH0 ( bool  AValue)

Set the value of FShowH0 and update the selected darts accordingly.

Definition at line 423 of file compute-homology.cc.

void CHomology::setShowH1free ( bool  AValue)

Set the value of FShowH1free and update the selected darts accordingly.

Definition at line 432 of file compute-homology.cc.

void CHomology::setShowH1torsion ( bool  AValue)

Set the value of FShowH1torsion and update the selected darts accordingly.

Definition at line 441 of file compute-homology.cc.

void CHomology::setShowH2free ( bool  AValue)

Set the value of FShowH2free and update the selected darts accordingly.

Definition at line 450 of file compute-homology.cc.

void CHomology::setShowH2torsion ( bool  AValue)

Set the value of FShowH2torsion and update the selected darts accordingly.

Definition at line 459 of file compute-homology.cc.

void CHomology::setShowH3 ( bool  AValue)

Set the value of FShowH3 and update the selected darts accordingly.

Definition at line 468 of file compute-homology.cc.

unsigned long CHomology::size ( ) const

Return the memory size (in bytes) required for the matrixes.

Definition at line 56 of file compute-homology.cc.

void CHomology::updateSelectedDarts ( )
protected

Update the marked darts depending on which generators are drawn.

Definition at line 477 of file compute-homology.cc.


The documentation for this class was generated from the following files: