https://mooseframework.inl.gov
Loading...
Searching...
No Matches
TensileStressUpdate_PartiallyImplemented.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
13
16{
19 "Physically, this is just TensileStressUpdate, but the code uses "
20 "MultiParameterPlasticityStressUpdate::consistentTangentOperatorV instead of the optimised "
21 "algorithm found in TensileStressUpdate. The purpose is to show that the "
22 "MultiParameterPlasticityStressUpdate algorithm is correct, although slow.");
23 return params;
24}
25
31
32void
34 const RankTwoTensor & stress_trial,
35 const std::vector<Real> & trial_stress_params,
36 const RankTwoTensor & stress,
37 const std::vector<Real> & stress_params,
38 Real gaE,
39 const yieldAndFlow & smoothed_q,
40 const RankFourTensor & elasticity_tensor,
41 bool compute_full_tangent_operator,
42 const std::vector<std::vector<Real>> & dvar_dtrial,
43 RankFourTensor & cto)
44{
46 trial_stress_params,
47 stress,
48 stress_params,
49 gaE,
50 smoothed_q,
52 compute_full_tangent_operator,
53 dvar_dtrial,
54 cto);
55}
registerMooseObject("SolidMechanicsTestApp", TensileStressUpdate_PartiallyImplemented)
void addClassDescription(const std::string &doc_string)
virtual void consistentTangentOperatorV(const RankTwoTensor &stress_trial, const std::vector< Real > &trial_stress_params, const RankTwoTensor &stress, const std::vector< Real > &stress_params, Real gaE, const yieldAndFlow &smoothed_q, const RankFourTensor &Eijkl, bool compute_full_tangent_operator, const std::vector< std::vector< Real > > &dvar_dtrial, RankFourTensor &cto)
Calculates the consistent tangent operator.
Just like TensileStressUpdate, but uses the base class, MultiParameterPlasticityStressUpdate::consist...
TensileStressUpdate_PartiallyImplemented(const InputParameters &parameters)
virtual void consistentTangentOperatorV(const RankTwoTensor &stress_trial, const std::vector< Real > &trial_stress_params, const RankTwoTensor &stress, const std::vector< Real > &stress_params, Real gaE, const yieldAndFlow &smoothed_q, const RankFourTensor &Eijkl, bool compute_full_tangent_operator, const std::vector< std::vector< Real > > &dvar_dtrial, RankFourTensor &cto) override
Calculates the consistent tangent operator.
TensileStressUpdate implements rate-independent associative tensile failure ("Rankine" plasticity) wi...
static InputParameters validParams()
Real elasticity_tensor(unsigned int i, unsigned int j, unsigned int k, unsigned int l)
Struct designed to hold info about a single yield function and its derivatives, as well as the flow d...