v0.13.2
Loading...
Searching...
No Matches
Classes | Functions
OpContactTools Namespace Reference

Classes

struct  CommonData
 [Common data] More...
 
struct  OpConstrainBoundaryLhs_dTraction
 
struct  OpConstrainBoundaryLhs_dU
 
struct  OpConstrainBoundaryRhs
 
struct  OpGetClosestRigidBodyData
 
struct  OpGetContactArea
 
struct  OpGetGaussPtsContactState
 [Postprocessing] More...
 
struct  OpPostProcContact
 
struct  OpPostProcVertex
 [Common data] More...
 

Functions

template<typename T >
double gap0 (double g, FTensor::Tensor1< T, 3 > &t_disp, FTensor::Tensor1< T, 3 > &t_normal)
 
template<typename T1 , typename T2 >
double normal_traction (Tensor1< T1, 3 > &t_traction, Tensor1< T2, 3 > &t_normal)
 
double sign (double x)
 
double w (const double g, const double t)
 
double constraint (double g0, double g, double &&t)
 
double diff_constraints_dtraction (double g, double &&t)
 
double diff_constraints_dgap (double g, double &&t)
 

Function Documentation

◆ constraint()

double OpContactTools::constraint ( double  g0,
double  g,
double &&  t 
)
inline

Definition at line 113 of file ContactOperators.hpp.

113 {
114 return (w(g, t) + std::abs(w(g, t))) / 2 + g0;
115};
double w(const double g, const double t)
constexpr double t
plate stiffness
Definition: plate.cpp:59
constexpr double g

◆ diff_constraints_dgap()

double OpContactTools::diff_constraints_dgap ( double  g,
double &&  t 
)
inline

Definition at line 121 of file ContactOperators.hpp.

121 {
122 return (sign(w(g, t)) - 1) / 2;
123}
double sign(double x)

◆ diff_constraints_dtraction()

double OpContactTools::diff_constraints_dtraction ( double  g,
double &&  t 
)
inline

Definition at line 117 of file ContactOperators.hpp.

117 {
118 return -(*cache).cn_cont * (1 + sign(w(g, t))) / 2;
119}

◆ gap0()

template<typename T >
double OpContactTools::gap0 ( double  g,
FTensor::Tensor1< T, 3 > &  t_disp,
FTensor::Tensor1< T, 3 > &  t_normal 
)
inline

Definition at line 89 of file ContactOperators.hpp.

90 {
91 return -g + t_disp(i) * t_normal(i);
92}
FTensor::Index< 'i', SPACE_DIM > i

◆ normal_traction()

template<typename T1 , typename T2 >
double OpContactTools::normal_traction ( Tensor1< T1, 3 > &  t_traction,
Tensor1< T2, 3 > &  t_normal 
)
inline

Definition at line 95 of file ContactOperators.hpp.

96 {
97 return -t_traction(i) * t_normal(i);
98}

◆ sign()

double OpContactTools::sign ( double  x)
inline

Definition at line 100 of file ContactOperators.hpp.

100 {
101 if (x == 0)
102 return 0;
103 else if (x > 0)
104 return 1;
105 else
106 return -1;
107};

◆ w()

double OpContactTools::w ( const double  g,
const double  t 
)
inline

Definition at line 109 of file ContactOperators.hpp.

109 {
110 return g - (*cache).cn_cont * t;
111}