Loading [MathJax]/extensions/tex2jax.js
www.mooseframework.org
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
TensorMechanicsPlasticIsotropicSD.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 #include "RankFourTensor.h"
14 
16 
17 template <>
19 
32 {
33 public:
34  static InputParameters validParams();
35 
36  TensorMechanicsPlasticIsotropicSD(const InputParameters & parameters);
37 
38 protected:
40  const Real _b;
41 
43  Real _c;
44 
46  const bool _associative;
47 
50 
52  Real _a;
53 
55  Real dphi_dj2(const Real j2, const Real j3) const;
56 
58  Real dphi_dj3(const Real j2, const Real j3) const;
59 
61  Real dfj2_dj2(const Real j2, const Real j3) const;
62 
64  Real dfj2_dj3(const Real j2, const Real j3) const;
65 
67  Real dfj3_dj2(const Real j2, const Real j3) const;
68 
70  Real dfj3_dj3(const Real j2, const Real j3) const;
71 
73  RankTwoTensor dI_sigma() const;
74 
76  RankTwoTensor dj2_dSkl(const RankTwoTensor & stress) const;
77 
79  Real yieldFunction(const RankTwoTensor & stress, Real intnl) const override;
80 
82  RankTwoTensor dyieldFunction_dstress(const RankTwoTensor & stress, Real intnl) const override;
83 
85  RankFourTensor dflowPotential_dstress(const RankTwoTensor & stress, Real intnl) const override;
86 
88  RankTwoTensor flowPotential(const RankTwoTensor & stress, Real intnl) const override;
89 };
TensorMechanicsPlasticIsotropicSD::_b
const Real _b
A constant to model the influence of pressure.
Definition: TensorMechanicsPlasticIsotropicSD.h:40
TensorMechanicsPlasticIsotropicSD::dflowPotential_dstress
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.
Definition: TensorMechanicsPlasticIsotropicSD.C:122
TensorMechanicsPlasticIsotropicSD::_c
Real _c
A constant to model the influence of strength differential effect.
Definition: TensorMechanicsPlasticIsotropicSD.h:43
TensorMechanicsPlasticIsotropicSD::validParams
static InputParameters validParams()
Definition: TensorMechanicsPlasticIsotropicSD.C:17
TensorMechanicsPlasticIsotropicSD::TensorMechanicsPlasticIsotropicSD
TensorMechanicsPlasticIsotropicSD(const InputParameters &parameters)
Definition: TensorMechanicsPlasticIsotropicSD.C:29
TensorMechanicsPlasticJ2
J2 plasticity, associative, with hardning.
Definition: TensorMechanicsPlasticJ2.h:24
TensorMechanicsPlasticJ2.h
TensorMechanicsPlasticIsotropicSD::dphi_dj3
Real dphi_dj3(const Real j2, const Real j3) const
derivative of phi with respect to J3
Definition: TensorMechanicsPlasticIsotropicSD.C:51
TensorMechanicsPlasticIsotropicSD::yieldFunction
Real yieldFunction(const RankTwoTensor &stress, Real intnl) const override
Yield_function = a[b*I1 + (J2^{3/2} - c*J3)^{1/3}] - yield_strength.
Definition: TensorMechanicsPlasticIsotropicSD.C:102
TensorMechanicsPlasticIsotropicSD::_h
RankFourTensor _h
Comes from transforming the stress tensor to the deviatoric stress tensor.
Definition: TensorMechanicsPlasticIsotropicSD.h:49
TensorMechanicsPlasticIsotropicSD::dphi_dj2
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}
Definition: TensorMechanicsPlasticIsotropicSD.C:45
TensorMechanicsPlasticIsotropicSD::dfj3_dj3
Real dfj3_dj3(const Real j2, const Real j3) const
derivative of dphi_dJ3 with respect to J3
Definition: TensorMechanicsPlasticIsotropicSD.C:78
validParams< TensorMechanicsPlasticIsotropicSD >
InputParameters validParams< TensorMechanicsPlasticIsotropicSD >()
TensorMechanicsPlasticIsotropicSD::_a
Real _a
A constant used in the constructor that depends on _b and _c.
Definition: TensorMechanicsPlasticIsotropicSD.h:52
TensorMechanicsPlasticIsotropicSD::dfj3_dj2
Real dfj3_dj2(const Real j2, const Real j3) const
derivative of dphi_dJ3 with respect to J2
Definition: TensorMechanicsPlasticIsotropicSD.C:71
TensorMechanicsPlasticIsotropicSD::flowPotential
RankTwoTensor flowPotential(const RankTwoTensor &stress, Real intnl) const override
Receives the flag for associative or non-associative and calculates the flow potential accordingly.
Definition: TensorMechanicsPlasticIsotropicSD.C:146
RankFourTensorTempl< Real >
TensorMechanicsPlasticIsotropicSD::dfj2_dj2
Real dfj2_dj2(const Real j2, const Real j3) const
derivative of dphi_dJ2 with respect to J2
Definition: TensorMechanicsPlasticIsotropicSD.C:57
TensorMechanicsPlasticIsotropicSD::dyieldFunction_dstress
RankTwoTensor dyieldFunction_dstress(const RankTwoTensor &stress, Real intnl) const override
Tensor derivative of the yield_function with respect to the stress tensor.
Definition: TensorMechanicsPlasticIsotropicSD.C:111
RankTwoTensorTempl< Real >
TensorMechanicsPlasticIsotropicSD::dI_sigma
RankTwoTensor dI_sigma() const
derivative of the trace with respect to sigma rank two tensor
Definition: TensorMechanicsPlasticIsotropicSD.C:84
TensorMechanicsPlasticIsotropicSD
IsotropicSD plasticity model from Yoon (2013) the name of the paper is "Asymmetric yield function bas...
Definition: TensorMechanicsPlasticIsotropicSD.h:31
TensorMechanicsPlasticIsotropicSD::_associative
const bool _associative
Flag for flow-rule, true if not specified.
Definition: TensorMechanicsPlasticIsotropicSD.h:46
TensorMechanicsPlasticIsotropicSD::dj2_dSkl
RankTwoTensor dj2_dSkl(const RankTwoTensor &stress) const
derivative of the second invariant with respect to the stress deviatoric tensor
Definition: TensorMechanicsPlasticIsotropicSD.C:90
TensorMechanicsPlasticIsotropicSD::dfj2_dj3
Real dfj2_dj3(const Real j2, const Real j3) const
derivative of dphi_dJ2 with respect to J3
Definition: TensorMechanicsPlasticIsotropicSD.C:64