v0.14.0
Public Member Functions | Protected Attributes | List of all members
MortarContactProblem::MortarConvectMasterContactElement Struct Reference

Element used to integrate on slave surfaces. It convects integration points on slaves, so that quantities like gap from master are evaluated at correct points. More...

#include <users_modules/mortar_contact/src/MortarContactProblem.hpp>

Inheritance diagram for MortarContactProblem::MortarConvectMasterContactElement:
[legend]
Collaboration diagram for MortarContactProblem::MortarConvectMasterContactElement:
[legend]

Public Member Functions

 MortarConvectMasterContactElement (MoFEM::Interface &m_field, boost::shared_ptr< ContactSearchKdTree::ContactCommonData_multiIndex > contact_commondata_multi_index, std::string spat_pos, std::string mat_pos, bool newton_cotes=false)
 
boost::shared_ptr< ConvectSlaveIntegrationPtsgetConvectPtr ()
 
int getRule (int order)
 
MoFEMErrorCode setGaussPts (int order)
 
- Public Member Functions inherited from MortarContactProblem::MortarContactElement
 MortarContactElement (MoFEM::Interface &m_field, boost::shared_ptr< ContactSearchKdTree::ContactCommonData_multiIndex > contact_commondata_multi_index, std::string spat_pos, std::string mat_pos, bool newton_cotes=false)
 
int getRule (int order)
 
double area2D (double *a, double *b, double *c)
 
 ~MortarContactElement ()
 
- Public Member Functions inherited from SimpleContactProblem::ConvectMasterContactElement
 ConvectMasterContactElement (MoFEM::Interface &m_field, string spat_pos, string mat_pos, bool newton_cotes=false)
 
boost::shared_ptr< ConvectSlaveIntegrationPtsgetConvectPtr ()
 
int getRule (int order)
 
MoFEMErrorCode setGaussPts (int order)
 
- Public Member Functions inherited from SimpleContactProblem::SimpleContactElement
 SimpleContactElement (MoFEM::Interface &m_field, bool newton_cotes=false)
 
MoFEMErrorCode preProcess ()
 
MoFEMErrorCode postProcess ()
 
int getRule (int order)
 

Protected Attributes

boost::shared_ptr< ConvectSlaveIntegrationPtsconvectPtr
 
- Protected Attributes inherited from SimpleContactProblem::ConvectMasterContactElement
boost::shared_ptr< ConvectSlaveIntegrationPtsconvectPtr
 

Additional Inherited Members

- Public Attributes inherited from MortarContactProblem::MortarContactElement
MoFEM::InterfacemField
 
boost::shared_ptr< ContactSearchKdTree::ContactCommonData_multiIndexcontactCommondataMultiIndex
 
bool newtonCotes
 
- Public Attributes inherited from SimpleContactProblem::SimpleContactElement
MoFEM::InterfacemField
 
bool newtonCotes
 
SmartPetscObj< Vec > contactStateVec
 
friend ConvectSlaveIntegrationPts
 

Detailed Description

Element used to integrate on slave surfaces. It convects integration points on slaves, so that quantities like gap from master are evaluated at correct points.

Examples
mortar_contact_thermal.cpp.

Definition at line 282 of file MortarContactProblem.hpp.

Constructor & Destructor Documentation

◆ MortarConvectMasterContactElement()

MortarContactProblem::MortarConvectMasterContactElement::MortarConvectMasterContactElement ( MoFEM::Interface m_field,
boost::shared_ptr< ContactSearchKdTree::ContactCommonData_multiIndex contact_commondata_multi_index,
std::string  spat_pos,
std::string  mat_pos,
bool  newton_cotes = false 
)
inline

Definition at line 284 of file MortarContactProblem.hpp.

289  : MortarContactElement(m_field, contact_commondata_multi_index,
290  spat_pos, mat_pos, newton_cotes),
291  convectPtr(new ConvectSlaveIntegrationPts(this, spat_pos, mat_pos)) {}

Member Function Documentation

◆ getConvectPtr()

boost::shared_ptr<ConvectSlaveIntegrationPts> MortarContactProblem::MortarConvectMasterContactElement::getConvectPtr ( )
inline

Definition at line 293 of file MortarContactProblem.hpp.

293  {
294  return convectPtr;
295  }

◆ getRule()

int MortarContactProblem::MortarConvectMasterContactElement::getRule ( int  order)
inline

Definition at line 297 of file MortarContactProblem.hpp.

297 { return -1; }

◆ setGaussPts()

MoFEMErrorCode MortarContactProblem::MortarConvectMasterContactElement::setGaussPts ( int  order)
virtual

Reimplemented from MortarContactProblem::MortarContactElement.

Reimplemented in MortarContactProblem::MortarConvectSlaveContactElement.

Definition at line 324 of file MortarContactProblem.cpp.

325  {
328  CHKERR convectPtr->convectSlaveIntegrationPts<true>();
330 }

Member Data Documentation

◆ convectPtr

boost::shared_ptr<ConvectSlaveIntegrationPts> MortarContactProblem::MortarConvectMasterContactElement::convectPtr
protected

Definition at line 302 of file MortarContactProblem.hpp.


The documentation for this struct was generated from the following files:
SimpleContactProblem::SimpleContactElement::ConvectSlaveIntegrationPts
friend ConvectSlaveIntegrationPts
Definition: SimpleContact.hpp:128
MortarContactProblem::MortarContactElement::MortarContactElement
MortarContactElement(MoFEM::Interface &m_field, boost::shared_ptr< ContactSearchKdTree::ContactCommonData_multiIndex > contact_commondata_multi_index, std::string spat_pos, std::string mat_pos, bool newton_cotes=false)
Definition: MortarContactProblem.hpp:36
order
constexpr int order
Definition: dg_projection.cpp:18
CHKERR
#define CHKERR
Inline error check.
Definition: definitions.h:548
MortarContactProblem::MortarContactElement::setGaussPts
virtual MoFEMErrorCode setGaussPts(int order)
Definition: MortarContactProblem.cpp:16
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359
MortarContactProblem::MortarConvectMasterContactElement::convectPtr
boost::shared_ptr< ConvectSlaveIntegrationPts > convectPtr
Definition: MortarContactProblem.hpp:302