www.mooseframework.org
TensorMechanicsHardeningModel.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 
12 #include "GeneralUserObject.h"
13 
15 
16 template <>
18 
27 class TensorMechanicsHardeningModel : public GeneralUserObject
28 {
29 public:
30  static InputParameters validParams();
31 
32  TensorMechanicsHardeningModel(const InputParameters & parameters);
33 
34  void initialize();
35  void execute();
36  void finalize();
37 
38  /* provides the value of the hardening parameter at given internal parameter
39  * @param intnl the value of the internal parameter at which to evaluate the hardening parameter
40  * @return the value of the hardening parameter
41  */
42  virtual Real value(Real intnl) const;
43 
44  /* provides d(hardening parameter)/d(internal parameter)
45  * @param intnl the value of the internal parameter at which to evaluate the derivative
46  * @return the value of the hardening parameter
47  */
48  virtual Real derivative(Real intnl) const;
49 
50  /* A name for this hardening model. Plasticity models can use
51  * this name to enable certain optimizations
52  */
53  virtual std::string modelName() const = 0;
54 };
TensorMechanicsHardeningModel::validParams
static InputParameters validParams()
Definition: TensorMechanicsHardeningModel.C:17
TensorMechanicsHardeningModel::modelName
virtual std::string modelName() const =0
TensorMechanicsHardeningModel::finalize
void finalize()
Definition: TensorMechanicsHardeningModel.C:41
TensorMechanicsHardeningModel::derivative
virtual Real derivative(Real intnl) const
Definition: TensorMechanicsHardeningModel.C:47
TensorMechanicsHardeningModel::initialize
void initialize()
Definition: TensorMechanicsHardeningModel.C:31
TensorMechanicsHardeningModel::value
virtual Real value(Real intnl) const
Definition: TensorMechanicsHardeningModel.C:45
validParams< TensorMechanicsHardeningModel >
InputParameters validParams< TensorMechanicsHardeningModel >()
TensorMechanicsHardeningModel::execute
void execute()
Definition: TensorMechanicsHardeningModel.C:36
TensorMechanicsHardeningModel::TensorMechanicsHardeningModel
TensorMechanicsHardeningModel(const InputParameters &parameters)
Definition: TensorMechanicsHardeningModel.C:25
TensorMechanicsHardeningModel
Hardening Model base class.
Definition: TensorMechanicsHardeningModel.h:27