MFEMNLCurlCurlKernel

Overview

Adds the domain integrator for integrating the non-linear form

where and is a scalar coefficient that may depend on the magnitude of the curl of the trial variable .

This term arises from the weak form of the curl curl operator

Example Input File Syntax

[Kernels<<<{"href": "../../../syntax/Kernels/index.html"}>>>]
  [dBdt]
    type = MFEMTimeDerivativeVectorFEMassKernel<<<{"description": "Adds the domain integrator to an MFEM problem for the bilinear form $(k \\dot{\\vec u}, \\vec v)_\\Omega$ arising from the weak form of the operator $k \\dot{\\vec u}$.", "href": "MFEMTimeDerivativeVectorFEMassKernel.html"}>>>
    variable<<<{"description": "Variable labelling the weak form this kernel is added to"}>>> = coil_induced_h_field
    coefficient<<<{"description": "Name of property k to multiply the integrator by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = permeability
  []
  [curlE]
    type = MFEMNLCurlCurlKernel<<<{"description": "Adds the domain integrator to an MFEM problem for the nonlinear form $(k(|\\vec \\nabla \\times \\vec u|) \\vec \\nabla \\times \\vec u, \\vec \\nabla \\times \\vec v)_\\Omega$ arising from the weak form of the non-linear operator $\\vec \\nabla \\times (k(|\\vec \\nabla \\times \\vec u|) \\vec \\nabla \\times \\vec u)$.", "href": "MFEMNLCurlCurlKernel.html"}>>>
    variable<<<{"description": "Variable labelling the weak form this kernel is added to"}>>> = coil_induced_h_field
    k_coefficient<<<{"description": "Name of the nonlinear coefficient $k(|\\vec\\nabla \\times \\vec u|)$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = resistivity
    curlu_dk_dcurlu_coefficient<<<{"description": "Name of the coefficient representing $|\\vec \\nabla \\times \\vec u| \\partial k(|\\nabla \\times \\vec u|)/\\partial |\\nabla \\times \\vec u|$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = j_dresistivity_dj
    block<<<{"description": "The list of subdomains (names or ids) that this object will be restricted to. Leave empty to apply to all subdomains."}>>> = ${conductor_domains}
  []
[]
(test/tests/mfem/submeshes/nl_hphi_magnetodynamic.i)

Input Parameters

  • blockThe list of subdomains (names or ids) that this object will be restricted to. Leave empty to apply to all subdomains.

    C++ Type:std::vector<SubdomainName>

    Controllable:No

    Description:The list of subdomains (names or ids) that this object will be restricted to. Leave empty to apply to all subdomains.

  • curlu_dk_dcurlu_coefficient0.Name of the coefficient representing $|\vec \nabla \times \vec u| \partial k(|\nabla \times \vec u|)/\partial |\nabla \times \vec u|$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

    Default:0.

    C++ Type:MFEMScalarCoefficientName

    Controllable:No

    Description:Name of the coefficient representing $|\vec \nabla \times \vec u| \partial k(|\nabla \times \vec u|)/\partial |\nabla \times \vec u|$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

  • k_coefficient1.Name of the nonlinear coefficient $k(|\vec\nabla \times \vec u|)$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

    Default:1.

    C++ Type:MFEMScalarCoefficientName

    Controllable:No

    Description:Name of the nonlinear coefficient $k(|\vec\nabla \times \vec u|)$. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

  • variableVariable labelling the weak form this kernel is added to

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:Variable labelling the weak form this kernel is added to

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files