https://mooseframework.inl.gov
SolidMechanicsPlasticIsotropicSD.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 #include "RankFourTensor.h"
14 
27 {
28 public:
30 
32 
33 protected:
35  const Real _b;
36 
39 
41  const bool _associative;
42 
45 
48 
50  Real dphi_dj2(const Real j2, const Real j3) const;
51 
53  Real dphi_dj3(const Real j2, const Real j3) const;
54 
56  Real dfj2_dj2(const Real j2, const Real j3) const;
57 
59  Real dfj2_dj3(const Real j2, const Real j3) const;
60 
62  Real dfj3_dj2(const Real j2, const Real j3) const;
63 
65  Real dfj3_dj3(const Real j2, const Real j3) const;
66 
68  RankTwoTensor dI_sigma() const;
69 
71  RankTwoTensor dj2_dSkl(const RankTwoTensor & stress) const;
72 
74  Real yieldFunction(const RankTwoTensor & stress, Real intnl) const override;
75 
77  RankTwoTensor dyieldFunction_dstress(const RankTwoTensor & stress, Real intnl) const override;
78 
80  RankFourTensor dflowPotential_dstress(const RankTwoTensor & stress, Real intnl) const override;
81 
83  RankTwoTensor flowPotential(const RankTwoTensor & stress, Real intnl) const override;
84 };
Real dfj3_dj2(const Real j2, const Real j3) const
derivative of dphi_dJ3 with respect to J2
Real dfj2_dj3(const Real j2, const Real j3) const
derivative of dphi_dJ2 with respect to J3
Real dfj3_dj3(const Real j2, const Real j3) const
derivative of dphi_dJ3 with respect to J3
const bool _associative
Flag for flow-rule, true if not specified.
const Real _b
A constant to model the influence of pressure.
RankTwoTensor dI_sigma() const
derivative of the trace with respect to sigma rank two tensor
Real yieldFunction(const RankTwoTensor &stress, Real intnl) const override
Yield_function = a[b*I1 + (J2^{3/2} - c*J3)^{1/3}] - yield_strength.
RankTwoTensor dj2_dSkl(const RankTwoTensor &stress) const
derivative of the second invariant with respect to the stress deviatoric tensor
Real dphi_dj2(const Real j2, const Real j3) const
derivative of phi with respect to J2, phi is b*I1 + (J2^{3/2} - c*J3)^{1/3}
J2 plasticity, associative, with hardning.
Real dphi_dj3(const Real j2, const Real j3) const
derivative of phi with respect to J3
RankFourTensor dflowPotential_dstress(const RankTwoTensor &stress, Real intnl) const override
Tensor derivative of the tensor derivative of the yield_function with respect to the stress tensor...
SolidMechanicsPlasticIsotropicSD(const InputParameters &parameters)
RankTwoTensor flowPotential(const RankTwoTensor &stress, Real intnl) const override
Receives the flag for associative or non-associative and calculates the flow potential accordingly...
Real _c
A constant to model the influence of strength differential effect.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
IsotropicSD plasticity model from Yoon (2013) the name of the paper is "Asymmetric yield function bas...
const InputParameters & parameters() const
Real _a
A constant used in the constructor that depends on _b and _c.
Real dfj2_dj2(const Real j2, const Real j3) const
derivative of dphi_dJ2 with respect to J2
RankTwoTensor dyieldFunction_dstress(const RankTwoTensor &stress, Real intnl) const override
Tensor derivative of the yield_function with respect to the stress tensor.
RankFourTensor _h
Comes from transforming the stress tensor to the deviatoric stress tensor.