v0.14.0
Classes | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
EshelbianPlasticity::HMHNeohookean Struct Reference
Inheritance diagram for EshelbianPlasticity::HMHNeohookean:
[legend]
Collaboration diagram for EshelbianPlasticity::HMHNeohookean:
[legend]

Classes

struct  OpJacobian
 
struct  OpSpatialPhysical
 
struct  OpSpatialPhysical_du_du
 

Public Member Functions

 HMHNeohookean (const double c10, const double K)
 
virtual EshelbianPlasticity::OpJacobianreturnOpJacobian (const int tag, const bool eval_rhs, const bool eval_lhs, boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< PhysicalEquations > physics_ptr)
 
MoFEMErrorCode getOptions ()
 
MoFEMErrorCode recordTape (const int tape, DTensor2Ptr *t_h_ptr)
 
virtual VolUserDataOperatorreturnOpSpatialPhysical (const std::string &field_name, boost::shared_ptr< DataAtIntegrationPts > data_ptr, const double alpha_u)
 
VolUserDataOperatorreturnOpSpatialPhysical_du_du (std::string row_field, std::string col_field, boost::shared_ptr< DataAtIntegrationPts > data_ptr, const double alpha)
 
- Public Member Functions inherited from EshelbianPlasticity::PhysicalEquations
 PhysicalEquations ()=delete
 
 PhysicalEquations (const int size_active, const int size_dependent)
 
virtual ~PhysicalEquations ()=default
 
virtual VolUserDataOperatorreturnOpCalculateEnergy (boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< double > total_energy_ptr)
 
virtual VolUserDataOperatorreturnOpCalculateStretchFromStress (boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< PhysicalEquations > physics_ptr)
 
DTensor2Ptr get_P ()
 
DTensor3Ptr get_P_dh0 ()
 
DTensor3Ptr get_P_dh1 ()
 
DTensor3Ptr get_P_dh2 ()
 
DTensor2Ptr get_h ()
 

Public Attributes

double c10
 
double K
 
- Public Attributes inherited from EshelbianPlasticity::PhysicalEquations
std::vector< doubleactiveVariables
 
std::vector< doubledependentVariablesPiola
 
std::vector< doubledependentVariablesPiolaDirevatives
 

Static Public Attributes

static constexpr int numberOfActiveVariables = 9
 
static constexpr int numberOfDependentVariables = 9
 

Additional Inherited Members

- Public Types inherited from EshelbianPlasticity::PhysicalEquations
typedef FTensor::Tensor1< adouble, 3 > ATensor1
 
typedef FTensor::Tensor2< adouble, 3, 3 > ATensor2
 
typedef FTensor::Tensor3< adouble, 3, 3, 3 > ATensor3
 
typedef FTensor::Tensor1< double, 3 > DTensor1
 
typedef FTensor::Tensor2< double, 3, 3 > DTensor2
 
typedef FTensor::Tensor3< double, 3, 3, 3 > DTensor3
 
typedef FTensor::Tensor0< FTensor::PackPtr< double *, 1 > > DTensor0Ptr
 
typedef FTensor::Tensor2< FTensor::PackPtr< double *, 1 >, 3, 3 > DTensor2Ptr
 
typedef FTensor::Tensor3< FTensor::PackPtr< double *, 1 >, 3, 3, 3 > DTensor3Ptr
 
- Static Public Member Functions inherited from EshelbianPlasticity::PhysicalEquations
template<int S>
static DTensor2Ptr get_VecTensor2 (std::vector< double > &v)
 
template<int S>
static DTensor0Ptr get_VecTensor0 (std::vector< double > &v)
 
template<int S0>
static DTensor3Ptr get_vecTensor3 (std::vector< double > &v, const int nba)
 

Detailed Description

Definition at line 12 of file HMHNeohookean.cpp.

Constructor & Destructor Documentation

◆ HMHNeohookean()

EshelbianPlasticity::HMHNeohookean::HMHNeohookean ( const double  c10,
const double  K 
)
inline

Member Function Documentation

◆ getOptions()

MoFEMErrorCode EshelbianPlasticity::HMHNeohookean::getOptions ( )
inline

Definition at line 34 of file HMHNeohookean.cpp.

