MFEMMeridionalCurlAux

Overview

In cylindrical coordinates , the curl of a purely azimuthal and axisymmetric field, , is

This auxkernel computes this quantity for a 2D meridional formulation represented on a Cartesian mesh with coordinate convention and projects the resulting field in a vector MFEM auxiliary variable.

This auxkernel is useful, e.g., in axisymmetric electromagnetic calculations to compute the magnetic flux density from , representing the azimuthal component of the magnetic vector potential .

Example Input File Syntax

[AuxKernels<<<{"href": "../../../syntax/AuxKernels/index.html"}>>>]
  [B_from_Atheta]
    type = MFEMMeridionalCurlAux<<<{"description": "Calculates the meridional curl associated with an azimuthal scalar variable A_theta on a 2D meridional mesh with x = r and y = z, and stores the result in a vector MFEM auxvariable.", "href": "MFEMMeridionalCurlAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = B
    source<<<{"description": "Scalar H1 MFEMVariable storing A_theta."}>>> = Atheta
  []
  [J]
    type = MFEMScalarProjectionAux<<<{"description": "Projects a scalar coefficient onto a scalar MFEM auxvariable", "href": "MFEMScalarProjectionAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = J
    coefficient<<<{"description": "Name of the scalar coefficient to project. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = Jtheta
  []
[]
(test/tests/mfem/auxkernels/axisymmetric_magnetostatic.i)

Input Parameters

  • sourceScalar H1 MFEMVariable storing A_theta.

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:Scalar H1 MFEMVariable storing A_theta.

  • variableThe name of the variable that this object applies to

    C++ Type:AuxVariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:The name of the variable that this object applies to

Required Parameters

  • execute_onTIMESTEP_ENDThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:TIMESTEP_END

    C++ Type:ExecFlagEnum

    Options:XFEM_MARK, FORWARD, ADJOINT, HOMOGENEOUS_FORWARD, ADJOINT_TIMESTEP_BEGIN, ADJOINT_TIMESTEP_END, NONE, INITIAL, LINEAR, LINEAR_CONVERGENCE, NONLINEAR, NONLINEAR_CONVERGENCE, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, MULTIAPP_FIXED_POINT_CONVERGENCE, MULTISYSTEM_FIXED_POINT_ITERATION_END, FINAL, CUSTOM

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

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