v0.14.0 |
LHS-operator for the contact element (material configuration) More...
#include <users_modules/mortar_contact/src/SimpleContact.hpp>
Public Member Functions | |
MoFEMErrorCode | iNtegrate (EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data) |
Compute part of the left-hand side. More... | |
OpContactMaterialVolOnSideLhs_dX_dX (const string field_name_1, const string field_name_2, boost::shared_ptr< CommonDataSimpleContact > common_data_contact, const bool is_master) | |
LHS-operator for the contact element (material configuration) More... | |
Public Member Functions inherited from SimpleContactProblem::OpContactMaterialVolOnSideLhs | |
MoFEMErrorCode | doWork (int row_side, int col_side, EntityType row_type, EntityType col_type, EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data) |
MoFEMErrorCode | aSsemble (EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data) |
OpContactMaterialVolOnSideLhs (const string field_name_1, const string field_name_2, boost::shared_ptr< CommonDataSimpleContact > common_data_contact, const bool is_master) | |
LHS-operator for the contact element (material configuration) More... | |
Additional Inherited Members | |
Public Attributes inherited from SimpleContactProblem::OpContactMaterialVolOnSideLhs | |
MatrixDouble | matLhs |
boost::shared_ptr< CommonDataSimpleContact > | commonDataSimpleContact |
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 |
boost::shared_ptr< VectorDouble > | tangentOne |
boost::shared_ptr< VectorDouble > | tangentTwo |
boost::shared_ptr< VectorDouble > | normalVector |
double | aRea |
LHS-operator for the contact element (material configuration)
Computes linearisation of normal vector from the expression for material traction contribution with respect to material coordinates on slave or master side.
Definition at line 3397 of file SimpleContact.hpp.
|
inline |
LHS-operator for the contact element (material configuration)
field_name_1 | String of field name for spatial positions for rows |
field_name_2 | String of field name for spatial positions for columns |
common_data_contact | Pointer to the common data for simple contact element |
is_master | Bool parameter to distinguish between master and slave sides |
Definition at line 3441 of file SimpleContact.hpp.
|
virtual |
Compute part of the left-hand side.
Computes the linearisation of the material component with respect to a variation of material coordinates \((\Delta{\mathbf{X}}^{(i)})\):
\[ \textrm{D} \delta W^\text{(i)}_{\rm{material}}({\mathbf{x}}^{(i)}, {\mathbf{X}}^{(i)}, \delta{\mathbf{x}}^{(i)}) [\Delta{\mathbf{X}}^{(i)}] = -\int\limits_{\mathcal{T}^{(i)}_{\xi}} \lambda \, \mathbf{F}^{\intercal}\cdot \left[ \frac{\partial{\mathbf{X}}^{(i)}} {\partial\xi} \cdot \left(\frac{\partial\Delta {\mathbf{X}}^{(i)}}{\partial\eta}\times\delta{\mathbf{x}}^{(i)}\right) -\frac{\partial{\mathbf{X}}^{(i)}} {\partial\eta} \cdot \left(\frac{\partial\Delta {\mathbf{X}}^{(i)}}{\partial\xi}\times \delta{\mathbf{x}}^{(i)}\right)\right] \textrm{d}\xi\textrm{d}\eta \]
Here superscript \((i)\) is either equal to 1 or 2 denoting slave or master side coordinates and surfaces, respectively. Moreover, \(\lambda\) is the lagrange multiplier.
Reimplemented from SimpleContactProblem::OpContactMaterialVolOnSideLhs.
Definition at line 4038 of file SimpleContact.cpp.