LCOV - code coverage report
Current view: top level - src/materials - CrackSurfaceDensity.C (source / functions) Hit Total Coverage
Test: coverage.info Lines: 10 22 45.5 %
Date: 2025-02-21 01:06:12 Functions: 1 3 33.3 %

          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 "CrackSurfaceDensity.h"
       6             : 
       7             : registerMooseObject("raccoonApp", CrackSurfaceDensity);
       8             : 
       9             : InputParameters
      10         138 : CrackSurfaceDensity::validParams()
      11             : {
      12         138 :   InputParameters params = Material::validParams();
      13         138 :   params += BaseNameInterface::validParams();
      14         138 :   params.addClassDescription(
      15             :       "This class computes the crack surface density $\\gamma = \\dfrac{1}{c_0 l} (\\alpha + l^2 "
      16             :       "\\grad d \\cdot \\grad d)$, where $\\alpha$ is the crack geometric function, $c_0$ is the "
      17             :       "normalization constant, and $l$ is the phase-field regularization length.");
      18             : 
      19         276 :   params.addRequiredCoupledVar("phase_field", "The phase-field variable");
      20         276 :   params.addParam<MaterialPropertyName>(
      21             :       "normalization_constant", "c0", "The normalization constant");
      22         276 :   params.addParam<MaterialPropertyName>(
      23             :       "regularization_length", "l", "The phase-field regularization length");
      24         276 :   params.addParam<MaterialPropertyName>(
      25             :       "crack_geometric_function", "alpha", "The crack geometric function");
      26         276 :   params.addParam<MaterialPropertyName>(
      27             :       "crack_surface_density", "gamma", "Name of the crack surface density");
      28             : 
      29         138 :   return params;
      30           0 : }
      31             : 
      32           0 : CrackSurfaceDensity::CrackSurfaceDensity(const InputParameters & parameters)
      33             :   : Material(parameters),
      34             :     BaseNameInterface(parameters),
      35           0 :     _grad_d(adCoupledGradient("phase_field")),
      36           0 :     _c0(getADMaterialProperty<Real>(prependBaseName("normalization_constant", true))),
      37           0 :     _l(getADMaterialProperty<Real>(prependBaseName("regularization_length", true))),
      38           0 :     _alpha(getADMaterialProperty<Real>(prependBaseName("crack_geometric_function", true))),
      39           0 :     _gamma(declareADProperty<Real>(prependBaseName("crack_surface_density", true)))
      40             : {
      41           0 : }
      42             : 
      43             : void
      44           0 : CrackSurfaceDensity::computeQpProperties()
      45             : {
      46           0 :   _gamma[_qp] =
      47           0 :       (_alpha[_qp] + _l[_qp] * _l[_qp] * _grad_d[_qp] * _grad_d[_qp]) / _c0[_qp] / _l[_qp];
      48           0 : }

Generated by: LCOV version 1.16