MFEMInnerProductAux

Overview

AuxKernel for calculating the inner product of two vector fields and projecting the result onto an MFEM auxiliary variable in an L2 finite element space.

where and are the two vector fields and is an optional scaling coefficient.

Example Input File Syntax

[AuxKernels<<<{"href": "../../../syntax/AuxKernels/index.html"}>>>]
  inactive<<<{"description": "If specified blocks matching these identifiers will be skipped."}>>> = "joule_Q_aux"
  [curl]
    type = MFEMCurlAux<<<{"description": "Calculates the curl of an H(curl) conforming ND source variable and stores the result on an H(div) conforming RT result auxvariable", "href": "MFEMCurlAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = db_dt_field
    source<<<{"description": "Vector H(curl) MFEMVariable to take the curl of."}>>> = e_field
    scale_factor<<<{"description": "Factor to scale result auxvariable by."}>>> = -1.0
    execute_on<<<{"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."}>>> = TIMESTEP_END
  []
  [joule_Q_aux]
    type = MFEMInnerProductAux<<<{"description": "Projects $s \\vec u \\cdot \\vec v$ onto a scalar MFEM auxvariable", "href": "MFEMInnerProductAux.html"}>>>
    variable<<<{"description": "The name of the variable that this object applies to"}>>> = joule_heating
    first_source_vec<<<{"description": "Vector coefficient. 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)."}>>> = e_field
    second_source_vec<<<{"description": "Vector coefficient. 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)."}>>> = e_field
    execute_on<<<{"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."}>>> = TIMESTEP_END
  []
[]
(test/tests/mfem/kernels/curlcurl.i)

Input Parameters

  • first_source_vecVector coefficient. 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:Vector coefficient. 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).

  • second_source_vecVector coefficient. 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:Vector coefficient. 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).

  • 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

  • coefficient1.Name of scalar coefficient s to scale the inner product by. 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 scalar coefficient s to scale the inner product by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

  • 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