Line data Source code
1 : //* This file is part of the RACCOON application 2 : //* being developed at Dolbow lab at Duke University 3 : //* http://dolbow.pratt.duke.edu 4 : 5 : #include "CohesiveDamageIC.h" 6 : 7 : registerMooseObject("raccoonApp", CohesiveDamageIC); 8 : 9 : InputParameters 10 138 : CohesiveDamageIC::validParams() 11 : { 12 138 : InputParameters params = DamageICBase::validParams(); 13 138 : params.addClassDescription( 14 : "This class initializes the phase-field with the closed-form solution " 15 : "associated with a linear crack geometric function $\\alpha(d) = d$, i.e. $d(\\tau) " 16 : "= (1 - \\frac{\\tau}{2l})^2$."); 17 138 : return params; 18 0 : } 19 : 20 0 : CohesiveDamageIC::CohesiveDamageIC(const InputParameters & parameters) : DamageICBase(parameters) {} 21 : 22 : Real 23 0 : CohesiveDamageIC::value(const Point & p) 24 : { 25 0 : Real damage = 0.0; 26 : 27 0 : Real s = dist(p); 28 0 : if (s <= _l * 2.0) 29 0 : damage = _d0 * (1.0 - s / _l / 2.0) * (1.0 - s / _l / 2.0); 30 : 31 0 : damage = std::min(damage, 1.0); 32 : 33 0 : return damage; 34 : }