PowerLawSoftening Class Reference

PowerLawSoftening is a smeared crack softening model that uses a power law equation to soften the tensile response. More...

#include <PowerLawSoftening.h>

Inheritance diagram for PowerLawSoftening:
[legend]

## Public Member Functions

PowerLawSoftening (const InputParameters &parameters)

virtual void computeCrackingRelease (Real &stress, Real &stiffness_ratio, const Real strain, const Real crack_initiation_strain, const Real crack_max_strain, const Real cracking_stress, const Real youngs_modulus) override
Compute the effect of the cracking release model on the stress and stiffness in the direction of a single crack. 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 Real & _stiffness_reduction
Reduction factor applied to the initial stiffness each time a new crack initiates. More...

## Detailed Description

PowerLawSoftening is a smeared crack softening model that uses a power law equation to soften the tensile response.

It is for use with ComputeSmearedCrackingStress.

Definition at line 26 of file PowerLawSoftening.h.

## ◆ PowerLawSoftening()

 PowerLawSoftening::PowerLawSoftening ( const InputParameters & parameters )

Definition at line 30 of file PowerLawSoftening.C.

31  : SmearedCrackSofteningBase(parameters),
32  _stiffness_reduction(getParam<Real>("stiffness_reduction"))
33 {
34 }
const Real & _stiffness_reduction
Reduction factor applied to the initial stiffness each time a new crack initiates.
SmearedCrackSofteningBase(const InputParameters &parameters)

## ◆ computeCrackingRelease()

 void PowerLawSoftening::computeCrackingRelease ( Real & stress, Real & stiffness_ratio, const Real strain, const Real crack_initiation_strain, const Real crack_max_strain, const Real cracking_stress, const Real youngs_modulus )
overridevirtual

Compute the effect of the cracking release model on the stress and stiffness in the direction of a single crack.

Parameters
 stress Stress in direction of crack stiffness_ratio Ratio of damaged to original stiffness in cracking direction strain Strain in the current crack direction crack_initiation_strain Strain in crack direction when crack first initiated crack_max_strain Maximum strain in crack direction cracking_stress Threshold tensile stress for crack initiation youngs_modulus Young's modulus

Implements SmearedCrackSofteningBase.

Definition at line 37 of file PowerLawSoftening.C.

44 {
45  if (stress > cracking_stress)
46  {
47  // This is equivalent to k = k_0 * (stiffness_reduction)^n, where n is the number of cracks
48  stiffness_ratio *= _stiffness_reduction;
49  stress = stiffness_ratio * youngs_modulus * strain;
50  }
51 }
const Real & _stiffness_reduction
Reduction factor applied to the initial stiffness each time a new crack initiates.

## ◆ resetProperties()

 void SmearedCrackSofteningBase::resetProperties ( )
inlinefinalinherited

Definition at line 57 of file SmearedCrackSofteningBase.h.

57 {}

## ◆ resetQpProperties()

 void SmearedCrackSofteningBase::resetQpProperties ( )
inlinefinalinherited

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 56 of file SmearedCrackSofteningBase.h.

56 {}

## ◆ _stiffness_reduction

 const Real& PowerLawSoftening::_stiffness_reduction
protected

Reduction factor applied to the initial stiffness each time a new crack initiates.

Definition at line 41 of file PowerLawSoftening.h.

Referenced by computeCrackingRelease().

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