v0.14.0
Public Member Functions | Private Attributes | List of all members
EshelbianPlasticity::HMHHencky::OpHenckyJacobian Struct Reference
Inheritance diagram for EshelbianPlasticity::HMHHencky::OpHenckyJacobian:
[legend]
Collaboration diagram for EshelbianPlasticity::HMHHencky::OpHenckyJacobian:
[legend]

Public Member Functions

 OpHenckyJacobian (boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< HMHHencky > hencky_ptr)
 
MoFEMErrorCode doWork (int side, EntityType type, EntitiesFieldData::EntData &data)
 
MoFEMErrorCode evaluateRhs (EntData &data)
 
MoFEMErrorCode evaluateLhs (EntData &data)
 
- Public Member Functions inherited from EshelbianPlasticity::OpJacobian
 OpJacobian (const int tag, const bool eval_rhs, const bool eval_lhs, boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< PhysicalEquations > physics_ptr)
 
MoFEMErrorCode doWork (int side, EntityType type, EntData &data)
 

Private Attributes

boost::shared_ptr< DataAtIntegrationPtsdataAtGaussPts
 
boost::shared_ptr< HMHHenckyhenckyPtr
 

Additional Inherited Members

- Protected Member Functions inherited from EshelbianPlasticity::OpJacobian
 OpJacobian ()
 
- Protected Attributes inherited from EshelbianPlasticity::OpJacobian
int tAg = -1
 adol-c tape More...
 
bool evalRhs = false
 
bool evalLhs = false
 
boost::shared_ptr< DataAtIntegrationPtsdataAtPts
 data at integration pts More...
 
boost::shared_ptr< PhysicalEquationsphysicsPtr
 material physical equations More...
 

Detailed Description

Definition at line 19 of file Hencky.cpp.

Constructor & Destructor Documentation

◆ OpHenckyJacobian()

EshelbianPlasticity::HMHHencky::OpHenckyJacobian::OpHenckyJacobian ( boost::shared_ptr< DataAtIntegrationPts data_ptr,
boost::shared_ptr< HMHHencky hencky_ptr 
)
inline

Definition at line 20 of file Hencky.cpp.

22  : OpJacobian(), dataAtGaussPts(data_ptr), henckyPtr(hencky_ptr) {
24  "getOptions failed");
25  CHK_THROW_MESSAGE(henckyPtr->extractBlockData(Sev::inform),
26  "Can not get data from block");
27  }

Member Function Documentation

◆ doWork()

MoFEMErrorCode EshelbianPlasticity::HMHHencky::OpHenckyJacobian::doWork ( int  side,
EntityType  type,
EntitiesFieldData::EntData data 
)
inline

Definition at line 29 of file Hencky.cpp.

30  {
32 
33  for (auto &b : henckyPtr->blockData) {
34 
35  if (b.blockEnts.find(getFEEntityHandle()) != b.blockEnts.end()) {
36  dataAtGaussPts->mu = b.bulkModulusK;
37  dataAtGaussPts->lambda = b.bulkModulusK;
38  CHKERR henckyPtr->getMatDPtr(dataAtGaussPts->getMatDPtr(),
39  dataAtGaussPts->getMatAxiatorDPtr(),
40  dataAtGaussPts->getMatDeviatorDPtr(),
41  b.bulkModulusK, b.shearModulusG);
43  }
44  }
45 
46  const auto E = henckyPtr->E;
47  const auto nu = henckyPtr->nu;
48 
49  double bulk_modulus_K = E / (3 * (1 - 2 * nu));
50  double shear_modulus_G = E / (2 * (1 + nu));
51 
54 
55  CHKERR henckyPtr->getMatDPtr(dataAtGaussPts->getMatDPtr(),
56  dataAtGaussPts->getMatAxiatorDPtr(),
57  dataAtGaussPts->getMatDeviatorDPtr(),
59 
61  }

◆ evaluateLhs()

MoFEMErrorCode EshelbianPlasticity::HMHHencky::OpHenckyJacobian::evaluateLhs ( EntData data)
inlinevirtual

Implements EshelbianPlasticity::OpJacobian.

Definition at line 64 of file Hencky.cpp.

64 { return 0; }

◆ evaluateRhs()

MoFEMErrorCode EshelbianPlasticity::HMHHencky::OpHenckyJacobian::evaluateRhs ( EntData data)
inlinevirtual

Implements EshelbianPlasticity::OpJacobian.

Definition at line 63 of file Hencky.cpp.

63 { return 0; }

Member Data Documentation

◆ dataAtGaussPts

boost::shared_ptr<DataAtIntegrationPts> EshelbianPlasticity::HMHHencky::OpHenckyJacobian::dataAtGaussPts
private

Definition at line 67 of file Hencky.cpp.

◆ henckyPtr

boost::shared_ptr<HMHHencky> EshelbianPlasticity::HMHHencky::OpHenckyJacobian::henckyPtr
private

Definition at line 68 of file Hencky.cpp.


The documentation for this struct was generated from the following file:
MoFEMFunctionReturnHot
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:460
CHK_THROW_MESSAGE
#define CHK_THROW_MESSAGE(err, msg)
Check and throw MoFEM exception.
Definition: definitions.h:609
E
EshelbianPlasticity::HMHHencky::OpHenckyJacobian::henckyPtr
boost::shared_ptr< HMHHencky > henckyPtr
Definition: Hencky.cpp:68
bulk_modulus_K
double bulk_modulus_K
Definition: dynamic_first_order_con_law.cpp:96
EshelbianPlasticity::HMHHencky::nu
double nu
Definition: Hencky.cpp:284
CHKERR
#define CHKERR
Inline error check.
Definition: definitions.h:548
EshelbianPlasticity::HMHHencky::OpHenckyJacobian::dataAtGaussPts
boost::shared_ptr< DataAtIntegrationPts > dataAtGaussPts
Definition: Hencky.cpp:67
EshelbianPlasticity::OpJacobian::OpJacobian
OpJacobian()
Definition: EshelbianPlasticity.hpp:394
shear_modulus_G
double shear_modulus_G
Definition: dynamic_first_order_con_law.cpp:97
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359