OOFEM 2.4
OOFEM.org - Object Oriented Finite Element Solver
oofem::ConnectivityTable Class Reference

Class representing connectivity table. More...

#include <connectivitytable.h>

+ Collaboration diagram for oofem::ConnectivityTable:

Public Member Functions

 ConnectivityTable (Domain *d)
 Constructor.
 
 ~ConnectivityTable ()
 Destructor.
 
void reset ()
 reset receiver to an initial state (will force table update, when needed next time)
 
void setDomain (Domain *ipDomain)
 
void instanciateConnectivityTable ()
 Builds connectivity table.
 
const IntArraygiveDofManConnectivityArray (int dofman)
 
void giveElementNeighbourList (IntArray &answer, const IntArray &elemList)
 Returns list of neighboring elements to given elements (they are included too).
 
void giveNodeNeighbourList (IntArray &answer, IntArray &nodeList)
 Returns list of elements sharing any given nodes.
 
void giveElementsWithNodes (IntArray &answer, const IntArray &nodes)
 Return list of elements sharing all given nodes.
 
void buildElementColoring ()
 Builds element coloring, assigning to element color, such that no neighboring elements have the same color.
 
int getElementColor (int e)
 Returns element color as determined by coloring algorithm.
 
void buildSharedBoundaryEntities (Domain *d)
 Build list of shared element edges and surfaces.
 
SharedBoundaryEntitygiveBoundaryEntity (int id)
 Access SharedBoundaryEntities.
 

Private Attributes

Domaindomain
 Pointer to domain to which receiver belongs to.
 
std::vector< IntArraynodalConnectivity
 Nodal connectivity table for domain.
 
int nodalConnectivityFlag
 Flag indicating assembled connectivity table for domain.
 
IntArray elementColoring
 Element colors.
 
bool elementColoringFlag
 flag indicating assembled element coloring
 
std::vector< std::unique_ptr< SharedBoundaryEntity > > sharedBoundaryEntities
 

Detailed Description

Class representing connectivity table.

Usually attribute of domain. Provides selected connectivity information services for domain.

Its tasks are

  • Creating connectivity table - method InstanciateYourself.
  • Returning number of Elements belonging to node.
  • Returning j-th element belonging to node i.

Definition at line 92 of file connectivitytable.h.

Constructor & Destructor Documentation

◆ ConnectivityTable()

oofem::ConnectivityTable::ConnectivityTable ( Domain d)

Constructor.

Creates new Connectivity table belonging to given domain.

Definition at line 46 of file connectivitytable.C.

◆ ~ConnectivityTable()

oofem::ConnectivityTable::~ConnectivityTable ( )
inline

Destructor.

Definition at line 126 of file connectivitytable.h.

Member Function Documentation

◆ buildElementColoring()

void oofem::ConnectivityTable::buildElementColoring ( )

◆ buildSharedBoundaryEntities()

◆ getElementColor()

int oofem::ConnectivityTable::getElementColor ( int  e)

Returns element color as determined by coloring algorithm.

Definition at line 219 of file connectivitytable.C.

References oofem::IntArray::at(), buildElementColoring(), elementColoring, and elementColoringFlag.

◆ giveBoundaryEntity()

SharedBoundaryEntity * oofem::ConnectivityTable::giveBoundaryEntity ( int  id)

Access SharedBoundaryEntities.

Definition at line 329 of file connectivitytable.C.

References sharedBoundaryEntities.

◆ giveDofManConnectivityArray()

◆ giveElementNeighbourList()

void oofem::ConnectivityTable::giveElementNeighbourList ( IntArray answer,
const IntArray elemList 
)

Returns list of neighboring elements to given elements (they are included too).

Neighbor is defined as element sharing the given element node.

Parameters
answerList of neighbors + given elements, every element contained only once.
elemListList of elements, which neighborhood is searched.

Definition at line 128 of file connectivitytable.C.

References oofem::Element::giveDofManager(), oofem::FEMComponent::giveNumber(), oofem::Element::giveNumberOfDofManagers(), oofem::IntArray::insertSortedOnce(), and oofem::IntArray::resize().

Referenced by oofem::MMALeastSquareProjection::__init(), buildElementColoring(), oofem::Shell7BaseXFEM::computeFailureCriteriaQuantities(), oofem::LEPlic::doCellDLS(), oofem::Shell7Base::giveLayerContributionToSR(), oofem::Subdivision::RS_Triangle::importConnectivity(), oofem::Subdivision::RS_Tetra::importConnectivity(), and oofem::LEPlicElementInterface::isBoundary().

◆ giveElementsWithNodes()

void oofem::ConnectivityTable::giveElementsWithNodes ( IntArray answer,
const IntArray nodes 
)

Return list of elements sharing all given nodes.

Parameters
answerList of elements that have all given nodes
nodeListList of nodes

Definition at line 168 of file connectivitytable.C.

References oofem::IntArray::at(), oofem::IntArray::contains(), oofem::IntArray::erase(), giveDofManConnectivityArray(), oofem::IntArray::giveSize(), and oofem::IntArray::resize().

Referenced by buildSharedBoundaryEntities().

◆ giveNodeNeighbourList()

void oofem::ConnectivityTable::giveNodeNeighbourList ( IntArray answer,
IntArray nodeList 
)

◆ instanciateConnectivityTable()

void oofem::ConnectivityTable::instanciateConnectivityTable ( )

Builds connectivity table.

This table contains for each dofManager the list of elements sharing it.

Definition at line 61 of file connectivitytable.C.

References oofem::IntArray::at(), oofem::Element::giveDofManager(), oofem::FEMComponent::giveNumber(), oofem::Element::giveNumberOfDofManagers(), and oofem::IntArray::zero().

◆ reset()

void oofem::ConnectivityTable::reset ( )

reset receiver to an initial state (will force table update, when needed next time)

Definition at line 54 of file connectivitytable.C.

◆ setDomain()

void oofem::ConnectivityTable::setDomain ( Domain ipDomain)
inline

Definition at line 130 of file connectivitytable.h.

Member Data Documentation

◆ domain

Domain* oofem::ConnectivityTable::domain
private

Pointer to domain to which receiver belongs to.

Definition at line 96 of file connectivitytable.h.

Referenced by buildElementColoring(), and buildSharedBoundaryEntities().

◆ elementColoring

IntArray oofem::ConnectivityTable::elementColoring
private

Element colors.

Definition at line 104 of file connectivitytable.h.

Referenced by buildElementColoring(), and getElementColor().

◆ elementColoringFlag

bool oofem::ConnectivityTable::elementColoringFlag
private

flag indicating assembled element coloring

Definition at line 106 of file connectivitytable.h.

Referenced by buildElementColoring(), and getElementColor().

◆ nodalConnectivity

std::vector< IntArray > oofem::ConnectivityTable::nodalConnectivity
private

Nodal connectivity table for domain.

Definition at line 99 of file connectivitytable.h.

◆ nodalConnectivityFlag

int oofem::ConnectivityTable::nodalConnectivityFlag
private

Flag indicating assembled connectivity table for domain.

Definition at line 101 of file connectivitytable.h.

◆ sharedBoundaryEntities

std::vector<std::unique_ptr<SharedBoundaryEntity> > oofem::ConnectivityTable::sharedBoundaryEntities
private

Definition at line 109 of file connectivitytable.h.

Referenced by buildSharedBoundaryEntities(), and giveBoundaryEntity().


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

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Dec 23 2025 23:54:14 for OOFEM by doxygen 1.9.8 written by Dimitri van Heesch, © 1997-2011