v0.14.0 |
Classes | |
struct | ADOLCPlasticityIntegrators |
struct | ClosestPointProjection |
Closest point projection algorithm. More... | |
struct | CommonData |
common data used by volume elements More... | |
struct | J2Plasticity |
J2 plasticity (Kinematic Isotropic (Linear) Hardening) More... | |
struct | J2Plasticity< 2 > |
[J2 2D] More... | |
struct | J2Plasticity< 3 > |
J2 (Von Misses) plasticity. More... | |
struct | MakeB |
Calculate tensorial base functions. Apply bBar method when needed. More... | |
struct | OpCalculateStress |
struct | OpLhsImpl |
Assemble left hand side. More... | |
struct | OpLhsImpl< DIM, GAUSS, AssemblyDomainEleOp > |
struct | OpRhsImpl |
Assemble right hand side. More... | |
struct | OpRhsImpl< DIM, GAUSS, AssemblyDomainEleOp > |
struct | OpUpdate |
struct | ParaboloidalPlasticity |
[J2 2D] More... | |
struct | TSUpdate |
Update internal fluxes (update history variables) More... | |
struct | TSUpdateImpl |
[TSUpdateImpl] More... | |
Typedefs | |
using | Pip = boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > |
Functions | |
FTensor::Dg< double, 3, 6 > | voight_to_strain_op () |
Op convert Vight strain vector to strain tensor. More... | |
FTensor::Dg< double, 3, 6 > | strain_to_voight_op () |
Op convert strain tensor to Vight strain vector. More... | |
FTensor::Dg< double, 3, 6 > | voight_to_stress_op () |
Op convert Vight stress vector to stress tensor. More... | |
MoFEMErrorCode | ADOLCPlasticityRes (SNES snes, Vec chi, Vec r, void *ctx) |
Internal SNES function used at integration points to calulate stress. More... | |
MoFEMErrorCode | ADOLCPlasticityJac (SNES, Vec, Mat, Mat, void *ctx) |
Internal SNES function used at integration points to calulate tangent matrix. More... | |
template<int DIM> | |
ForcesAndSourcesCore::UserDataOperator * | getRawPtrOpCalculateStress (MoFEM::Interface &m_field, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr, bool calc_lhs) |
Get opreator to calulate stress. More... | |
template<> | |
ForcesAndSourcesCore::UserDataOperator * | getRawPtrOpCalculateStress< 3 > (MoFEM::Interface &m_field, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr, bool calc_lhs) |
template<> | |
ForcesAndSourcesCore::UserDataOperator * | getRawPtrOpCalculateStress< 2 > (MoFEM::Interface &m_field, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr, bool calc_lhs) |
template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp > | |
MoFEMErrorCode | opFactoryDomainRhs (MoFEM::Interface &m_field, string field_name, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr, Sev sev=Sev::inform) |
Assemble the left hand side, i.e. tangent matrix. More... | |
template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp > | |
MoFEMErrorCode | opFactoryDomainLhs (MoFEM::Interface &m_field, string field_name, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr) |
Assemble the left hand side, i.e. tangent matrix. More... | |
template<int DIM> | |
MoFEMErrorCode | opFactoryDomainUpdate (MoFEM::Interface &m_field, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr) |
Push operators to update history variables. More... | |
template<> | |
MoFEMErrorCode | opFactoryDomainUpdate< 3 > (MoFEM::Interface &m_field, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr) |
Push operators to update history variables. More... | |
template<> | |
MoFEMErrorCode | opFactoryDomainUpdate< 2 > (MoFEM::Interface &m_field, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr) |
Push operators to update history variables. More... | |
boost::shared_ptr< TSUpdate > | createTSUpdate (std::string fe_name, boost::shared_ptr< FEMethod > fe_ptr) |
template<typename MODEL > | |
auto | createMaterial (std::array< int, ClosestPointProjection::LAST_TAPE > tapes_tags={0, 1, 2}) |
template<typename T1 , typename T2 , int DIM1, int DIM2> | |
double | calcAveStrain (bool b_bar, const int nb_gauss_pts, FTensor::Tensor2< T1, DIM1, DIM2 > &&t_grad, FTensor::Tensor0< T2 > &&t_w) |
template<typename T1 , typename T2 , int DIM1, int DIM2, int DIM3> | |
FTensor::Tensor1< T2, DIM3 > | calcStrain (bool b_bar, double ave_tr_strain, FTensor::Tensor2< T1, DIM1, DIM2 > &t_grad, FTensor::Tensor1< T2, DIM3 > &&t_voight_strain) |
template<int DIM> | |
FTensor::Tensor2_symmetric< FTensor::PackPtr< double *, 6 >, 3 > | getFTensor2SymmetricDiffBaseImpl (DataForcesAndSourcesCore::EntData &data, MatrixDouble &storage, const bool b_bar, const int nb_integration_pts, double *w_ptr, FTensor::Number< DIM >) |
[BBar method] More... | |
template<int DIM> | |
MoFEMErrorCode | opFactoryDomainUpdateImpl (MoFEM::Interface &m_field, Pip &pip, std::string block_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< ClosestPointProjection > cp_ptr) |
boost::shared_ptr< TSUpdate > | createTSUpdate (std::string fe_name, boost::shared_ptr< FEMethod > fe_ptr) |
Create test update object. More... | |
Variables | |
static FTensor::Dg< double, 3, 6 > | tStrainToVoightOp = strain_to_voight_op() |
using ADOLCPlasticity::Pip = typedef boost::ptr_deque<ForcesAndSourcesCore::UserDataOperator> |
Definition at line 399 of file ADOLCPlasticity.hpp.
MoFEMErrorCode ADOLCPlasticity::ADOLCPlasticityJac | ( | SNES | snes, |
Vec | chi, | ||
Mat | A, | ||
Mat | , | ||
void * | ctx | ||
) |
Internal SNES function used at integration points to calulate tangent matrix.
Function executed by nested SENES at evaluationg tangent matrix.
Definition at line 584 of file ClosetPointProjection.cpp.
MoFEMErrorCode ADOLCPlasticity::ADOLCPlasticityRes | ( | SNES | snes, |
Vec | chi, | ||
Vec | r, | ||
void * | ctx | ||
) |
Internal SNES function used at integration points to calulate stress.
Function executed by nested SENES at evaluationg residual.
Definition at line 558 of file ClosetPointProjection.cpp.
double ADOLCPlasticity::calcAveStrain | ( | bool | b_bar, |
const int | nb_gauss_pts, | ||
FTensor::Tensor2< T1, DIM1, DIM2 > && | t_grad, | ||
FTensor::Tensor0< T2 > && | t_w | ||
) |
Definition at line 18 of file ADOLCPlasticity.cpp.
FTensor::Tensor1<T2, DIM3> ADOLCPlasticity::calcStrain | ( | bool | b_bar, |
double | ave_tr_strain, | ||
FTensor::Tensor2< T1, DIM1, DIM2 > & | t_grad, | ||
FTensor::Tensor1< T2, DIM3 > && | t_voight_strain | ||
) |
Definition at line 43 of file ADOLCPlasticity.cpp.
|
inline |
Definition at line 721 of file ADOLCPlasticityMaterialModels.hpp.
boost::shared_ptr<TSUpdate> ADOLCPlasticity::createTSUpdate | ( | std::string | fe_name, |
boost::shared_ptr< FEMethod > | fe_ptr | ||
) |
boost::shared_ptr<TSUpdate> ADOLCPlasticity::createTSUpdate | ( | std::string | fe_name, |
boost::shared_ptr< FEMethod > | fe_ptr | ||
) |
Create test update object.
fe_name | |
fe_ptr |
Definition at line 630 of file ADOLCPlasticity.cpp.
FTensor::Tensor2_symmetric<FTensor::PackPtr<double *, 6>, 3> ADOLCPlasticity::getFTensor2SymmetricDiffBaseImpl | ( | DataForcesAndSourcesCore::EntData & | data, |
MatrixDouble & | storage, | ||
const bool | b_bar, | ||
const int | nb_integration_pts, | ||
double * | w_ptr, | ||
FTensor::Number< DIM > | |||
) |
[BBar method]
Calculate base for B-bar method
DIM | Dimension of problem |
data | access to base functions |
storage | storage for base functions at integration points |
b_bar | flag to sith on B-bar method |
nb_integration_pts | number of integration points |
w_ptr | integration weights |
Definition at line 85 of file ADOLCPlasticity.cpp.
ForcesAndSourcesCore::UserDataOperator* ADOLCPlasticity::getRawPtrOpCalculateStress | ( | MoFEM::Interface & | m_field, |
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr, | ||
bool | calc_lhs | ||
) |
Get opreator to calulate stress.
ForcesAndSourcesCore::UserDataOperator * ADOLCPlasticity::getRawPtrOpCalculateStress< 2 > | ( | MoFEM::Interface & | m_field, |
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr, | ||
bool | calc_lhs | ||
) |
Definition at line 554 of file ADOLCPlasticity.cpp.
ForcesAndSourcesCore::UserDataOperator * ADOLCPlasticity::getRawPtrOpCalculateStress< 3 > | ( | MoFEM::Interface & | m_field, |
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr, | ||
bool | calc_lhs | ||
) |
Definition at line 547 of file ADOLCPlasticity.cpp.
MoFEMErrorCode ADOLCPlasticity::opFactoryDomainUpdate< 2 > | ( | MoFEM::Interface & | m_field, |
Pip & | pip, | ||
std::string | block_name, | ||
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr | ||
) |
Push operators to update history variables.
DIM | dimension of the problem |
m_field | core interface |
pip | |
block_name | mesh block name caring material parameters |
common_data_ptr | |
cp_ptr |
Definition at line 586 of file ADOLCPlasticity.cpp.
MoFEMErrorCode ADOLCPlasticity::opFactoryDomainUpdate< 3 > | ( | MoFEM::Interface & | m_field, |
Pip & | pip, | ||
std::string | block_name, | ||
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr | ||
) |
Push operators to update history variables.
DIM | dimension of the problem |
m_field | core interface |
pip | |
block_name | mesh block name caring material parameters |
common_data_ptr | |
cp_ptr |
Definition at line 576 of file ADOLCPlasticity.cpp.
MoFEMErrorCode ADOLCPlasticity::opFactoryDomainUpdateImpl | ( | MoFEM::Interface & | m_field, |
Pip & | pip, | ||
std::string | block_name, | ||
boost::shared_ptr< CommonData > | common_data_ptr, | ||
boost::shared_ptr< ClosestPointProjection > | cp_ptr | ||
) |
Definition at line 562 of file ADOLCPlasticity.cpp.
|
inline |
Op convert strain tensor to Vight strain vector.
Definition at line 39 of file ADOLCPlasticity.hpp.
|
inline |
Op convert Vight strain vector to strain tensor.
Definition at line 29 of file ADOLCPlasticity.hpp.
|
inline |
Op convert Vight stress vector to stress tensor.
Definition at line 49 of file ADOLCPlasticity.hpp.
|
static |
Definition at line 15 of file ADOLCPlasticity.cpp.