OOFEM 3.0
Loading...
Searching...
No Matches
parametermanager.h File Reference
#include <unordered_map>
#include <string>
#include <tuple>
#include <vector>
#include <mutex>
#include <shared_mutex>
#include <variant>
#include <optional>
#include "intarray.h"
#include "floatarray.h"
#include "floatmatrix.h"
#include "error.h"

Go to the source code of this file.

Classes

class  oofem::ParameterManager

Namespaces

namespace  oofem

Macros

#define PM_UPDATE_PARAMETER(_val, _pm, _ir, _componentnum, _paramkey, _prio)
#define PM_UPDATE_PARAMETER_AND_REPORT(_val, _pm, _ir, _componentnum, _paramkey, _prio, _flag)
#define PM_UPDATE_TEMP_PARAMETER(_type, _pm, _ir, _componentnum, _paramkey, _prio)
#define PM_CHECK_FLAG_AND_REPORT(_pm, _ir, _componentnum, _paramkey, _prio, _flag)
#define PM_ELEMENT_ERROR_IFNOTSET(_pm, _componentnum, _paramkey)
#define PM_DOFMAN_ERROR_IFNOTSET(_pm, _componentnum, _paramkey)

Macro Definition Documentation

◆ PM_CHECK_FLAG_AND_REPORT

#define PM_CHECK_FLAG_AND_REPORT ( _pm,
_ir,
_componentnum,
_paramkey,
_prio,
_flag )
Value:
{ \
std::size_t _indx=_paramkey.getIndex(); \
const char* _kwd = _paramkey.getName().c_str(); \
if ((_prio >= _pm.getPriority(_componentnum, _indx)) && (_ir.hasField(_kwd))) { \
_pm.setPriority(_componentnum, _indx, _prio); \
_flag=true; \
} else { \
_flag=false; \
} \
}

Definition at line 91 of file parametermanager.h.

Referenced by oofem::DofManager::initializeFrom(), oofem::Element::initializeFrom(), oofem::LIBeam2d::initializeFrom(), oofem::Quad1Mindlin::initializeFrom(), oofem::Structural2DElement::initializeFrom(), and oofem::Structural3DElement::initializeFrom().

◆ PM_DOFMAN_ERROR_IFNOTSET

#define PM_DOFMAN_ERROR_IFNOTSET ( _pm,
_componentnum,
_paramkey )
Value:
{ \
if (!_pm.checkIfSet(_componentnum, _paramkey.getIndex())) { \
OOFEM_ERROR("DofManager %d: Parameter %s not set", _componentnum, _paramkey.getNameCStr());\
}\
}

Definition at line 110 of file parametermanager.h.

Referenced by oofem::GeneralSlaveNode::initializeFinish(), oofem::Node::initializeFinish(), and oofem::RigidArmNode::postInitialize().

◆ PM_ELEMENT_ERROR_IFNOTSET

#define PM_ELEMENT_ERROR_IFNOTSET ( _pm,
_componentnum,
_paramkey )

◆ PM_UPDATE_PARAMETER

#define PM_UPDATE_PARAMETER ( _val,
_pm,
_ir,
_componentnum,
_paramkey,
_prio )
Value:
{ \
std::size_t _indx=_paramkey.getIndex(); \
const char* _kwd = _paramkey.getName().c_str(); \
if ((_prio >= _pm.getPriority(_componentnum, _indx)) && (_ir.hasField(_kwd))) { \
_ir.giveField(_val, _kwd); \
_pm.setPriority(_componentnum, _indx, _prio); \
} \
}

Definition at line 56 of file parametermanager.h.

