OOFEM 3.0
Loading...
Searching...
No Matches
oofem::Subdivision::RS_Element Class Referenceabstract

#include <subdivision.h>

Collaboration diagram for oofem::Subdivision::RS_Element:

Public Member Functions

 RS_Element (int number, Subdivision ::RS_Mesh *m, int parent, IntArray &nodes)
virtual ~RS_Element ()
bool hasIrregulars ()
 Returns true if element has some irregular nodes.
bool isTerminal ()
 Returns true if receiver is terminal (not further subdivided).
int giveIrregular (int iedge)
void setIrregular (int iedge, int ir)
virtual int evaluateLongestEdge ()
virtual void bisect (std ::queue< int > &subdivqueue, std ::list< int > &sharedIrregularsQueue)
virtual void generate (std ::list< int > &sharedEdgesQueue)
virtual void update_neighbours ()
virtual double giveDensity ()
virtual double giveRequiredDensity ()
const IntArraygiveChildren ()
virtual bool isNeighborOf (Subdivision ::RS_Element *elem)=0
const IntArraygiveNeighbors ()
int giveNeighbor (int iside)
void setNeighbor (int iside, int nb)
bool containsNode (int _node)
virtual void giveSideNodes (int iside, IntArray &snodes)=0
int giveParent ()
int giveTopParent ()
bool giveQueueFlag ()
void setQueueFlag (bool _qf)
void buildTopLevelNodeConnectivity (Subdivision ::RS_Node *node)
virtual void importConnectivity (ConnectivityTable *ct)=0
const IntArraygiveNodes ()
int giveNode (int i)
int giveNumber ()
void setNumber (int newNum)
virtual int giveEdgeIndex (int iNode, int jNode)=0
int giveLeIndex ()
 Returns the longest edge index of the receiver.
void setLeIndex (int _n)
 Sets the longest edge index.
virtual void drawGeometry ()
int giveGlobalNumber ()
void setGlobalNumber (int gn)
virtual void numberSharedEdges (int iNode, IntArray &connNodes)=0
const IntArraygiveSharedEdges ()
virtual void makeSharedEdges ()=0
int giveSharedEdge (int iedge)
void setSharedEdge (int iedge, int num)
elementParallelMode giveParallelMode () const
void setParallelMode (elementParallelMode _mode)

Protected Attributes

int number
IntArray nodes
IntArray neghbours_base_elements
IntArray irregular_nodes
IntArray children
int parent
int leIndex
RS_Meshmesh
bool queue_flag
int globalNumber
elementParallelMode parallel_mode
IntArray shared_edges

Detailed Description

Definition at line 159 of file subdivision.h.

Constructor & Destructor Documentation

◆ RS_Element()

oofem::Subdivision::RS_Element::RS_Element ( int number,
Subdivision ::RS_Mesh * m,
int parent,
IntArray & nodes )
inline

Definition at line 186 of file subdivision.h.

References oofem::Element_local, nodes, number, and parent.

Referenced by giveTopParent().

◆ ~RS_Element()

virtual oofem::Subdivision::RS_Element::~RS_Element ( )
inlinevirtual

Definition at line 198 of file subdivision.h.

Member Function Documentation

◆ bisect()

virtual void oofem::Subdivision::RS_Element::bisect ( std ::queue< int > & subdivqueue,
std ::list< int > & sharedIrregularsQueue )
inlinevirtual

◆ buildTopLevelNodeConnectivity()

void oofem::Subdivision::RS_Element::buildTopLevelNodeConnectivity ( Subdivision ::RS_Node * node)

◆ containsNode()

bool oofem::Subdivision::RS_Element::containsNode ( int _node)
inline

Definition at line 219 of file subdivision.h.

References nodes.

◆ drawGeometry()

virtual void oofem::Subdivision::RS_Element::drawGeometry ( )
inlinevirtual

Definition at line 238 of file subdivision.h.

◆ evaluateLongestEdge()

virtual int oofem::Subdivision::RS_Element::evaluateLongestEdge ( )
inlinevirtual

Definition at line 208 of file subdivision.h.

Referenced by oofem::Subdivision::bisectMesh().

◆ generate()

virtual void oofem::Subdivision::RS_Element::generate ( std ::list< int > & sharedEdgesQueue)
inlinevirtual

Definition at line 210 of file subdivision.h.

References oofem::Subdivision::sharedEdgesQueue.

Referenced by oofem::Subdivision::bisectMesh().

◆ giveChildren()

