v0.14.0 |
LHS-operator for the simple contact element with Augmented Lagrangian Method. More...
#include <users_modules/mortar_contact/src/SimpleContact.hpp>
Public Member Functions | |
OpCalContactAugmentedTractionOverSpatialMasterMaster (const string field_name, const string field_name_2, const double cn_value, boost::shared_ptr< CommonDataSimpleContact > common_data_contact) | |
MoFEMErrorCode | doWork (int row_side, int col_side, EntityType row_type, EntityType col_type, EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data) |
Integrates virtual work on master side , \( \delta W_{\text c}\), derivative with respect to spatial positions of the master side and assembles its components to LHS global matrix. More... | |
Private Attributes | |
boost::shared_ptr< CommonDataSimpleContact > | commonDataSimpleContact |
const double | cN |
MatrixDouble | NN |
LHS-operator for the simple contact element with Augmented Lagrangian Method.
Integrates Lagrange multipliers virtual work, \( \delta W_{\text c}\) derivative with respect to spatial positions on master side and assembles components of the LHS matrix.
Definition at line 1706 of file SimpleContact.hpp.
|
inline |
Definition at line 1709 of file SimpleContact.hpp.
MoFEMErrorCode SimpleContactProblem::OpCalContactAugmentedTractionOverSpatialMasterMaster::doWork | ( | int | row_side, |
int | col_side, | ||
EntityType | row_type, | ||
EntityType | col_type, | ||
EntitiesFieldData::EntData & | row_data, | ||
EntitiesFieldData::EntData & | col_data | ||
) |
Integrates virtual work on master side , \( \delta W_{\text c}\), derivative with respect to spatial positions of the master side and assembles its components to LHS global matrix.
Computes linearisation of integrated on slave side complementarity function and assembles Lagrange multipliers virtual work \( \delta W_{\text c}\) on master side with respect to spatial positions of the master side and assembles components to LHS global matrix
\[ {\text D} {\delta W^{(2)}_{\text c}(\lambda, \delta \mathbf{x}^{(2)}})[\Delta {\mathbf{x}^{(2)}}] \,\, = \left\{ \begin{array}{ll} \int_{{\gamma}^{(1)}_{\text c}} c_{\textrm n}\Delta {\mathbf{x}^{(2)}} \cdot [{\mathbf{n}}_{\rm c} \otimes {\mathbf{n}}_{\rm c}] \cdot \delta{\mathbf{x}^{(2)}}\,\,{ {\text d} {\gamma}} & \lambda + c_{\text n} g_{\textrm{n}}\leq 0 \\ 0 & \lambda + c_{\text n} g_{\textrm{n}}> 0 \\ \end{array} \right. \]
where \({\gamma}^{(1)}_{\text c}\) is the surface integration domain of the slave surface, \( \lambda\) is the Lagrange multiplier, \(\mathbf{x}^{(2)}\) are the coordinates of the overlapping gauss points at master triangles, \( c_{\textrm n}\) is the regularisation/augmentation parameter of stress dimensions and \( g_{\textrm{n}}\) is the gap evaluated on the corresponding slave side.
Definition at line 1169 of file SimpleContact.cpp.
|
private |
Definition at line 1763 of file SimpleContact.hpp.
|
private |
Definition at line 1762 of file SimpleContact.hpp.
|
private |
Definition at line 1764 of file SimpleContact.hpp.