No Matches
Classes | Public Member Functions | Public Attributes | List of all members
NodalForce Struct Reference

Force applied to nodes. More...

#include <users_modules/basic_finite_elements/src/NodalForce.hpp>

Collaboration diagram for NodalForce:


struct  bCForce
struct  MyFE
struct  OpNodalForce
 Operator to assemble nodal force into right hand side vector. More...

Public Member Functions

 NodalForce (MoFEM::Interface &m_field)
MyFEgetLoopFe ()
MoFEMErrorCode addForce (const std::string field_name, Vec F, int ms_id, bool use_snes_f=false)

Public Attributes

MyFE fe
std::map< int, bCForcemapForce
boost::ptr_vector< MethodForForceScalingmethodsOp

Detailed Description

Force applied to nodes.


Definition at line 13 of file NodalForce.hpp.

Constructor & Destructor Documentation

◆ NodalForce()

NodalForce::NodalForce ( MoFEM::Interface m_field)

Definition at line 16 of file NodalForce.hpp.

16: mField(m_field), fe(m_field) {}
MoFEM::Interface & mField
Definition: NodalForce.hpp:15

Member Function Documentation

◆ addForce()

MoFEMErrorCode NodalForce::addForce ( const std::string  field_name,
Vec  F,
int  ms_id,
bool  use_snes_f = false 

Definition at line 68 of file NodeForce.cpp.

69 {
71 const CubitMeshSets *cubit_meshset_ptr;
72 MeshsetsManager *mmanager_ptr;
74 CHKERR mField.getInterface(mmanager_ptr);
75 CHKERR mmanager_ptr->getCubitMeshsetPtr(ms_id, NODESET, &cubit_meshset_ptr);
76 CHKERR cubit_meshset_ptr->getBcDataStructure(mapForce[ms_id].data);
77 CHKERR mField.get_moab().get_entities_by_type(
78 cubit_meshset_ptr->meshset, MBVERTEX, mapForce[ms_id].nOdes, true);
79 fe.getOpPtrVector().push_back(
80 new OpNodalForce(field_name, F, mapForce[ms_id], methodsOp, use_snes_f));
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:346
Definition: definitions.h:146
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:416
#define CHKERR
Inline error check.
Definition: definitions.h:535
@ F
MoFEMErrorCode getCubitMeshsetPtr(const int ms_id, const CubitBCType cubit_bc_type, const CubitMeshSets **cubit_meshset_ptr) const
get cubit meshset
constexpr auto field_name
virtual moab::Interface & get_moab()=0
this struct keeps basic methods for moab meshset about material and boundary conditions
MoFEMErrorCode getBcDataStructure(CUBIT_BC_DATA_TYPE &data) const
boost::ptr_deque< UserDataOperator > & getOpPtrVector()
Use to push back operator for row operator.
Interface for managing meshsets containing materials and boundary conditions.
MoFEMErrorCode getInterface(IFACE *&iface) const
Get interface refernce to pointer of interface.
boost::ptr_vector< MethodForForceScaling > methodsOp
Definition: NodalForce.hpp:31
std::map< int, bCForce > mapForce
Definition: NodalForce.hpp:29

◆ getLoopFe()

MyFE & NodalForce::getLoopFe ( )

Definition at line 23 of file NodalForce.hpp.

23{ return fe; }

Member Data Documentation

◆ fe

MyFE NodalForce::fe

Definition at line 22 of file NodalForce.hpp.

◆ mapForce

std::map<int, bCForce> NodalForce::mapForce

Definition at line 29 of file NodalForce.hpp.

◆ methodsOp

boost::ptr_vector<MethodForForceScaling> NodalForce::methodsOp

Definition at line 31 of file NodalForce.hpp.

◆ mField

MoFEM::Interface& NodalForce::mField

Definition at line 15 of file NodalForce.hpp.

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