![]() |
v0.14.0 |
LHS-operator for the simple contact element. More...
#include <users_modules/mortar_contact/src/SimpleContact.hpp>
Public Member Functions | |
| MoFEMErrorCode | iNtegrate (EntData &row_data, EntData &col_data) |
| Integrates Lagrange multipliers virtual work on master side, \( \delta W_{\text c}\) derivative with respect to material positions on slave side and assembles components to LHS global matrix. More... | |
| OpContactTractionMasterSlave_dX (const string field_name, const string mesh_nodes_field, boost::shared_ptr< CommonDataSimpleContact > common_data_contact, const int row_rank, const int col_rank) | |
Public Member Functions inherited from SimpleContactProblem::OpContactALELhs | |
| MoFEMErrorCode | doWork (int row_side, int col_side, EntityType row_type, EntityType col_type, EntData &row_data, EntData &col_data) |
| MoFEMErrorCode | aSsemble (EntData &row_data, EntData &col_data) |
| OpContactALELhs (const string field_name_1, const string field_name_2, boost::shared_ptr< CommonDataSimpleContact > common_data_contact, const ContactOp::FaceType face_type, const int rank_row, const int rank_col) | |
Additional Inherited Members | |
Public Attributes inherited from SimpleContactProblem::OpContactALELhs | |
| boost::shared_ptr< CommonDataSimpleContact > | commonDataSimpleContact |
| MatrixDouble | matLhs |
| VectorInt | rowIndices |
| VectorInt | colIndices |
| int | row_nb_dofs |
| int | col_nb_dofs |
| int | nb_gauss_pts |
| int | nb_base_fun_row |
| int | nb_base_fun_col |
| int | rankRow |
| int | rankCol |
LHS-operator for the simple contact element.
Integrates Lagrange multipliers virtual work on master side, \( \delta W_{\text c}\) derivative with respect to material positions on slave side and assembles components of the RHS vector.
Definition at line 3086 of file SimpleContact.hpp.
|
inline |
| field_name | String of field name for spatial positions for rows |
| mesh_nodes_field | String of field name for material positions for columns |
| common_data_contact | Pointer to the common data for simple contact element |
| row_rank | Parameter setting the dimension of the associated field for rows (in this case is 3) |
| col_rank | Parameter setting the dimension of the associated field for cols (in this case is 3) |
Definition at line 3148 of file SimpleContact.hpp.
|
virtual |
Integrates Lagrange multipliers virtual work on master side, \( \delta W_{\text c}\) derivative with respect to material positions on slave side and assembles components to LHS global matrix.
\[ \textrm{D} \delta W_{\rm{c}}({\mathbf{x}}^{(2)}, {\mathbf{X}}^{(2)}, \lambda, \delta{\mathbf{x}}^{(2)}) [\Delta{\mathbf{X}}^{(1)}] = -\int\limits_{\mathcal{T}^{(2)}_{\xi}} \lambda \, \left[ \textrm{D}\mathbf{N}^{(1)}(\mathbf{X}^{(1)})[\Delta\mathbf{X}^{(1)}] \frac{1}{||{{\mathbf N}^{(1)}(\xi, \eta)}||} - \frac{{\mathbf N}^{(1)}(\xi, \eta)}{{\left(||{{\mathbf N}^{(1)}(\xi, \eta)}|| \right)}^{3}} \textrm{D}\mathbf{N}^{(1)}(\mathbf{X}^{(1)})[\Delta\mathbf{X}^{(1)}] \cdot {{\mathbf N}^{(1)}(\xi, \eta)} \right] \cdot \delta{\mathbf{x}}^{(1)} {||{{\mathbf N}^{(2)}(\xi, \eta)}||} \textrm{d}\xi\textrm{d}\eta \]
Where
\[ \textrm{D}\mathbf{N}^{(1)}(\mathbf{X}^{(1)})[\Delta\mathbf{X}^{(1)}] = \frac{\partial{\Delta\mathbf{X}}^{(1)}} {\partial\xi} \times \frac{\partial {\mathbf{X}}^{(1)}}{\partial\eta} + \frac{\partial{\mathbf{X}}^{(1)}} {\partial\xi} \times \frac{\partial {\Delta\mathbf{X}}^{(1)}}{\partial\eta} \]
Here superscripts \((1)\) and \((2)\) denote slave and master side coordinates and surfaces, respectively. Moreover, \(\lambda\) is the lagrange multiplier.
Reimplemented from SimpleContactProblem::OpContactALELhs.
Definition at line 3530 of file SimpleContact.cpp.