- fespaceH(div) FESpace to use in HypreADS setup.
C++ Type:MFEMFESpaceName
Controllable:No
Description:H(div) FESpace to use in HypreADS setup.
- low_order_refinedFalseSet usage of Low-Order Refined solver.
Default:False
C++ Type:bool
Controllable:No
Description:Set usage of Low-Order Refined solver.
- print_level2Set the solver verbosity.
Default:2
C++ Type:int
Controllable:No
Description:Set the solver verbosity.
MFEMHypreADS
Overview
Defines and builds an mfem::HypreADS solver to use as a preconditioner or solver to solve the MFEM equation system. Most effective for preconditioning and solving a grad-divergence problem when using Raviart-Thomas elements, in which case the FE space should be passed to the mfem::HypreADS solver during construction.
A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter "low_order_refined" to true. Using an LOR solver improves performance for high polynomial order systems.
Example Input File Syntax
[FESpaces<<<{"href": "../../../syntax/FESpaces/index.html"}>>>]
[HDivFESpace]
type = MFEMVectorFESpace<<<{"description": "Convenience class to construct vector finite element spaces, abstracting away some of the mathematical complexity of specifying the dimensions.", "href": "../fespaces/MFEMVectorFESpace.html"}>>>
fec_type<<<{"description": "Specifies the family of FE shape functions."}>>> = RT
fec_order<<<{"description": "Order of the FE shape function to use."}>>> = CONSTANT
ordering<<<{"description": "Ordering style to use for vector DoFs."}>>> = "vdim"
[]
[]
[Preconditioner<<<{"href": "../../../syntax/Preconditioner/index.html"}>>>]
[ADS]
type = MFEMHypreADS<<<{"description": "Hypre auxiliary-space divergence solver and preconditioner for the iterative solution of MFEM equation systems.", "href": "MFEMHypreADS.html"}>>>
fespace<<<{"description": "H(div) FESpace to use in HypreADS setup."}>>> = HDivFESpace
[]
[]
[Solver<<<{"href": "../../../syntax/Solver/index.html"}>>>]
type = MFEMCGSolver
preconditioner = ADS
l_tol = 1e-16
l_max_its = 1000
print_level = 2
[](test/tests/mfem/kernels/graddiv.i)Input 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.