www.mooseframework.org
Public Member Functions | Protected Attributes | List of all members
CrystalPlasticityStateVarRateComponentGSS Class Reference

Phenomenological constitutive model state variable evolution rate component userobject class. More...

#include <CrystalPlasticityStateVarRateComponentGSS.h>

Inheritance diagram for CrystalPlasticityStateVarRateComponentGSS:
[legend]

Public Member Functions

 CrystalPlasticityStateVarRateComponentGSS (const InputParameters &parameters)
 
virtual bool calcStateVariableEvolutionRateComponent (unsigned int qp, std::vector< Real > &val) const
 
virtual unsigned int variableSize () const
 Returns the size of variable. More...
 

Protected Attributes

const MaterialProperty< std::vector< Real > > & _mat_prop_slip_rate
 
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var
 
FileName _slip_sys_hard_prop_file_name
 The hardening parameters in this class are read from .i file. The user can override to read from file. More...
 
std::vector< Real > _hprops
 
unsigned int _variable_size
 

Detailed Description

Phenomenological constitutive model state variable evolution rate component userobject class.

Definition at line 20 of file CrystalPlasticityStateVarRateComponentGSS.h.

Constructor & Destructor Documentation

CrystalPlasticityStateVarRateComponentGSS::CrystalPlasticityStateVarRateComponentGSS ( const InputParameters &  parameters)

Definition at line 31 of file CrystalPlasticityStateVarRateComponentGSS.C.

35  getMaterialProperty<std::vector<Real>>(parameters.get<std::string>("uo_slip_rate_name"))),
37  getMaterialProperty<std::vector<Real>>(parameters.get<std::string>("uo_state_var_name"))),
38  _slip_sys_hard_prop_file_name(getParam<FileName>("slip_sys_hard_prop_file_name")),
39  _hprops(getParam<std::vector<Real>>("hprops"))
40 {
41 }
CrystalPlasticityStateVarRateComponent(const InputParameters &parameters)
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var
const MaterialProperty< std::vector< Real > > & _mat_prop_slip_rate
FileName _slip_sys_hard_prop_file_name
The hardening parameters in this class are read from .i file. The user can override to read from file...

Member Function Documentation

bool CrystalPlasticityStateVarRateComponentGSS::calcStateVariableEvolutionRateComponent ( unsigned int  qp,
std::vector< Real > &  val 
) const
virtual

Implements CrystalPlasticityStateVarRateComponent.

Definition at line 44 of file CrystalPlasticityStateVarRateComponentGSS.C.

46 {
47  val.assign(_variable_size, 0.0);
48 
49  Real r = _hprops[0];
50  Real h0 = _hprops[1];
51  Real tau_sat = _hprops[2];
52 
53  DenseVector<Real> hb(_variable_size);
54  Real qab;
55  Real a = _hprops[3]; // Kalidindi
56 
57  for (unsigned int i = 0; i < _variable_size; ++i)
58  hb(i) = h0 * std::pow(std::abs(1.0 - _mat_prop_state_var[qp][i] / tau_sat), a) *
59  copysign(1.0, 1.0 - _mat_prop_state_var[qp][i] / tau_sat);
60 
61  for (unsigned int i = 0; i < _variable_size; ++i)
62  for (unsigned int j = 0; j < _variable_size; ++j)
63  {
64  unsigned int iplane, jplane;
65  iplane = i / 3;
66  jplane = j / 3;
67 
68  if (iplane == jplane) // Kalidindi
69  qab = 1.0;
70  else
71  qab = r;
72 
73  val[i] += std::abs(_mat_prop_slip_rate[qp][j]) * qab * hb(j);
74  }
75 
76  return true;
77 }
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
const MaterialProperty< std::vector< Real > > & _mat_prop_slip_rate
unsigned int CrystalPlasticityUOBase::variableSize ( ) const
virtualinherited

Returns the size of variable.

Definition at line 26 of file CrystalPlasticityUOBase.C.

27 {
28  return _variable_size;
29 }

Member Data Documentation

std::vector<Real> CrystalPlasticityStateVarRateComponentGSS::_hprops
protected
const MaterialProperty<std::vector<Real> >& CrystalPlasticityStateVarRateComponentGSS::_mat_prop_slip_rate
protected
const MaterialProperty<std::vector<Real> >& CrystalPlasticityStateVarRateComponentGSS::_mat_prop_state_var
protected
FileName CrystalPlasticityStateVarRateComponentGSS::_slip_sys_hard_prop_file_name
protected

The hardening parameters in this class are read from .i file. The user can override to read from file.

Definition at line 33 of file CrystalPlasticityStateVarRateComponentGSS.h.

unsigned int CrystalPlasticityUOBase::_variable_size
protectedinherited

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