13 #include "MooseVariable.h"
21 InputParameters params = validParams<Kernel>();
22 params.addClassDescription(
"Add Soret effect to Split formulation Cahn-Hilliard Kernel");
23 params.addRequiredCoupledVar(
"T",
"Temperature");
24 params.addCoupledVar(
"c",
"Concentration");
25 params.addRequiredParam<MaterialPropertyName>(
"diff_name",
26 "The diffusivity used with the kernel");
27 params.addParam<MaterialPropertyName>(
28 "Q_name",
"Qheat",
"The material name for the heat of transport");
35 _T(coupledValue(
"T")),
36 _grad_T(coupledGradient(
"T")),
37 _is_coupled(isCoupled(
"c")),
38 _c_var(_is_coupled ? coupled(
"c") : _var.number()),
39 _c(_is_coupled ? coupledValue(
"c") : _u),
40 _D(getMaterialProperty<Real>(
"diff_name")),
41 _Q(getMaterialProperty<Real>(
"Q_name")),
49 const Real T_term =
_D[_qp] *
_Q[_qp] *
_c[_qp] / (
_kB *
_T[_qp] *
_T[_qp]);
50 return T_term *
_grad_T[_qp] * _grad_test[_i][_qp];
68 return _D[_qp] *
_Q[_qp] *
_c[_qp] * _grad_test[_i][_qp] *
69 (_grad_phi[_j][_qp] - 2.0 *
_grad_T[_qp] * _phi[_j][_qp] /
_T[_qp]) /