BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
belfem::mesh::SimplicialComplex Class Reference

Simplicial complex reduction engine underlying the homology and cohomology computation. More...

#include <cl_SimplicialComplex.hpp>

Public Member Functions

 SimplicialComplex (Mesh *aMesh, bool aPeriodicity=false)
 ~SimplicialComplex ()
void reset ()
void create_complex (Mesh *aMesh, bool aPeriodicity)
void reduce_complexCCR ()
void coreduce_complexCCR ()
void reduce_complexCCR_old ()
void coreduce_complexCCR_old ()
void reduce_pair (const uint k, const uint a, Map< index_t, Chain * >::const_iterator &bit, const int aCoeff)
void coreduce_pair (const uint k, const uint a, Map< index_t, Cochain * >::const_iterator &bit, const int aCoeff)
void pReduce (const uint p)
void pCombine (const uint p)
void pGeneralizedCombine (const uint p)
void reduceOmit ()
void reduce_complexPellikka ()
void reduce_complexPellikkaGeneralized ()
void pCoreduce (const uint p)
void pCocombine (const uint p)
void pGeneralizedCocombine (const uint p)
void coreduceOmit ()
void coreduce_complexPellikka ()
void coreduce_complexPellikkaGeneralized ()
void remove_kchainFromMap (const uint k, const index_t aID)
void remove_kcochainFromMap (const uint k, const index_t aID)
uint number_of_0simplices () const
uint number_of_1simplices () const
uint number_of_2simplices () const
uint number_of_ksimplices (const uint k) const
uint number_of_kcosimplices (const uint k) const
Chainget_kchain (const uint k, const index_t aID)
Cochainget_kcochain (const uint k, const index_t aID)
Map< index_t, Chain * > get_kchainMap (const uint k)
Map< index_t, Cochain * > get_kcochainMap (const uint k)
Chainboundary_of_kchain (const uint k, const index_t aID)
Cell< Matrix< int > > createMatrixFromBoundaryMap ()
Cell< Matrix< int > > createMatrixFromCoboundaryMap ()
void print_kchains (const uint k)
void create_kComplexField (const uint k, Mesh *aMesh, string aFieldName)
void cocreate_kComplexField (const uint k, Mesh *aMesh, string aFieldName)
const DynamicBitsetoriginal_edges () const

Detailed Description

Simplicial complex reduction engine underlying the homology and cohomology computation.

See also
Cohomology Computation Algorithms in BELFEM

Constructor & Destructor Documentation

◆ SimplicialComplex()

belfem::mesh::SimplicialComplex::SimplicialComplex ( Mesh * aMesh,
bool aPeriodicity = false )

◆ ~SimplicialComplex()

belfem::mesh::SimplicialComplex::~SimplicialComplex ( )

Member Function Documentation

◆ boundary_of_kchain()

Chain * belfem::mesh::SimplicialComplex::boundary_of_kchain ( const uint k,
const index_t aID )

◆ cocreate_kComplexField()

void belfem::mesh::SimplicialComplex::cocreate_kComplexField ( const uint k,
Mesh * aMesh,
string aFieldName )

◆ coreduce_complexCCR()

void belfem::mesh::SimplicialComplex::coreduce_complexCCR ( )

◆ coreduce_complexCCR_old()

void belfem::mesh::SimplicialComplex::coreduce_complexCCR_old ( )

◆ coreduce_complexPellikka()

void belfem::mesh::SimplicialComplex::coreduce_complexPellikka ( )

◆ coreduce_complexPellikkaGeneralized()

void belfem::mesh::SimplicialComplex::coreduce_complexPellikkaGeneralized ( )

◆ coreduce_pair()

void belfem::mesh::SimplicialComplex::coreduce_pair ( const uint k,
const uint a,
Map< index_t, Cochain * >::const_iterator & bit,
const int aCoeff )

◆ coreduceOmit()

void belfem::mesh::SimplicialComplex::coreduceOmit ( )

