![]() |
v0.15.0 |
Closest point projection algorithm. More...
#include "users_modules/adolc-plasticity/src/ADOLCPlasticity.hpp"
Public Types | |
| enum | TypesTags { W = 0 , Y , H , LAST_TAPE } |
Public Member Functions | |
| VectorAdaptor | getPlasticStrain () |
| VectorAdaptor | getTotalStrain () |
| VectorAdaptor | getInternalVariables () |
| VectorAdaptor | getActiveVariablesYH () |
| VectorAdaptor | getStress () |
| VectorAdaptor | getInternalFluxes () |
| ClosestPointProjection () | |
| MoFEMErrorCode | recordW () |
| Record strain energy. | |
| MoFEMErrorCode | recordY () |
| Record yield function. | |
| MoFEMErrorCode | recordH () |
| Record flow potential. | |
| MoFEMErrorCode | playW () |
| MoFEMErrorCode | playW_NoHessian () |
| MoFEMErrorCode | playY () |
| MoFEMErrorCode | playY_NoGradient () |
| MoFEMErrorCode | playH () |
| MoFEMErrorCode | playH_NoHessian () |
| MoFEMErrorCode | createMatAVecR () |
| MoFEMErrorCode | evaluatePotentials () |
| MoFEMErrorCode | playPotentials () |
| MoFEMErrorCode | playPotentials_NoHessian () |
| MoFEMErrorCode | calculateR (Vec R) |
| MoFEMErrorCode | calculateA () |
| MoFEMErrorCode | snesCreate () |
| Create nested snes. | |
| MoFEMErrorCode | solveClosestProjection () |
| Solve nonlinear system of equations to find stress, internal fluxes, and Lagrange plastic multiplier. | |
| MoFEMErrorCode | consistentTangent () |
| Calculate consistent tangent matrix. | |
| MoFEMErrorCode | recordTapes () |
| Record tapes. | |
| virtual MoFEMErrorCode | addMatBlockOps (MoFEM::Interface &m_field, boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pip, std::string block_name, Sev sev) |
| Get model parameters from blocks. | |
| virtual MoFEMErrorCode | setParams (short tag, bool &recalculate_elastic_tangent) |
| Set parameters for ADOL-C of constitutive relations. | |
| virtual MoFEMErrorCode | freeHemholtzEnergy ()=0 |
| Set Hemholtz energy. | |
| virtual MoFEMErrorCode | yieldFunction ()=0 |
| Set yield function. | |
| virtual MoFEMErrorCode | flowPotential ()=0 |
| Set flow potential. | |
| virtual MoFEMErrorCode | codedHessianW (vector< double * >) |
Public Attributes | |
| int | nbInternalVariables |
| boost::function< int(int, int, int)> | integrationRule |
| VectorDouble | internalVariables0 |
| VectorDouble | plasticStrain0 |
| std::array< int, LAST_TAPE > | tapesTags |
| VectorAdaptor | activeVariablesW |
| VectorAdaptor | gradientW |
| double | w |
| double | y |
| double | h |
| double | deltaGamma |
| MatrixDouble | Ep |
| MatrixDouble | Cp |
| MatrixDouble | Cep |
| ublas::symmetric_matrix< double, ublas::lower > | C |
| ublas::symmetric_matrix< double, ublas::lower > | D |
| PetscBool | implHessianW |
| MatrixDouble | hessianW |
| VectorDouble | gradientY |
| VectorDouble | gradientH |
| MatrixDouble | hessianH |
| MatrixDouble | partialWStrainPlasticStrain |
| VectorAdaptor | partialYSigma |
| VectorAdaptor | partialYFlux |
| VectorAdaptor | partialHSigma |
| VectorAdaptor | partialHFlux |
| ublas::symmetric_matrix< double, ublas::lower > | partial2HSigma |
| ublas::symmetric_matrix< double, ublas::lower > | partial2HFlux |
| MatrixDouble | partial2HSigmaFlux |
| SmartPetscObj< Mat > | A |
| SmartPetscObj< Vec > | R |
| SmartPetscObj< Vec > | Chi |
| SmartPetscObj< Vec > | dChi |
| ublas::matrix< double, ublas::column_major > | dataA |
| SmartPetscObj< SNES > | sNes |
| ublas::vector< adouble > | a_sTrain |
| ublas::vector< adouble > | a_plasticStrain |
| ublas::vector< adouble > | a_internalVariables |
| ublas::vector< adouble > | a_sTress |
| ublas::vector< adouble > | a_internalFluxes |
| adouble | a_w |
| adouble | a_y |
| adouble | a_h |
Friends | |
| MoFEMErrorCode | ADOLCPlasticityRes (SNES, Vec, Vec, void *ctx) |
| Function executed by nested SENES at evaluationg residual. | |
| MoFEMErrorCode | ADOLCPlasticityJac (SNES, Vec, Mat, Mat, void *ctx) |
| Function executed by nested SENES at evaluationg tangent matrix. | |
Closest point projection algorithm.
Definition at line 145 of file ADOLCPlasticity.hpp.
| ADOLCPlasticity::ClosestPointProjection::ClosestPointProjection | ( | ) |
Definition at line 15 of file ClosestPointProjection.cpp.
|
inlinevirtual |
Get model parameters from blocks.
Reimplemented in ADOLCPlasticity::J2Plasticity< 3 >, ADOLCPlasticity::ParaboloidalPlasticity, and ADOLCPlasticity::HeterogeneousParaboloidalPlasticity.
Definition at line 269 of file ADOLCPlasticity.hpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::calculateA | ( | ) |
Definition at line 393 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::calculateR | ( | Vec | R | ) |
Definition at line 371 of file ClosestPointProjection.cpp.
|
inlinevirtual |
Reimplemented in ADOLCPlasticity::J2Plasticity< 3 >, ADOLCPlasticity::J2Plasticity< 2 >, and ADOLCPlasticity::ParaboloidalPlasticity.
Definition at line 302 of file ADOLCPlasticity.hpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::consistentTangent | ( | ) |
Calculate consistent tangent matrix.
Definition at line 520 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::createMatAVecR | ( | ) |
Definition at line 325 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::evaluatePotentials | ( | ) |
Definition at line 346 of file ClosestPointProjection.cpp.
|
pure virtual |
Set flow potential.
Implemented in ADOLCPlasticity::J2Plasticity< 3 >, and ADOLCPlasticity::ParaboloidalPlasticity.
|
pure virtual |
Set Hemholtz energy.
Implemented in ADOLCPlasticity::J2Plasticity< 3 >, ADOLCPlasticity::J2Plasticity< 2 >, and ADOLCPlasticity::ParaboloidalPlasticity.
|
inline |
Definition at line 164 of file ADOLCPlasticity.hpp.
|
inline |
Definition at line 170 of file ADOLCPlasticity.hpp.
|
inline |
Definition at line 161 of file ADOLCPlasticity.hpp.
|
inline |
Definition at line 155 of file ADOLCPlasticity.hpp.
|
inline |
Definition at line 167 of file ADOLCPlasticity.hpp.
|
inline |
Definition at line 158 of file ADOLCPlasticity.hpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playH | ( | ) |
Definition at line 241 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playH_NoHessian | ( | ) |
Definition at line 298 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playPotentials | ( | ) |
Definition at line 354 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playPotentials_NoHessian | ( | ) |
Definition at line 362 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playW | ( | ) |
Definition at line 125 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playW_NoHessian | ( | ) |
Definition at line 183 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playY | ( | ) |
Definition at line 202 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::playY_NoGradient | ( | ) |
Definition at line 228 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::recordH | ( | ) |
Record flow potential.
Definition at line 99 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::recordTapes | ( | ) |
Record tapes.
Definition at line 621 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::recordW | ( | ) |
Record strain energy.
Definition at line 43 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::recordY | ( | ) |
Record yield function.
Definition at line 73 of file ClosestPointProjection.cpp.
|
inlinevirtual |
Set parameters for ADOL-C of constitutive relations.
| tag | [in] - tag of the tape |
| recalculate_elastic_tangent | [out] - if setParam set it to true, tangent matrix for elastic domain should be recalculated |
Reimplemented in ADOLCPlasticity::J2Plasticity< 3 >, and ADOLCPlasticity::ParaboloidalPlasticity.
Definition at line 282 of file ADOLCPlasticity.hpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::snesCreate | ( | ) |
Create nested snes.
Definition at line 444 of file ClosestPointProjection.cpp.
| MoFEMErrorCode ADOLCPlasticity::ClosestPointProjection::solveClosestProjection | ( | ) |
Solve nonlinear system of equations to find stress, internal fluxes, and Lagrange plastic multiplier.
Definition at line 470 of file ClosestPointProjection.cpp.
|
pure virtual |
Set yield function.
Implemented in ADOLCPlasticity::J2Plasticity< 3 >, and ADOLCPlasticity::ParaboloidalPlasticity.
|
friend |
Function executed by nested SENES at evaluationg tangent matrix.
Definition at line 595 of file ClosestPointProjection.cpp.
|
friend |
Function executed by nested SENES at evaluationg residual.
Definition at line 569 of file ClosestPointProjection.cpp.
| SmartPetscObj<Mat> ADOLCPlasticity::ClosestPointProjection::A |
Definition at line 329 of file ADOLCPlasticity.hpp.
| adouble ADOLCPlasticity::ClosestPointProjection::a_h |
Definition at line 342 of file ADOLCPlasticity.hpp.
| ublas::vector<adouble> ADOLCPlasticity::ClosestPointProjection::a_internalFluxes |
Definition at line 339 of file ADOLCPlasticity.hpp.
| ublas::vector<adouble> ADOLCPlasticity::ClosestPointProjection::a_internalVariables |
Definition at line 338 of file ADOLCPlasticity.hpp.
| ublas::vector<adouble> ADOLCPlasticity::ClosestPointProjection::a_plasticStrain |
Definition at line 337 of file ADOLCPlasticity.hpp.
| ublas::vector<adouble> ADOLCPlasticity::ClosestPointProjection::a_sTrain |
Definition at line 336 of file ADOLCPlasticity.hpp.
| ublas::vector<adouble> ADOLCPlasticity::ClosestPointProjection::a_sTress |
Definition at line 339 of file ADOLCPlasticity.hpp.
| adouble ADOLCPlasticity::ClosestPointProjection::a_w |
Definition at line 340 of file ADOLCPlasticity.hpp.
| adouble ADOLCPlasticity::ClosestPointProjection::a_y |
Definition at line 341 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::activeVariablesW |
Definition at line 179 of file ADOLCPlasticity.hpp.
| ublas::symmetric_matrix<double, ublas::lower> ADOLCPlasticity::ClosestPointProjection::C |
Definition at line 188 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::Cep |
Definition at line 187 of file ADOLCPlasticity.hpp.
| SmartPetscObj<Vec> ADOLCPlasticity::ClosestPointProjection::Chi |
Definition at line 331 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::Cp |
Definition at line 187 of file ADOLCPlasticity.hpp.
| ublas::symmetric_matrix<double, ublas::lower> ADOLCPlasticity::ClosestPointProjection::D |
Definition at line 188 of file ADOLCPlasticity.hpp.
| ublas::matrix<double, ublas::column_major> ADOLCPlasticity::ClosestPointProjection::dataA |
Definition at line 333 of file ADOLCPlasticity.hpp.
| SmartPetscObj<Vec> ADOLCPlasticity::ClosestPointProjection::dChi |
Definition at line 332 of file ADOLCPlasticity.hpp.
| double ADOLCPlasticity::ClosestPointProjection::deltaGamma |
Definition at line 186 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::Ep |
Definition at line 187 of file ADOLCPlasticity.hpp.
| VectorDouble ADOLCPlasticity::ClosestPointProjection::gradientH |
Definition at line 215 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::gradientW |
Definition at line 180 of file ADOLCPlasticity.hpp.
| VectorDouble ADOLCPlasticity::ClosestPointProjection::gradientY |
Definition at line 211 of file ADOLCPlasticity.hpp.
| double ADOLCPlasticity::ClosestPointProjection::h |
Definition at line 184 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::hessianH |
Definition at line 216 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::hessianW |
Definition at line 207 of file ADOLCPlasticity.hpp.
| PetscBool ADOLCPlasticity::ClosestPointProjection::implHessianW |
Definition at line 190 of file ADOLCPlasticity.hpp.
| boost::function<int(int, int, int)> ADOLCPlasticity::ClosestPointProjection::integrationRule |
Definition at line 148 of file ADOLCPlasticity.hpp.
| VectorDouble ADOLCPlasticity::ClosestPointProjection::internalVariables0 |
Definition at line 152 of file ADOLCPlasticity.hpp.
| int ADOLCPlasticity::ClosestPointProjection::nbInternalVariables |
Definition at line 147 of file ADOLCPlasticity.hpp.
| ublas::symmetric_matrix<double, ublas::lower> ADOLCPlasticity::ClosestPointProjection::partial2HFlux |
Second partial derivative of flow potential with respect to internal fluxes
Definition at line 324 of file ADOLCPlasticity.hpp.
| ublas::symmetric_matrix<double, ublas::lower> ADOLCPlasticity::ClosestPointProjection::partial2HSigma |
Second partial derivative of flow potential with respect to stresses and internal
Definition at line 321 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::partial2HSigmaFlux |
Mixed decond partial derivative of flow potential with respect to stresses and internal fluxes
Definition at line 327 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::partialHFlux |
Definition at line 316 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::partialHSigma |
Definition at line 314 of file ADOLCPlasticity.hpp.
| MatrixDouble ADOLCPlasticity::ClosestPointProjection::partialWStrainPlasticStrain |
Definition at line 308 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::partialYFlux |
Definition at line 312 of file ADOLCPlasticity.hpp.
| VectorAdaptor ADOLCPlasticity::ClosestPointProjection::partialYSigma |
Definition at line 310 of file ADOLCPlasticity.hpp.
| VectorDouble ADOLCPlasticity::ClosestPointProjection::plasticStrain0 |
Definition at line 153 of file ADOLCPlasticity.hpp.
| SmartPetscObj<Vec> ADOLCPlasticity::ClosestPointProjection::R |
Definition at line 330 of file ADOLCPlasticity.hpp.
| SmartPetscObj<SNES> ADOLCPlasticity::ClosestPointProjection::sNes |
Definition at line 334 of file ADOLCPlasticity.hpp.
| std::array<int, LAST_TAPE> ADOLCPlasticity::ClosestPointProjection::tapesTags |
Definition at line 175 of file ADOLCPlasticity.hpp.
| double ADOLCPlasticity::ClosestPointProjection::w |
Definition at line 182 of file ADOLCPlasticity.hpp.
| double ADOLCPlasticity::ClosestPointProjection::y |
Definition at line 183 of file ADOLCPlasticity.hpp.