const IntArray * oofem::Subdivision::RS_Element::giveChildren ( )
inline

Definition at line 214 of file subdivision.h.

Referenced by buildTopLevelNodeConnectivity().

◆ giveDensity()

virtual double oofem::Subdivision::RS_Element::giveDensity ( )
inlinevirtual

Definition at line 212 of file subdivision.h.

Referenced by oofem::Subdivision::bisectMesh().

◆ giveEdgeIndex()

virtual int oofem::Subdivision::RS_Element::giveEdgeIndex ( int iNode,
int jNode )
pure virtual

◆ giveGlobalNumber()

int oofem::Subdivision::RS_Element::giveGlobalNumber ( )
inline

Definition at line 240 of file subdivision.h.

References globalNumber.

Referenced by oofem::Subdivision::assignGlobalNumbersToElements().

◆ giveIrregular()

int oofem::Subdivision::RS_Element::giveIrregular ( int iedge)
inline

Definition at line 205 of file subdivision.h.

References irregular_nodes.

Referenced by oofem::Subdivision::unpackIrregularSharedGlobnums().

◆ giveLeIndex()

int oofem::Subdivision::RS_Element::giveLeIndex ( )
inline

Returns the longest edge index of the receiver.

Definition at line 233 of file subdivision.h.

◆ giveNeighbor()

int oofem::Subdivision::RS_Element::giveNeighbor ( int iside)
inline

Definition at line 217 of file subdivision.h.

References neghbours_base_elements.

Referenced by oofem::Subdivision::smoothMesh().

◆ giveNeighbors()

const IntArray * oofem::Subdivision::RS_Element::giveNeighbors ( )
inline

◆ giveNode()

int oofem::Subdivision::RS_Element::giveNode ( int i)
inline

◆ giveNodes()

const IntArray * oofem::Subdivision::RS_Element::giveNodes ( )
inline

◆ giveNumber()

◆ giveParallelMode()

elementParallelMode oofem::Subdivision::RS_Element::giveParallelMode ( ) const
inline

Definition at line 249 of file subdivision.h.

References parallel_mode.

Referenced by oofem::Subdivision::bisectMesh(), and oofem::Subdivision::smoothMesh().

◆ giveParent()

int oofem::Subdivision::RS_Element::giveParent ( )
inline

Definition at line 221 of file subdivision.h.

Referenced by giveTopParent().

◆ giveQueueFlag()

bool oofem::Subdivision::RS_Element::giveQueueFlag ( )
inline

Definition at line 223 of file subdivision.h.

Referenced by oofem::Subdivision::bisectMesh().

◆ giveRequiredDensity()

double oofem::Subdivision::RS_Element::giveRequiredDensity ( )
virtual

Definition at line 365 of file subdivision.C.

References mesh, and nodes.

Referenced by oofem::Subdivision::bisectMesh().

◆ giveSharedEdge()

int oofem::Subdivision::RS_Element::giveSharedEdge ( int iedge)
inline

Definition at line 247 of file subdivision.h.

References shared_edges.

Referenced by oofem::Subdivision::unpackIrregularSharedGlobnums().

◆ giveSharedEdges()

const IntArray * oofem::Subdivision::RS_Element::giveSharedEdges ( )
inline

Definition at line 245 of file subdivision.h.

References shared_edges.

Referenced by oofem::Subdivision::unpackIrregularSharedGlobnums().

◆ giveSideNodes()

virtual void oofem::Subdivision::RS_Element::giveSideNodes ( int iside,
IntArray & snodes )
pure virtual

◆ giveTopParent()

int oofem::Subdivision::RS_Element::giveTopParent ( )

Definition at line 378 of file subdivision.C.

References giveNumber(), giveParent(), mesh, and RS_Element().

Referenced by oofem::Subdivision::smoothMesh().

◆ hasIrregulars()

bool oofem::Subdivision::RS_Element::hasIrregulars ( )
inline

Returns true if element has some irregular nodes.

Definition at line 201 of file subdivision.h.

References irregular_nodes.

◆ importConnectivity()

virtual void oofem::Subdivision::RS_Element::importConnectivity ( ConnectivityTable * ct)
pure virtual

◆ isNeighborOf()

virtual bool oofem::Subdivision::RS_Element::isNeighborOf ( Subdivision ::RS_Element * elem)
pure virtual

◆ isTerminal()

bool oofem::Subdivision::RS_Element::isTerminal ( )
inline

