v0.13.0
Classes | Functions
OpContactTools Namespace Reference

Classes

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

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 
)

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:76
constexpr double g

◆ diff_constraints_dgap()

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

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 
)

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 
)

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 
)

Definition at line 95 of file ContactOperators.hpp.

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

◆ sign()

double OpContactTools::sign ( double  x)

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 
)