Referenced by oofem::XfemStructuralElementInterface::initializeCZFrom(), oofem::AbaqusUserElement::initializeFrom(), oofem::Beam3d::initializeFrom(), oofem::BondLink3d::initializeFrom(), oofem::BondLink3dBoundary::initializeFrom(), oofem::BSplineInterpolation::initializeFrom(), oofem::CBSElement::initializeFrom(), oofem::CohesiveSurface3d::initializeFrom(), oofem::DofManager::initializeFrom(), oofem::Element::initializeFrom(), oofem::GeneralSlaveNode::initializeFrom(), oofem::HangingNode::initializeFrom(), oofem::IGAElement::initializeFrom(), oofem::IntElLine1::initializeFrom(), oofem::IntElLine1PhF::initializeFrom(), oofem::IntElLine2::initializeFrom(), oofem::IntElLine2IntPen::initializeFrom(), oofem::IntElPoint::initializeFrom(), oofem::InteractionPFEMParticle::initializeFrom(), oofem::InterfaceElem1d::initializeFrom(), oofem::InterfaceElem2dLin::initializeFrom(), oofem::InterfaceElem2dQuad::initializeFrom(), oofem::Lattice2d::initializeFrom(), oofem::Lattice2d_mt::initializeFrom(), oofem::Lattice2dBoundary::initializeFrom(), oofem::Lattice3d::initializeFrom(), oofem::Lattice3d_mt::initializeFrom(), oofem::Lattice3dBoundary::initializeFrom(), oofem::Lattice3dBoundaryTruss::initializeFrom(), oofem::LatticeBeam3d::initializeFrom(), oofem::LatticeBeam3dBoundary::initializeFrom(), oofem::LatticeDirichletCouplingNode::initializeFrom(), oofem::LatticeLink3d::initializeFrom(), oofem::LatticeLink3dBoundary::initializeFrom(), oofem::LatticeNeumannCouplingNode::initializeFrom(), oofem::LIBeam3d2::initializeFrom(), oofem::LIBeam3d::initializeFrom(), oofem::LIBeam3dBoundary::initializeFrom(), oofem::LIBeam3dNL2::initializeFrom(), oofem::LIBeam3dNL::initializeFrom(), oofem::LineDistributedSpring::initializeFrom(), oofem::LSpace::initializeFrom(), oofem::LTRSpaceBoundary::initializeFrom(), oofem::LumpedMassElement::initializeFrom(), oofem::MacroLSpace::initializeFrom(), oofem::MITC4Shell::initializeFrom(), oofem::NLStructuralElement::initializeFrom(), oofem::NodalSpringElement::initializeFrom(), oofem::NURBSInterpolation::initializeFrom(), oofem::Particle::initializeFrom(), oofem::Q4Axisymm::initializeFrom(), oofem::qcNode::initializeFrom(), oofem::QTrPlaneStress2dXFEM::initializeFrom(), oofem::Quad1MindlinShell3D::initializeFrom(), oofem::RigidArmNode::initializeFrom(), oofem::Shell7Base::initializeFrom(), oofem::SlaveNode::initializeFrom(), oofem::SolidShell::initializeFrom(), oofem::SpringElement::initializeFrom(), oofem::TR1_2D_SUPG2::initializeFrom(), oofem::TR1_2D_SUPG2_AXI::initializeFrom(), oofem::TransportElement::initializeFrom(), oofem::TrPlaneStress2dXFEM::initializeFrom(), oofem::TrPlaneStrRot::initializeFrom(), oofem::Truss2d::initializeFrom(), and oofem::Truss3dnl::initializeFrom().

◆ PM_UPDATE_PARAMETER_AND_REPORT

#define PM_UPDATE_PARAMETER_AND_REPORT ( _val,
_pm,
_ir,
_componentnum,
_paramkey,
_prio,
_flag )
Value:
{ \
std::size_t _indx=_paramkey.getIndex(); \
const char* _kwd = _paramkey.getName().c_str(); \
if ((_prio >= _pm.getPriority(_componentnum, _indx)) && (_ir.hasField(_kwd))) { \
_ir.giveField(_val, _kwd); \
_pm.setPriority(_componentnum, _indx, _prio); \
_flag=true; \
} else { \
_flag=false; \
} \
}

Definition at line 66 of file parametermanager.h.

Referenced by oofem::BSplineInterpolation::initializeFrom(), oofem::Element::initializeFrom(), oofem::IntElPoint::initializeFrom(), oofem::Node::initializeFrom(), oofem::SpringElement::initializeFrom(), oofem::SUPGElement::initializeFrom(), oofem::TR1_2D_CBS::initializeFrom(), oofem::TR1_2D_SUPG2::initializeFrom(), oofem::TR1_2D_SUPG2_AXI::initializeFrom(), and oofem::TR1_2D_SUPG::initializeFrom().

◆ PM_UPDATE_TEMP_PARAMETER

#define PM_UPDATE_TEMP_PARAMETER ( _type,
_pm,
_ir,
_componentnum,
_paramkey,
_prio )
Value:
{ \
std::size_t _indx=_paramkey.getIndex(); \
const char* _kwd = _paramkey.getName().c_str(); \
if ((_prio >= _pm.getPriority(_componentnum, _indx)) && (_ir.hasField(_kwd))) { \
_type _val; \
_ir.giveField(_val, _kwd); \
_pm.setPriority(_componentnum, _indx, _prio); \
_pm.setTemParam(_componentnum, _indx, _val); \
} \
}

Definition at line 79 of file parametermanager.h.

Referenced by oofem::Beam2d::initializeFrom(), oofem::Beam3d::initializeFrom(), oofem::DofManager::initializeFrom(), and oofem::GeneralSlaveNode::initializeFrom().


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