Returns true if receiver is terminal (not further subdivided).

Definition at line 203 of file subdivision.h.

References children.

Referenced by oofem::Subdivision::bisectMesh(), buildTopLevelNodeConnectivity(), oofem::Subdivision::smoothMesh(), and oofem::Subdivision::RS_Tetra::update_neighbours().

◆ makeSharedEdges()

virtual void oofem::Subdivision::RS_Element::makeSharedEdges ( )
pure virtual

◆ numberSharedEdges()

virtual void oofem::Subdivision::RS_Element::numberSharedEdges ( int iNode,
IntArray & connNodes )
pure virtual

◆ setGlobalNumber()

void oofem::Subdivision::RS_Element::setGlobalNumber ( int gn)
inline

Definition at line 241 of file subdivision.h.

Referenced by oofem::Subdivision::assignGlobalNumbersToElements().

◆ setIrregular()

void oofem::Subdivision::RS_Element::setIrregular ( int iedge,
int ir )
inline

Definition at line 206 of file subdivision.h.

References oofem::IntArray::at().

◆ setLeIndex()

void oofem::Subdivision::RS_Element::setLeIndex ( int _n)
inline

Sets the longest edge index.

Definition at line 235 of file subdivision.h.

◆ setNeighbor()

void oofem::Subdivision::RS_Element::setNeighbor ( int iside,
int nb )
inline

Definition at line 218 of file subdivision.h.

References oofem::IntArray::at().

◆ setNumber()

void oofem::Subdivision::RS_Element::setNumber ( int newNum)
inline

Definition at line 230 of file subdivision.h.

◆ setParallelMode()

void oofem::Subdivision::RS_Element::setParallelMode ( elementParallelMode _mode)
inline

Definition at line 251 of file subdivision.h.

References parallel_mode.

◆ setQueueFlag()

void oofem::Subdivision::RS_Element::setQueueFlag ( bool _qf)
inline

Definition at line 224 of file subdivision.h.

Referenced by oofem::Subdivision::bisectMesh().

◆ setSharedEdge()

void oofem::Subdivision::RS_Element::setSharedEdge ( int iedge,
int num )
inline

Definition at line 248 of file subdivision.h.

References oofem::IntArray::at().

◆ update_neighbours()

virtual void oofem::Subdivision::RS_Element::update_neighbours ( )
inlinevirtual

Definition at line 211 of file subdivision.h.

Referenced by oofem::Subdivision::bisectMesh().

Member Data Documentation

◆ children

IntArray oofem::Subdivision::RS_Element::children
protected

Definition at line 170 of file subdivision.h.

Referenced by isTerminal().

◆ globalNumber

int oofem::Subdivision::RS_Element::globalNumber
protected

Definition at line 179 of file subdivision.h.

Referenced by giveGlobalNumber().

◆ irregular_nodes

IntArray oofem::Subdivision::RS_Element::irregular_nodes
protected

Definition at line 168 of file subdivision.h.

Referenced by giveIrregular(), and hasIrregulars().

◆ leIndex

int oofem::Subdivision::RS_Element::leIndex
protected

Definition at line 174 of file subdivision.h.

◆ mesh

RS_Mesh* oofem::Subdivision::RS_Element::mesh
protected

◆ neghbours_base_elements

IntArray oofem::Subdivision::RS_Element::neghbours_base_elements
protected

Definition at line 166 of file subdivision.h.

Referenced by giveNeighbor().

◆ nodes

IntArray oofem::Subdivision::RS_Element::nodes
protected

Definition at line 164 of file subdivision.h.

Referenced by containsNode(), giveRequiredDensity(), and RS_Element().

◆ number

int oofem::Subdivision::RS_Element::number
protected

Definition at line 162 of file subdivision.h.

Referenced by RS_Element().

◆ parallel_mode

elementParallelMode oofem::Subdivision::RS_Element::parallel_mode
protected

Definition at line 181 of file subdivision.h.

Referenced by giveParallelMode(), and setParallelMode().

◆ parent

int oofem::Subdivision::RS_Element::parent
protected

Definition at line 172 of file subdivision.h.

Referenced by RS_Element().

◆ queue_flag

bool oofem::Subdivision::RS_Element::queue_flag
protected

Definition at line 178 of file subdivision.h.

◆ shared_edges

IntArray oofem::Subdivision::RS_Element::shared_edges
protected

Definition at line 183 of file subdivision.h.

Referenced by giveSharedEdge(), and giveSharedEdges().


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

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011