https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SolidMechanicsHardeningConstant.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
13registerMooseObjectRenamed("SolidMechanicsApp",
14 TensorMechanicsHardeningConstant,
15 "01/01/2025 00:00",
17
20{
22 params.addParam<Real>("value",
23 1.0,
24 "The value of the parameter for all internal parameter. "
25 "This is perfect plasticity - there is no hardening.");
26 params.addParam<bool>("convert_to_radians",
27 false,
28 "If true, the value you entered will be "
29 "multiplied by Pi/180 before passing to the "
30 "Plasticity algorithms");
32 "No hardening - the parameter is independent of the internal parameter(s)");
33 return params;
34}
35
37 : SolidMechanicsHardeningModel(parameters),
38 _val(getParam<bool>("convert_to_radians") ? getParam<Real>("value") * libMesh::pi / 180.0
39 : getParam<Real>("value"))
40{
41}
42
43Real
45{
46 return _val;
47}
48
49Real
51{
52 return 0.0;
53}
54
55std::string
57{
58 return "Constant";
59}
registerMooseObject("SolidMechanicsApp", SolidMechanicsHardeningConstant)
registerMooseObjectRenamed("SolidMechanicsApp", TensorMechanicsHardeningConstant, "01/01/2025 00:00", SolidMechanicsHardeningConstant)
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
No hardening - the parameter assumes the value _val for all internal parameters.
virtual Real derivative(Real intnl) const override
virtual std::string modelName() const override
Real _val
The value that the parameter will take.
SolidMechanicsHardeningConstant(const InputParameters &parameters)
virtual Real value(Real intnl) const override
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...