MFEMVectorProjectionAux

Overview

AuxKernel for projecting a vector coefficient onto a vector auxiliary variable in, e.g., or .

Note that MFEMGradAux and MFEMCurlAux should be preferred over projection of vector coefficients representing the gradient of scalar variables and curl of vector variables respectively where available for performance reasons.

Example Input File Syntax

[AuxKernels<<<{"href": "../../../syntax/AuxKernels/index.html"}>>>]
  [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."}>>> = J_source
  []
  [GAz]
    type = MFEMGradAux<<<{"description": "Calculates the gradient of an H1 conforming source variable and stores the result on an H(curl) conforming ND result auxvariable", "href": "MFEMGradAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = GAz
    source<<<{"description": "Scalar H1 MFEMVariable to take the gradient of."}>>> = Az
  []
  [GAz(copy)]
    type = MFEMVectorProjectionAux<<<{"description": "Projects a vector coefficient onto a vector MFEM auxvariable.", "href": "MFEMVectorProjectionAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = GAz(copy)
    vector_coefficient<<<{"description": "Name of the vector coefficient to project. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a numeric vector value (enclosed in curly braces)."}>>> = GAz
  []
[]
(test/tests/mfem/auxkernels/projection.i)

Input Parameters

  • 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

  • vector_coefficientName of the vector coefficient to project. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a numeric vector value (enclosed in curly braces).

    C++ Type:MFEMVectorCoefficientName

    Controllable:No

    Description:Name of the vector coefficient to project. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a numeric vector value (enclosed in curly braces).

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, 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