v0.14.0
Loading...
Searching...
No Matches
ADOL-C plasticity
Collaboration diagram for ADOL-C plasticity:

Files

file  adolc_plasticity.cpp
 
file  ADOLCPlasticity.hpp
 
file  ADOLCPlasticityLargeStrain.hpp
 
file  ADOLCPlasticityMaterialModels.hpp
 Matetial models for plasticity.
 
file  ADOLCPlasticity.cpp
 Operators and data structures for ADOL-C plasticity.
 
file  ClosestPointProjection.cpp
 Implementation of nested integration algorithm for plasticity.
 

Namespaces

namespace  ADOLCPlasticity
 

Classes

struct  ADOLCPlasticity::CommonData
 common data used by volume elements More...
 
struct  ADOLCPlasticity::ClosestPointProjection
 Closest point projection algorithm. More...
 
struct  ADOLCPlasticity::ADOLCPlasticityIntegrators< DomainEleOp >
 
struct  ADOLCPlasticity::ADOLCPlasticityIntegrators< DomainEleOp >::Assembly< A >
 
struct  ADOLCPlasticity::TSUpdate
 Update internal fluxes (update history variables) More...
 
struct  ADOLCPlasticity::MakeB
 Calculate tensorial base functions. Apply bBar method when needed. More...
 
struct  ADOLCPlasticity::OpRhsImpl< DIM, GAUSS, AssemblyDomainEleOp >
 
struct  ADOLCPlasticity::OpLhsImpl< DIM, GAUSS, AssemblyDomainEleOp >
 
struct  ADOLCPlasticity::J2Plasticity< DIM >
 J2 plasticity (Kinematic Isotropic (Linear) Hardening) More...
 
struct  ADOLCPlasticity::J2Plasticity< 3 >
 J2 (Von Misses) plasticity. More...
 
struct  ADOLCPlasticity::ParaboloidalPlasticity
 [J2 2D] More...
 

Functions

template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp >
MoFEMErrorCode ADOLCPlasticity::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.
 
template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp >
MoFEMErrorCode ADOLCPlasticity::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.
 
template<int DIM>
MoFEMErrorCode ADOLCPlasticity::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.
 

Detailed Description

Function Documentation

◆ opFactoryDomainLhs()

template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp >
MoFEMErrorCode ADOLCPlasticity::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.

Template Parameters
DIMdimension of the problem
Aassembly type
Iintegration type
DomainEleOpoperator type
Parameters
m_field
field_name
pip
block_nameesh block name caring material parameters
common_data_ptr
cp_ptr
Returns
MoFEMErrorCode
Examples
ADOLCPlasticity.hpp.

Definition at line 465 of file ADOLCPlasticity.hpp.

468 {
470 using P = ADOLCPlasticityIntegrators<DomainEleOp>;
471 CHKERR cp_ptr->addMatBlockOps(m_field, pip, block_name, Sev::noisy);
472 pip.push_back(
473 getRawPtrOpCalculateStress<DIM, SMALL_STRAIN>(m_field, common_data_ptr, cp_ptr, true));
474 pip.push_back(new typename P::template Assembly<A>::template OpLhs<DIM, I>(
475 field_name, common_data_ptr));
477}
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define CHKERR
Inline error check.
constexpr auto field_name

◆ opFactoryDomainRhs()

template<int DIM, AssemblyType A, IntegrationType I, typename DomainEleOp >
MoFEMErrorCode ADOLCPlasticity::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.

Template Parameters
DIMdimension of the problem
Aassembly type
Iintegration type
DomainEleOpoperator type
Parameters
m_field
field_name
pip
block_nameesh block name caring material parameters
common_data_ptr
cp_ptr
Returns
MoFEMErrorCode
Examples
ADOLCPlasticity.hpp.

Definition at line 434 of file ADOLCPlasticity.hpp.

437 {
439 using P = ADOLCPlasticityIntegrators<DomainEleOp>;
440 CHKERR cp_ptr->addMatBlockOps(m_field, pip, block_name, sev);
441 pip.push_back(
442 getRawPtrOpCalculateStress<DIM, SMALL_STRAIN>(m_field, common_data_ptr, cp_ptr, false));
443 pip.push_back(new typename P::template Assembly<A>::template OpRhs<DIM, I>(
444 field_name, common_data_ptr));
446}

◆ opFactoryDomainUpdate()

template<int DIM>
MoFEMErrorCode ADOLCPlasticity::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.

Template Parameters
DIMdimension of the problem
Parameters
m_fieldcore interface
pip
block_namemesh block name caring material parameters
common_data_ptr
cp_ptr
Returns
MoFEMErrorCode
Examples
ADOLCPlasticity.hpp.