◆ create_complex()

void belfem::mesh::SimplicialComplex::create_complex ( Mesh * aMesh,
bool aPeriodicity )

◆ create_kComplexField()

void belfem::mesh::SimplicialComplex::create_kComplexField ( const uint k,
Mesh * aMesh,
string aFieldName )

◆ createMatrixFromBoundaryMap()

Cell< Matrix< int > > belfem::mesh::SimplicialComplex::createMatrixFromBoundaryMap ( )

◆ createMatrixFromCoboundaryMap()

Cell< Matrix< int > > belfem::mesh::SimplicialComplex::createMatrixFromCoboundaryMap ( )

◆ get_kchain()

Chain * belfem::mesh::SimplicialComplex::get_kchain ( const uint k,
const index_t aID )

◆ get_kchainMap()

Map< index_t, Chain * > belfem::mesh::SimplicialComplex::get_kchainMap ( const uint k)

◆ get_kcochain()

Cochain * belfem::mesh::SimplicialComplex::get_kcochain ( const uint k,
const index_t aID )

◆ get_kcochainMap()

Map< index_t, Cochain * > belfem::mesh::SimplicialComplex::get_kcochainMap ( const uint k)

◆ number_of_0simplices()

uint belfem::mesh::SimplicialComplex::number_of_0simplices ( ) const
inline

◆ number_of_1simplices()

uint belfem::mesh::SimplicialComplex::number_of_1simplices ( ) const
inline

◆ number_of_2simplices()

uint belfem::mesh::SimplicialComplex::number_of_2simplices ( ) const
inline

◆ number_of_kcosimplices()

uint belfem::mesh::SimplicialComplex::number_of_kcosimplices ( const uint k) const
inline

◆ number_of_ksimplices()

uint belfem::mesh::SimplicialComplex::number_of_ksimplices ( const uint k) const
inline

◆ original_edges()

const DynamicBitset & belfem::mesh::SimplicialComplex::original_edges ( ) const
inline

◆ pCocombine()

void belfem::mesh::SimplicialComplex::pCocombine ( const uint p)

◆ pCombine()

void belfem::mesh::SimplicialComplex::pCombine ( const uint p)

◆ pCoreduce()

void belfem::mesh::SimplicialComplex::pCoreduce ( const uint p)
inline

◆ pGeneralizedCocombine()

void belfem::mesh::SimplicialComplex::pGeneralizedCocombine ( const uint p)

◆ pGeneralizedCombine()

void belfem::mesh::SimplicialComplex::pGeneralizedCombine ( const uint p)

◆ pReduce()

void belfem::mesh::SimplicialComplex::pReduce ( const uint p)

◆ print_kchains()

void belfem::mesh::SimplicialComplex::print_kchains ( const uint k)

◆ reduce_complexCCR()

void belfem::mesh::SimplicialComplex::reduce_complexCCR ( )

◆ reduce_complexCCR_old()

void belfem::mesh::SimplicialComplex::reduce_complexCCR_old ( )

◆ reduce_complexPellikka()

void belfem::mesh::SimplicialComplex::reduce_complexPellikka ( )

◆ reduce_complexPellikkaGeneralized()

void belfem::mesh::SimplicialComplex::reduce_complexPellikkaGeneralized ( )

◆ reduce_pair()

void belfem::mesh::SimplicialComplex::reduce_pair ( const uint k,
const uint a,
Map< index_t, Chain * >::const_iterator & bit,
const int aCoeff )

◆ reduceOmit()

void belfem::mesh::SimplicialComplex::reduceOmit ( )

◆ remove_kchainFromMap()

void belfem::mesh::SimplicialComplex::remove_kchainFromMap ( const uint k,
const index_t aID )

◆ remove_kcochainFromMap()

void belfem::mesh::SimplicialComplex::remove_kcochainFromMap ( const uint k,
const index_t aID )
inline

◆ reset()

void belfem::mesh::SimplicialComplex::reset ( )

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