34  {
36  CHKERR PetscOptionsBegin(PETSC_COMM_WORLD, "neo_hookean_", "", "none");
37 
38  c10 = 1;
39  CHKERR PetscOptionsScalar("-c10", "C10", "", c10, &c10, PETSC_NULL);
40  K = 1;
41  CHKERR PetscOptionsScalar("-K", "Bulk modulus K", "", K, &K, PETSC_NULL);
42 
43  ierr = PetscOptionsEnd();
44  CHKERRG(ierr);
46  }

◆ recordTape()

MoFEMErrorCode EshelbianPlasticity::HMHNeohookean::recordTape ( const int  tape,
DTensor2Ptr t_h_ptr 
)
inlinevirtual

Implements EshelbianPlasticity::PhysicalEquations.

Definition at line 51 of file HMHNeohookean.cpp.

51  {
55  }

◆ returnOpJacobian()

virtual EshelbianPlasticity::OpJacobian* EshelbianPlasticity::HMHNeohookean::returnOpJacobian ( const int  tag,
const bool  eval_rhs,
const bool  eval_lhs,
boost::shared_ptr< DataAtIntegrationPts data_ptr,
boost::shared_ptr< PhysicalEquations physics_ptr 
)
inlinevirtual

Implements EshelbianPlasticity::PhysicalEquations.

Definition at line 28 of file HMHNeohookean.cpp.

30  {
31  return (new OpJacobian(tag, eval_rhs, eval_lhs, data_ptr, physics_ptr));
32  }

◆ returnOpSpatialPhysical()

virtual VolUserDataOperator* EshelbianPlasticity::HMHNeohookean::returnOpSpatialPhysical ( const std::string &  field_name,
boost::shared_ptr< DataAtIntegrationPts data_ptr,
const double  alpha_u 
)
inlinevirtual

Reimplemented from EshelbianPlasticity::PhysicalEquations.

Definition at line 70 of file HMHNeohookean.cpp.

72  {
73  return new OpSpatialPhysical(field_name, data_ptr, alpha_u);
74  }

◆ returnOpSpatialPhysical_du_du()

VolUserDataOperator* EshelbianPlasticity::HMHNeohookean::returnOpSpatialPhysical_du_du ( std::string  row_field,
std::string  col_field,
boost::shared_ptr< DataAtIntegrationPts data_ptr,
const double  alpha 
)
inlinevirtual

Reimplemented from EshelbianPlasticity::PhysicalEquations.

Definition at line 86 of file HMHNeohookean.cpp.

88  {
89  return new OpSpatialPhysical_du_du(row_field, col_field, data_ptr,
90  alpha);
91  }

Member Data Documentation

◆ c10

double EshelbianPlasticity::HMHNeohookean::c10

Definition at line 48 of file HMHNeohookean.cpp.

◆ K

double EshelbianPlasticity::HMHNeohookean::K

Definition at line 49 of file HMHNeohookean.cpp.

◆ numberOfActiveVariables

constexpr int EshelbianPlasticity::HMHNeohookean::numberOfActiveVariables = 9
staticconstexpr

Definition at line 14 of file HMHNeohookean.cpp.

◆ numberOfDependentVariables

constexpr int EshelbianPlasticity::HMHNeohookean::numberOfDependentVariables = 9
staticconstexpr

Definition at line 15 of file HMHNeohookean.cpp.


The documentation for this struct was generated from the following file:
EshelbianPlasticity::HMHNeohookean::numberOfActiveVariables
static constexpr int numberOfActiveVariables
Definition: HMHNeohookean.cpp:14
CHKERR
#define CHKERR
Inline error check.
Definition: definitions.h:548
EshelbianPlasticity::HMHNeohookean::K
double K
Definition: HMHNeohookean.cpp:49
EshelbianPlasticity::HMHNeohookean::numberOfDependentVariables
static constexpr int numberOfDependentVariables
Definition: HMHNeohookean.cpp:15
field_name
constexpr auto field_name
Definition: poisson_2d_homogeneous.cpp:13
EshelbianPlasticity::HMHNeohookean::getOptions
MoFEMErrorCode getOptions()
Definition: HMHNeohookean.cpp:34
MoFEM::Exceptions::ierr
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Exceptions.hpp:76
EshelbianPlasticity::HMHNeohookean::c10
double c10
Definition: HMHNeohookean.cpp:48
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
CHKERRG
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:496
EshelbianPlasticity::PhysicalEquations::PhysicalEquations
PhysicalEquations()=delete
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359