v0.16.3
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
EshelbianPlasticity::TopologicalData Struct Reference

#include "users_modules/eshelbian_plasticity/src/EshelbianTopologicalDerivative.hpp"

Inheritance diagram for EshelbianPlasticity::TopologicalData:
[legend]
Collaboration diagram for EshelbianPlasticity::TopologicalData:
[legend]

Public Member Functions

auto getFTensorJacobian (const int nb_gauss_pts)
 
auto getFTensorInvJacobian (const int nb_gauss_pts)
 
auto getFTensorDetJacobian (const int nb_gauss_pts)
 
auto getFTensorTangent1 (const int nb_gauss_pts)
 
auto getFTensorTangent2 (const int nb_gauss_pts)
 
auto getFTensorNormal (const int nb_gauss_pts)
 
auto getFTensorObj (const int nb_gauss_pts)
 
auto getFTensorObjDStrain (const int nb_gauss_pts)
 
auto getFTensorObjDStress (const int nb_gauss_pts)
 
auto getFTensorObjDDisplacement (const int nb_gauss_pts)
 
auto getFTensorObjDRotation (const int nb_gauss_pts, const int mode=1, const int point=0)
 
auto getJacobianAtPts ()
 
auto getInvJacobianAtPts ()
 
auto getDetJacobianAtPts ()
 
auto getTangent1AtPts ()
 
auto getTangent2AtPts ()
 
auto getNormalAtPts ()
 
auto getObjAtPts ()
 
auto getObjDStrainAtPts ()
 
auto getObjDStressAtPts ()
 
auto getObjDDisplacementAtPts ()
 
auto getObjDRotationAtPts ()
 
 MatOpsTopoData ()
 
- Public Member Functions inherited from EshelbianPlasticity::MatOpsTopoData
 MatOpsTopoData ()
 

Static Public Member Functions

template<class Tensor >
static auto getFTensor (MatrixDouble &m, const int nb_gauss_pts)
 
template<class Tensor >
static auto getFTensor (MatrixPtr m, const int nb_gauss_pts)
 
static auto getFTensor0 (MatrixPtr m, const int nb_gauss_pts)
 

Public Attributes

MatrixPtr objConstantRotation = boost::make_shared<MatrixDouble>()
 
- Public Attributes inherited from EshelbianPlasticity::MatOpsTopoData
boost::shared_ptr< MatOps::MatOpsData > matOpsData
 

Detailed Description

Definition at line 38 of file EshelbianTopologicalDerivative.hpp.

Member Function Documentation

◆ getDetJacobianAtPts()

auto EshelbianPlasticity::TopologicalData::getDetJacobianAtPts ( )
inline

Definition at line 132 of file EshelbianTopologicalDerivative.hpp.

132 {
133 return matOpsData->getCommonDataPtr("detJacobianAtPts");
134 }
boost::shared_ptr< MatOps::MatOpsData > matOpsData

◆ getFTensor() [1/2]

template<class Tensor >
static auto EshelbianPlasticity::TopologicalData::getFTensor ( MatrixDouble &  m,
const int  nb_gauss_pts 
)
inlinestatic

Definition at line 44 of file EshelbianTopologicalDerivative.hpp.

44 {
45 return MatrixSizeHelper<Tensor, DL>::get(m, nb_gauss_pts)();
46 }
FTensor::Index< 'm', 3 > m

◆ getFTensor() [2/2]

template<class Tensor >
static auto EshelbianPlasticity::TopologicalData::getFTensor ( MatrixPtr  m,
const int  nb_gauss_pts 
)
inlinestatic

Definition at line 49 of file EshelbianTopologicalDerivative.hpp.

49 {
50 return getFTensor<Tensor>(*m, nb_gauss_pts);
51 }

◆ getFTensor0()

static auto EshelbianPlasticity::TopologicalData::getFTensor0 ( MatrixPtr  m,
const int  nb_gauss_pts 
)
inlinestatic

Definition at line 53 of file EshelbianTopologicalDerivative.hpp.

53 {
54#ifndef NDEBUG
55 if (!m)
56 THROW_MESSAGE("TopologicalData matrix pointer is not available");
57
58 const auto nb = static_cast<size_t>(nb_gauss_pts);
59 if (!((m->size1() == nb && m->size2() == 1) ||
60 (m->size1() == 1 && m->size2() == nb)))
61 THROW_MESSAGE("Scalar matrix size is not compatible with the number of "
62 "integration points");
63#endif
64 return getFTensor0FromMat(*m);
65 }
#define THROW_MESSAGE(msg)
Throw MoFEM exception.
auto getFTensor0FromMat(M &data)
Get tensor rank 0 (scalar) form data vector.

