www.mooseframework.org
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
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
 

Static Public Member Functions

static InputParameters validParams ()
 

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 25 of file PowerLawSoftening.h.

Constructor & Destructor Documentation

◆ PowerLawSoftening()

PowerLawSoftening::PowerLawSoftening ( const InputParameters &  parameters)

Definition at line 31 of file PowerLawSoftening.C.

32  : SmearedCrackSofteningBase(parameters),
33  _stiffness_reduction(getParam<Real>("stiffness_reduction"))
34 {
35 }

Member Function Documentation

◆ 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
stressStress in direction of crack
stiffness_ratioRatio of damaged to original stiffness in cracking direction
strainStrain in the current crack direction
crack_initiation_strainStrain in crack direction when crack first initiated
crack_max_strainMaximum strain in crack direction
cracking_stressThreshold tensile stress for crack initiation
youngs_modulusYoung's modulus

Implements SmearedCrackSofteningBase.

Definition at line 38 of file PowerLawSoftening.C.

45 {
46  if (stress > cracking_stress)
47  {
48  // This is equivalent to k = k_0 * (stiffness_reduction)^n, where n is the number of cracks
49  stiffness_ratio *= _stiffness_reduction;
50  stress = stiffness_ratio * youngs_modulus * strain;
51  }
52 }

◆ resetProperties()

void SmearedCrackSofteningBase::resetProperties ( )
inlinefinalinherited

Definition at line 58 of file SmearedCrackSofteningBase.h.

58 {}

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

57 {}

◆ validParams()

InputParameters PowerLawSoftening::validParams ( )
static

Definition at line 19 of file PowerLawSoftening.C.

20 {
21  InputParameters params = SmearedCrackSofteningBase::validParams();
22  params.addClassDescription("Softening model with an abrupt stress release upon cracking. This "
23  "class is intended to be used with ComputeSmearedCrackingStress.");
24  params.addRequiredRangeCheckedParam<Real>(
25  "stiffness_reduction",
26  "stiffness_reduction <= 1 & stiffness_reduction >= 0",
27  "Factor multiplied by the current stiffness each time a new crack forms");
28  return params;
29 }

Member Data Documentation

◆ _stiffness_reduction

const Real& PowerLawSoftening::_stiffness_reduction
protected

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

Definition at line 42 of file PowerLawSoftening.h.

Referenced by computeCrackingRelease().


The documentation for this class was generated from the following files:
SmearedCrackSofteningBase::SmearedCrackSofteningBase
SmearedCrackSofteningBase(const InputParameters &parameters)
Definition: SmearedCrackSofteningBase.C:28
SmearedCrackSofteningBase::validParams
static InputParameters validParams()
Definition: SmearedCrackSofteningBase.C:17
PowerLawSoftening::_stiffness_reduction
const Real & _stiffness_reduction
Reduction factor applied to the initial stiffness each time a new crack initiates.
Definition: PowerLawSoftening.h:42