www.mooseframework.org
CappedWeakPlaneCosseratStressUpdate.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 
15 
16 template <>
18 
29 {
30 public:
31  static InputParameters validParams();
32 
33  CappedWeakPlaneCosseratStressUpdate(const InputParameters & parameters);
34 
38  bool requiresIsotropicTensor() override { return false; }
39 
40 protected:
41  virtual void consistentTangentOperator(const RankTwoTensor & stress_trial,
42  Real p_trial,
43  Real q_trial,
44  const RankTwoTensor & stress,
45  Real p,
46  Real q,
47  Real gaE,
48  const yieldAndFlow & smoothed_q,
49  const RankFourTensor & Eijkl,
50  bool compute_full_tangent_operator,
51  RankFourTensor & cto) const override;
52 
53  virtual void setStressAfterReturn(const RankTwoTensor & stress_trial,
54  Real p_ok,
55  Real q_ok,
56  Real gaE,
57  const std::vector<Real> & intnl,
58  const yieldAndFlow & smoothed_q,
59  const RankFourTensor & Eijkl,
60  RankTwoTensor & stress) const override;
61 
62  virtual RankTwoTensor dqdstress(const RankTwoTensor & stress) const override;
63 
64  virtual RankFourTensor d2qdstress2(const RankTwoTensor & stress) const override;
65 };
CappedWeakPlaneCosseratStressUpdate::consistentTangentOperator
virtual void consistentTangentOperator(const RankTwoTensor &stress_trial, Real p_trial, Real q_trial, const RankTwoTensor &stress, Real p, Real q, Real gaE, const yieldAndFlow &smoothed_q, const RankFourTensor &Eijkl, bool compute_full_tangent_operator, RankFourTensor &cto) const override
Calculates the consistent tangent operator.
Definition: CappedWeakPlaneCosseratStressUpdate.C:58
CappedWeakPlaneCosseratStressUpdate::dqdstress
virtual RankTwoTensor dqdstress(const RankTwoTensor &stress) const override
d(q)/d(stress) Derived classes must override this
Definition: CappedWeakPlaneCosseratStressUpdate.C:161
CappedWeakPlaneCosseratStressUpdate
CappedWeakPlaneCosseratStressUpdate performs the return-map algorithm and associated stress updates f...
Definition: CappedWeakPlaneCosseratStressUpdate.h:28
validParams< CappedWeakPlaneCosseratStressUpdate >
InputParameters validParams< CappedWeakPlaneCosseratStressUpdate >()
CappedWeakPlaneCosseratStressUpdate::setStressAfterReturn
virtual void setStressAfterReturn(const RankTwoTensor &stress_trial, Real p_ok, Real q_ok, Real gaE, const std::vector< Real > &intnl, const yieldAndFlow &smoothed_q, const RankFourTensor &Eijkl, RankTwoTensor &stress) const override
Sets stress from the admissible parameters.
Definition: CappedWeakPlaneCosseratStressUpdate.C:33
CappedWeakPlaneCosseratStressUpdate::requiresIsotropicTensor
bool requiresIsotropicTensor() override
Does the model require the elasticity tensor to be isotropic?
Definition: CappedWeakPlaneCosseratStressUpdate.h:38
CappedWeakPlaneCosseratStressUpdate::validParams
static InputParameters validParams()
Definition: CappedWeakPlaneCosseratStressUpdate.C:19
RankFourTensorTempl
Definition: ACGrGrElasticDrivingForce.h:20
CappedWeakPlaneCosseratStressUpdate::d2qdstress2
virtual RankFourTensor d2qdstress2(const RankTwoTensor &stress) const override
d2(q)/d(stress)/d(stress) Derived classes must override this
Definition: CappedWeakPlaneCosseratStressUpdate.C:180
CappedWeakPlaneStressUpdate.h
CappedWeakPlaneStressUpdate
CappedWeakPlaneStressUpdate performs the return-map algorithm and associated stress updates for plast...
Definition: CappedWeakPlaneStressUpdate.h:31
RankTwoTensorTempl< Real >
CappedWeakPlaneCosseratStressUpdate::CappedWeakPlaneCosseratStressUpdate
CappedWeakPlaneCosseratStressUpdate(const InputParameters &parameters)
Definition: CappedWeakPlaneCosseratStressUpdate.C:26