www.mooseframework.org
ADSplitCHCRes.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 
10 #include "ADSplitCHCRes.h"
11 
15  params.addClassDescription("Split formulation Cahn-Hilliard Kernel");
16  params.addRequiredCoupledVar("w", "Chemical potential variable");
17  params.addRequiredParam<MaterialPropertyName>("kappa_name", "The kappa used with the kernel"););
18 
19 template <ComputeStage compute_stage>
20 ADSplitCHCRes<compute_stage>::ADSplitCHCRes(const InputParameters & parameters)
21  : ADSplitCHBase<compute_stage>(parameters),
22  _kappa(getADMaterialProperty<Real>("kappa_name")),
23  _w(adCoupledValue("w"))
24 {
25 }
26 
27 template <ComputeStage compute_stage>
28 ADReal
30 {
32 
33  residual += -_w[_qp] * _test[_i][_qp];
34  residual += _kappa[_qp] * _grad_u[_qp] * _grad_test[_i][_qp];
35 
36  return residual;
37 }
38 
39 // explicit instantiation is required for AD base classes
defineADValidParams
defineADValidParams(ADSplitCHCRes, ADSplitCHBase, params.addClassDescription("Split formulation Cahn-Hilliard Kernel");params.addRequiredCoupledVar("w", "Chemical potential variable");params.addRequiredParam< MaterialPropertyName >("kappa_name", "The kappa used with the kernel");)
ADSplitCHCRes::ADSplitCHCRes
ADSplitCHCRes(const InputParameters &parameters)
Definition: ADSplitCHCRes.C:20
ADSplitCHBase
The pair, ADSplitCHCRes and ADSplitCHWRes, splits the Cahn-Hilliard equation by replacing chemical po...
Definition: ADSplitCHBase.h:21
ADSplitCHCRes::computeQpResidual
virtual ADReal computeQpResidual()
Definition: ADSplitCHCRes.C:29
adBaseClass
adBaseClass(ADSplitCHCRes)
ADSplitCHBase::computeQpResidual
virtual ADReal computeQpResidual()
Definition: ADSplitCHBase.C:24
ADSplitCHCRes
The pair, ADSplitCHCRes and ADSplitCHWRes, splits the Cahn-Hilliard equation by replacing chemical po...
Definition: ADSplitCHCRes.h:21
ADSplitCHCRes.h