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

In this class a rate dependent isotropic damage model is implemented. More...

#include <RateDepSmearIsoCrackModel.h>

Inheritance diagram for RateDepSmearIsoCrackModel:
[legend]

Public Member Functions

 RateDepSmearIsoCrackModel (const InputParameters &parameters)
 
virtual ~RateDepSmearIsoCrackModel ()
 
void setQp (unsigned int qp)
 Sets the value of the variable _qp for inheriting classes. More...
 
virtual bool modifyStrainIncrement (const Elem &, SymmTensor &strain_increment, SymmTensor &d_strain_dT)
 
virtual bool updateElasticityTensor (SymmElasticityTensor &)
 
virtual bool applyThermalStrain (SymmTensor &strain_increment, SymmTensor &d_strain_dT)
 

Protected Member Functions

virtual void initQpStatefulProperties ()
 
virtual void initVariables ()
 
virtual Real damageRate ()
 This function calculates rate of damage based on energy. More...
 
virtual void calcStateIncr ()
 This function calculated thw increment of the state variables (dv) used to form the residual. More...
 
virtual void calcJacobian ()
 This function calculates the Jacobian. More...
 
virtual void postSolveStress ()
 This function updates the stress after solve. More...
 
virtual void computeStress (const Elem &current_elem, const SymmElasticityTensor &elasticity_tensor, const SymmTensor &stress_old, SymmTensor &strain_increment, SymmTensor &stress_new)
 
virtual void solve ()
 This function solves the state variables. More...
 
virtual void postSolveVariables ()
 This function updates the internal variables after solve. More...
 
virtual void updateVariables ()
 This function updates variables during solve a(i+1) = a(i) + da(i+1) More...
 
bool getConvergeVar ()
 This function returns true if convergence is not achieved. More...
 
virtual void calcResidual ()
 This function calculates the residual as r = v - v_old - dv. More...
 
int matrixInversion (std::vector< Real > &A, int n) const
 

Protected Attributes

Real _crit_energy
 
Real _kfail
 Required parameter. More...
 
Real _upper_lim_damage
 Used to avoid non-positive definiteness. More...
 
MaterialProperty< Real > & _energy
 
const MaterialProperty< Real > & _energy_old
 
Real _ddamage
 
Real _ddamagerate_drs
 
ColumnMajorMatrix _s0_diag
 
ColumnMajorMatrix _s0_diag_pos
 
ColumnMajorMatrix _s0_diag_neg
 
ColumnMajorMatrix _s0_evec
 
ColumnMajorMatrix _dstrain_diag
 
ColumnMajorMatrix _dstrain_diag_pos
 
ColumnMajorMatrix _dstrain_diag_neg
 
ColumnMajorMatrix _dstrain_evec
 
Real _ref_damage_rate
 
unsigned int _nstate
 reference damage rate More...
 
Real _exponent
 Number of state variables. More...
 
unsigned int _maxiter
 
Real _tol
 Maximum number of Newton Raphson iteration. More...
 
Real _zero_tol
 Relative tolerance factor for convergence of the Newton Raphson solve. More...
 
Real _intvar_incr_tol
 Tolerance for zero. More...
 
bool _input_rndm_scale_var
 Allowable relative increment size of state variables (dv) More...
 
Real _rndm_scale_var
 Flag to specify scaling parameter to generate random stress. More...
 
MaterialProperty< std::vector< Real > > & _intvar
 Variable value. More...
 
const MaterialProperty< std::vector< Real > > & _intvar_old
 
MaterialProperty< SymmTensor > & _stress_undamaged
 
const MaterialProperty< SymmTensor > & _stress_undamaged_old
 
std::vector< Real > _intvar_incr
 
std::vector< Real > _intvar_tmp
 
std::vector< Real > _intvar_old_tmp
 
std::vector< Real > _resid
 
std::vector< Real > _jac
 
std::vector< Real > _dvar
 
SymmElasticityTensor _elasticity
 
SymmTensor _stress_old
 
SymmTensor _dstrain
 
SymmTensor _stress_new
 
SymmTensor _stress0
 
SymmTensor _dstress0
 
bool _nconv
 
bool _err_tol
 Convergence flag. More...
 
const bool _has_temp
 
const VariableValue & _temperature
 
const VariableValue & _temperature_old
 
const Real _alpha
 
const Function * _alpha_function
 
bool _has_stress_free_temp
 
Real _stress_free_temp
 
bool _mean_alpha_function
 
Real _ref_temp
 
bool & _step_zero_cm
 Restartable data to check for the zeroth and first time steps. More...
 
bool & _step_one_cm
 

Detailed Description

In this class a rate dependent isotropic damage model is implemented.

Definition at line 23 of file RateDepSmearIsoCrackModel.h.

Constructor & Destructor Documentation

