https://mooseframework.inl.gov
Loading...
Searching...
No Matches
AnisotropicReturnPlasticityStressUpdateBase.C
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
11
12template <bool is_ad>
15{
17
18 params.set<std::string>("effective_inelastic_strain_name") = "effective_plastic_strain";
19 params.set<std::string>("inelastic_strain_rate_name") = "plastic_strain_rate";
20
21 return params;
22}
23
24template <bool is_ad>
28 _plasticity_strain(this->template declareGenericProperty<RankTwoTensor, is_ad>(
29 this->_base_name + "plastic_strain")),
30 _plasticity_strain_old(
31 this->template getMaterialPropertyOld<RankTwoTensor>(this->_base_name + "plastic_strain"))
32{
33}
34
35template <bool is_ad>
36void
43
44template <bool is_ad>
45void
47{
48 _plasticity_strain[this->_qp] = _plasticity_strain_old[this->_qp];
49
50 this->propagateQpStatefulPropertiesRadialReturn();
51}
52
53template <bool is_ad>
54void
56 GenericRankTwoTensor<is_ad> & inelasticStrainIncrement,
57 const GenericRankTwoTensor<is_ad> & /*stress*/,
58 const GenericDenseVector<is_ad> & /*stress_dev*/,
59 const GenericReal<is_ad> & /*delta_gamma*/)
60{
61 _plasticity_strain[this->_qp] = _plasticity_strain_old[this->_qp] + inelasticStrainIncrement;
62}
63
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 models based on the...
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...
T & set(const std::string &name, bool quiet_mode=false)