v0.14.0
Loading...
Searching...
No Matches
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)
 
virtual MoFEMErrorCode evaluateRhs (EntData &data)=0
 
virtual MoFEMErrorCode evaluateLhs (EntData &data)=0
 
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 472 of file EshelbianADOL-C.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 473 of file EshelbianADOL-C.cpp.

475 : OpJacobian(), dataAtGaussPts(data_ptr), henckyPtr(hencky_ptr) {
477 "getOptions failed");
478 CHK_THROW_MESSAGE(henckyPtr->extractBlockData(Sev::inform),
479 "Can not get data from block");
480 }
#define CHK_THROW_MESSAGE(err, msg)
Check and throw MoFEM exception.
Definition: definitions.h:595
boost::shared_ptr< DataAtIntegrationPts > dataAtGaussPts

Member Function Documentation

◆ doWork()

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

Definition at line 482 of file EshelbianADOL-C.cpp.

483 {
485
486 for (auto &b : henckyPtr->blockData) {
487
488 if (b.blockEnts.find(getFEEntityHandle()) != b.blockEnts.end()) {
489 dataAtGaussPts->mu = b.bulkModulusK;
490 dataAtGaussPts->lambda = b.bulkModulusK;
491 CHKERR henckyPtr->getMatDPtr(dataAtGaussPts->getMatDPtr(),
492 dataAtGaussPts->getMatAxiatorDPtr(),
493 dataAtGaussPts->getMatDeviatorDPtr(),
494 b.bulkModulusK, b.shearModulusG);
496 }
497 }
498
499 const auto E = henckyPtr->E;
500 const auto nu = henckyPtr->nu;
501
502 double bulk_modulus_K = E / (3 * (1 - 2 * nu));
503 double shear_modulus_G = E / (2 * (1 + nu));
504
507
508 CHKERR henckyPtr->getMatDPtr(dataAtGaussPts->getMatDPtr(),
509 dataAtGaussPts->getMatAxiatorDPtr(),
510 dataAtGaussPts->getMatDeviatorDPtr(),
512
514 }
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:447
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:346
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:416
#define CHKERR
Inline error check.
Definition: definitions.h:535
double bulk_modulus_K
double shear_modulus_G

◆ evaluateLhs()

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

Implements EshelbianPlasticity::OpJacobian.

Definition at line 517 of file EshelbianADOL-C.cpp.

517{ return 0; }

◆ evaluateRhs()

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

Implements EshelbianPlasticity::OpJacobian.

Definition at line 516 of file EshelbianADOL-C.cpp.

516{ return 0; }

Member Data Documentation

◆ dataAtGaussPts

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

Definition at line 520 of file EshelbianADOL-C.cpp.

◆ henckyPtr

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

Definition at line 521 of file EshelbianADOL-C.cpp.


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