https://mooseframework.inl.gov
ADACInterfaceKobayashi1.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
11 
13 
16 {
18  params.addClassDescription("Anisotropic gradient energy Allen-Cahn Kernel Part 1");
19  params.addParam<MaterialPropertyName>("mob_name", "L", "The mobility used with the kernel");
20  params.addParam<MaterialPropertyName>("eps_name", "eps", "The anisotropic interface parameter");
21  params.addParam<MaterialPropertyName>(
22  "deps_name",
23  "deps",
24  "The derivative of the anisotropic interface parameter with respect to angle");
25  return params;
26 }
27 
29  : ADKernelGrad(parameters),
30  _mob(getADMaterialProperty<Real>("mob_name")),
31  _eps(getADMaterialProperty<Real>("eps_name")),
32  _deps(getADMaterialProperty<Real>("deps_name"))
33 {
34 }
35 
38 {
39  // Set modified gradient vector
40  const ADRealGradient v(-_grad_u[_qp](1), _grad_u[_qp](0), 0);
41 
42  // Define anisotropic interface residual
43  return _eps[_qp] * _deps[_qp] * _mob[_qp] * v;
44 }
Kernel 1 of 2 for interfacial energy anisotropy in the Allen-Cahn equation as implemented in R...
const ADMaterialProperty< Real > & _eps
Interfacial parameter.
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
const ADMaterialProperty< Real > & _mob
Mobility.
static InputParameters validParams()
registerMooseObject("PhaseFieldApp", ADACInterfaceKobayashi1)
const ADMaterialProperty< Real > & _deps
Angular derivative of interfacial parameter.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
Definition: NS.h:84
const ADTemplateVariableGradient< T > & _grad_u
ADRealGradient precomputeQpResidual() override
static InputParameters validParams()
void addClassDescription(const std::string &doc_string)
ADACInterfaceKobayashi1(const InputParameters &parameters)
unsigned int _qp