www.mooseframework.org
Public Member Functions | Private Attributes | List of all members
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 27 of file TensorMechanicsHardeningGaussian.h.

Constructor & Destructor Documentation

◆ TensorMechanicsHardeningGaussian()

TensorMechanicsHardeningGaussian::TensorMechanicsHardeningGaussian ( const InputParameters &  parameters)

Definition at line 35 of file TensorMechanicsHardeningGaussian.C.

37  : TensorMechanicsHardeningModel(parameters),
38  _val_0(getParam<Real>("value_0")),
39  _val_res(parameters.isParamValid("value_residual") ? getParam<Real>("value_residual") : _val_0),
40  _intnl_0(getParam<Real>("internal_0")),
41  _rate(getParam<Real>("rate"))
42 {
43 }
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

◆ derivative()

Real TensorMechanicsHardeningGaussian::derivative ( Real  intnl) const
overridevirtual

Reimplemented from TensorMechanicsHardeningModel.

Definition at line 56 of file TensorMechanicsHardeningGaussian.C.

57 {
58  Real x = intnl - _intnl_0;
59  if (x <= 0)
60  return 0;
61  else
62  return -_rate * x * (_val_0 - _val_res) * std::exp(-0.5 * _rate * x * x);
63 }
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.

◆ execute()

void TensorMechanicsHardeningModel::execute ( )
inherited

Definition at line 35 of file TensorMechanicsHardeningModel.C.

36 {
37 }

◆ finalize()

void TensorMechanicsHardeningModel::finalize ( )
inherited

Definition at line 40 of file TensorMechanicsHardeningModel.C.

41 {
42 }

◆ initialize()

void TensorMechanicsHardeningModel::initialize ( )
inherited

Definition at line 30 of file TensorMechanicsHardeningModel.C.

31 {
32 }

◆ modelName()

std::string TensorMechanicsHardeningGaussian::modelName ( ) const
overridevirtual

Implements TensorMechanicsHardeningModel.

Definition at line 66 of file TensorMechanicsHardeningGaussian.C.

67 {
68  return "Gaussian";
69 }

◆ value()

Real TensorMechanicsHardeningGaussian::value ( Real  intnl) const
overridevirtual

Reimplemented from TensorMechanicsHardeningModel.

Definition at line 46 of file TensorMechanicsHardeningGaussian.C.

47 {
48  Real x = intnl - _intnl_0;
49  if (x <= 0)
50  return _val_0;
51  else
52  return _val_res + (_val_0 - _val_res) * std::exp(-0.5 * _rate * x * x);
53 }
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

◆ _intnl_0

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 46 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

◆ _rate

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 49 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

◆ _val_0

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 40 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().

◆ _val_res

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 43 of file TensorMechanicsHardeningGaussian.h.

Referenced by derivative(), and value().


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