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

The nodal recovery model based on nodal averaging. More...

#include <nodalaveragingrecoverymodel.h>

+ Inheritance diagram for oofem::NodalAveragingRecoveryModel:
+ Collaboration diagram for oofem::NodalAveragingRecoveryModel:

Classes

struct  parallelStruct
 Helper structure to pass required arguments to packing/unpacking functions needed in parallel mode. More...
 

Public Member Functions

 NodalAveragingRecoveryModel (Domain *d)
 Constructor. More...
 
 ~NodalAveragingRecoveryModel ()
 Destructor. More...
 
int recoverValues (Set elementSet, InternalStateType type, TimeStep *tStep)
 Recovers the nodal values for all regions. More...
 
virtual const char * giveClassName () const
 
- Public Member Functions inherited from oofem::NodalRecoveryModel
 NodalRecoveryModel (Domain *d)
 Constructor. More...
 
virtual ~NodalRecoveryModel ()
 Destructor. More...
 
void setDomain (Domain *ipDomain)
 
virtual int clear ()
 Clears the receiver's nodal table. More...
 
int giveNodalVector (const FloatArray *&ptr, int node)
 Returns vector of recovered values for given node and region. More...
 
virtual int giveRegionRecordSize ()
 Returns the region record size. More...
 
std::string errorInfo (const char *func)
 

Private Member Functions

void initCommMaps ()
 
void exchangeDofManValues (FloatArray &lhs, IntArray &, IntArray &, int)
 
int packSharedDofManData (parallelStruct *s, ProcessCommunicator &processComm)
 
int unpackSharedDofManData (parallelStruct *s, ProcessCommunicator &processComm)
 

Additional Inherited Members

- Public Types inherited from oofem::NodalRecoveryModel
enum  NodalRecoveryModelType { NRM_NodalAveraging = 0, NRM_ZienkiewiczZhu = 1, NRM_SPR = 2 }
 
- Protected Member Functions inherited from oofem::NodalRecoveryModel
int initRegionNodeNumbering (IntArray &regionNodalNumbers, int &regionDofMans, Set &region)
 Determine local region node numbering and determine and check nodal values size. More...
 
int updateRegionRecoveredValues (const IntArray &regionNodalNumbers, int regionValSize, const FloatArray &rhs)
 Update the nodal table according to recovered solution for given region. More...
 
- Protected Attributes inherited from oofem::NodalRecoveryModel
std::map< int, FloatArraynodalValList
 Map of nodal values. More...
 
InternalStateType valType
 Determines the type of recovered values. More...
 
StateCounterType stateCounter
 Time stamp of recovered values. More...
 
Domaindomain
 
CommunicatorBuffcommBuff
 Common Communicator buffer. More...
 
ProblemCommunicatorcommunicator
 Communicator. More...
 
bool initCommMap
 Communication init flag. More...
 

Detailed Description

The nodal recovery model based on nodal averaging.

The recovery is based on nodal averaging or projection process in which element contributions are averaged at node with the same weight.

Definition at line 52 of file nodalaveragingrecoverymodel.h.

Constructor & Destructor Documentation

oofem::NodalAveragingRecoveryModel::NodalAveragingRecoveryModel ( Domain d)

Constructor.

Definition at line 51 of file nodalaveragingrecoverymodel.C.

oofem::NodalAveragingRecoveryModel::~NodalAveragingRecoveryModel ( )

Destructor.

Definition at line 54 of file nodalaveragingrecoverymodel.C.

Member Function Documentation

void oofem::NodalAveragingRecoveryModel::exchangeDofManValues ( FloatArray lhs,
IntArray regionDofMansConnectivity,
IntArray regionNodalNumbers,
int  regionValSize 
)
private
virtual const char* oofem::NodalAveragingRecoveryModel::giveClassName ( ) const
inlinevirtual

Implements oofem::NodalRecoveryModel.

Definition at line 76 of file nodalaveragingrecoverymodel.h.

int oofem::NodalAveragingRecoveryModel::recoverValues ( Set  elementSet,
InternalStateType  type,
TimeStep tStep 
)
virtual

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 Jan 2 2018 20:07:38 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011