|
OOFEM 3.0
|
#include <nodalaveragingrecoverymodel.h>
Classes | |
| struct | parallelStruct |
Public Member Functions | |
| NodalAveragingRecoveryModel (Domain *d) | |
| Constructor. | |
| virtual | ~NodalAveragingRecoveryModel () |
| Destructor. | |
| int | recoverValues (Set elementSet, InternalStateType type, TimeStep *tStep) override |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::NodalRecoveryModel | |
| NodalRecoveryModel (Domain *d) | |
| Constructor. | |
| virtual | ~NodalRecoveryModel () |
| Destructor. | |
| void | setDomain (Domain *ipDomain) |
| virtual int | clear () |
| int | giveNodalVector (const FloatArray *&ptr, int node) |
| virtual int | giveRegionRecordSize () |
| 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 ®ionNodalNumbers, int ®ionDofMans, Set ®ion) |
| int | updateRegionRecoveredValues (const IntArray ®ionNodalNumbers, int regionValSize, const FloatArray &rhs) |
| Protected Attributes inherited from oofem::NodalRecoveryModel | |
| std ::map< int, FloatArray > | nodalValList |
| InternalStateType | valType |
| Determines the type of recovered values. | |
| StateCounterType | stateCounter |
| Time stamp of recovered values. | |
| Domain * | domain |
| CommunicatorBuff * | commBuff |
| Common Communicator buffer. | |
| ProblemCommunicator * | communicator |
| Communicator. | |
| bool | initCommMap |
| Communication init flag. | |
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.
| oofem::NodalAveragingRecoveryModel::NodalAveragingRecoveryModel | ( | Domain * | d | ) |
Constructor.
Definition at line 51 of file nodalaveragingrecoverymodel.C.
References oofem::NodalRecoveryModel::NodalRecoveryModel().
|
virtual |
Destructor.
Definition at line 54 of file nodalaveragingrecoverymodel.C.
|
private |
Definition at line 180 of file nodalaveragingrecoverymodel.C.
References oofem::NodalRecoveryModel::communicator.
Referenced by recoverValues().
|
inlineoverridevirtual |
Implements oofem::NodalRecoveryModel.
Definition at line 76 of file nodalaveragingrecoverymodel.h.
|
private |
Definition at line 166 of file nodalaveragingrecoverymodel.C.
References oofem::CBT_dynamic, oofem::NodalRecoveryModel::commBuff, oofem::NodalRecoveryModel::communicator, oofem::NodalRecoveryModel::domain, oofem::EngngModel::giveNumberOfProcesses(), oofem::EngngModel::giveRank(), oofem::NodalRecoveryModel::initCommMap, and OOFEM_LOG_INFO.
Referenced by recoverValues().
|
private |
Definition at line 193 of file nodalaveragingrecoverymodel.C.
References oofem::FloatArray::at(), oofem::IntArray::at(), oofem::ProcessCommunicator::giveProcessCommunicatorBuff(), oofem::ProcessCommunicator::giveToSendMap(), oofem::NodalAveragingRecoveryModel::parallelStruct::lhs, oofem::NodalAveragingRecoveryModel::parallelStruct::regionDofMansConnectivity, oofem::NodalAveragingRecoveryModel::parallelStruct::regionNodalNumbers, oofem::NodalAveragingRecoveryModel::parallelStruct::regionValSize, and oofem::ProcessCommunicatorBuff::write().
|
overridevirtual |
Recovers the nodal values for all regions.
| type | Determines the type of internal variable to be recovered. |
| tStep | Time step. |
Implements oofem::NodalRecoveryModel.
Definition at line 58 of file nodalaveragingrecoverymodel.C.
References oofem::__InternalStateTypeToString(), oofem::FloatArray::at(), oofem::IntArray::at(), oofem::NodalRecoveryModel::clear(), oofem::NodalRecoveryModel::domain, oofem::Element_local, exchangeDofManValues(), oofem::Element::giveDofManager(), oofem::Set::giveElementList(), oofem::FEMComponent::giveInterface(), oofem::FEMComponent::giveNumber(), oofem::Element::giveNumberOfDofManagers(), oofem::Element::giveParallelMode(), oofem::FloatArray::giveSize(), oofem::IntArray::giveSize(), oofem::TimeStep::giveSolutionStateCounter(), initCommMaps(), oofem::NodalRecoveryModel::initRegionNodeNumbering(), oofem::NodalAveragingRecoveryModelInterface::NodalAveragingRecoveryMI_computeNodalValue(), oofem::NodalAveragingRecoveryModelInterfaceType, OOFEM_LOG_RELEVANT, OOFEM_WARNING, oofem::FloatArray::resize(), oofem::IntArray::resize(), oofem::NodalRecoveryModel::stateCounter, oofem::NodalRecoveryModel::updateRegionRecoveredValues(), oofem::NodalRecoveryModel::valType, oofem::FloatArray::zero(), and oofem::IntArray::zero().
|
private |
Definition at line 221 of file nodalaveragingrecoverymodel.C.
References oofem::FloatArray::at(), oofem::IntArray::at(), oofem::ProcessCommunicator::giveProcessCommunicatorBuff(), oofem::ProcessCommunicator::giveToRecvMap(), oofem::NodalAveragingRecoveryModel::parallelStruct::lhs, oofem::ProcessCommunicatorBuff::read(), oofem::NodalAveragingRecoveryModel::parallelStruct::regionDofMansConnectivity, oofem::NodalAveragingRecoveryModel::parallelStruct::regionNodalNumbers, and oofem::NodalAveragingRecoveryModel::parallelStruct::regionValSize.