18 params.
addClassDescription(
"Total free energy (both the bulk and gradient parts), where the bulk " 19 "free energy has been defined in a material");
20 params.
addParam<MaterialPropertyName>(
"f_name",
"F",
" Base name of the free energy function");
21 params.
addParam<std::vector<MaterialPropertyName>>(
"kappa_names",
22 std::vector<MaterialPropertyName>(),
23 "Vector of kappa names corresponding to " 24 "each variable name in interfacial_vars " 25 "in the same order.");
35 "Size of interfacial_vars is not equal to the size of kappa_names in TotalFreeEnergy");
38 for (
unsigned int i = 0; i <
_nkappas; ++i)
49 for (
unsigned int i = 0; i <
_nvars; ++i)
Total free energy (both the bulk and gradient parts), where the bulk free energy has been defined in ...
unsigned int _nvars
Coupled interface variables.
TotalFreeEnergy(const InputParameters ¶meters)
Total free energy (both the bulk and gradient parts), where the bulk free energy has been defined in ...
const VariableValue & _additional_free_energy
Additional free energy contribution.
const MaterialProperty< Real > & _F
Bulk free energy material property.
registerMooseObject("PhaseFieldApp", TotalFreeEnergy)
std::vector< const MaterialProperty< Real > * > _kappas
Gradient interface free energy coefficients.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
virtual Real computeValue()
void mooseError(Args &&... args) const
const std::vector< const VariableGradient * > _grad_vars
static InputParameters validParams()
std::vector< MaterialPropertyName > _kappa_names
Gradient free energy prefactor kappa.