◆ getFTensorDetJacobian()

auto EshelbianPlasticity::TopologicalData::getFTensorDetJacobian ( const int  nb_gauss_pts)
inline

Definition at line 77 of file EshelbianTopologicalDerivative.hpp.

77 {
78 return getFTensor0(matOpsData->getCommonDataPtr("detJacobianAtPts"),
79 nb_gauss_pts);
80 }
static auto getFTensor0(MatrixPtr m, const int nb_gauss_pts)

◆ getFTensorInvJacobian()

auto EshelbianPlasticity::TopologicalData::getFTensorInvJacobian ( const int  nb_gauss_pts)
inline

Definition at line 72 of file EshelbianTopologicalDerivative.hpp.

72 {
74 matOpsData->getCommonDataPtr("invJacobianAtPtr"), nb_gauss_pts);
75 }
constexpr int SPACE_DIM
DataLayoutTraits< DataLayout::GaussByCoeffs > DL
decltype(GetFTensor2FromMatImpl< Tensor_Dim0, Tensor_Dim1, S, DL, M >::get(std::declval< M & >(), 0, 0)) GetFTensor2FromMatType
static auto getFTensor(MatrixDouble &m, const int nb_gauss_pts)

◆ getFTensorJacobian()

auto EshelbianPlasticity::TopologicalData::getFTensorJacobian ( const int  nb_gauss_pts)
inline

Definition at line 67 of file EshelbianTopologicalDerivative.hpp.

67 {
69 matOpsData->getCommonDataPtr("jacobianAtPts"), nb_gauss_pts);
70 }

◆ getFTensorNormal()

auto EshelbianPlasticity::TopologicalData::getFTensorNormal ( const int  nb_gauss_pts)
inline

Definition at line 92 of file EshelbianTopologicalDerivative.hpp.

92 {
94 matOpsData->getCommonDataPtr("normalAtPts"), nb_gauss_pts);
95 }
decltype(GetFTensor1FromMatImpl< Tensor_Dim, S, DL, M >::get(std::declval< M & >(), 0, 0)) GetFTensor1FromMatType

◆ getFTensorObj()

auto EshelbianPlasticity::TopologicalData::getFTensorObj ( const int  nb_gauss_pts)
inline

Definition at line 97 of file EshelbianTopologicalDerivative.hpp.

97 {
98 return getFTensor0(matOpsData->getCommonDataPtr("objAtPts"), nb_gauss_pts);
99 }

◆ getFTensorObjDDisplacement()

auto EshelbianPlasticity::TopologicalData::getFTensorObjDDisplacement ( const int  nb_gauss_pts)
inline

Definition at line 111 of file EshelbianTopologicalDerivative.hpp.

111 {
113 matOpsData->getCommonDataPtr("objDDisplacementAtPts"), nb_gauss_pts);
114 }

◆ getFTensorObjDRotation()

auto EshelbianPlasticity::TopologicalData::getFTensorObjDRotation ( const int  nb_gauss_pts,
const int  mode = 1,
const int  point = 0 
)
inline

Definition at line 116 of file EshelbianTopologicalDerivative.hpp.

117 {
118 const auto values = mode ? matOpsData->getCommonDataPtr("objDRotationAtPts")
120 return GetFTensor1FromMatImpl<SPACE_DIM, -1, DL, MatrixDouble>::get(
121 *values, point, 0);
122 }
SmartPetscObj< Vec > values

◆ getFTensorObjDStrain()

auto EshelbianPlasticity::TopologicalData::getFTensorObjDStrain ( const int  nb_gauss_pts)
inline

Definition at line 101 of file EshelbianTopologicalDerivative.hpp.

101 {
103 matOpsData->getCommonDataPtr("objDStrainAtPts"), nb_gauss_pts);
104 }

◆ getFTensorObjDStress()

auto EshelbianPlasticity::TopologicalData::getFTensorObjDStress ( const int  nb_gauss_pts)
inline

Definition at line 106 of file EshelbianTopologicalDerivative.hpp.

106 {
108 matOpsData->getCommonDataPtr("objDStressAtPts"), nb_gauss_pts);
109 }

◆ getFTensorTangent1()

auto EshelbianPlasticity::TopologicalData::getFTensorTangent1 ( const int  nb_gauss_pts)
inline

Definition at line 82 of file EshelbianTopologicalDerivative.hpp.

82 {
84 matOpsData->getCommonDataPtr("tangent1AtPts"), nb_gauss_pts);
85 }

◆ getFTensorTangent2()

