v0.16.3
Loading...
Searching...
No Matches
Public Member Functions | List of all members
CohesiveElement::CohesiveInterfaceElement::OpSetSignToShapeFunctions Struct Reference

Set negative sign to shape functions on face 4. More...

#include "tutorials/cor-12_cohesive_interface/src/CohesiveInterfaceElement.hpp"

Inheritance diagram for CohesiveElement::CohesiveInterfaceElement::OpSetSignToShapeFunctions:
[legend]
Collaboration diagram for CohesiveElement::CohesiveInterfaceElement::OpSetSignToShapeFunctions:
[legend]

Public Member Functions

 OpSetSignToShapeFunctions (const std::string field_name)
 
MoFEMErrorCode doWork (int side, EntityType type, EntitiesFieldData::EntData &data)
 

Detailed Description

Set negative sign to shape functions on face 4.

Definition at line 309 of file CohesiveInterfaceElement.hpp.

Constructor & Destructor Documentation

◆ OpSetSignToShapeFunctions()

CohesiveElement::CohesiveInterfaceElement::OpSetSignToShapeFunctions::OpSetSignToShapeFunctions ( const std::string  field_name)
inline

Definition at line 312 of file CohesiveInterfaceElement.hpp.

313 : FlatPrismElementForcesAndSourcesCore::UserDataOperator(
314 field_name, ForcesAndSourcesCore::UserDataOperator::OPROW) {}
constexpr auto field_name

Member Function Documentation

◆ doWork()

MoFEMErrorCode CohesiveElement::CohesiveInterfaceElement::OpSetSignToShapeFunctions::doWork ( int  side,
EntityType  type,
EntitiesFieldData::EntData &  data 
)
inline

Definition at line 316 of file CohesiveInterfaceElement.hpp.

317 {
319 if (data.getN().size1() == 0)
321 if (data.getN().size2() == 0)
323 switch (type) {
324 case MBVERTEX:
325 for (unsigned int gg = 0; gg < data.getN().size1(); gg++) {
326 for (int nn = 3; nn < 6; nn++) {
327 data.getN()(gg, nn) *= -1;
328 }
329 }
330 break;
331 case MBEDGE:
332 if (side < 3)
334 data.getN() *= -1;
335 break;
336 case MBTRI:
337 if (side == 3)
339 data.getN() *= -1;
340 break;
341 default:
342 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
343 "Unexpected entity type when setting interface shape-function signs");
344 }
346 }
std::string type
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
@ MOFEM_DATA_INCONSISTENCY
Definition definitions.h:31
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...

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