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 "RationalDegradationFunction.h" 6 : 7 : registerMooseObject("raccoonApp", RationalDegradationFunction); 8 : 9 : InputParameters 10 294 : RationalDegradationFunction::validParams() 11 : { 12 294 : InputParameters params = DegradationFunctionBase::validParams(); 13 294 : params.addClassDescription( 14 : "Defines the rational degradation function $g(d) = " 15 : "\\frac{(1-d)^p}{(1-d)^p+a_1d(1+a_2d+a_2a_3d^2)} (1-\\eta) + \\eta$ where $a_1 = " 16 : "\\frac{\\Gc}{\\psi_c}\\frac{\\xi}{c_0l}$. $\\Gc$ is the fracture toughness, $\\psi_c$ is " 17 : "the critical fracture energy, $\\xi$ is the derivative of the local fracture energy at " 18 : "$\\d=0$, $c_0$ is the normalization constant, and $l$ is the regularization length."); 19 : 20 294 : params.set<std::string>("expression") = 21 : "(1-d)^p/((1-d)^p+(Gc/psic*xi/c0/l)*d*(1+a2*d+a2*a3*d^2))*(1-eta)+eta"; 22 1764 : params.set<std::vector<std::string>>("parameter_names") = {"p", "a2", "a3", "eta"}; 23 2058 : params.set<std::vector<std::string>>("material_property_names") = {"Gc", "psic", "xi", "c0", "l"}; 24 294 : return params; 25 882 : } 26 : 27 117 : RationalDegradationFunction::RationalDegradationFunction(const InputParameters & parameters) 28 117 : : DegradationFunctionBase(parameters) 29 : { 30 117 : }