v0.15.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
OpBrokenBaseTimesVectorDisp Struct Reference

#include "users_modules/eshelbian_plasticity/src/EshelbianOperators.hpp"

Inheritance diagram for OpBrokenBaseTimesVectorDisp:
[legend]
Collaboration diagram for OpBrokenBaseTimesVectorDisp:
[legend]

Public Types

using OP = OpBaseTimesVectorFace
 

Public Member Functions

 OpBrokenBaseTimesVectorDisp (const std::string row_field, boost::shared_ptr< std::vector< BrokenBaseSideData > > broken_base_side_data, ScalarFun beta_coeff, boost::shared_ptr< Range > ents_ptr=nullptr)
 

Protected Member Functions

MoFEMErrorCode iNtegrate (EntitiesFieldData::EntData &data)
 

Protected Attributes

boost::shared_ptr< std::vector< BrokenBaseSideData > > brokenBaseSideDataPtr
 

Detailed Description

Examples
mofem/users_modules/eshelbian_plasticity/src/impl/EshelbianPlasticity.cpp.

Definition at line 1126 of file EshelbianOperators.hpp.

Member Typedef Documentation

◆ OP

Definition at line 1128 of file EshelbianOperators.hpp.

Constructor & Destructor Documentation

◆ OpBrokenBaseTimesVectorDisp()

OpBrokenBaseTimesVectorDisp::OpBrokenBaseTimesVectorDisp ( const std::string  row_field,
boost::shared_ptr< std::vector< BrokenBaseSideData > >  broken_base_side_data,
ScalarFun  beta_coeff,
boost::shared_ptr< Range ents_ptr = nullptr 
)
inline

Definition at line 1129 of file EshelbianOperators.hpp.

1133 : OP(row_field, boost::shared_ptr<MatrixDouble>(), beta_coeff, ents_ptr),
1134 brokenBaseSideDataPtr(broken_base_side_data) {
1135 this->betaCoeff = beta_coeff;
1136 }
boost::shared_ptr< std::vector< BrokenBaseSideData > > brokenBaseSideDataPtr

Member Function Documentation

◆ iNtegrate()

MoFEMErrorCode OpBrokenBaseTimesVectorDisp::iNtegrate ( EntitiesFieldData::EntData &  data)
inlineprotected

Definition at line 1139 of file EshelbianOperators.hpp.

1139 {
1141 for (auto &bd : (*brokenBaseSideDataPtr)) {
1142 this->sourceVec =
1143 boost::shared_ptr<MatrixDouble>(brokenBaseSideDataPtr, &bd.getFlux());
1144
1145#ifndef NDEBUG
1146 if (this->sourceVec->size1() != SPACE_DIM) {
1147 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
1148 "Inconsistent size of the source vector");
1149 }
1150 if (this->sourceVec->size2() != OP::getGaussPts().size2()) {
1151 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
1152 "Inconsistent size of the source vector");
1153 }
1154#endif // NDEBUG
1155
1156 CHKERR OP::iNtegrate(data);
1157
1158 this->sourceVec.reset();
1159 }
1161 }
constexpr int SPACE_DIM
[Define dimension]
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
@ MOFEM_DATA_INCONSISTENCY
Definition definitions.h:31
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define CHKERR
Inline error check.

Member Data Documentation

◆ brokenBaseSideDataPtr

boost::shared_ptr<std::vector<BrokenBaseSideData> > OpBrokenBaseTimesVectorDisp::brokenBaseSideDataPtr
protected

Definition at line 1162 of file EshelbianOperators.hpp.


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