auto EshelbianPlasticity::TopologicalData::getFTensorTangent2 ( const int  nb_gauss_pts)
inline

Definition at line 87 of file EshelbianTopologicalDerivative.hpp.

87 {
89 matOpsData->getCommonDataPtr("tangent2AtPts"), nb_gauss_pts);
90 }

◆ getInvJacobianAtPts()

auto EshelbianPlasticity::TopologicalData::getInvJacobianAtPts ( )
inline

Definition at line 128 of file EshelbianTopologicalDerivative.hpp.

128 {
129 return matOpsData->getCommonDataPtr("invJacobianAtPtr");
130 }

◆ getJacobianAtPts()

auto EshelbianPlasticity::TopologicalData::getJacobianAtPts ( )
inline

Definition at line 124 of file EshelbianTopologicalDerivative.hpp.

124 {
125 return matOpsData->getCommonDataPtr("jacobianAtPts");
126 }

◆ getNormalAtPts()

auto EshelbianPlasticity::TopologicalData::getNormalAtPts ( )
inline

Definition at line 144 of file EshelbianTopologicalDerivative.hpp.

144 {
145 return matOpsData->getCommonDataPtr("normalAtPts");
146 }

◆ getObjAtPts()

auto EshelbianPlasticity::TopologicalData::getObjAtPts ( )
inline

Definition at line 148 of file EshelbianTopologicalDerivative.hpp.

148{ return matOpsData->getCommonDataPtr("objAtPts"); }

◆ getObjDDisplacementAtPts()

auto EshelbianPlasticity::TopologicalData::getObjDDisplacementAtPts ( )
inline

Definition at line 158 of file EshelbianTopologicalDerivative.hpp.

158 {
159 return matOpsData->getCommonDataPtr("objDDisplacementAtPts");
160 }

◆ getObjDRotationAtPts()

auto EshelbianPlasticity::TopologicalData::getObjDRotationAtPts ( )
inline

Definition at line 162 of file EshelbianTopologicalDerivative.hpp.

162 {
163 return matOpsData->getCommonDataPtr("objDRotationAtPts");
164 }

◆ getObjDStrainAtPts()

auto EshelbianPlasticity::TopologicalData::getObjDStrainAtPts ( )
inline

Definition at line 150 of file EshelbianTopologicalDerivative.hpp.

150 {
151 return matOpsData->getCommonDataPtr("objDStrainAtPts");
152 }

◆ getObjDStressAtPts()

auto EshelbianPlasticity::TopologicalData::getObjDStressAtPts ( )
inline

Definition at line 154 of file EshelbianTopologicalDerivative.hpp.

154 {
155 return matOpsData->getCommonDataPtr("objDStressAtPts");
156 }

◆ getTangent1AtPts()

auto EshelbianPlasticity::TopologicalData::getTangent1AtPts ( )
inline

Definition at line 136 of file EshelbianTopologicalDerivative.hpp.

136 {
137 return matOpsData->getCommonDataPtr("tangent1AtPts");
138 }

◆ getTangent2AtPts()

auto EshelbianPlasticity::TopologicalData::getTangent2AtPts ( )
inline

Definition at line 140 of file EshelbianTopologicalDerivative.hpp.

140 {
141 return matOpsData->getCommonDataPtr("tangent2AtPts");
142 }

◆ MatOpsTopoData()

EshelbianPlasticity::MatOpsTopoData::MatOpsTopoData ( )
inline

Definition at line 18 of file EshelbianTopologicalDerivative.hpp.

18 {
20 matOpsData->insertCommonData("jacobianAtPts");
21 matOpsData->insertCommonData("invJacobianAtPtr");
22 matOpsData->insertCommonData("detJacobianAtPts");
23 matOpsData->insertCommonData("tangent1AtPts");
24 matOpsData->insertCommonData("tangent2AtPts");
25 matOpsData->insertCommonData("normalAtPts");
26 matOpsData->insertCommonData("objAtPts");
27 matOpsData->insertCommonData("objDStrainAtPts");
28 matOpsData->insertCommonData("objDStressAtPts");
29 matOpsData->insertCommonData("objDRotationAtPts");
30 matOpsData->insertCommonData("objDDisplacementAtPts");
31 }
boost::shared_ptr< MatOpsData > createMatOpsDataPtr()
Definition MatOps.cpp:709

Member Data Documentation

◆ objConstantRotation

MatrixPtr EshelbianPlasticity::TopologicalData::objConstantRotation = boost::make_shared<MatrixDouble>()

Definition at line 41 of file EshelbianTopologicalDerivative.hpp.


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