◆ RateDepSmearIsoCrackModel()

RateDepSmearIsoCrackModel::RateDepSmearIsoCrackModel ( const InputParameters &  parameters)

Definition at line 30 of file RateDepSmearIsoCrackModel.C.

31  : RateDepSmearCrackModel(parameters),
32  _crit_energy(getParam<Real>("critical_energy")),
33  _kfail(getParam<Real>("k_fail")),
34  _upper_lim_damage(getParam<Real>("upper_limit_damage")),
35  _energy(declareProperty<Real>("energy")),
36  _energy_old(getMaterialPropertyOld<Real>("energy"))
37 {
38 
39  if (_nstate != 2)
40  mooseError(" RateDpeSmearIsoCrackModel Error: Requires 2 state variables - nstate = 2");
41 }

◆ ~RateDepSmearIsoCrackModel()

RateDepSmearIsoCrackModel::~RateDepSmearIsoCrackModel ( )
virtual

Definition at line 149 of file RateDepSmearIsoCrackModel.C.

149 {}

Member Function Documentation

◆ applyThermalStrain()

bool ConstitutiveModel::applyThermalStrain ( SymmTensor strain_increment,
SymmTensor d_strain_dT 
)
virtualinherited

Definition at line 106 of file ConstitutiveModel.C.

107 {
108  if (_t_step >= 1)
109  _step_zero_cm = false;
110 
111  if (_t_step >= 2)
112  _step_one_cm = false;
113 
114  if (_has_temp && !_step_zero_cm)
115  {
116  Real inc_thermal_strain;
117  Real d_thermal_strain_d_temp;
118 
119  Real old_temp;
121  old_temp = _stress_free_temp;
122  else
123  old_temp = _temperature_old[_qp];
124 
125  Real current_temp = _temperature[_qp];
126 
127  Real delta_t = current_temp - old_temp;
128 
129  Real alpha = _alpha;
130 
131  if (_alpha_function)
132  {
133  Point p;
134  Real alpha_current_temp = _alpha_function->value(current_temp, p);
135  Real alpha_old_temp = _alpha_function->value(old_temp, p);
136  Real alpha_stress_free_temperature = _alpha_function->value(_stress_free_temp, p);
137 
139  {
140  Real small(1e-6);
141 
142  Real numerator = alpha_current_temp * (current_temp - _ref_temp) -
143  alpha_old_temp * (old_temp - _ref_temp);
144  Real denominator = 1.0 + alpha_stress_free_temperature * (_stress_free_temp - _ref_temp);
145  if (denominator < small)
146  mooseError("Denominator too small in thermal strain calculation");
147  inc_thermal_strain = numerator / denominator;
148  d_thermal_strain_d_temp = alpha_current_temp * (current_temp - _ref_temp);
149  }
150  else
151  {
152  inc_thermal_strain = delta_t * 0.5 * (alpha_current_temp + alpha_old_temp);
153  d_thermal_strain_d_temp = alpha_current_temp;
154  }
155  }
156  else
157  {
158  inc_thermal_strain = delta_t * alpha;
159  d_thermal_strain_d_temp = alpha;
160  }
161 
162  strain_increment.addDiag(-inc_thermal_strain);
163  d_strain_dT.addDiag(-d_thermal_strain_d_temp);
164  }
165 
166  bool modified = true;
167  return modified;
168 }

Referenced by ConstitutiveModel::modifyStrainIncrement().

◆ calcJacobian()

void RateDepSmearIsoCrackModel::calcJacobian ( )
protectedvirtual

This function calculates the Jacobian.

Reimplemented from RateDepSmearCrackModel.

Definition at line 133 of file RateDepSmearIsoCrackModel.C.

134 {
135 
136  _jac[0] = 1.0;
137  _jac[1] = -_ddamagerate_drs;
138  _jac[2] = 0.0;
139  _jac[3] = 1 - _ddamagerate_drs;
140 }

◆ calcResidual()

void RateDepSmearCrackModel::calcResidual ( )
protectedvirtualinherited

This function calculates the residual as r = v - v_old - dv.

Definition at line 199 of file RateDepSmearCrackModel.C.

200 {
201  calcStateIncr();
202 
203  if (_err_tol)
204  return;
205 
206  for (unsigned int i = 0; i < _nstate; ++i)
208 }

Referenced by RateDepSmearCrackModel::solve().

◆ calcStateIncr()

void RateDepSmearIsoCrackModel::calcStateIncr ( )
protectedvirtual

This function calculated thw increment of the state variables (dv) used to form the residual.

Reimplemented from RateDepSmearCrackModel.

Definition at line 109 of file RateDepSmearIsoCrackModel.C.

110 {
111 
112  Real val = damageRate();
113 
114  if (std::abs(_intvar_old_tmp[0]) < _zero_tol && std::abs(val) > _intvar_incr_tol)
115  {
116  _err_tol = true;
117  return;
118  }
119 
120  if (std::abs(_intvar_old_tmp[0]) > _zero_tol &&
121  std::abs(_intvar_old_tmp[0]) < _upper_lim_damage &&
122  std::abs(val) > _intvar_incr_tol * std::abs(_intvar_old_tmp[0]))
123  {
124  _err_tol = true;
125  return;
126  }
127 
128  for (unsigned int i = 0; i < _nstate; i++)
129  _intvar_incr[i] = val;
130 }

◆ computeStress()

void RateDepSmearCrackModel::computeStress ( const Elem &  current_elem,
const SymmElasticityTensor elasticity_tensor,
const SymmTensor stress_old,
SymmTensor strain_increment,
SymmTensor stress_new 
)
protectedvirtualinherited

Reimplemented from ConstitutiveModel.

Definition at line 76 of file RateDepSmearCrackModel.C.

81 {
82  _elasticity = elasticityTensor;
83  _stress_old = stress_old;
84  _dstrain = strain_increment;
85 
86  initVariables();
87  solve();
88 
90  _rndm_scale_var = elasticityTensor.valueAtIndex(0);
91 
92  if (_nconv || _err_tol)
93  {
94  mooseWarning("RateDepSmearCrackModel: Constitutive cutback");
96  }
97  else
98  {
100  postSolveStress();
101 
102  stress_new = _stress_new;
104  }
105 }

◆ damageRate()

Real RateDepSmearIsoCrackModel::damageRate ( )
protectedvirtual

This function calculates rate of damage based on energy.

Definition at line 78 of file RateDepSmearIsoCrackModel.C.

79 {
80 
81  Real den = 0.0;
82 
83  for (unsigned int i = 0; i < LIBMESH_DIM; i++)
84  den += _s0_diag_pos(i, i) * _dstrain_diag_pos(i, i);
85 
86  _energy[_qp] = _energy_old[_qp] + den;
87 
88  Real e = _energy[_qp];
89 
90  Real fac = e - _intvar_tmp[1];
91  Real val = 0.0;
92 
93  _ddamagerate_drs = 0.0;
94 
95  if (fac > 0.0)
96  {
97  val = std::pow(fac, _exponent);
98  val *= _ref_damage_rate * _dt;
99 
100  Real dval = -_exponent * std::pow(fac, _exponent - 1.0);
101 
102  _ddamagerate_drs = dval * _ref_damage_rate * _dt;
103  }
104 
105  return val;
106 }

Referenced by calcStateIncr().

◆ getConvergeVar()

bool RateDepSmearCrackModel::getConvergeVar ( )
protectedinherited

This function returns true if convergence is not achieved.

Definition at line 163 of file RateDepSmearCrackModel.C.

164 {
165  Real vold, r;
166 
167  for (unsigned int i = 0; i < _nstate; i++)
168  {
169  vold = std::abs(_intvar_old_tmp[i]);
170  r = std::abs(_resid[i]);
171 
172  if (vold > _zero_tol)
173  {
174  if (r > _tol * vold)
175  return true;
176  }
177  else
178  {
179  if (r > _zero_tol)
180  return true;
181  }
182  }
183  return false;
184 }

Referenced by RateDepSmearCrackModel::solve().

◆ initQpStatefulProperties()

void RateDepSmearIsoCrackModel::initQpStatefulProperties ( )
protectedvirtual

Reimplemented from RateDepSmearCrackModel.

Definition at line 44 of file RateDepSmearIsoCrackModel.C.

45 {
47 
48  _intvar[_qp][1] = const_cast<MaterialProperty<std::vector<Real>> &>(_intvar_old)[_qp][1] =
50 
51  _energy[_qp] = 0.0;
52 }

◆ initVariables()

void RateDepSmearIsoCrackModel::initVariables ( )
protectedvirtual

Reimplemented from RateDepSmearCrackModel.

Definition at line 55 of file RateDepSmearIsoCrackModel.C.

56 {
57 
59 
61 
62  for (unsigned int i = 0; i < LIBMESH_DIM; i++)
63  {
64  _s0_diag_pos(i, i) = (std::abs(_s0_diag(i, 0)) + _s0_diag(i, 0)) / 2.0;
65  _s0_diag_neg(i, i) = (std::abs(_s0_diag(i, 0)) - _s0_diag(i, 0)) / 2.0;
66  }
67 
69 
70  for (unsigned int i = 0; i < LIBMESH_DIM; i++)
71  {
72  _dstrain_diag_pos(i, i) = (std::abs(_dstrain_diag(i, 0)) + _dstrain_diag(i, 0)) / 2.0;
73  _dstrain_diag_neg(i, i) = (std::abs(_dstrain_diag(i, 0)) - _dstrain_diag(i, 0)) / 2.0;
74  }
75 }

◆ matrixInversion()

int RateDepSmearCrackModel::matrixInversion ( std::vector< Real > &  A,
int  n 
) const
protectedinherited

Definition at line 221 of file RateDepSmearCrackModel.C.

222 {
223  int return_value, buffer_size = n * 64;
224  std::vector<PetscBLASInt> ipiv(n);
225  std::vector<PetscScalar> buffer(buffer_size);
226 
227  // Following does a LU decomposition of "square matrix A"
228  // upon return "A = P*L*U" if return_value == 0
229  // Here i use quotes because A is actually an array of length n^2, not a matrix of size n-by-n
230  LAPACKgetrf_(&n, &n, &A[0], &n, &ipiv[0], &return_value);
231 
232  if (return_value != 0)
233  // couldn't LU decompose because: illegal value in A; or, A singular
234  return return_value;
235 
236 // get the inverse of A
237 #if PETSC_VERSION_LESS_THAN(3, 5, 0)
238  FORTRAN_CALL(dgetri)(&n, &A[0], &n, &ipiv[0], &buffer[0], &buffer_size, &return_value);
239 #else
240  LAPACKgetri_(&n, &A[0], &n, &ipiv[0], &buffer[0], &buffer_size, &return_value);
241 #endif
242 
243  return return_value;
244 }

Referenced by RateDepSmearCrackModel::updateVariables().

◆ modifyStrainIncrement()

virtual bool ConstitutiveModel::modifyStrainIncrement ( const Elem &  ,
SymmTensor strain_increment,
SymmTensor d_strain_dT 
)
inlinevirtualinherited

Reimplemented in CombinedCreepPlasticity.

Definition at line 38 of file ConstitutiveModel.h.

41  {
42  return applyThermalStrain(strain_increment, d_strain_dT);
43  }

◆ postSolveStress()

void RateDepSmearIsoCrackModel::postSolveStress ( )
protectedvirtual

This function updates the stress after solve.

In the base class it is defined as s = exp ( -d) * s0.

Reimplemented from RateDepSmearCrackModel.

Definition at line 143 of file RateDepSmearIsoCrackModel.C.

144 {
145  ColumnMajorMatrix stress_cmm = _s0_diag_pos * (std::exp(-_intvar_tmp[0]) + _kfail) - _s0_diag_neg;
146  _stress_new = _s0_evec * stress_cmm * _s0_evec.transpose();
147 }

◆ postSolveVariables()

void RateDepSmearCrackModel::postSolveVariables ( )
protectedvirtualinherited

This function updates the internal variables after solve.

Definition at line 187 of file RateDepSmearCrackModel.C.

188 {
189  for (unsigned int i = 0; i < _nstate; ++i)
190  _intvar[_qp][i] = _intvar_tmp[i];
191 }

Referenced by RateDepSmearCrackModel::computeStress().

◆ setQp()

void ConstitutiveModel::setQp ( unsigned int  qp)
inherited

Sets the value of the variable _qp for inheriting classes.

Definition at line 89 of file ConstitutiveModel.C.

90 {
91  _qp = qp;
92 }

Referenced by CombinedCreepPlasticity::computeStress().

◆ solve()

void RateDepSmearCrackModel::solve ( )
protectedvirtualinherited

This function solves the state variables.

In the present formulation the damaged stress (s) is related to the undamaged stress (s0) as s = exp(-d) * s0 where d is a state variable describing damage. d can be scalar or vector depending on the model A Newton-Raphson is used.

Definition at line 122 of file RateDepSmearCrackModel.C.

123 {
124 
125  unsigned int iter = 0;
126  _err_tol = false;
127 
128  calcResidual();
129 
131 
132  while (_nconv && iter < _maxiter && !_err_tol)
133  {
134  calcJacobian();
135  updateVariables();
136  calcResidual();
137 
139 
140  iter++;
141  }
142 }

Referenced by RateDepSmearCrackModel::computeStress().

◆ updateElasticityTensor()

virtual bool ConstitutiveModel::updateElasticityTensor ( SymmElasticityTensor )
inlinevirtualinherited

Definition at line 44 of file ConstitutiveModel.h.

44 { return false; }

◆ updateVariables()

void RateDepSmearCrackModel::updateVariables ( )
protectedvirtualinherited

This function updates variables during solve a(i+1) = a(i) + da(i+1)

Definition at line 145 of file RateDepSmearCrackModel.C.

146 {
147  int error = matrixInversion(_jac, _nstate);
148  if (error != 0)
149  mooseError("Error in Matrix Inversion in RankFourTensor");
150 
151  for (unsigned int i = 0; i < _nstate; i++)
152  {
153  _dvar[i] = 0.0;
154  for (unsigned int j = 0; j < _nstate; j++)
155  _dvar[i] += _jac[i * _nstate + j] * _resid[j];
156  }
157 
158  for (unsigned int i = 0; i < _nstate; i++)
159  _intvar_tmp[i] -= _dvar[i];
160 }

Referenced by RateDepSmearCrackModel::solve().

Member Data Documentation

◆ _alpha

const Real ConstitutiveModel::_alpha
protectedinherited

Definition at line 52 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _alpha_function

const Function* ConstitutiveModel::_alpha_function
protectedinherited

◆ _crit_energy

Real RateDepSmearIsoCrackModel::_crit_energy
protected

Definition at line 41 of file RateDepSmearIsoCrackModel.h.

Referenced by initQpStatefulProperties().

◆ _ddamage

Real RateDepSmearIsoCrackModel::_ddamage
protected

Definition at line 48 of file RateDepSmearIsoCrackModel.h.

◆ _ddamagerate_drs

Real RateDepSmearIsoCrackModel::_ddamagerate_drs
protected

Definition at line 49 of file RateDepSmearIsoCrackModel.h.

Referenced by calcJacobian(), and damageRate().

◆ _dstrain

SymmTensor RateDepSmearCrackModel::_dstrain
protectedinherited

◆ _dstrain_diag

ColumnMajorMatrix RateDepSmearIsoCrackModel::_dstrain_diag
protected

Definition at line 52 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables().

◆ _dstrain_diag_neg

ColumnMajorMatrix RateDepSmearIsoCrackModel::_dstrain_diag_neg
protected

Definition at line 52 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables().

◆ _dstrain_diag_pos

ColumnMajorMatrix RateDepSmearIsoCrackModel::_dstrain_diag_pos
protected

Definition at line 52 of file RateDepSmearIsoCrackModel.h.

Referenced by damageRate(), and initVariables().

◆ _dstrain_evec

ColumnMajorMatrix RateDepSmearIsoCrackModel::_dstrain_evec
protected

Definition at line 52 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables().

◆ _dstress0

SymmTensor RateDepSmearCrackModel::_dstress0
protectedinherited

Definition at line 122 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::initVariables().

◆ _dvar

std::vector<Real> RateDepSmearCrackModel::_dvar
protectedinherited

◆ _elasticity

SymmElasticityTensor RateDepSmearCrackModel::_elasticity
protectedinherited

◆ _energy

MaterialProperty<Real>& RateDepSmearIsoCrackModel::_energy
protected

Definition at line 45 of file RateDepSmearIsoCrackModel.h.

Referenced by damageRate(), and initQpStatefulProperties().

◆ _energy_old

const MaterialProperty<Real>& RateDepSmearIsoCrackModel::_energy_old
protected

Definition at line 46 of file RateDepSmearIsoCrackModel.h.

Referenced by damageRate().

◆ _err_tol

bool RateDepSmearCrackModel::_err_tol
protectedinherited

◆ _exponent

Real RateDepSmearCrackModel::_exponent
protectedinherited

Number of state variables.

Definition at line 100 of file RateDepSmearCrackModel.h.

Referenced by damageRate().

◆ _has_stress_free_temp

bool ConstitutiveModel::_has_stress_free_temp
protectedinherited

Definition at line 54 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _has_temp

const bool ConstitutiveModel::_has_temp
protectedinherited

◆ _input_rndm_scale_var

bool RateDepSmearCrackModel::_input_rndm_scale_var
protectedinherited

Allowable relative increment size of state variables (dv)

Definition at line 105 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::computeStress().

◆ _intvar

MaterialProperty<std::vector<Real> >& RateDepSmearCrackModel::_intvar
protectedinherited

◆ _intvar_incr

std::vector<Real> RateDepSmearCrackModel::_intvar_incr
protectedinherited

◆ _intvar_incr_tol

Real RateDepSmearCrackModel::_intvar_incr_tol
protectedinherited

Tolerance for zero.

Definition at line 104 of file RateDepSmearCrackModel.h.

Referenced by calcStateIncr().

◆ _intvar_old

const MaterialProperty<std::vector<Real> >& RateDepSmearCrackModel::_intvar_old
protectedinherited

◆ _intvar_old_tmp

std::vector<Real> RateDepSmearCrackModel::_intvar_old_tmp
protectedinherited

◆ _intvar_tmp

std::vector<Real> RateDepSmearCrackModel::_intvar_tmp
protectedinherited

◆ _jac

std::vector<Real> RateDepSmearCrackModel::_jac
protectedinherited

◆ _kfail

Real RateDepSmearIsoCrackModel::_kfail
protected

Required parameter.

Definition at line 42 of file RateDepSmearIsoCrackModel.h.

Referenced by postSolveStress().

◆ _maxiter

unsigned int RateDepSmearCrackModel::_maxiter
protectedinherited

Definition at line 101 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::solve().

◆ _mean_alpha_function

bool ConstitutiveModel::_mean_alpha_function
protectedinherited

◆ _nconv

bool RateDepSmearCrackModel::_nconv
protectedinherited

◆ _nstate

unsigned int RateDepSmearCrackModel::_nstate
protectedinherited

◆ _ref_damage_rate

Real RateDepSmearCrackModel::_ref_damage_rate
protectedinherited

Definition at line 98 of file RateDepSmearCrackModel.h.

Referenced by damageRate().

◆ _ref_temp

Real ConstitutiveModel::_ref_temp
protectedinherited

◆ _resid

std::vector<Real> RateDepSmearCrackModel::_resid
protectedinherited

◆ _rndm_scale_var

Real RateDepSmearCrackModel::_rndm_scale_var
protectedinherited

Flag to specify scaling parameter to generate random stress.

Definition at line 106 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::computeStress().

◆ _s0_diag

ColumnMajorMatrix RateDepSmearIsoCrackModel::_s0_diag
protected

Definition at line 51 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables().

◆ _s0_diag_neg

ColumnMajorMatrix RateDepSmearIsoCrackModel::_s0_diag_neg
protected

Definition at line 51 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables(), and postSolveStress().

◆ _s0_diag_pos

ColumnMajorMatrix RateDepSmearIsoCrackModel::_s0_diag_pos
protected

Definition at line 51 of file RateDepSmearIsoCrackModel.h.

Referenced by damageRate(), initVariables(), and postSolveStress().

◆ _s0_evec

ColumnMajorMatrix RateDepSmearIsoCrackModel::_s0_evec
protected

Definition at line 51 of file RateDepSmearIsoCrackModel.h.

Referenced by initVariables(), and postSolveStress().

◆ _step_one_cm

bool& ConstitutiveModel::_step_one_cm
protectedinherited

Definition at line 61 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _step_zero_cm

bool& ConstitutiveModel::_step_zero_cm
protectedinherited

Restartable data to check for the zeroth and first time steps.

Definition at line 60 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _stress0

SymmTensor RateDepSmearCrackModel::_stress0
protectedinherited

◆ _stress_free_temp

Real ConstitutiveModel::_stress_free_temp
protectedinherited

Definition at line 55 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _stress_new

SymmTensor RateDepSmearCrackModel::_stress_new
protectedinherited

◆ _stress_old

SymmTensor RateDepSmearCrackModel::_stress_old
protectedinherited

Definition at line 121 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::computeStress().

◆ _stress_undamaged

MaterialProperty<SymmTensor>& RateDepSmearCrackModel::_stress_undamaged
protectedinherited

Definition at line 111 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::computeStress().

◆ _stress_undamaged_old

const MaterialProperty<SymmTensor>& RateDepSmearCrackModel::_stress_undamaged_old
protectedinherited

Definition at line 112 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::initVariables().

◆ _temperature

const VariableValue& ConstitutiveModel::_temperature
protectedinherited

◆ _temperature_old

const VariableValue& ConstitutiveModel::_temperature_old
protectedinherited

Definition at line 51 of file ConstitutiveModel.h.

Referenced by ConstitutiveModel::applyThermalStrain().

◆ _tol

Real RateDepSmearCrackModel::_tol
protectedinherited

Maximum number of Newton Raphson iteration.

Definition at line 102 of file RateDepSmearCrackModel.h.

Referenced by RateDepSmearCrackModel::getConvergeVar().

◆ _upper_lim_damage

Real RateDepSmearIsoCrackModel::_upper_lim_damage
protected

Used to avoid non-positive definiteness.

Definition at line 43 of file RateDepSmearIsoCrackModel.h.

Referenced by calcStateIncr().

◆ _zero_tol

Real RateDepSmearCrackModel::_zero_tol
protectedinherited

Relative tolerance factor for convergence of the Newton Raphson solve.

Definition at line 103 of file RateDepSmearCrackModel.h.

Referenced by calcStateIncr(), and RateDepSmearCrackModel::getConvergeVar().


The documentation for this class was generated from the following files:
dgetri
void FORTRAN_CALL() dgetri(...)
RateDepSmearIsoCrackModel::_ddamagerate_drs
Real _ddamagerate_drs
Definition: RateDepSmearIsoCrackModel.h:49
RateDepSmearCrackModel::_intvar_incr_tol
Real _intvar_incr_tol
Tolerance for zero.
Definition: RateDepSmearCrackModel.h:104
RateDepSmearIsoCrackModel::_s0_evec
ColumnMajorMatrix _s0_evec
Definition: RateDepSmearIsoCrackModel.h:51
RateDepSmearCrackModel::postSolveStress
virtual void postSolveStress()
This function updates the stress after solve.
Definition: RateDepSmearCrackModel.C:194
RateDepSmearCrackModel::_stress_old
SymmTensor _stress_old
Definition: RateDepSmearCrackModel.h:121
RateDepSmearIsoCrackModel::_dstrain_evec
ColumnMajorMatrix _dstrain_evec
Definition: RateDepSmearIsoCrackModel.h:52
RateDepSmearIsoCrackModel::_energy
MaterialProperty< Real > & _energy
Definition: RateDepSmearIsoCrackModel.h:45
RateDepSmearCrackModel::_stress_new
SymmTensor _stress_new
Definition: RateDepSmearCrackModel.h:121
RateDepSmearCrackModel::_elasticity
SymmElasticityTensor _elasticity
Definition: RateDepSmearCrackModel.h:120
RateDepSmearIsoCrackModel::_dstrain_diag_neg
ColumnMajorMatrix _dstrain_diag_neg
Definition: RateDepSmearIsoCrackModel.h:52
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
RateDepSmearCrackModel::initVariables
virtual void initVariables()
Definition: RateDepSmearCrackModel.C:108
ConstitutiveModel::_step_one_cm
bool & _step_one_cm
Definition: ConstitutiveModel.h:61
RateDepSmearCrackModel::_intvar_tmp
std::vector< Real > _intvar_tmp
Definition: RateDepSmearCrackModel.h:115
ConstitutiveModel::_alpha
const Real _alpha
Definition: ConstitutiveModel.h:52
SymmTensor::genRandomSymmTensor
static SymmTensor genRandomSymmTensor(Real scalefactor)
Definition: SymmTensor.h:449
ConstitutiveModel::_mean_alpha_function
bool _mean_alpha_function
Definition: ConstitutiveModel.h:56
RateDepSmearIsoCrackModel::_s0_diag_pos
ColumnMajorMatrix _s0_diag_pos
Definition: RateDepSmearIsoCrackModel.h:51
RateDepSmearIsoCrackModel::damageRate
virtual Real damageRate()
This function calculates rate of damage based on energy.
Definition: RateDepSmearIsoCrackModel.C:78
ConstitutiveModel::applyThermalStrain
virtual bool applyThermalStrain(SymmTensor &strain_increment, SymmTensor &d_strain_dT)
Definition: ConstitutiveModel.C:106
RateDepSmearCrackModel::_maxiter
unsigned int _maxiter
Definition: RateDepSmearCrackModel.h:101
RateDepSmearCrackModel::postSolveVariables
virtual void postSolveVariables()
This function updates the internal variables after solve.
Definition: RateDepSmearCrackModel.C:187
RateDepSmearCrackModel::_zero_tol
Real _zero_tol
Relative tolerance factor for convergence of the Newton Raphson solve.
Definition: RateDepSmearCrackModel.h:103
RateDepSmearCrackModel::_dstrain
SymmTensor _dstrain
Definition: RateDepSmearCrackModel.h:121
SymmTensor::columnMajorMatrix
ColumnMajorMatrix columnMajorMatrix() const
Definition: SymmTensor.h:425
ConstitutiveModel::_stress_free_temp
Real _stress_free_temp
Definition: ConstitutiveModel.h:55
RateDepSmearCrackModel::_err_tol
bool _err_tol
Convergence flag.
Definition: RateDepSmearCrackModel.h:124
RateDepSmearCrackModel::_intvar_incr
std::vector< Real > _intvar_incr
Definition: RateDepSmearCrackModel.h:114
RateDepSmearCrackModel::RateDepSmearCrackModel
RateDepSmearCrackModel(const InputParameters &parameters)
Definition: RateDepSmearCrackModel.C:41
RateDepSmearIsoCrackModel::_dstrain_diag
ColumnMajorMatrix _dstrain_diag
Definition: RateDepSmearIsoCrackModel.h:52
RateDepSmearCrackModel::_jac
std::vector< Real > _jac
Definition: RateDepSmearCrackModel.h:117
RateDepSmearCrackModel::updateVariables
virtual void updateVariables()
This function updates variables during solve a(i+1) = a(i) + da(i+1)
Definition: RateDepSmearCrackModel.C:145
RateDepSmearCrackModel::_ref_damage_rate
Real _ref_damage_rate
Definition: RateDepSmearCrackModel.h:98
RateDepSmearCrackModel::_stress_undamaged
MaterialProperty< SymmTensor > & _stress_undamaged
Definition: RateDepSmearCrackModel.h:111
RateDepSmearIsoCrackModel::_crit_energy
Real _crit_energy
Definition: RateDepSmearIsoCrackModel.h:41
RateDepSmearCrackModel::_rndm_scale_var
Real _rndm_scale_var
Flag to specify scaling parameter to generate random stress.
Definition: RateDepSmearCrackModel.h:106
RateDepSmearCrackModel::_nstate
unsigned int _nstate
reference damage rate
Definition: RateDepSmearCrackModel.h:99
RateDepSmearCrackModel::solve
virtual void solve()
This function solves the state variables.
Definition: RateDepSmearCrackModel.C:122
SymmTensor::addDiag
void addDiag(Real value)
Definition: SymmTensor.h:281
RateDepSmearIsoCrackModel::_s0_diag_neg
ColumnMajorMatrix _s0_diag_neg
Definition: RateDepSmearIsoCrackModel.h:51
RateDepSmearCrackModel::_dvar
std::vector< Real > _dvar
Definition: RateDepSmearCrackModel.h:118
RateDepSmearIsoCrackModel::_s0_diag
ColumnMajorMatrix _s0_diag
Definition: RateDepSmearIsoCrackModel.h:51
ConstitutiveModel::_ref_temp
Real _ref_temp
Definition: ConstitutiveModel.h:57
RateDepSmearIsoCrackModel::_kfail
Real _kfail
Required parameter.
Definition: RateDepSmearIsoCrackModel.h:42
RateDepSmearCrackModel::_resid
std::vector< Real > _resid
Definition: RateDepSmearCrackModel.h:116
RateDepSmearCrackModel::_stress0
SymmTensor _stress0
Definition: RateDepSmearCrackModel.h:122
RateDepSmearCrackModel::_nconv
bool _nconv
Definition: RateDepSmearCrackModel.h:123
RateDepSmearCrackModel::initQpStatefulProperties
virtual void initQpStatefulProperties()
Definition: RateDepSmearCrackModel.C:69
RateDepSmearCrackModel::calcJacobian
virtual void calcJacobian()
This function calculates the Jacobian.
Definition: RateDepSmearCrackModel.C:216
ConstitutiveModel::_step_zero_cm
bool & _step_zero_cm
Restartable data to check for the zeroth and first time steps.
Definition: ConstitutiveModel.h:60
RateDepSmearCrackModel::_intvar_old_tmp
std::vector< Real > _intvar_old_tmp
Definition: RateDepSmearCrackModel.h:115
RateDepSmearCrackModel::_intvar
MaterialProperty< std::vector< Real > > & _intvar
Variable value.
Definition: RateDepSmearCrackModel.h:108
RateDepSmearCrackModel::calcResidual
virtual void calcResidual()
This function calculates the residual as r = v - v_old - dv.
Definition: RateDepSmearCrackModel.C:199
RateDepSmearCrackModel::_exponent
Real _exponent
Number of state variables.
Definition: RateDepSmearCrackModel.h:100
RateDepSmearCrackModel::matrixInversion
int matrixInversion(std::vector< Real > &A, int n) const
Definition: RateDepSmearCrackModel.C:221
RateDepSmearCrackModel::_input_rndm_scale_var
bool _input_rndm_scale_var
Allowable relative increment size of state variables (dv)
Definition: RateDepSmearCrackModel.h:105
ConstitutiveModel::_temperature_old
const VariableValue & _temperature_old
Definition: ConstitutiveModel.h:51
ConstitutiveModel::_has_stress_free_temp
bool _has_stress_free_temp
Definition: ConstitutiveModel.h:54
RateDepSmearCrackModel::getConvergeVar
bool getConvergeVar()
This function returns true if convergence is not achieved.
Definition: RateDepSmearCrackModel.C:163
ConstitutiveModel::_temperature
const VariableValue & _temperature
Definition: ConstitutiveModel.h:50
ConstitutiveModel::_alpha_function
const Function * _alpha_function
Definition: ConstitutiveModel.h:53
ConstitutiveModel::_has_temp
const bool _has_temp
Definition: ConstitutiveModel.h:49
RateDepSmearIsoCrackModel::_energy_old
const MaterialProperty< Real > & _energy_old
Definition: RateDepSmearIsoCrackModel.h:46
RateDepSmearCrackModel::_tol
Real _tol
Maximum number of Newton Raphson iteration.
Definition: RateDepSmearCrackModel.h:102
RateDepSmearIsoCrackModel::_dstrain_diag_pos
ColumnMajorMatrix _dstrain_diag_pos
Definition: RateDepSmearIsoCrackModel.h:52
RateDepSmearCrackModel::_intvar_old
const MaterialProperty< std::vector< Real > > & _intvar_old
Definition: RateDepSmearCrackModel.h:109
RateDepSmearCrackModel::calcStateIncr
virtual void calcStateIncr()
This function calculated thw increment of the state variables (dv) used to form the residual.
Definition: RateDepSmearCrackModel.C:211
RateDepSmearIsoCrackModel::_upper_lim_damage
Real _upper_lim_damage
Used to avoid non-positive definiteness.
Definition: RateDepSmearIsoCrackModel.h:43