DamageBase Class Referenceabstract

DamageBase is a base class for damage models, which modify the stress tensor computed by another model based on a damage mechanics formulation. More...

#include <DamageBase.h>

Inheritance diagram for DamageBase:
[legend]

## Public Member Functions

DamageBase (const InputParameters &parameters)

virtual void updateDamage ()
Update the internal variable(s) that evolve the damage. More...

Update the current stress tensor for effects of damage. More...

virtual void updateJacobianMultForDamage (RankFourTensor &jacobian_mult)=0
Update the material constitutive matrix. More...

virtual Real computeTimeStepLimit ()
Compute the limiting value of the time step for this material. More...

virtual void finiteStrainRotation (const RankTwoTensor &rotation_increment)
Perform any necessary rotation of internal variables for finite strain. More...

void setQp (unsigned int qp)
Sets the value of the member variable _qp for use in inheriting classes. More...

void resetQpProperties () final
Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten. More...

void resetProperties () final

## Protected Attributes

const std::string _base_name
Base name optionally used as prefix to material tensor names. More...

## Detailed Description

DamageBase is a base class for damage models, which modify the stress tensor computed by another model based on a damage mechanics formulation.

These models are designed to be called by another model, so they have compute=false set.

Definition at line 29 of file DamageBase.h.

## ◆ DamageBase()

 DamageBase::DamageBase ( const InputParameters & parameters )

Definition at line 32 of file DamageBase.C.

33  : Material(parameters),
34  _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : "")
35 {
36 }
const std::string _base_name
Base name optionally used as prefix to material tensor names.
Definition: DamageBase.h:75

## ◆ computeTimeStepLimit()

 Real DamageBase::computeTimeStepLimit ( )
virtual

Compute the limiting value of the time step for this material.

Returns
Limiting time step

Reimplemented in ScalarDamageBase.

Definition at line 50 of file DamageBase.C.

Referenced by ComputeDamageStress::computeQpStress().

51 {
52  return std::numeric_limits<Real>::max();
53 }

## ◆ finiteStrainRotation()

 void DamageBase::finiteStrainRotation ( const RankTwoTensor & rotation_increment )
virtual

Perform any necessary rotation of internal variables for finite strain.

Parameters
 rotation_increment The finite-strain rotation increment

Definition at line 56 of file DamageBase.C.

Referenced by ComputeDamageStress::computeQpStress().

57 {
58 }

## ◆ resetProperties()

 void DamageBase::resetProperties ( )
inlinefinal

Definition at line 70 of file DamageBase.h.

70 {}

## ◆ resetQpProperties()

 void DamageBase::resetQpProperties ( )
inlinefinal

Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten.

Definition at line 69 of file DamageBase.h.

69 {}

## ◆ setQp()

 void DamageBase::setQp ( unsigned int qp )

Sets the value of the member variable _qp for use in inheriting classes.

Definition at line 39 of file DamageBase.C.

Referenced by ComputeDamageStress::computeQpStress(), and ScalarDamageBase::getQpDamageIndex().

40 {
41  _qp = qp;
42 }

## ◆ updateDamage()

 void DamageBase::updateDamage ( )
virtual

Update the internal variable(s) that evolve the damage.

Reimplemented in ScalarDamageBase.

Definition at line 45 of file DamageBase.C.

Referenced by ComputeDamageStress::computeQpStress().

46 {
47 }

## ◆ updateJacobianMultForDamage()

 virtual void DamageBase::updateJacobianMultForDamage ( RankFourTensor & jacobian_mult )
pure virtual

Update the material constitutive matrix.

Parameters
 jacobian_mult Material constitutive matrix to be modified for effects of damage

Implemented in ScalarDamageBase.

Referenced by ComputeDamageStress::computeQpStress().

 virtual void DamageBase::updateStressForDamage ( RankTwoTensor & stress_new )
pure virtual

Update the current stress tensor for effects of damage.

Parameters
 stress_new Undamaged stress to be modified by the damage model

Implemented in ScalarDamageBase.

Referenced by ComputeDamageStress::computeQpStress().

## ◆ _base_name

 const std::string DamageBase::_base_name
protected

Base name optionally used as prefix to material tensor names.

Definition at line 75 of file DamageBase.h.

Referenced by ScalarMaterialDamage::updateQpDamageIndex().

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