TensorMechanicsHardeningGaussian Class Reference

Gaussian hardening The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. More...

#include <TensorMechanicsHardeningGaussian.h>

Inheritance diagram for TensorMechanicsHardeningGaussian:
[legend]

## Public Member Functions

TensorMechanicsHardeningGaussian (const InputParameters &parameters)

virtual Real value (Real intnl) const override

virtual Real derivative (Real intnl) const override

virtual std::string modelName () const override

void initialize ()

void execute ()

void finalize ()

## Private Attributes

Real _val_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter. More...

Real _val_res
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter. More...

Real _intnl_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter. More...

Real _rate
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter. More...

## Detailed Description

Gaussian hardening The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0.

Here p = internal parameter, and value = _val_0 for p<=intnl_0 This has nice numerical properties because it is C-infinity continuous

Definition at line 24 of file TensorMechanicsHardeningGaussian.h.

## Constructor & Destructor Documentation

 TensorMechanicsHardeningGaussian::TensorMechanicsHardeningGaussian ( const InputParameters & parameters )

Definition at line 30 of file TensorMechanicsHardeningGaussian.C.

32  : TensorMechanicsHardeningModel(parameters),
33  _val_0(getParam<Real>("value_0")),
34  _val_res(parameters.isParamValid("value_residual") ? getParam<Real>("value_residual") : _val_0),
35  _intnl_0(getParam<Real>("internal_0")),
36  _rate(getParam<Real>("rate"))
37 {
38 }
Real _val_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _intnl_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _val_res
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
TensorMechanicsHardeningModel(const InputParameters &parameters)
Real _rate
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

## Member Function Documentation

 Real TensorMechanicsHardeningGaussian::derivative ( Real intnl ) const
overridevirtual

Reimplemented from TensorMechanicsHardeningModel.

Definition at line 51 of file TensorMechanicsHardeningGaussian.C.

52 {
53  Real x = intnl - _intnl_0;
54  if (x <= 0)
55  return 0;
56  else
57  return -_rate * x * (_val_0 - _val_res) * std::exp(-0.5 * _rate * x * x);
58 }
Real _val_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _intnl_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _val_res
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _rate
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
 void TensorMechanicsHardeningModel::execute ( )
inherited

Definition at line 32 of file TensorMechanicsHardeningModel.C.

33 {
34 }
 void TensorMechanicsHardeningModel::finalize ( )
inherited

Definition at line 37 of file TensorMechanicsHardeningModel.C.

38 {
39 }
 void TensorMechanicsHardeningModel::initialize ( )
inherited

Definition at line 27 of file TensorMechanicsHardeningModel.C.

28 {
29 }
 std::string TensorMechanicsHardeningGaussian::modelName ( ) const
overridevirtual

Implements TensorMechanicsHardeningModel.

Definition at line 61 of file TensorMechanicsHardeningGaussian.C.

62 {
63  return "Gaussian";
64 }
 Real TensorMechanicsHardeningGaussian::value ( Real intnl ) const
overridevirtual

Reimplemented from TensorMechanicsHardeningModel.

Definition at line 41 of file TensorMechanicsHardeningGaussian.C.

42 {
43  Real x = intnl - _intnl_0;
44  if (x <= 0)
45  return _val_0;
46  else
47  return _val_res + (_val_0 - _val_res) * std::exp(-0.5 * _rate * x * x);
48 }
Real _val_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _intnl_0
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _val_res
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.
Real _rate
The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

## Member Data Documentation

 Real TensorMechanicsHardeningGaussian::_intnl_0
private

The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

Definition at line 43 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

 Real TensorMechanicsHardeningGaussian::_rate
private

The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

Definition at line 46 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

 Real TensorMechanicsHardeningGaussian::_val_0
private

The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

Definition at line 37 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

 Real TensorMechanicsHardeningGaussian::_val_res
private

The value = _val_res + (val_0 - val_res)*exp(-0.5*rate*(p - intnl_0)^2) for p>intnl_0. Here p = internal parameter.

Definition at line 40 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

The documentation for this class was generated from the following files: