#include <ACBarrierFunction.h>
Definition at line 43 of file ACBarrierFunction.h.
◆ ACBarrierFunction()
Definition at line 38 of file ACBarrierFunction.C.
42 _vname(getParam<std::vector<VariableName>>(
"v")),
44 _vmap(getParameterJvarMap(
"v"))
45{
46 for (
unsigned int i = 0; i <
_n_eta; ++i)
48}
const NonlinearVariableName _uname
const MaterialProperty< Real > & _d2mudvar2
std::vector< const MaterialProperty< Real > * > _d2mudvardeta
const std::vector< VariableName > _vname
◆ calculateF0()
| Real ACBarrierFunction::calculateF0 |
( |
| ) |
|
|
private |
Definition at line 118 of file ACBarrierFunction.C.
119{
120 Real var_phase = 0.25 * _u[_qp] * _u[_qp] * _u[_qp] * _u[_qp] - 0.5 * _u[_qp] * _u[_qp];
121 Real eta_phase = 0.0;
122 Real eta_interface = 0.0;
124
125 for (
unsigned int i = 0; i <
_n_eta; ++i)
126 {
127 sum_eta_j2 = 0.0;
128 for (
unsigned int j = i + 1; j <
_n_eta; ++j)
129 sum_eta_j2 += (*_vals[j])[_qp] * (*_vals[j])[_qp];
130
131
132
133 eta_phase += 0.25 * Utility::pow<4>((*_vals[i])[_qp]) - 0.5 * Utility::pow<2>((*_vals[i])[_qp]);
134 eta_interface +=
135 (_u[_qp] * _u[_qp] + sum_eta_j2) * (*_vals[i])[_qp] * (*_vals[i])[_qp] *
_gamma[_qp];
136 }
137 return 0.25 + var_phase + eta_phase + eta_interface;
138}
const GenericMaterialProperty< Real, is_ad > & _gamma
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Referenced by computeDFDOP(), and computeQpOffDiagJacobian().
◆ computeDFDOP()
| Real ACBarrierFunction::computeDFDOP |
( |
PFFunctionType |
type | ) |
|
|
protectedvirtual |
Definition at line 51 of file ACBarrierFunction.C.
52{
53 switch (type)
54 {
57
58 case Jacobian:
59 {
61 for (
unsigned int i = 0; i <
_n_eta; ++i)
62 df0dvar += (*_vals[i])[_qp] * (*_vals[i])[_qp];
63
64 df0dvar *= 2.0 *
_gamma[_qp] * _u[_qp];
65 df0dvar += _u[_qp] * _u[_qp] * _u[_qp] - _u[_qp];
66
68 }
69
70 default:
72 }
73}
void mooseError(Args &&... args)
const GenericMaterialProperty< Real, is_ad > & _dmudvar
◆ computeQpOffDiagJacobian()
| Real ACBarrierFunction::computeQpOffDiagJacobian |
( |
unsigned int |
jvar | ) |
|
|
protectedvirtual |
Definition at line 93 of file ACBarrierFunction.C.
94{
95 const unsigned int j = mapJvarToCvar(jvar);
97 Real df0deta_base = 0.0;
99
100 for (
unsigned int i = 0; i <
_n_eta; ++i)
101 if (i != j)
102 sum_etai2 += (*_vals[i])[_qp] * (*_vals[i])[_qp];
103
104 auto etavar = mapJvarToCvar(jvar,
_vmap);
105 if (etavar >= 0)
106 {
107 df0deta_base = (*_vals[etavar])[_qp] * (*_vals[etavar])[_qp] - 1.0 +
108 2.0 *
_gamma[_qp] * (_u[_qp] * _u[_qp] + sum_etai2);
109 df0deta = (*_vals[etavar])[_qp] * df0deta_base;
110
112 _phi[_j][_qp] * _test[_i][_qp] * _L[_qp];
113 }
114 return 0.0;
115}
◆ validParams()
Definition at line 27 of file ACBarrierFunction.C.
19{
22 "gamma", "The interface profile coefficient to use with the kernel");
24 return params;
25}
typename std::conditional< is_ad, ADGrainGrowthBase, ACGrGrBase >::type ACBarrierFunctionBase
Several kernels use a material property called mu.
◆ _d2mudvar2
◆ _d2mudvardeta
◆ _dmudvar
◆ _gamma
◆ _gamma_name
◆ _n_eta
| unsigned int ACBarrierFunction::_n_eta |
|
protected |
◆ _uname
◆ _vmap
| const JvarMap& ACBarrierFunction::_vmap |
|
protected |
◆ _vname
| const std::vector<VariableName> ACBarrierFunction::_vname |
|
protected |
The documentation for this class was generated from the following files: