v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Protected Attributes | Friends | List of all members
EshelbianPlasticity::FeTractionBc Struct Reference

#include <users_modules/eshelbian_plasticty/src/EshelbianPlasticity.hpp>

Inheritance diagram for EshelbianPlasticity::FeTractionBc:
[legend]
Collaboration diagram for EshelbianPlasticity::FeTractionBc:
[legend]

Public Member Functions

 FeTractionBc (MoFEM::Interface &m_field, const std::string field_name, boost::shared_ptr< TractionBcVec > &bc)
 
MoFEMErrorCode preProcess ()
 
MoFEMErrorCode postProcess ()
 

Public Attributes

int nbConstrainsDofs
 

Protected Attributes

MoFEM::InterfacemField
 
boost::shared_ptr< TractionBcVecbcData
 
std::string fieldName
 

Friends

MoFEMErrorCode OpTractionBc::doWork (int side, EntityType type, EntData &data)
 

Detailed Description

Definition at line 627 of file EshelbianPlasticity.hpp.

Constructor & Destructor Documentation

◆ FeTractionBc()

EshelbianPlasticity::FeTractionBc::FeTractionBc ( MoFEM::Interface m_field,
const std::string  field_name,
boost::shared_ptr< TractionBcVec > &  bc 
)
inline

Definition at line 629 of file EshelbianPlasticity.hpp.

631 : FEMethod(), mField(m_field), bcData(bc), fieldName(field_name) {}
constexpr auto field_name
boost::shared_ptr< TractionBcVec > bcData

Member Function Documentation

◆ postProcess()

MoFEMErrorCode EshelbianPlasticity::FeTractionBc::postProcess ( )
inline

Definition at line 633 of file EshelbianPlasticity.hpp.

633{ return 0; }

◆ preProcess()

MoFEMErrorCode EshelbianPlasticity::FeTractionBc::preProcess ( )
Examples
EshelbianOperators.cpp.

Definition at line 649 of file EshelbianOperators.cpp.

649 {
651
652 struct FaceRule {
653 int operator()(int p_row, int p_col, int p_data) const {
654 return 2 * (p_data + 1);
655 }
656 };
657
658 if (ts_ctx == CTX_TSSETIFUNCTION) {
659
660 // Loop boundary elements with traction boundary conditions
663 {HDIV});
664 fe.getOpPtrVector().push_back(
665 new OpTractionBc(std::string("P") /* + "_RT"*/, *this));
666 fe.getRuleHook = FaceRule();
667 fe.ts_t = ts_t;
668 CHKERR mField.loop_finite_elements(problemPtr->getName(), "ESSENTIAL_BC",
669 fe, nullptr, MF_ZERO,
670 this->getCacheWeakPtr());
671 }
672
674}
@ MF_ZERO
Definition: definitions.h:98
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:346
#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
virtual MoFEMErrorCode loop_finite_elements(const std::string problem_name, const std::string &fe_name, FEMethod &method, boost::shared_ptr< NumeredEntFiniteElement_multiIndex > fe_ptr=nullptr, MoFEMTypes bh=MF_EXIST, CacheTupleWeakPtr cache_ptr=CacheTupleSharedPtr(), int verb=DEFAULT_VERBOSITY)=0
Make a loop over finite elements.
MoFEM::TsCtx * ts_ctx
Definition: level_set.cpp:1884
Set integration rule to boundary elements.
Add operators pushing bases from local to physical configuration.

Friends And Related Function Documentation

◆ OpTractionBc::doWork

MoFEMErrorCode OpTractionBc::doWork ( int  side,
EntityType  type,
EntData data 
)
friend

Member Data Documentation

◆ bcData

boost::shared_ptr<TractionBcVec> EshelbianPlasticity::FeTractionBc::bcData
protected
Examples
EshelbianOperators.cpp.

Definition at line 640 of file EshelbianPlasticity.hpp.

◆ fieldName

std::string EshelbianPlasticity::FeTractionBc::fieldName
protected

Definition at line 641 of file EshelbianPlasticity.hpp.

◆ mField

MoFEM::Interface& EshelbianPlasticity::FeTractionBc::mField
protected
Examples
EshelbianOperators.cpp.

Definition at line 639 of file EshelbianPlasticity.hpp.

◆ nbConstrainsDofs

int EshelbianPlasticity::FeTractionBc::nbConstrainsDofs

Definition at line 628 of file EshelbianPlasticity.hpp.


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