|
| HMHHencky (MoFEM::Interface &m_field, const double E, const double nu) |
|
MoFEMErrorCode | recordTape (const int tag, DTensor2Ptr *t_h) |
|
virtual OpJacobian * | returnOpJacobian (const int tag, const bool eval_rhs, const bool eval_lhs, boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< PhysicalEquations > physics_ptr) |
|
virtual VolUserDataOperator * | returnOpSpatialPhysical (const std::string &field_name, boost::shared_ptr< DataAtIntegrationPts > data_ptr, const double alpha_u) |
|
VolUserDataOperator * | returnOpSpatialPhysical_du_du (std::string row_field, std::string col_field, boost::shared_ptr< DataAtIntegrationPts > data_ptr, const double alpha) |
|
VolUserDataOperator * | returnOpCalculateEnergy (boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< double > total_energy_ptr) |
|
VolUserDataOperator * | returnOpCalculateStretchFromStress (boost::shared_ptr< DataAtIntegrationPts > data_ptr, boost::shared_ptr< PhysicalEquations > physics_ptr) |
|
MoFEMErrorCode | getOptions (boost::shared_ptr< DataAtIntegrationPts > data_ptr) |
|
MoFEMErrorCode | extractBlockData (Sev sev) |
|
MoFEMErrorCode | extractBlockData (std::vector< const CubitMeshSets * > meshset_vec_ptr, Sev sev) |
|
MoFEMErrorCode | getMatDPtr (boost::shared_ptr< MatrixDouble > mat_D_ptr, boost::shared_ptr< MatrixDouble > mat_axiator_D_ptr, boost::shared_ptr< MatrixDouble > mat_deviator_D_ptr, double bulk_modulus_K, double shear_modulus_G) |
|
| PhysicalEquations ()=delete |
|
| PhysicalEquations (const int size_active, const int size_dependent) |
|
virtual | ~PhysicalEquations ()=default |
|
DTensor2Ptr | get_P () |
|
DTensor3Ptr | get_P_dh0 () |
|
DTensor3Ptr | get_P_dh1 () |
|
DTensor3Ptr | get_P_dh2 () |
|
DTensor2Ptr | get_h () |
|
|
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 |
|
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) |
|
std::vector< double > | activeVariables |
|
std::vector< double > | dependentVariablesPiola |
|
std::vector< double > | dependentVariablesPiolaDirevatives |
|
Definition at line 12 of file Hencky.cpp.
◆ HMHHencky()
◆ extractBlockData() [1/2]
MoFEMErrorCode EshelbianPlasticity::HMHHencky::extractBlockData |
( |
Sev |
sev | ) |
|
|
inline |
Definition at line 189 of file Hencky.cpp.
194 (boost::format(
"%s(.*)") %
"MAT_ELASTIC").str()
◆ extractBlockData() [2/2]
MoFEMErrorCode EshelbianPlasticity::HMHHencky::extractBlockData |
( |
std::vector< const CubitMeshSets * > |
meshset_vec_ptr, |
|
|
Sev |
sev |
|
) |
| |
|
inline |
Definition at line 202 of file Hencky.cpp.
206 for (
auto m : meshset_vec_ptr) {
208 std::vector<double> block_data;
209 CHKERR m->getAttributes(block_data);
210 if (block_data.size() != 2) {
212 "Expected that block has two attribute");
214 auto get_block_ents = [&]() {
◆ getMatDPtr()
MoFEMErrorCode EshelbianPlasticity::HMHHencky::getMatDPtr |
( |
boost::shared_ptr< MatrixDouble > |
mat_D_ptr, |
|
|
boost::shared_ptr< MatrixDouble > |
mat_axiator_D_ptr, |
|
|
boost::shared_ptr< MatrixDouble > |
mat_deviator_D_ptr, |
|
|
double |
bulk_modulus_K, |
|
|
double |
shear_modulus_G |
|
) |
| |
|
inline |
[Calculate elasticity tensor]
[Calculate elasticity tensor]
Definition at line 234 of file Hencky.cpp.
240 auto set_material_stiffness = [&]() {
251 auto t_D = getFTensor4DdgFromPtr<SPACE_DIM, SPACE_DIM, 0>(
252 &*(mat_D_ptr->data().begin()));
253 auto t_axiator_D = getFTensor4DdgFromPtr<SPACE_DIM, SPACE_DIM, 0>(
254 &*mat_axiator_D_ptr->data().begin());
255 auto t_deviator_D = getFTensor4DdgFromPtr<SPACE_DIM, SPACE_DIM, 0>(
256 &*mat_deviator_D_ptr->data().begin());
257 t_axiator_D(
i,
j,
k,
l) =
A *
260 t_deviator_D(
i,
j,
k,
l) =
262 t_D(
i,
j,
k,
l) = t_axiator_D(
i,
j,
k,
l) + t_deviator_D(
i,
j,
k,
l);
269 set_material_stiffness();
◆ getOptions()
MoFEMErrorCode EshelbianPlasticity::HMHHencky::getOptions |
( |
boost::shared_ptr< DataAtIntegrationPts > |
data_ptr | ) |
|
|
inline |
Definition at line 174 of file Hencky.cpp.
176 CHKERR PetscOptionsBegin(PETSC_COMM_WORLD,
"hencky_",
"",
"none");
178 CHKERR PetscOptionsScalar(
"-young_modulus",
"Young modulus",
"",
E, &
E,
180 CHKERR PetscOptionsScalar(
"-poisson_ratio",
"poisson ratio",
"",
nu, &
nu,
183 ierr = PetscOptionsEnd();
◆ recordTape()
MoFEMErrorCode EshelbianPlasticity::HMHHencky::recordTape |
( |
const int |
tag, |
|
|
DTensor2Ptr * |
t_h |
|
) |
| |
|
inlinevirtual |
◆ returnOpCalculateEnergy()
◆ returnOpCalculateStretchFromStress()
◆ returnOpJacobian()
◆ returnOpSpatialPhysical()
◆ returnOpSpatialPhysical_du_du()
◆ blockData
std::vector<BlockData> EshelbianPlasticity::HMHHencky::blockData |
|
private |
double EshelbianPlasticity::HMHHencky::E |
|
private |
◆ mField
◆ nu
double EshelbianPlasticity::HMHHencky::nu |
|
private |
The documentation for this struct was generated from the following file:
- users_modules/eshelbian_plasticit/src/impl/Hencky.cpp