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 | |
OpCalContactAugmentedTractionOverSpatialMasterSlave (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 on slave 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 1776 of file SimpleContact.hpp.
|
inline |
Definition at line 1779 of file SimpleContact.hpp.
MoFEMErrorCode SimpleContactProblem::OpCalContactAugmentedTractionOverSpatialMasterSlave::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 on slave side and assembles its components to LHS global matrix.
Computes linearisation of virtual work on master side integrated on the slave side and assembles the components of its derivative over spatial positions on slave side
\[ {\text D} {\delta W^{(2)}_{\text c}(\lambda, \delta \mathbf{x}^{(2)}})[\Delta {\mathbf{x}^{(1)}}] \,\, = \left\{ \begin{array}{ll} \int_{{\gamma}^{(1)}_{\text c}} -c_{\textrm n}\Delta {\mathbf{x}^{(1)}} \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)}\) and \(\mathbf{x}^{(1)}\) are the coordinates of the overlapping gauss points at master and slave triangles, respectively. Also, \( 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 1253 of file SimpleContact.cpp.
|
private |
Definition at line 1833 of file SimpleContact.hpp.
|
private |
Definition at line 1832 of file SimpleContact.hpp.
|
private |
Definition at line 1834 of file SimpleContact.hpp.