https://mooseframework.inl.gov
SolidMechanicsHardeningModel.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 
12 #include "GeneralUserObject.h"
13 
23 {
24 public:
26 
28 
29  void initialize();
30  void execute();
31  void finalize();
32 
33  /* provides the value of the hardening parameter at given internal parameter
34  * @param intnl the value of the internal parameter at which to evaluate the hardening parameter
35  * @return the value of the hardening parameter
36  */
37  virtual Real value(Real intnl) const;
38 
39  /* provides d(hardening parameter)/d(internal parameter)
40  * @param intnl the value of the internal parameter at which to evaluate the derivative
41  * @return the value of the hardening parameter
42  */
43  virtual Real derivative(Real intnl) const;
44 
45  /* A name for this hardening model. Plasticity models can use
46  * this name to enable certain optimizations
47  */
48  virtual std::string modelName() const = 0;
49 };
SolidMechanicsHardeningModel(const InputParameters &parameters)
virtual std::string modelName() const =0
virtual Real value(Real intnl) const
virtual Real derivative(Real intnl) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const