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 | |
OpCalContactAugmentedTractionOverSpatialSlaveMaster (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 slave side, \( \delta W_{\text c}\), derivative with respect to spatial positions on master side and assembles its components to the global LHS 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 virtual work of spatial position on slave side, \( \delta W_{\text c}\), derivative with respect to spatial positions on master side and assembles its components to the global LHS matrix.
Definition at line 1917 of file SimpleContact.hpp.
|
inline |
Definition at line 1920 of file SimpleContact.hpp.
MoFEMErrorCode SimpleContactProblem::OpCalContactAugmentedTractionOverSpatialSlaveMaster::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 slave side, \( \delta W_{\text c}\), derivative with respect to spatial positions on master side and assembles its components to the global LHS matrix.
Computes linearisation of virtual work of spatial position on slave side , \( \delta W_{\text c}\), over master side spatial positions and assembles its components to LHS global matrix
\[ {\text D} {\delta W^{(1)}_{\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}^{(2)}}\cdot [{\mathbf{n}}_{\rm c} \otimes {\mathbf{n}}_{\rm c}] \cdot \delta{\mathbf{x}^{(1)}}\,\,{ {\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 1421 of file SimpleContact.cpp.
|
private |
Definition at line 1974 of file SimpleContact.hpp.
|
private |
Definition at line 1973 of file SimpleContact.hpp.
|
private |
Definition at line 1975 of file SimpleContact.hpp.