v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
ContactOps::CommonData Struct Reference

[Common data] More...

#include <users_modules/tutorials/adv-1/src/ContactOps.hpp>

Inheritance diagram for ContactOps::CommonData:
[legend]
Collaboration diagram for ContactOps::CommonData:
[legend]

Public Member Functions

auto mDPtr ()
 
auto mGradPtr ()
 
auto contactStressPtr ()
 
auto contactStressDivergencePtr ()
 
auto contactTractionPtr ()
 
auto contactDispPtr ()
 
auto stressTractionPtr ()
 

Static Public Member Functions

static auto createTotalTraction (MoFEM::Interface &m_field)
 
static auto getFTensor1TotalTraction ()
 

Public Attributes

MatrixDouble mD
 
MatrixDouble mGrad
 
MatrixDouble contactStress
 
MatrixDouble contactStressDivergence
 
MatrixDouble contactTraction
 
MatrixDouble contactDisp
 
MatrixDouble stressTraction
 

Static Public Attributes

static SmartPetscObj< Vec > totalTraction
 

Detailed Description

[Common data]

Definition at line 11 of file ContactOps.hpp.

Member Function Documentation

◆ contactDispPtr()

auto ContactOps::CommonData::contactDispPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 66 of file ContactOps.hpp.

66 {
67 return boost::shared_ptr<MatrixDouble>(shared_from_this(), &contactDisp);
68 }
MatrixDouble contactDisp
Definition: ContactOps.hpp:18

◆ contactStressDivergencePtr()

auto ContactOps::CommonData::contactStressDivergencePtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 56 of file ContactOps.hpp.

56 {
57 return boost::shared_ptr<MatrixDouble>(shared_from_this(),
59 }
MatrixDouble contactStressDivergence
Definition: ContactOps.hpp:16

◆ contactStressPtr()

auto ContactOps::CommonData::contactStressPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 52 of file ContactOps.hpp.

52 {
53 return boost::shared_ptr<MatrixDouble>(shared_from_this(), &contactStress);
54 }
MatrixDouble contactStress
Definition: ContactOps.hpp:15

◆ contactTractionPtr()

auto ContactOps::CommonData::contactTractionPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 61 of file ContactOps.hpp.

61 {
62 return boost::shared_ptr<MatrixDouble>(shared_from_this(),
64 }
MatrixDouble contactTraction
Definition: ContactOps.hpp:17

◆ createTotalTraction()

static auto ContactOps::CommonData::createTotalTraction ( MoFEM::Interface m_field)
inlinestatic
Examples
ContactOps.hpp.

Definition at line 23 of file ContactOps.hpp.

23 {
24 constexpr int ghosts[] = {0, 1, 2};
27
28 (m_field.get_comm_rank() == 0) ? 3 : 0, 3,
29
30 (m_field.get_comm_rank() == 0) ? 0 : 3, ghosts);
31 return totalTraction;
32 }
auto createGhostVector(MPI_Comm comm, PetscInt n, PetscInt N, PetscInt nghost, const PetscInt ghosts[])
Create smart ghost vector.
static SmartPetscObj< Vec > totalTraction
Definition: ContactOps.hpp:21
virtual MPI_Comm & get_comm() const =0
virtual int get_comm_rank() const =0

◆ getFTensor1TotalTraction()

static auto ContactOps::CommonData::getFTensor1TotalTraction ( )
inlinestatic
Examples
ContactOps.hpp.

Definition at line 34 of file ContactOps.hpp.

34 {
35 const double *t_ptr;
36 CHK_THROW_MESSAGE(VecGetArrayRead(CommonData::totalTraction, &t_ptr),
37 "get array");
38 FTensor::Tensor1<double, 3> t{t_ptr[0], t_ptr[1], t_ptr[2]};
39 CHK_THROW_MESSAGE(VecRestoreArrayRead(CommonData::totalTraction, &t_ptr),
40 "restore array");
41 return t;
42 }
#define CHK_THROW_MESSAGE(err, msg)
Check and throw MoFEM exception.
Definition: definitions.h:595
constexpr double t
plate stiffness
Definition: plate.cpp:59

◆ mDPtr()

auto ContactOps::CommonData::mDPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 44 of file ContactOps.hpp.

44 {
45 return boost::shared_ptr<MatrixDouble>(shared_from_this(), &mD);
46 }

◆ mGradPtr()

auto ContactOps::CommonData::mGradPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 48 of file ContactOps.hpp.

48 {
49 return boost::shared_ptr<MatrixDouble>(shared_from_this(), &mGrad);
50 }

◆ stressTractionPtr()

auto ContactOps::CommonData::stressTractionPtr ( )
inline
Examples
ContactOps.hpp.

Definition at line 70 of file ContactOps.hpp.

70 {
71 return boost::shared_ptr<MatrixDouble>(shared_from_this(), &stressTraction);
72 }
MatrixDouble stressTraction
Definition: ContactOps.hpp:19

Member Data Documentation

◆ contactDisp

MatrixDouble ContactOps::CommonData::contactDisp
Examples
ContactOps.hpp.

Definition at line 18 of file ContactOps.hpp.

◆ contactStress

MatrixDouble ContactOps::CommonData::contactStress
Examples
ContactOps.hpp.

Definition at line 15 of file ContactOps.hpp.

◆ contactStressDivergence

MatrixDouble ContactOps::CommonData::contactStressDivergence
Examples
ContactOps.hpp.

Definition at line 16 of file ContactOps.hpp.

◆ contactTraction

MatrixDouble ContactOps::CommonData::contactTraction
Examples
ContactOps.hpp.

Definition at line 17 of file ContactOps.hpp.

◆ mD

MatrixDouble ContactOps::CommonData::mD
Examples
ContactOps.hpp.

Definition at line 12 of file ContactOps.hpp.

◆ mGrad

MatrixDouble ContactOps::CommonData::mGrad
Examples
ContactOps.hpp.

Definition at line 13 of file ContactOps.hpp.

◆ stressTraction

MatrixDouble ContactOps::CommonData::stressTraction
Examples
ContactOps.hpp.

Definition at line 19 of file ContactOps.hpp.

◆ totalTraction

SmartPetscObj< Vec > CommonData::totalTraction
static
Examples
ContactOps.hpp.

Definition at line 21 of file ContactOps.hpp.


The documentation for this struct was generated from the following file: