10 #ifdef MOOSE_MFEM_ENABLED 23 "Adds the domain integrator to an MFEM problem for the nonlinear form " 24 "$(k(|\\vec \\nabla \\times \\vec u|) \\vec \\nabla \\times \\vec u, \\vec \\nabla \\times " 26 "arising from the weak form of the non-linear operator " 27 "$\\vec \\nabla \\times (k(|\\vec \\nabla \\times \\vec u|) \\vec \\nabla \\times \\vec " 29 params.
addParam<MFEMScalarCoefficientName>(
32 "Name of the nonlinear coefficient $k(|\\vec\\nabla \\times \\vec u|)$.");
33 params.
addParam<MFEMScalarCoefficientName>(
34 "curlu_dk_dcurlu_coefficient",
36 "Name of the coefficient representing " 37 "$|\\vec \\nabla \\times \\vec u| \\partial k(|\\nabla " 38 "\\times \\vec u|)/\\partial |\\nabla \\times \\vec u|$");
42 "Tolerance used for normalizing the curl vector when forming the Jacobian.");
48 _k_coef(getScalarCoefficient(
"k_coefficient")),
49 _curlu_dk_dcurlu_coef(getScalarCoefficient(
"curlu_dk_dcurlu_coefficient")),
50 _curlu_vec_coef(getVectorCoefficientByName(getTrialVariableName() +
"_curl")),
51 _curlu_zero_tol(getParam<mfem::real_t>(
"curlu_zero_tol"))
55 mfem::NonlinearFormIntegrator *
mfem::Coefficient & _curlu_dk_dcurlu_coef
mfem::Coefficient & _k_coef
registerMooseObject("MooseApp", MFEMNLCurlCurlKernel)
mfem::real_t _curlu_zero_tol
mfem::VectorCoefficient & _curlu_vec_coef
virtual mfem::NonlinearFormIntegrator * createNLIntegrator() override
MFEMNLCurlCurlKernel(const InputParameters ¶meters)
static InputParameters validParams()
Class to construct an MFEM integrator to apply to the equation system.
static InputParameters validParams()