https://mooseframework.inl.gov
Loading...
Searching...
No Matches
AnisotropicReturnCreepStressUpdateBase.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
13
14template <bool is_ad>
16 typename std::conditional<is_ad,
19
24template <bool is_ad>
27{
28public:
30
32
33protected:
34 virtual void initQpStatefulProperties() override;
35 virtual void propagateQpStatefulProperties() override;
39 bool requiresIsotropicTensor() override { return false; }
40
45 virtual void computeStrainFinalize(GenericRankTwoTensor<is_ad> & /*inelasticStrainIncrement*/,
46 const GenericRankTwoTensor<is_ad> & /*stress*/,
47 const GenericDenseVector<is_ad> & /*stress_dev*/,
48 const GenericReal<is_ad> & /*delta_gamma*/) override;
49
53};
54
typename std::conditional< is_ad, ADGeneralizedRadialReturnStressUpdate, GeneralizedRadialReturnStressUpdate >::type GenericGeneralizedRadialReturnStressUpdate
AnisotropicReturnCreepStressUpdateBaseTempl< false > AnisotropicReturnCreepStressUpdateBase
AnisotropicReturnCreepStressUpdateBaseTempl< true > ADAnisotropicReturnCreepStressUpdateBase
GeneralizedRadialReturnStressUpdateTempl< true > ADGeneralizedRadialReturnStressUpdate
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
Moose::GenericType< DenseVector< Real >, is_ad > GenericDenseVector
Moose::GenericType< Real, is_ad > GenericReal
Moose::GenericType< RankTwoTensor, is_ad > GenericRankTwoTensor
This class provides baseline functionality for anisotropic (Hill-like) plasticity and creep models ba...
const MaterialProperty< RankTwoTensor > & _creep_strain_old
GenericMaterialProperty< RankTwoTensor, is_ad > & _creep_strain
Creep strain tensor material property.
bool requiresIsotropicTensor() override
Does the model require the elasticity tensor to be isotropic?
virtual void computeStrainFinalize(GenericRankTwoTensor< is_ad > &, const GenericRankTwoTensor< is_ad > &, const GenericDenseVector< is_ad > &, const GenericReal< is_ad > &) override
Perform any necessary steps to finalize strain increment after return mapping iterations.
ADGeneralizedRadialReturnStressUpdate computes the generalized radial return stress increment for ani...