diff --git a/.gitignore b/.gitignore index d87be6b9c28c..bb99cfc3741f 100644 --- a/.gitignore +++ b/.gitignore @@ -229,6 +229,7 @@ framework/contrib/asio/ *.cpr *.cpa.gz-* *.cpr-* +*_cp/ # Ignore petsc arch petsc/arch-*/* diff --git a/framework/doc/content/source/mfem/actions/AddMFEMPreconditionerAction.md b/framework/doc/content/source/mfem/actions/AddMFEMPreconditionerAction.md index 76464b295b50..d8c8ac4a575b 100644 --- a/framework/doc/content/source/mfem/actions/AddMFEMPreconditionerAction.md +++ b/framework/doc/content/source/mfem/actions/AddMFEMPreconditionerAction.md @@ -5,7 +5,7 @@ ## Overview Action called to add a linear preconditioner to an MFEM problem, parsing content inside a -[`Preconditioner`](source/mfem/solvers/MFEMSolverBase.md) block in the user input. Only has an effect if +[`Preconditioner`](syntax/Preconditioner/index.md) block in the user input. Only has an effect if the `Problem` type is set to [`MFEMProblem`](source/mfem/problem/MFEMProblem.md). ## Example Input File Syntax diff --git a/framework/doc/content/source/mfem/actions/AddMFEMSolverAction.md b/framework/doc/content/source/mfem/actions/AddMFEMSolverAction.md index 4419bdb66732..71d737d67e01 100644 --- a/framework/doc/content/source/mfem/actions/AddMFEMSolverAction.md +++ b/framework/doc/content/source/mfem/actions/AddMFEMSolverAction.md @@ -4,15 +4,15 @@ ## Overview -Action called to add a linear solver to an MFEM problem, parsing content inside a -[`Solver`](source/mfem/solvers/MFEMSolverBase.md) block in the user input. Only has an effect if the +Action called to add an MFEM solver object to an MFEM problem, parsing content inside a +[`Solvers`](syntax/Solvers/index.md) block in the user input. Only has an effect if the `Problem` type is set to [`MFEMProblem`](source/mfem/problem/MFEMProblem.md). ## Example Input File Syntax -!listing test/tests/mfem/kernels/curlcurl.i block=Problem FESpaces Preconditioner Solver +!listing test/tests/mfem/kernels/curlcurl.i block=Problem FESpaces Preconditioner Solvers -!syntax parameters /Solver/AddMFEMSolverAction +!syntax parameters /Solvers/AddMFEMSolverAction !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMCGSolver.md b/framework/doc/content/source/mfem/solvers/MFEMCGSolver.md index eaca8fb72d1f..8f31c445d977 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMCGSolver.md +++ b/framework/doc/content/source/mfem/solvers/MFEMCGSolver.md @@ -8,14 +8,14 @@ Defines and builds an `mfem::CGSolver` solver to use as an iterative solver to s equation system. Compatible with use on partially assembled equation systems. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMCGSolver/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMCGSolver/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMCGSolver +!syntax parameters /Solvers/MFEMCGSolver -!syntax inputs /Solver/MFEMCGSolver +!syntax inputs /Solvers/MFEMCGSolver -!syntax children /Solver/MFEMCGSolver +!syntax children /Solvers/MFEMCGSolver !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMGMRESSolver.md b/framework/doc/content/source/mfem/solvers/MFEMGMRESSolver.md index 19b412a95467..254b894cdee7 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMGMRESSolver.md +++ b/framework/doc/content/source/mfem/solvers/MFEMGMRESSolver.md @@ -8,14 +8,14 @@ Defines and builds an `mfem::GMRESSolver` solver to use as an iterative solver t equation system. Compatible with use on partially assembled equation systems. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMGMRESSolver/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMGMRESSolver/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMGMRESSolver +!syntax parameters /Solvers/MFEMGMRESSolver -!syntax inputs /Solver/MFEMGMRESSolver +!syntax inputs /Solvers/MFEMGMRESSolver -!syntax children /Solver/MFEMGMRESSolver +!syntax children /Solvers/MFEMGMRESSolver !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHypreADS.md b/framework/doc/content/source/mfem/solvers/MFEMHypreADS.md index 254ff0830537..f02dd199609e 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHypreADS.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHypreADS.md @@ -10,18 +10,18 @@ Raviart-Thomas elements, in which case the $H(\mathrm{div})$ FE space should be `mfem::HypreADS` solver during construction. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHypreADS/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHypreADS/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. ## Example Input File Syntax -!listing test/tests/mfem/kernels/graddiv.i block=FESpace Preconditioner Solver +!listing test/tests/mfem/kernels/graddiv.i block=FESpace Preconditioner Solvers -!syntax parameters /Solver/MFEMHypreADS +!syntax parameters /Solvers/MFEMHypreADS -!syntax inputs /Solver/MFEMHypreADS +!syntax inputs /Solvers/MFEMHypreADS -!syntax children /Solver/MFEMHypreADS +!syntax children /Solvers/MFEMHypreADS !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHypreAMS.md b/framework/doc/content/source/mfem/solvers/MFEMHypreAMS.md index 4c712f6bbefe..0c09e8ca5a6c 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHypreAMS.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHypreAMS.md @@ -14,18 +14,18 @@ magnetic vector potential in magnetostatic systems in the steady state - users s `singular` parameter to `true` to add a small mass term to ensure solvability. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHypreAMS/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHypreAMS/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. ## Example Input File Syntax -!listing test/tests/mfem/kernels/curlcurl.i block=FESpace Preconditioner Solver +!listing test/tests/mfem/kernels/curlcurl.i block=FESpace Preconditioner Solvers -!syntax parameters /Solver/MFEMHypreAMS +!syntax parameters /Solvers/MFEMHypreAMS -!syntax inputs /Solver/MFEMHypreAMS +!syntax inputs /Solvers/MFEMHypreAMS -!syntax children /Solver/MFEMHypreAMS +!syntax children /Solvers/MFEMHypreAMS !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHypreBoomerAMG.md b/framework/doc/content/source/mfem/solvers/MFEMHypreBoomerAMG.md index 418ceaa8c62d..77643b10d22b 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHypreBoomerAMG.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHypreBoomerAMG.md @@ -7,18 +7,18 @@ Defines and builds an `mfem::HypreBoomerAMG` solver to use as a preconditioner or solver to solve the MFEM equation system. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHypreBoomerAMG/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHypreBoomerAMG/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. ## Example Input File Syntax -!listing test/tests/mfem/kernels/diffusion.i block=Preconditioner Solver +!listing test/tests/mfem/kernels/diffusion.i block=Preconditioner Solvers -!syntax parameters /Solver/MFEMHypreBoomerAMG +!syntax parameters /Solvers/MFEMHypreBoomerAMG -!syntax inputs /Solver/MFEMHypreBoomerAMG +!syntax inputs /Solvers/MFEMHypreBoomerAMG -!syntax children /Solver/MFEMHypreBoomerAMG +!syntax children /Solvers/MFEMHypreBoomerAMG !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHypreFGMRES.md b/framework/doc/content/source/mfem/solvers/MFEMHypreFGMRES.md index fd0194b4ef64..95a628929fa7 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHypreFGMRES.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHypreFGMRES.md @@ -9,14 +9,14 @@ Defines and builds an `mfem::HypreFGMRES` solver to use as an iterative solver t Not compatible with use on partially assembled equation systems. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHypreFGMRES/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHypreFGMRES/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMHypreFGMRES +!syntax parameters /Solvers/MFEMHypreFGMRES -!syntax inputs /Solver/MFEMHypreFGMRES +!syntax inputs /Solvers/MFEMHypreFGMRES -!syntax children /Solver/MFEMHypreFGMRES +!syntax children /Solvers/MFEMHypreFGMRES !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHypreGMRES.md b/framework/doc/content/source/mfem/solvers/MFEMHypreGMRES.md index 562b9368b86c..000583cb102b 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHypreGMRES.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHypreGMRES.md @@ -10,14 +10,14 @@ equation system. Not compatible with use on partially assembled equation systems. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHypreGMRES/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHypreGMRES/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMHypreGMRES +!syntax parameters /Solvers/MFEMHypreGMRES -!syntax inputs /Solver/MFEMHypreGMRES +!syntax inputs /Solvers/MFEMHypreGMRES -!syntax children /Solver/MFEMHypreGMRES +!syntax children /Solvers/MFEMHypreGMRES !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMHyprePCG.md b/framework/doc/content/source/mfem/solvers/MFEMHyprePCG.md index 919e624f3a98..7b174bd29af5 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMHyprePCG.md +++ b/framework/doc/content/source/mfem/solvers/MFEMHyprePCG.md @@ -9,14 +9,14 @@ Defines and builds an `mfem::HyprePCG` solver to use as an iterative solver to s Not compatible with use on partially assembled equation systems. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMHyprePCG/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMHyprePCG/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMHyprePCG +!syntax parameters /Solvers/MFEMHyprePCG -!syntax inputs /Solver/MFEMHyprePCG +!syntax inputs /Solvers/MFEMHyprePCG -!syntax children /Solver/MFEMHyprePCG +!syntax children /Solvers/MFEMHyprePCG !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMMUMPS.md b/framework/doc/content/source/mfem/solvers/MFEMMUMPS.md index 63e56ca43dce..b946d5458975 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMMUMPS.md +++ b/framework/doc/content/source/mfem/solvers/MFEMMUMPS.md @@ -6,11 +6,11 @@ Defines and builds an `mfem::MUMPSSolver` to use as a direct solver to solve the MFEM equation system. -!syntax parameters /Solver/MFEMMUMPS +!syntax parameters /Solvers/MFEMMUMPS -!syntax inputs /Solver/MFEMMUMPS +!syntax inputs /Solvers/MFEMMUMPS -!syntax children /Solver/MFEMMUMPS +!syntax children /Solvers/MFEMMUMPS !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMNewtonNonlinearSolver.md b/framework/doc/content/source/mfem/solvers/MFEMNewtonNonlinearSolver.md new file mode 100644 index 000000000000..4752c76f0ad7 --- /dev/null +++ b/framework/doc/content/source/mfem/solvers/MFEMNewtonNonlinearSolver.md @@ -0,0 +1,23 @@ +# MFEMNewtonNonlinearSolver + +!if! function=hasCapability('mfem') + +## Overview + +Defines and builds an `mfem::NewtonSolver` to solve nonlinear MFEM equation systems. + +This solver requires Jacobian information from the MFEM operator and uses the externally configured +MFEM linear solver for the inner linear solves. + +Define this object in the [`Solvers`](syntax/Solvers/index.md) block. + +!syntax parameters /Solvers/MFEMNewtonNonlinearSolver + +!syntax inputs /Solvers/MFEMNewtonNonlinearSolver + +!syntax children /Solvers/MFEMNewtonNonlinearSolver + +!if-end! + +!else +!include mfem/mfem_warning.md diff --git a/framework/doc/content/source/mfem/solvers/MFEMOperatorJacobiSmoother.md b/framework/doc/content/source/mfem/solvers/MFEMOperatorJacobiSmoother.md index 2f9320973ad3..2c62799fe513 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMOperatorJacobiSmoother.md +++ b/framework/doc/content/source/mfem/solvers/MFEMOperatorJacobiSmoother.md @@ -8,14 +8,14 @@ Defines and builds an `mfem::OperatorJacobiSmoother` solver to use to perform Ja the MFEM equation system. Most often used as a preconditioner, compatible with partial assembly. A Low-Order-Refined (LOR) version of this solver may be used instead by setting the parameter -[!param](/Solver/MFEMOperatorJacobiSmoother/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial +[!param](/Solvers/MFEMOperatorJacobiSmoother/low_order_refined) to `true`. Using an LOR solver improves performance for high polynomial order systems. -!syntax parameters /Solver/MFEMOperatorJacobiSmoother +!syntax parameters /Solvers/MFEMOperatorJacobiSmoother -!syntax inputs /Solver/MFEMOperatorJacobiSmoother +!syntax inputs /Solvers/MFEMOperatorJacobiSmoother -!syntax children /Solver/MFEMOperatorJacobiSmoother +!syntax children /Solvers/MFEMOperatorJacobiSmoother !if-end! diff --git a/framework/doc/content/source/mfem/solvers/MFEMPetscNonlinearSolver.md b/framework/doc/content/source/mfem/solvers/MFEMPetscNonlinearSolver.md new file mode 100644 index 000000000000..c80ea104f48c --- /dev/null +++ b/framework/doc/content/source/mfem/solvers/MFEMPetscNonlinearSolver.md @@ -0,0 +1,27 @@ +# MFEMPetscNonlinearSolver + +!if! function=hasCapability('mfem') + +## Overview + +Defines and builds an `mfem::PetscNonlinearSolver` to solve nonlinear MFEM equation systems +through PETSc SNES. + +This solver currently requires Jacobian information from the MFEM operator and manages its own +internal PETSc KSP/PC stack rather than using an external MFEM linear solver. + +PETSc options may be supplied through the object parameters, and `petsc_options_prefix` controls +the prefix applied to the owned SNES object and its sub-objects. + +Define this object in the [`Solvers`](syntax/Solvers/index.md) block. + +!syntax parameters /Solvers/MFEMPetscNonlinearSolver + +!syntax inputs /Solvers/MFEMPetscNonlinearSolver + +!syntax children /Solvers/MFEMPetscNonlinearSolver + +!if-end! + +!else +!include mfem/mfem_warning.md diff --git a/framework/doc/content/source/mfem/solvers/MFEMSuperLU.md b/framework/doc/content/source/mfem/solvers/MFEMSuperLU.md index 0d845d51a083..3c26381afac3 100644 --- a/framework/doc/content/source/mfem/solvers/MFEMSuperLU.md +++ b/framework/doc/content/source/mfem/solvers/MFEMSuperLU.md @@ -6,11 +6,11 @@ Defines and builds an `mfem::SuperLUSolver` to use as a direct solver to solve the MFEM equation system. -!syntax parameters /Solver/MFEMSuperLU +!syntax parameters /Solvers/MFEMSuperLU -!syntax inputs /Solver/MFEMSuperLU +!syntax inputs /Solvers/MFEMSuperLU -!syntax children /Solver/MFEMSuperLU +!syntax children /Solvers/MFEMSuperLU !if-end! diff --git a/framework/doc/content/syntax/MFEM/index.md b/framework/doc/content/syntax/MFEM/index.md index 24c332f97613..02584b4bf6ed 100644 --- a/framework/doc/content/syntax/MFEM/index.md +++ b/framework/doc/content/syntax/MFEM/index.md @@ -69,11 +69,11 @@ Now we set up boundary conditions. Here, we choose scalar Dirichlet boundary con ### Solver and Executioner -With the equation system set up, we specify how it is to be solved. Firstly, we choose a preconditioner and solver. For problems with high polynomial order, setting [!param](/Solver/MFEMHypreGMRES/low_order_refined) to `true` may greatly increase performance, as explained [here](MFEMSolverBase.md). +With the equation system set up, we specify how it is to be solved. Firstly, we choose a preconditioner and solver. For problems with high polynomial order, setting [!param](/Solvers/MFEMHypreGMRES/low_order_refined) to `true` may greatly increase performance, as explained [here](MFEMSolverBase.md). While in principle any solver may be used as the main solver or preconditioner, the main limitation to keep in mind is that Hypre solvers may only be preconditioned by other Hypre solvers. Furthermore, when a Hypre solver has its `low_order_refined` parameter set to `true`, it ceases to be considered a Hypre solver for preconditioning purposes. -!listing test/tests/mfem/kernels/diffusion.i block=/Preconditioner Solver remove=jacobi +!listing test/tests/mfem/kernels/diffusion.i block=/Preconditioner Solvers remove=jacobi Static and time-dependent executioners may be implemented respectively with the [MFEMSteady.md] and [MFEMTransient.md] types. If MFEM-MOOSE has been built with GPU offloading capabilities, it is possible to set [!param](/Executioner/MFEMSteady/device) to `cuda` or `hip` to make use of GPU acceleration. For GPU runs, it is advisable to choose an [!param](/Executioner/MFEMSteady/assembly_level) other than `legacy`, otherwise the matrix assembly step will not be offloaded. The options for [!param](/Executioner/MFEMSteady/assembly_level) are `legacy`, `full`, `element`, `partial`, and `none` (the latter is only available if MFEM-MOOSE has been built with libCEED support). diff --git a/framework/doc/content/syntax/Solver/index.md b/framework/doc/content/syntax/Solver/index.md deleted file mode 100644 index 77668a95db4c..000000000000 --- a/framework/doc/content/syntax/Solver/index.md +++ /dev/null @@ -1,3 +0,0 @@ -# Solver - -The `Solver` syntax is used for constructing solvers for MFEM-based simulations. This syntax will likely disappear in favor of [syntax/Executioner/index.md] in the future. diff --git a/framework/doc/content/syntax/Solvers/index.md b/framework/doc/content/syntax/Solvers/index.md new file mode 100644 index 000000000000..a0947e56ee21 --- /dev/null +++ b/framework/doc/content/syntax/Solvers/index.md @@ -0,0 +1,71 @@ +# Solvers + +The `Solvers` syntax defines named solver objects for a simulation. +Each sub-block under `Solvers` constructs one solver MooseObject and +adds it to the problem during action setup. + +For MFEM-based problems, solver objects are used to configure both: + +- linear solves, such as Krylov methods +- nonlinear solves, such as Newton and PETSc SNES-backed solvers + +This syntax replaces the older singular `Solver` block. The plural +form is more flexible because a problem may need more than one solver +object at a time. Common examples include: + +- a linear solver together with a preconditioner +- a nonlinear solver that drives the global solve and a separate linear + solver used for Jacobian solves + +## Structure + +Each child block under `Solvers` names one solver object: + +```text +[Solvers] + [linear] + type = MFEMHypreGMRES + preconditioner = amg + l_tol = 1e-12 + [] + [nonlinear] + type = MFEMNewtonNonlinearSolver + rel_tol = 1e-8 + abs_tol = 1e-10 + [] +[] +``` + +The child block name is the object name. The `type` selects the solver +class and therefore the valid parameters for that block. + +## MFEM Usage + +For MFEM problems, solver objects are created through +`AddMFEMSolverAction` and stored directly on the `MFEMProblem`. Linear +and nonlinear solver objects share the same top-level syntax, but they +play different roles at solve time: + +- linear solver objects wrap `mfem::Solver` implementations used for + assembled linear systems +- nonlinear solver objects wrap nonlinear MFEM solve strategies, such + as `mfem::NewtonSolver` or `mfem::PetscNonlinearSolver` + +Some nonlinear solvers also depend on a separate linear solver. For +example, Newton requires a Jacobian solve. Others, such as the current +PETSc nonlinear wrapper, manage their own internal linear solver stack. + +## Why This Exists + +The old singular `Solver` syntax encoded the assumption that an MFEM +input would have one distinguished solver block. That stopped scaling +once MFEM nonlinear solver objects were added, because the problem +could legitimately require multiple solver objects at once. Moving to +`Solvers` makes the syntax consistent with that reality and keeps the +solver configuration extensible. + +## See Also + +- [MFEM solver base class](source/mfem/solvers/MFEMSolverBase.md) +- [MFEM Newton nonlinear solver](source/mfem/solvers/MFEMNewtonNonlinearSolver.md) +- [MFEM PETSc nonlinear solver](source/mfem/solvers/MFEMPetscNonlinearSolver.md) diff --git a/framework/include/base/MooseApp.h b/framework/include/base/MooseApp.h index 865818b27827..2863d8702dcb 100644 --- a/framework/include/base/MooseApp.h +++ b/framework/include/base/MooseApp.h @@ -66,7 +66,10 @@ class RelationshipManager; class SolutionInvalidity; class MultiApp; #ifdef MOOSE_MFEM_ENABLED -class MFEMProblemSolve; +namespace Moose::MFEM +{ +class ProblemSolve; +} #endif namespace libMesh @@ -1082,7 +1085,7 @@ class MooseApp : public PerfGraphInterface, public libMesh::ParallelObject, publ * Create/configure the MFEM device with the provided \p device_string. More than one device can * be configured. If supplying multiple devices, they should be comma separated */ - void setMFEMDevice(const std::string & device_string, Moose::PassKey); + void setMFEMDevice(const std::string & device_string, Moose::PassKey); /** * Get the MFEM device object diff --git a/framework/include/base/Registry.h b/framework/include/base/Registry.h index c2a1a7bab002..bdd7d3de3db0 100644 --- a/framework/include/base/Registry.h +++ b/framework/include/base/Registry.h @@ -48,6 +48,14 @@ #define registerADMooseObject(app, classname) registerMooseObject(app, classname) +/// Add a Moose::MFEM object to the registry. classname is the unqualified class name within the +/// Moose::MFEM namespace (e.g. DiffusionKernel). The C++ class is Moose::MFEM::classname and the +/// input file type is MFEMclassname (e.g. MFEMDiffusionKernel). +#define registerMooseMFEMObject(app, classname) \ + static char combineNames(dummyvar_for_registering_obj_MFEM##classname, __COUNTER__) = \ + Registry::add( \ + {app, "Moose::MFEM::" #classname, "", "MFEM" #classname, __FILE__, __LINE__, "", ""}) + /// Add a MooseObject to the registry with the given app name/label under an alternate alias/name /// (quoted string) instead of the classname. #define registerMooseObjectAliased(app, classname, alias) \ diff --git a/framework/include/mfem/actions/AddMFEMSolverAction.h b/framework/include/mfem/actions/AddMFEMSolverAction.h index 2dd4a48338e2..19f9519b4346 100644 --- a/framework/include/mfem/actions/AddMFEMSolverAction.h +++ b/framework/include/mfem/actions/AddMFEMSolverAction.h @@ -14,10 +14,12 @@ #include "MooseObjectAction.h" /** - * This class allows us to have a section of the input file like the following - * specifying the solver to use and the solve options. + * This class allows us to configure MFEM solver objects in the input file. * - * [Solver] + * [Solvers] + * [nl] + * type = Moose::MFEM::NewtonNonlinearSolver + * [] * [] */ class AddMFEMSolverAction : public MooseObjectAction diff --git a/framework/include/mfem/auxkernels/MFEMAuxKernel.h b/framework/include/mfem/auxkernels/MFEMAuxKernel.h index 5af39483be33..6c6b23902cf4 100644 --- a/framework/include/mfem/auxkernels/MFEMAuxKernel.h +++ b/framework/include/mfem/auxkernels/MFEMAuxKernel.h @@ -14,16 +14,18 @@ #include "MFEMExecutedObject.h" #include "MFEMContainers.h" +namespace Moose::MFEM +{ /** * Class to construct an auxiliary solver used to update a real auxvariable. */ -class MFEMAuxKernel : public MFEMExecutedObject +class AuxKernel : public ExecutedObject { public: static InputParameters validParams(); - MFEMAuxKernel(const InputParameters & parameters); - virtual ~MFEMAuxKernel() = default; + AuxKernel(const InputParameters & parameters); + virtual ~AuxKernel() = default; /// Method called to update any owned objects upon an FE space update virtual void update() {} @@ -41,4 +43,5 @@ class MFEMAuxKernel : public MFEMExecutedObject long _sequence{0}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexAuxKernel.h b/framework/include/mfem/auxkernels/MFEMComplexAuxKernel.h index dff234a4e101..3e7771dd5ed6 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexAuxKernel.h +++ b/framework/include/mfem/auxkernels/MFEMComplexAuxKernel.h @@ -14,16 +14,18 @@ #include "MFEMExecutedObject.h" #include "MFEMContainers.h" +namespace Moose::MFEM +{ /** * Class to construct an auxiliary solver used to update a complex auxvariable. */ -class MFEMComplexAuxKernel : public MFEMExecutedObject +class ComplexAuxKernel : public ExecutedObject { public: static InputParameters validParams(); - MFEMComplexAuxKernel(const InputParameters & parameters); - virtual ~MFEMComplexAuxKernel() = default; + ComplexAuxKernel(const InputParameters & parameters); + virtual ~ComplexAuxKernel() = default; /// Method called to update any owned objects upon an FE space update virtual void update() {}; @@ -50,4 +52,5 @@ class MFEMComplexAuxKernel : public MFEMExecutedObject long _sequence{0}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexCurlAux.h b/framework/include/mfem/auxkernels/MFEMComplexCurlAux.h index c48c11937643..c5525a50db20 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexCurlAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexCurlAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an H(div) auxvariable to be the curl of an H(curl) vector variable. */ -class MFEMComplexCurlAux : public MFEMComplexAuxKernel +class ComplexCurlAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexCurlAux(const InputParameters & parameters); + ComplexCurlAux(const InputParameters & parameters); - virtual ~MFEMComplexCurlAux() = default; + virtual ~ComplexCurlAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMComplexCurlAux : public MFEMComplexAuxKernel virtual void update() override; protected: - /// Name of source MFEMComplexVariable to take the curl of. + /// Name of source Moose::MFEM::ComplexVariable to take the curl of. const VariableName _source_var_name; /// Reference to source gridfunction. mfem::ParComplexGridFunction & _source_var; @@ -45,4 +47,5 @@ class MFEMComplexCurlAux : public MFEMComplexAuxKernel mfem::common::ParDiscreteCurlOperator _curl; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexDivAux.h b/framework/include/mfem/auxkernels/MFEMComplexDivAux.h index dc2be863ca23..b9145fb74966 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexDivAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexDivAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an L2 auxvariable to be the divergence of an H(div) vector variable. */ -class MFEMComplexDivAux : public MFEMComplexAuxKernel +class ComplexDivAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexDivAux(const InputParameters & parameters); + ComplexDivAux(const InputParameters & parameters); - virtual ~MFEMComplexDivAux() = default; + virtual ~ComplexDivAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMComplexDivAux : public MFEMComplexAuxKernel virtual void update() override; protected: - /// Name of source MFEMComplexVariable to take the divergence of. + /// Name of source Moose::MFEM::ComplexVariable to take the divergence of. const VariableName _source_var_name; /// Reference to source gridfunction. mfem::ParComplexGridFunction & _source_var; @@ -45,4 +47,5 @@ class MFEMComplexDivAux : public MFEMComplexAuxKernel mfem::common::ParDiscreteDivOperator _div; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexExteriorProductAux.h b/framework/include/mfem/auxkernels/MFEMComplexExteriorProductAux.h index dad147dfcf79..b0718d559986 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexExteriorProductAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexExteriorProductAux.h @@ -13,6 +13,8 @@ #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Project \f$ s \vec u \wedge \vec v* \f$ onto a complex vector MFEM auxvariable. * @@ -21,13 +23,13 @@ * - The target variable's FE Space must be L2. * - Currently supports only interior DOFs (no shared/constrained DOFs). */ -class MFEMComplexExteriorProductAux : public MFEMComplexAuxKernel +class ComplexExteriorProductAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexExteriorProductAux(const InputParameters & parameters); - ~MFEMComplexExteriorProductAux() override = default; + ComplexExteriorProductAux(const InputParameters & parameters); + ~ComplexExteriorProductAux() override = default; void execute() override; @@ -51,4 +53,5 @@ class MFEMComplexExteriorProductAux : public MFEMComplexAuxKernel mfem::VectorSumCoefficient _final_coef_imag; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/auxkernels/MFEMComplexGradAux.h b/framework/include/mfem/auxkernels/MFEMComplexGradAux.h index 5e4e2d51a713..6f5dd8b4bec0 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexGradAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexGradAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an H(curl) auxvariable to be the gradient of a complex H1 scalar variable. */ -class MFEMComplexGradAux : public MFEMComplexAuxKernel +class ComplexGradAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexGradAux(const InputParameters & parameters); + ComplexGradAux(const InputParameters & parameters); - virtual ~MFEMComplexGradAux() = default; + virtual ~ComplexGradAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMComplexGradAux : public MFEMComplexAuxKernel virtual void update() override; protected: - /// Name of source MFEMVariable to take the gradient of. + /// Name of source Moose::MFEM::Variable to take the gradient of. const VariableName _source_var_name; /// Reference to source gridfunction. mfem::ParComplexGridFunction & _source_var; @@ -46,4 +48,5 @@ class MFEMComplexGradAux : public MFEMComplexAuxKernel mfem::common::ParDiscreteGradOperator _grad; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexInnerProductAux.h b/framework/include/mfem/auxkernels/MFEMComplexInnerProductAux.h index f8f60d43228f..c7a574e83c4d 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexInnerProductAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexInnerProductAux.h @@ -13,6 +13,8 @@ #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Project \f$ s \vec u \cdot \vec v* \f$ onto a complex scalar MFEM auxvariable. * @@ -20,13 +22,13 @@ * - The target variable's FE Space must be L2. * - Currently supports only interior DOFs (no shared/constrained DOFs). */ -class MFEMComplexInnerProductAux : public MFEMComplexAuxKernel +class ComplexInnerProductAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexInnerProductAux(const InputParameters & parameters); - ~MFEMComplexInnerProductAux() override = default; + ComplexInnerProductAux(const InputParameters & parameters); + ~ComplexInnerProductAux() override = default; void execute() override; @@ -50,4 +52,5 @@ class MFEMComplexInnerProductAux : public MFEMComplexAuxKernel mfem::SumCoefficient _final_coef_imag; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/auxkernels/MFEMComplexScalarProjectionAux.h b/framework/include/mfem/auxkernels/MFEMComplexScalarProjectionAux.h index 554ca806cded..71669ccc4717 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexScalarProjectionAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexScalarProjectionAux.h @@ -13,17 +13,19 @@ #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Projects a scalar coefficient onto a scalar-valued auxvariable. */ -class MFEMComplexScalarProjectionAux : public MFEMComplexAuxKernel +class ComplexScalarProjectionAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexScalarProjectionAux(const InputParameters & parameters); + ComplexScalarProjectionAux(const InputParameters & parameters); - virtual ~MFEMComplexScalarProjectionAux() = default; + virtual ~ComplexScalarProjectionAux() = default; virtual void execute() override; @@ -34,4 +36,5 @@ class MFEMComplexScalarProjectionAux : public MFEMComplexAuxKernel mfem::Coefficient & _coef_imag; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexSumAux.h b/framework/include/mfem/auxkernels/MFEMComplexSumAux.h index 08733fb502c1..b806b1fae4cf 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexSumAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexSumAux.h @@ -19,14 +19,16 @@ /* * Class to scale and sum an arbitrary number of MFEM complex variables into an auxiliary variable. */ -class MFEMComplexSumAux : public MFEMComplexAuxKernel +namespace Moose::MFEM +{ +class ComplexSumAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexSumAux(const InputParameters & parameters); + ComplexSumAux(const InputParameters & parameters); - virtual ~MFEMComplexSumAux() = default; + virtual ~ComplexSumAux() = default; // Computes the auxvariable. virtual void execute() override; @@ -42,4 +44,5 @@ class MFEMComplexSumAux : public MFEMComplexAuxKernel std::vector _summed_vars; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMComplexVectorProjectionAux.h b/framework/include/mfem/auxkernels/MFEMComplexVectorProjectionAux.h index ed0313389d85..7155f2604a95 100644 --- a/framework/include/mfem/auxkernels/MFEMComplexVectorProjectionAux.h +++ b/framework/include/mfem/auxkernels/MFEMComplexVectorProjectionAux.h @@ -13,17 +13,19 @@ #include "MFEMComplexAuxKernel.h" +namespace Moose::MFEM +{ /** * Projects a vector coefficient onto a vector-valued auxvariable. */ -class MFEMComplexVectorProjectionAux : public MFEMComplexAuxKernel +class ComplexVectorProjectionAux : public ComplexAuxKernel { public: static InputParameters validParams(); - MFEMComplexVectorProjectionAux(const InputParameters & parameters); + ComplexVectorProjectionAux(const InputParameters & parameters); - virtual ~MFEMComplexVectorProjectionAux() = default; + virtual ~ComplexVectorProjectionAux() = default; virtual void execute() override; @@ -34,4 +36,5 @@ class MFEMComplexVectorProjectionAux : public MFEMComplexAuxKernel mfem::VectorCoefficient & _vec_coef_imag; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMCrossProductAux.h b/framework/include/mfem/auxkernels/MFEMCrossProductAux.h index 97973c902552..f1131b181614 100644 --- a/framework/include/mfem/auxkernels/MFEMCrossProductAux.h +++ b/framework/include/mfem/auxkernels/MFEMCrossProductAux.h @@ -13,6 +13,8 @@ #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Project \f$ s \vec u \times \vec v \f$ onto a vector MFEM auxvariable. * @@ -21,13 +23,13 @@ * - The target variable's FE Space must be L2. * - Currently supports only interior DOFs (no shared/constrained DOFs). */ -class MFEMCrossProductAux : public MFEMAuxKernel +class CrossProductAux : public AuxKernel { public: static InputParameters validParams(); - MFEMCrossProductAux(const InputParameters & parameters); - ~MFEMCrossProductAux() override = default; + CrossProductAux(const InputParameters & parameters); + ~CrossProductAux() override = default; void execute() override; @@ -39,4 +41,5 @@ class MFEMCrossProductAux : public MFEMAuxKernel mfem::ScalarVectorProductCoefficient _scaled_cross; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/auxkernels/MFEMCurlAux.h b/framework/include/mfem/auxkernels/MFEMCurlAux.h index 17febced1009..c8fd1f57544c 100644 --- a/framework/include/mfem/auxkernels/MFEMCurlAux.h +++ b/framework/include/mfem/auxkernels/MFEMCurlAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an H(div) auxvariable to be the curl of an H(curl) vector variable. */ -class MFEMCurlAux : public MFEMAuxKernel +class CurlAux : public AuxKernel { public: static InputParameters validParams(); - MFEMCurlAux(const InputParameters & parameters); + CurlAux(const InputParameters & parameters); - virtual ~MFEMCurlAux() = default; + virtual ~CurlAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMCurlAux : public MFEMAuxKernel virtual void update() override; protected: - /// Name of source MFEMVariable to take the curl of. + /// Name of source Moose::MFEM::Variable to take the curl of. const VariableName _source_var_name; /// Reference to source gridfunction. const mfem::ParGridFunction & _source_var; @@ -45,4 +47,5 @@ class MFEMCurlAux : public MFEMAuxKernel mfem::common::ParDiscreteCurlOperator _curl; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMDivAux.h b/framework/include/mfem/auxkernels/MFEMDivAux.h index fde6fde51d4a..72646e1111de 100644 --- a/framework/include/mfem/auxkernels/MFEMDivAux.h +++ b/framework/include/mfem/auxkernels/MFEMDivAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an L2 auxvariable to be the divergence of an H(div) vector variable. */ -class MFEMDivAux : public MFEMAuxKernel +class DivAux : public AuxKernel { public: static InputParameters validParams(); - MFEMDivAux(const InputParameters & parameters); + DivAux(const InputParameters & parameters); - virtual ~MFEMDivAux() = default; + virtual ~DivAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMDivAux : public MFEMAuxKernel virtual void update() override; protected: - /// Name of source MFEMVariable to take the divergence of. + /// Name of source Moose::MFEM::Variable to take the divergence of. const VariableName _source_var_name; /// Reference to source gridfunction. const mfem::ParGridFunction & _source_var; @@ -45,4 +47,5 @@ class MFEMDivAux : public MFEMAuxKernel mfem::common::ParDiscreteDivOperator _div; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMGradAux.h b/framework/include/mfem/auxkernels/MFEMGradAux.h index 95f0463e0d8f..35883d65d498 100644 --- a/framework/include/mfem/auxkernels/MFEMGradAux.h +++ b/framework/include/mfem/auxkernels/MFEMGradAux.h @@ -16,17 +16,19 @@ #include "libmesh/restore_warnings.h" #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Class to set an H(curl) auxvariable to be the gradient of a H1 scalar variable. */ -class MFEMGradAux : public MFEMAuxKernel +class GradAux : public AuxKernel { public: static InputParameters validParams(); - MFEMGradAux(const InputParameters & parameters); + GradAux(const InputParameters & parameters); - virtual ~MFEMGradAux() = default; + virtual ~GradAux() = default; /// Computes the auxvariable. virtual void execute() override; @@ -35,7 +37,7 @@ class MFEMGradAux : public MFEMAuxKernel virtual void update() override; protected: - /// Name of source MFEMVariable to take the gradient of. + /// Name of source Moose::MFEM::Variable to take the gradient of. const VariableName _source_var_name; /// Reference to source gridfunction. const mfem::ParGridFunction & _source_var; @@ -45,4 +47,5 @@ class MFEMGradAux : public MFEMAuxKernel mfem::common::ParDiscreteGradOperator _grad; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMInnerProductAux.h b/framework/include/mfem/auxkernels/MFEMInnerProductAux.h index 0a11da4220e5..80e8612f9c59 100644 --- a/framework/include/mfem/auxkernels/MFEMInnerProductAux.h +++ b/framework/include/mfem/auxkernels/MFEMInnerProductAux.h @@ -13,6 +13,8 @@ #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Project \f$ s \vec u \cdot \vec v \f$ onto a scalar MFEM auxvariable. * @@ -20,13 +22,13 @@ * - The target variable's FE Space must be L2. * - Currently supports only interior DOFs (no shared/constrained DOFs). */ -class MFEMInnerProductAux : public MFEMAuxKernel +class InnerProductAux : public AuxKernel { public: static InputParameters validParams(); - MFEMInnerProductAux(const InputParameters & parameters); - ~MFEMInnerProductAux() override = default; + InnerProductAux(const InputParameters & parameters); + ~InnerProductAux() override = default; void execute() override; @@ -38,4 +40,5 @@ class MFEMInnerProductAux : public MFEMAuxKernel mfem::ProductCoefficient _scaled_inner; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/auxkernels/MFEMScalarProjectionAux.h b/framework/include/mfem/auxkernels/MFEMScalarProjectionAux.h index 4ce28901c902..5299e8624ec8 100644 --- a/framework/include/mfem/auxkernels/MFEMScalarProjectionAux.h +++ b/framework/include/mfem/auxkernels/MFEMScalarProjectionAux.h @@ -13,17 +13,19 @@ #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Projects a scalar coefficient onto a scalar-valued auxvariable. */ -class MFEMScalarProjectionAux : public MFEMAuxKernel +class ScalarProjectionAux : public AuxKernel { public: static InputParameters validParams(); - MFEMScalarProjectionAux(const InputParameters & parameters); + ScalarProjectionAux(const InputParameters & parameters); - virtual ~MFEMScalarProjectionAux() = default; + virtual ~ScalarProjectionAux() = default; virtual void execute() override; @@ -32,4 +34,5 @@ class MFEMScalarProjectionAux : public MFEMAuxKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMScalarTimeAverageAux.h b/framework/include/mfem/auxkernels/MFEMScalarTimeAverageAux.h index 4536dc98c17e..c8b111364b43 100644 --- a/framework/include/mfem/auxkernels/MFEMScalarTimeAverageAux.h +++ b/framework/include/mfem/auxkernels/MFEMScalarTimeAverageAux.h @@ -13,20 +13,22 @@ #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * AuxKernel to compute a running time average of a scalar coefficient * using a linear blend. * * avg_new(x) = (1 - w) * avg_old(x) + w * src(x), w = dt / (t - s), t > s */ -class MFEMScalarTimeAverageAux : public MFEMAuxKernel +class ScalarTimeAverageAux : public AuxKernel { public: static InputParameters validParams(); - MFEMScalarTimeAverageAux(const InputParameters & parameters); + ScalarTimeAverageAux(const InputParameters & parameters); - virtual ~MFEMScalarTimeAverageAux() override = default; + virtual ~ScalarTimeAverageAux() override = default; /// Computes the auxvariable. virtual void execute() override; @@ -46,4 +48,5 @@ class MFEMScalarTimeAverageAux : public MFEMAuxKernel const Real & _dt; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMSumAux.h b/framework/include/mfem/auxkernels/MFEMSumAux.h index 3b6fd58b5b82..4b20eddc6c3d 100644 --- a/framework/include/mfem/auxkernels/MFEMSumAux.h +++ b/framework/include/mfem/auxkernels/MFEMSumAux.h @@ -19,14 +19,16 @@ /* * Class to scale and sum an arbitrary number of MFEM variables into an auxiliary variable. */ -class MFEMSumAux : public MFEMAuxKernel +namespace Moose::MFEM +{ +class SumAux : public AuxKernel { public: static InputParameters validParams(); - MFEMSumAux(const InputParameters & parameters); + SumAux(const InputParameters & parameters); - virtual ~MFEMSumAux() = default; + virtual ~SumAux() = default; // Computes the auxvariable. virtual void execute() override; @@ -40,4 +42,5 @@ class MFEMSumAux : public MFEMAuxKernel std::vector _summed_vars; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/auxkernels/MFEMVectorProjectionAux.h b/framework/include/mfem/auxkernels/MFEMVectorProjectionAux.h index 06180d413ade..fc7cabe86dbc 100644 --- a/framework/include/mfem/auxkernels/MFEMVectorProjectionAux.h +++ b/framework/include/mfem/auxkernels/MFEMVectorProjectionAux.h @@ -13,17 +13,19 @@ #include "MFEMAuxKernel.h" +namespace Moose::MFEM +{ /** * Projects a vector coefficient onto a vector-valued auxvariable. */ -class MFEMVectorProjectionAux : public MFEMAuxKernel +class VectorProjectionAux : public AuxKernel { public: static InputParameters validParams(); - MFEMVectorProjectionAux(const InputParameters & parameters); + VectorProjectionAux(const InputParameters & parameters); - virtual ~MFEMVectorProjectionAux() = default; + virtual ~VectorProjectionAux() = default; virtual void execute() override; @@ -32,4 +34,5 @@ class MFEMVectorProjectionAux : public MFEMAuxKernel mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/base/MFEMExecutedObject.h b/framework/include/mfem/base/MFEMExecutedObject.h index 9dbd3c17a7f2..8c44a77eee73 100644 --- a/framework/include/mfem/base/MFEMExecutedObject.h +++ b/framework/include/mfem/base/MFEMExecutedObject.h @@ -18,12 +18,12 @@ #include #include +namespace Moose::MFEM +{ /** * Base class for MFEM objects that participate in execution ordering but are not UserObjects. */ -class MFEMExecutedObject : public MFEMObject, - public SetupInterface, - public DependencyResolverInterface +class ExecutedObject : public Object, public SetupInterface, public DependencyResolverInterface { public: /** @@ -34,7 +34,7 @@ class MFEMExecutedObject : public MFEMObject, /** * Construct an executed MFEM object and materialize its dependency metadata. */ - MFEMExecutedObject(const InputParameters & parameters); + ExecutedObject(const InputParameters & parameters); /** * Perform any pre-execution setup for this object. @@ -109,9 +109,9 @@ class MFEMExecutedObject : public MFEMObject, template void -MFEMExecutedObject::addDependencyParam(InputParameters & params, - const std::string & param_name, - const std::string & doc_string) +ExecutedObject::addDependencyParam(InputParameters & params, + const std::string & param_name, + const std::string & doc_string) { params.addParam(param_name, doc_string); appendDependencyParam(params, param_name); @@ -119,12 +119,13 @@ MFEMExecutedObject::addDependencyParam(InputParameters & params, template void -MFEMExecutedObject::addRequiredDependencyParam(InputParameters & params, - const std::string & param_name, - const std::string & doc_string) +ExecutedObject::addRequiredDependencyParam(InputParameters & params, + const std::string & param_name, + const std::string & doc_string) { params.addRequiredParam(param_name, doc_string); appendDependencyParam(params, param_name); } +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/base/MFEMObject.h b/framework/include/mfem/base/MFEMObject.h index e3df626de3de..5abfd30dd5a7 100644 --- a/framework/include/mfem/base/MFEMObject.h +++ b/framework/include/mfem/base/MFEMObject.h @@ -17,16 +17,18 @@ #include "VectorPostprocessorInterface.h" #include "ReporterInterface.h" -class MFEMProblem; +namespace Moose::MFEM +{ +class Problem; /** * Thin base for MFEM objects backed directly by MooseObject instead of UserObject. */ -class MFEMObject : public MooseObject, - protected FunctionInterface, - protected PostprocessorInterface, - protected VectorPostprocessorInterface, - protected ReporterInterface +class Object : public MooseObject, + protected FunctionInterface, + protected PostprocessorInterface, + protected VectorPostprocessorInterface, + protected ReporterInterface { public: /** @@ -37,29 +39,31 @@ class MFEMObject : public MooseObject, /** * Construct an MFEM object backed directly by MooseObject. */ - MFEMObject(const InputParameters & parameters); + Object(const InputParameters & parameters); /** * Return the owning MFEM problem. */ - MFEMProblem & getMFEMProblem() { return _mfem_problem; } + Problem & getMFEMProblem() { return _mfem_problem; } /** * Return the owning MFEM problem. */ - const MFEMProblem & getMFEMProblem() const { return _mfem_problem; } + const Problem & getMFEMProblem() const { return _mfem_problem; } /** * Retrieve a scalar MFEM coefficient by its declared name. */ - mfem::Coefficient & getScalarCoefficientByName(const MFEMScalarCoefficientName & name); + mfem::Coefficient & getScalarCoefficientByName(const Moose::MFEM::ScalarCoefficientName & name); /** * Retrieve a vector MFEM coefficient by its declared name. */ - mfem::VectorCoefficient & getVectorCoefficientByName(const MFEMVectorCoefficientName & name); + mfem::VectorCoefficient & + getVectorCoefficientByName(const Moose::MFEM::VectorCoefficientName & name); /** * Retrieve a matrix MFEM coefficient by its declared name. */ - mfem::MatrixCoefficient & getMatrixCoefficientByName(const MFEMMatrixCoefficientName & name); + mfem::MatrixCoefficient & + getMatrixCoefficientByName(const Moose::MFEM::MatrixCoefficientName & name); /** * Retrieve a scalar MFEM coefficient using the value of an input parameter. */ @@ -75,7 +79,8 @@ class MFEMObject : public MooseObject, private: /// Owning MFEM problem for this object. - MFEMProblem & _mfem_problem; + Problem & _mfem_problem; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMBoundaryCondition.h b/framework/include/mfem/bcs/MFEMBoundaryCondition.h index 4042fde39095..031f4b6be03a 100644 --- a/framework/include/mfem/bcs/MFEMBoundaryCondition.h +++ b/framework/include/mfem/bcs/MFEMBoundaryCondition.h @@ -16,13 +16,15 @@ #include "MFEMContainers.h" #include "Function.h" -class MFEMBoundaryCondition : public MFEMObject, public MFEMBoundaryRestrictable +namespace Moose::MFEM +{ +class BoundaryCondition : public Object, public BoundaryRestrictable { public: static InputParameters validParams(); - MFEMBoundaryCondition(const InputParameters & parameters); - virtual ~MFEMBoundaryCondition() = default; + BoundaryCondition(const InputParameters & parameters); + virtual ~BoundaryCondition() = default; /// Get name of the test variable labelling the weak form this bc is added to const VariableName & getTestVariableName() const { return _test_var_name; } @@ -32,4 +34,5 @@ class MFEMBoundaryCondition : public MFEMObject, public MFEMBoundaryRestrictable const VariableName & _test_var_name; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMBoundaryIntegratedBC.h b/framework/include/mfem/bcs/MFEMBoundaryIntegratedBC.h index 34b0e7285381..e38f0b0b0298 100644 --- a/framework/include/mfem/bcs/MFEMBoundaryIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMBoundaryIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMBoundaryIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class BoundaryIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMBoundaryIntegratedBC(const InputParameters & parameters); + BoundaryIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator(); @@ -27,4 +29,5 @@ class MFEMBoundaryIntegratedBC : public MFEMIntegratedBC mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMBoundaryNormalIntegratedBC.h b/framework/include/mfem/bcs/MFEMBoundaryNormalIntegratedBC.h index 29a748ed16d0..c320174f639a 100644 --- a/framework/include/mfem/bcs/MFEMBoundaryNormalIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMBoundaryNormalIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMBoundaryNormalIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class BoundaryNormalIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMBoundaryNormalIntegratedBC(const InputParameters & parameters); + BoundaryNormalIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -27,4 +29,5 @@ class MFEMBoundaryNormalIntegratedBC : public MFEMIntegratedBC mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexEssentialBC.h b/framework/include/mfem/bcs/MFEMComplexEssentialBC.h index 74c067ae9838..b17431e4024a 100644 --- a/framework/include/mfem/bcs/MFEMComplexEssentialBC.h +++ b/framework/include/mfem/bcs/MFEMComplexEssentialBC.h @@ -13,13 +13,15 @@ #include "MFEMBoundaryCondition.h" -class MFEMComplexEssentialBC : public MFEMBoundaryCondition +namespace Moose::MFEM +{ +class ComplexEssentialBC : public BoundaryCondition { public: static InputParameters validParams(); - MFEMComplexEssentialBC(const InputParameters & parameters); - virtual ~MFEMComplexEssentialBC() = default; + ComplexEssentialBC(const InputParameters & parameters); + virtual ~ComplexEssentialBC() = default; /// Get name of the trial variable (gridfunction) the bc acts on. /// Defaults to the name of the test variable labelling the weak form. @@ -29,4 +31,5 @@ class MFEMComplexEssentialBC : public MFEMBoundaryCondition virtual void ApplyBC(mfem::ParComplexGridFunction & gridfunc) = 0; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexIntegratedBC.h b/framework/include/mfem/bcs/MFEMComplexIntegratedBC.h index 088aa5107499..4b326919aaaa 100644 --- a/framework/include/mfem/bcs/MFEMComplexIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMComplexIntegratedBC.h @@ -13,13 +13,15 @@ #include "MFEMIntegratedBC.h" -class MFEMComplexIntegratedBC : public MFEMBoundaryCondition +namespace Moose::MFEM +{ +class ComplexIntegratedBC : public BoundaryCondition { public: static InputParameters validParams(); - MFEMComplexIntegratedBC(const InputParameters & parameters); - virtual ~MFEMComplexIntegratedBC() = default; + ComplexIntegratedBC(const InputParameters & parameters); + virtual ~ComplexIntegratedBC() = default; virtual mfem::LinearFormIntegrator * getRealLFIntegrator() { @@ -38,16 +40,17 @@ class MFEMComplexIntegratedBC : public MFEMBoundaryCondition return _imag_bc->createBFIntegrator(); } - virtual void setRealBC(std::shared_ptr bc) { _real_bc = bc; } - virtual void setImagBC(std::shared_ptr bc) { _imag_bc = bc; } + virtual void setRealBC(std::shared_ptr bc) { _real_bc = bc; } + virtual void setImagBC(std::shared_ptr bc) { _imag_bc = bc; } /// Get name of the trial variable (gridfunction) the bc acts on. /// Defaults to the name of the test variable labelling the weak form. virtual const std::string & getTrialVariableName() const { return _test_var_name; } protected: - std::shared_ptr _real_bc{nullptr}; - std::shared_ptr _imag_bc{nullptr}; + std::shared_ptr _real_bc{nullptr}; + std::shared_ptr _imag_bc{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexScalarDirichletBC.h b/framework/include/mfem/bcs/MFEMComplexScalarDirichletBC.h index 2f0867d385fc..8bcd99470863 100644 --- a/framework/include/mfem/bcs/MFEMComplexScalarDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMComplexScalarDirichletBC.h @@ -13,12 +13,14 @@ #include "MFEMComplexEssentialBC.h" -class MFEMComplexScalarDirichletBC : public MFEMComplexEssentialBC +namespace Moose::MFEM +{ +class ComplexScalarDirichletBC : public ComplexEssentialBC { public: static InputParameters validParams(); - MFEMComplexScalarDirichletBC(const InputParameters & parameters); + ComplexScalarDirichletBC(const InputParameters & parameters); void ApplyBC(mfem::ParComplexGridFunction & gridfunc) override; @@ -27,4 +29,5 @@ class MFEMComplexScalarDirichletBC : public MFEMComplexEssentialBC mfem::Coefficient & _coef_imag; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexVectorDirichletBCBase.h b/framework/include/mfem/bcs/MFEMComplexVectorDirichletBCBase.h index 567d7fd37d3b..a7fbba63c99b 100644 --- a/framework/include/mfem/bcs/MFEMComplexVectorDirichletBCBase.h +++ b/framework/include/mfem/bcs/MFEMComplexVectorDirichletBCBase.h @@ -13,17 +13,20 @@ #include "MFEMComplexEssentialBC.h" -class MFEMComplexVectorDirichletBCBase : public MFEMComplexEssentialBC +namespace Moose::MFEM +{ +class ComplexVectorDirichletBCBase : public ComplexEssentialBC { public: static InputParameters validParams(); - ~MFEMComplexVectorDirichletBCBase() override = default; + ~ComplexVectorDirichletBCBase() override = default; protected: - MFEMComplexVectorDirichletBCBase(const InputParameters & parameters); + ComplexVectorDirichletBCBase(const InputParameters & parameters); mfem::VectorCoefficient & _vec_coef_real; mfem::VectorCoefficient & _vec_coef_imag; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexVectorNormalDirichletBC.h b/framework/include/mfem/bcs/MFEMComplexVectorNormalDirichletBC.h index c839fde42285..6edb219b2319 100644 --- a/framework/include/mfem/bcs/MFEMComplexVectorNormalDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMComplexVectorNormalDirichletBC.h @@ -13,13 +13,16 @@ #include "MFEMComplexVectorDirichletBCBase.h" -class MFEMComplexVectorNormalDirichletBC : public MFEMComplexVectorDirichletBCBase +namespace Moose::MFEM +{ +class ComplexVectorNormalDirichletBC : public ComplexVectorDirichletBCBase { public: static InputParameters validParams(); - MFEMComplexVectorNormalDirichletBC(const InputParameters & parameters); - ~MFEMComplexVectorNormalDirichletBC() override = default; + ComplexVectorNormalDirichletBC(const InputParameters & parameters); + ~ComplexVectorNormalDirichletBC() override = default; void ApplyBC(mfem::ParComplexGridFunction & gridfunc) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.h b/framework/include/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.h index fe4fe49a64d7..6dfe07647849 100644 --- a/framework/include/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.h @@ -13,13 +13,16 @@ #include "MFEMComplexVectorDirichletBCBase.h" -class MFEMComplexVectorTangentialDirichletBC : public MFEMComplexVectorDirichletBCBase +namespace Moose::MFEM +{ +class ComplexVectorTangentialDirichletBC : public ComplexVectorDirichletBCBase { public: static InputParameters validParams(); - MFEMComplexVectorTangentialDirichletBC(const InputParameters & parameters); - ~MFEMComplexVectorTangentialDirichletBC() override = default; + ComplexVectorTangentialDirichletBC(const InputParameters & parameters); + ~ComplexVectorTangentialDirichletBC() override = default; void ApplyBC(mfem::ParComplexGridFunction & gridfunc) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMConvectiveHeatFluxBC.h b/framework/include/mfem/bcs/MFEMConvectiveHeatFluxBC.h index f1a11588c388..2e71204fb7d2 100644 --- a/framework/include/mfem/bcs/MFEMConvectiveHeatFluxBC.h +++ b/framework/include/mfem/bcs/MFEMConvectiveHeatFluxBC.h @@ -13,17 +13,19 @@ #include "MFEMIntegratedBC.h" +namespace Moose::MFEM +{ /** * \f[ * (h (T-T_\infty), T') * \f] */ -class MFEMConvectiveHeatFluxBC : public MFEMIntegratedBC +class ConvectiveHeatFluxBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMConvectiveHeatFluxBC(const InputParameters & parameters); + ConvectiveHeatFluxBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -37,4 +39,5 @@ class MFEMConvectiveHeatFluxBC : public MFEMIntegratedBC mfem::ProductCoefficient & _external_heat_flux_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMEssentialBC.h b/framework/include/mfem/bcs/MFEMEssentialBC.h index 7085c4792169..e01706dd641c 100644 --- a/framework/include/mfem/bcs/MFEMEssentialBC.h +++ b/framework/include/mfem/bcs/MFEMEssentialBC.h @@ -13,13 +13,15 @@ #include "MFEMBoundaryCondition.h" -class MFEMEssentialBC : public MFEMBoundaryCondition +namespace Moose::MFEM +{ +class EssentialBC : public BoundaryCondition { public: static InputParameters validParams(); - MFEMEssentialBC(const InputParameters & parameters); - virtual ~MFEMEssentialBC() = default; + EssentialBC(const InputParameters & parameters); + virtual ~EssentialBC() = default; /// Get name of the trial variable (gridfunction) the bc acts on. /// Defaults to the name of the test variable labelling the weak form. @@ -29,4 +31,5 @@ class MFEMEssentialBC : public MFEMBoundaryCondition virtual void ApplyBC(mfem::GridFunction & gridfunc) = 0; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMIntegratedBC.h b/framework/include/mfem/bcs/MFEMIntegratedBC.h index c81b65bf8548..d146a3632d40 100644 --- a/framework/include/mfem/bcs/MFEMIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMIntegratedBC.h @@ -13,13 +13,15 @@ #include "MFEMBoundaryCondition.h" -class MFEMIntegratedBC : public MFEMBoundaryCondition +namespace Moose::MFEM +{ +class IntegratedBC : public BoundaryCondition { public: static InputParameters validParams(); - MFEMIntegratedBC(const InputParameters & parameters); - virtual ~MFEMIntegratedBC() = default; + IntegratedBC(const InputParameters & parameters); + virtual ~IntegratedBC() = default; /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator() { return nullptr; }; @@ -35,4 +37,5 @@ class MFEMIntegratedBC : public MFEMBoundaryCondition virtual const std::string & getTrialVariableName() const { return _test_var_name; } }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMNLConvectiveHeatFluxBC.h b/framework/include/mfem/bcs/MFEMNLConvectiveHeatFluxBC.h index f17e1c9d39c1..e8509a3ecd46 100644 --- a/framework/include/mfem/bcs/MFEMNLConvectiveHeatFluxBC.h +++ b/framework/include/mfem/bcs/MFEMNLConvectiveHeatFluxBC.h @@ -13,26 +13,36 @@ #include "MFEMIntegratedBC.h" +namespace Moose::MFEM +{ /** * \f[ * (h(T) (T-T_\infty), T') * \f] */ -class MFEMNLConvectiveHeatFluxBC : public MFEMIntegratedBC +class NLConvectiveHeatFluxBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMNLConvectiveHeatFluxBC(const InputParameters & parameters); + /// Construct the nonlinear convective heat flux boundary condition. + NLConvectiveHeatFluxBC(const InputParameters & parameters); /// Create MFEM non-linear integrator to apply to the LHS of the weak form. Ownership managed by the caller. virtual mfem::NonlinearFormIntegrator * createNLIntegrator() override; protected: + /// Heat transfer coefficient h(T). mfem::Coefficient & _heat_transfer_coef; + /// Derivative dh/dT of the heat transfer coefficient. mfem::Coefficient & _d_heat_transfer_dT_coef; + /// Derivative dT_inf/dT of the far-field temperature coefficient. + mfem::Coefficient & _d_T_inf_dT_coef; + /// Far-field temperature T_inf(T). mfem::Coefficient & _T_inf_coef; + /// Trial variable temperature T. mfem::Coefficient & _T_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMRWTE10IntegratedBC.h b/framework/include/mfem/bcs/MFEMRWTE10IntegratedBC.h index b14813f47816..36ebbf342ab0 100644 --- a/framework/include/mfem/bcs/MFEMRWTE10IntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMRWTE10IntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMComplexIntegratedBC.h" -class MFEMRWTE10IntegratedBC : public MFEMComplexIntegratedBC +namespace Moose::MFEM +{ +class RWTE10IntegratedBC : public ComplexIntegratedBC { public: static InputParameters validParams(); - MFEMRWTE10IntegratedBC(const InputParameters & parameters); + RWTE10IntegratedBC(const InputParameters & parameters); void RWTE10(const mfem::Vector & x, std::vector> & E); void RWTE10Real(const mfem::Vector & x, mfem::Vector & v); @@ -68,4 +70,5 @@ class MFEMRWTE10IntegratedBC : public MFEMComplexIntegratedBC std::unique_ptr _u_imag{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMScalarDirichletBC.h b/framework/include/mfem/bcs/MFEMScalarDirichletBC.h index 307ae1514b3c..ee01b9129fe9 100644 --- a/framework/include/mfem/bcs/MFEMScalarDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMScalarDirichletBC.h @@ -13,12 +13,14 @@ #include "MFEMEssentialBC.h" -class MFEMScalarDirichletBC : public MFEMEssentialBC +namespace Moose::MFEM +{ +class ScalarDirichletBC : public EssentialBC { public: static InputParameters validParams(); - MFEMScalarDirichletBC(const InputParameters & parameters); + ScalarDirichletBC(const InputParameters & parameters); void ApplyBC(mfem::GridFunction & gridfunc) override; @@ -26,4 +28,5 @@ class MFEMScalarDirichletBC : public MFEMEssentialBC mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorBoundaryIntegratedBC.h b/framework/include/mfem/bcs/MFEMVectorBoundaryIntegratedBC.h index 63804be390f6..2f641dc831b6 100644 --- a/framework/include/mfem/bcs/MFEMVectorBoundaryIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMVectorBoundaryIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMVectorBoundaryIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class VectorBoundaryIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMVectorBoundaryIntegratedBC(const InputParameters & parameters); + VectorBoundaryIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -27,4 +29,5 @@ class MFEMVectorBoundaryIntegratedBC : public MFEMIntegratedBC mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorDirichletBC.h b/framework/include/mfem/bcs/MFEMVectorDirichletBC.h index f6479e7db0fe..5f429d22fe56 100644 --- a/framework/include/mfem/bcs/MFEMVectorDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMVectorDirichletBC.h @@ -13,13 +13,16 @@ #include "MFEMVectorDirichletBCBase.h" -class MFEMVectorDirichletBC : public MFEMVectorDirichletBCBase +namespace Moose::MFEM +{ +class VectorDirichletBC : public VectorDirichletBCBase { public: static InputParameters validParams(); - MFEMVectorDirichletBC(const InputParameters & parameters); - ~MFEMVectorDirichletBC() override = default; + VectorDirichletBC(const InputParameters & parameters); + ~VectorDirichletBC() override = default; void ApplyBC(mfem::GridFunction & gridfunc) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorDirichletBCBase.h b/framework/include/mfem/bcs/MFEMVectorDirichletBCBase.h index 30806334aa05..942dfc3abe0a 100644 --- a/framework/include/mfem/bcs/MFEMVectorDirichletBCBase.h +++ b/framework/include/mfem/bcs/MFEMVectorDirichletBCBase.h @@ -13,16 +13,19 @@ #include "MFEMEssentialBC.h" -class MFEMVectorDirichletBCBase : public MFEMEssentialBC +namespace Moose::MFEM +{ +class VectorDirichletBCBase : public EssentialBC { public: static InputParameters validParams(); - ~MFEMVectorDirichletBCBase() override = default; + ~VectorDirichletBCBase() override = default; protected: - MFEMVectorDirichletBCBase(const InputParameters & parameters); + VectorDirichletBCBase(const InputParameters & parameters); mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.h b/framework/include/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.h index 0c01ece08853..3f4f250ae8eb 100644 --- a/framework/include/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMVectorFEBoundaryFluxIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class VectorFEBoundaryFluxIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMVectorFEBoundaryFluxIntegratedBC(const InputParameters & parameters); + VectorFEBoundaryFluxIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator(); @@ -27,4 +29,5 @@ class MFEMVectorFEBoundaryFluxIntegratedBC : public MFEMIntegratedBC mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.h b/framework/include/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.h index d6a7cbb81f33..378e937ad8f8 100644 --- a/framework/include/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMVectorFEBoundaryTangentIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class VectorFEBoundaryTangentIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMVectorFEBoundaryTangentIntegratedBC(const InputParameters & parameters); + VectorFEBoundaryTangentIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator(); @@ -27,4 +29,5 @@ class MFEMVectorFEBoundaryTangentIntegratedBC : public MFEMIntegratedBC mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorFEMassIntegratedBC.h b/framework/include/mfem/bcs/MFEMVectorFEMassIntegratedBC.h index 01d2d95bf315..5fc059f3ad92 100644 --- a/framework/include/mfem/bcs/MFEMVectorFEMassIntegratedBC.h +++ b/framework/include/mfem/bcs/MFEMVectorFEMassIntegratedBC.h @@ -13,12 +13,14 @@ #include "MFEMIntegratedBC.h" -class MFEMVectorFEMassIntegratedBC : public MFEMIntegratedBC +namespace Moose::MFEM +{ +class VectorFEMassIntegratedBC : public IntegratedBC { public: static InputParameters validParams(); - MFEMVectorFEMassIntegratedBC(const InputParameters & parameters); + VectorFEMassIntegratedBC(const InputParameters & parameters); /// Create MFEM integrator to apply to the LHS of the weak form. Ownership managed by the caller. virtual mfem::BilinearFormIntegrator * createBFIntegrator(); @@ -27,4 +29,5 @@ class MFEMVectorFEMassIntegratedBC : public MFEMIntegratedBC mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorNormalDirichletBC.h b/framework/include/mfem/bcs/MFEMVectorNormalDirichletBC.h index e621c30066a1..bd2a482be112 100644 --- a/framework/include/mfem/bcs/MFEMVectorNormalDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMVectorNormalDirichletBC.h @@ -13,13 +13,16 @@ #include "MFEMVectorDirichletBCBase.h" -class MFEMVectorNormalDirichletBC : public MFEMVectorDirichletBCBase +namespace Moose::MFEM +{ +class VectorNormalDirichletBC : public VectorDirichletBCBase { public: static InputParameters validParams(); - MFEMVectorNormalDirichletBC(const InputParameters & parameters); - ~MFEMVectorNormalDirichletBC() override = default; + VectorNormalDirichletBC(const InputParameters & parameters); + ~VectorNormalDirichletBC() override = default; void ApplyBC(mfem::GridFunction & gridfunc) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/bcs/MFEMVectorTangentialDirichletBC.h b/framework/include/mfem/bcs/MFEMVectorTangentialDirichletBC.h index 3c141d8d14e9..f907efbbde88 100644 --- a/framework/include/mfem/bcs/MFEMVectorTangentialDirichletBC.h +++ b/framework/include/mfem/bcs/MFEMVectorTangentialDirichletBC.h @@ -13,13 +13,16 @@ #include "MFEMVectorDirichletBCBase.h" -class MFEMVectorTangentialDirichletBC : public MFEMVectorDirichletBCBase +namespace Moose::MFEM +{ +class VectorTangentialDirichletBC : public VectorDirichletBCBase { public: static InputParameters validParams(); - MFEMVectorTangentialDirichletBC(const InputParameters & parameters); - ~MFEMVectorTangentialDirichletBC() override = default; + VectorTangentialDirichletBC(const InputParameters & parameters); + ~VectorTangentialDirichletBC() override = default; void ApplyBC(mfem::GridFunction & gridfunc) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/containers/MFEMContainers.h b/framework/include/mfem/containers/MFEMContainers.h index 9802bdabeb90..cea597c9c54f 100644 --- a/framework/include/mfem/containers/MFEMContainers.h +++ b/framework/include/mfem/containers/MFEMContainers.h @@ -225,11 +225,11 @@ class TimeDerivativeMap const std::string null_str; }; -using FECollections = Moose::MFEM::NamedFieldsMap; -using FESpaces = Moose::MFEM::NamedFieldsMap; -using SubMeshes = Moose::MFEM::NamedFieldsMap; -using GridFunctions = Moose::MFEM::NamedFieldsMap; -using ComplexGridFunctions = Moose::MFEM::NamedFieldsMap; +using FECollections = NamedFieldsMap; +using FESpaces = NamedFieldsMap; +using SubMeshes = NamedFieldsMap; +using GridFunctions = NamedFieldsMap; +using ComplexGridFunctions = NamedFieldsMap; } // namespace Moose::MFEM diff --git a/framework/include/mfem/equation_systems/ComplexEquationSystem.h b/framework/include/mfem/equation_systems/ComplexEquationSystem.h index 8c094bceba77..b4a014d2d229 100644 --- a/framework/include/mfem/equation_systems/ComplexEquationSystem.h +++ b/framework/include/mfem/equation_systems/ComplexEquationSystem.h @@ -49,13 +49,13 @@ class ComplexEquationSystem : public EquationSystem virtual void ApplyEssentialBCs() override; /// Add complex kernels - void AddComplexKernel(std::shared_ptr kernel); + void AddComplexKernel(std::shared_ptr kernel); /// Add complex integrated BCs - void AddComplexIntegratedBC(std::shared_ptr bc); + void AddComplexIntegratedBC(std::shared_ptr bc); /// Add complex essential BCs - void AddComplexEssentialBCs(std::shared_ptr bc); + void AddComplexEssentialBCs(std::shared_ptr bc); /// Form matrix-free representation of system operator. /// Used when EquationSystem assembly level is set to 'FULL', 'ELEMENT', 'PARTIAL', or 'NONE'. @@ -78,15 +78,13 @@ class ComplexEquationSystem : public EquationSystem const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & - kernels_map); + NamedFieldsMap>>> & kernels_map); /// Method for applying LinearFormIntegrators on domains from kernels to a ParComplexLinearForm inline void ApplyDomainLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & - kernels_map); + NamedFieldsMap>>> & kernels_map); /// Template method for applying BilinearFormIntegrators on boudaries from kernels to a SesquilinearForm template @@ -94,14 +92,14 @@ class ComplexEquationSystem : public EquationSystem const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map); /// Method for applying LinearFormIntegrators on boundaries from kernels to a ParComplexLinearForm inline void ApplyBoundaryLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map); // Complex Linear and Bilinear Forms @@ -109,13 +107,12 @@ class ComplexEquationSystem : public EquationSystem NamedFieldsMap _clfs; // Complex kernels and integrated BCs - NamedFieldsMap>>> - _cmplx_kernels_map; - NamedFieldsMap>>> + NamedFieldsMap>>> _cmplx_kernels_map; + NamedFieldsMap>>> _cmplx_integrated_bc_map; // Complex essential BCs - NamedFieldsMap>> _cmplx_essential_bc_map; + NamedFieldsMap>> _cmplx_essential_bc_map; /// Pointers to coupled variables not part of the reduced EquationSystem. ComplexGridFunctions _cmplx_eliminated_variables; @@ -124,7 +121,7 @@ class ComplexEquationSystem : public EquationSystem std::vector> _cmplx_var_ess_constraints; // Pointer to complex GridFunctions to enable updates during nonlinear iterations - Moose::MFEM::ComplexGridFunctions * _complex_gfuncs; + ComplexGridFunctions * _complex_gfuncs; }; template @@ -133,7 +130,7 @@ ComplexEquationSystem::ApplyDomainBLFIntegrators( const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map) + NamedFieldsMap>>> & kernels_map) { if (kernels_map.Has(test_var_name) && kernels_map.Get(test_var_name)->Has(trial_var_name)) { @@ -158,7 +155,7 @@ inline void ComplexEquationSystem::ApplyDomainLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map) + NamedFieldsMap>>> & kernels_map) { if (kernels_map.Has(test_var_name)) { @@ -185,7 +182,7 @@ ComplexEquationSystem::ApplyBoundaryBLFIntegrators( const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map) { if (integrated_bc_map.Has(test_var_name) && @@ -212,7 +209,7 @@ inline void ComplexEquationSystem::ApplyBoundaryLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map) { if (integrated_bc_map.Has(test_var_name)) diff --git a/framework/include/mfem/equation_systems/EquationSystem.h b/framework/include/mfem/equation_systems/EquationSystem.h index 05889f255131..2a26393d3d97 100644 --- a/framework/include/mfem/equation_systems/EquationSystem.h +++ b/framework/include/mfem/equation_systems/EquationSystem.h @@ -37,10 +37,10 @@ class EquationSystem : public mfem::Operator ~EquationSystem() override; /// Add kernels. - virtual void AddKernel(std::shared_ptr kernel); - virtual void AddIntegratedBC(std::shared_ptr kernel); + virtual void AddKernel(std::shared_ptr kernel); + virtual void AddIntegratedBC(std::shared_ptr kernel); /// Add BC associated with essentially constrained DoFs on boundaries. - virtual void AddEssentialBC(std::shared_ptr bc); + virtual void AddEssentialBC(std::shared_ptr bc); /// Initialise virtual void Init(GridFunctions & gridfunctions, @@ -53,17 +53,30 @@ class EquationSystem : public mfem::Operator void FormSystem(mfem::BlockVector & trueX, mfem::BlockVector & trueRHS); /// Compute residual y = Mu void Mult(const mfem::Vector & u, mfem::Vector & residual) const override; + /// Compute the contribution to the residual from nonlinear forms only. + virtual void ComputeNonlinearResidual(const mfem::Vector & u, mfem::Vector & residual) const; /// Get Jacobian at the provided vector of true DoFs of trial variables mfem::Operator & GetGradient(const mfem::Vector & u) const override; /// Update variable from solution vector after solve virtual void SetTrialVariablesFromTrueVectors(const mfem::BlockVector & trueX) const; + /// Set whether the nonlinear solver driving this equation system requires Jacobian information. + void SetSolverRequiresGradient(bool requires_gradient) + { + _solver_requires_gradient = requires_gradient; + } + // Test variables are associated with linear forms, // whereas trial variables are associated with gridfunctions. const std::vector & GetTrialVarNames() const { return _trial_var_names; } const std::vector & GetTestVarNames() const { return _test_var_names; } + /** + * @returns Whether nonlinear integrators are present + */ + bool nonlinear() const { return _non_linear; } + protected: /// Add coupled variable to EquationSystem. virtual void AddCoupledVariableNameIfMissing(const std::string & coupled_var_name); @@ -112,6 +125,7 @@ class EquationSystem : public mfem::Operator virtual void FormLinearSystem(mfem::OperatorHandle & op, mfem::BlockVector & trueX, mfem::BlockVector & trueRHS); + using mfem::Operator::FormSystemOperator; /// Form matrix-free representation of linear components of system operator. /// Used when EquationSystem assembly level is set to 'FULL', 'ELEMENT', 'PARTIAL', or 'NONE'. virtual void FormSystemOperator(mfem::OperatorHandle & op, @@ -134,39 +148,59 @@ class EquationSystem : public mfem::Operator const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map, + NamedFieldsMap>>> & kernels_map, std::optional scale_factor = std::nullopt); + /** + * Apply domain LinearFormIntegrators from kernels to the linear form associated with the + * supplied test variable. + */ void ApplyDomainLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map); + NamedFieldsMap>>> & kernels_map); + /** + * Apply domain NonlinearFormIntegrators from kernels to the nonlinear form associated with the + * supplied test variable. + */ void ApplyDomainNLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map, + NamedFieldsMap>>> & kernels_map, std::optional scale_factor = std::nullopt); + /** + * Template method for applying BilinearFormIntegrators on boundaries from integrated boundary + * conditions to a BilinearForm, or MixedBilinearForm. + */ template void ApplyBoundaryBLFIntegrators( const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map, std::optional scale_factor = std::nullopt); + /** + * Apply boundary LinearFormIntegrators from integrated boundary conditions to the linear form + * associated with the supplied test variable. + */ void ApplyBoundaryLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map); + /** + * Apply boundary NonlinearFormIntegrators from integrated boundary conditions to the nonlinear + * form associated with the supplied test variable. + */ void ApplyBoundaryNLFIntegrators( const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & + NamedFieldsMap>>> & integrated_bc_map, std::optional scale_factor = std::nullopt); @@ -180,7 +214,7 @@ class EquationSystem : public mfem::Operator /// Names of all coupled variables without a corresponding test variable. std::vector _eliminated_var_names; /// Pointers to coupled variables not part of the reduced EquationSystem. - Moose::MFEM::GridFunctions _eliminated_variables; + GridFunctions _eliminated_variables; /// Names of all test variables corresponding to linear forms in this equation system std::vector _test_var_names; /// Pointers to finite element spaces associated with test variables. @@ -201,13 +235,13 @@ class EquationSystem : public mfem::Operator mfem::Array2D _h_blocks, _jacobian_blocks; /// Arrays to store kernels to act on each component of weak form. /// Named according to test and trial variables. - NamedFieldsMap>>> _kernels_map; + NamedFieldsMap>>> _kernels_map; /// Arrays to store integrated BCs to act on each component of weak form. /// Named according to test and trial variables. - NamedFieldsMap>>> _integrated_bc_map; + NamedFieldsMap>>> _integrated_bc_map; /// Arrays to store essential BCs to act on each component of weak form. /// Named according to test variable. - NamedFieldsMap>> _essential_bc_map; + NamedFieldsMap>> _essential_bc_map; // Operator handle for the jacobian mutable mfem::OperatorHandle _jacobian; @@ -216,15 +250,17 @@ class EquationSystem : public mfem::Operator mfem::AssemblyLevel _assembly_level; // Pointer to GridFunctions to enable updates during nonlinear iterations - Moose::MFEM::GridFunctions * _gfuncs; + GridFunctions * _gfuncs; // Array storing block offsets of solution and residual vector mfem::Array _block_true_offsets; // Boolean indicating if EquationSystem contains nonlinear integrators bool _non_linear = false; + // Whether a nonlinear solver exists and whether it requires Jacobian/gradient information. + bool _solver_requires_gradient = false; private: friend class EquationSystemProblemOperator; - friend class ::MFEMProblemSolve; + friend class ProblemSolve; /// Disallowed inherited method using mfem::Operator::RecoverFEMSolution; }; @@ -235,7 +271,7 @@ EquationSystem::ApplyDomainBLFIntegrators( const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & kernels_map, + NamedFieldsMap>>> & kernels_map, std::optional scale_factor) { if (kernels_map.Has(test_var_name) && kernels_map.Get(test_var_name)->Has(trial_var_name)) @@ -257,63 +293,13 @@ EquationSystem::ApplyDomainBLFIntegrators( } } -inline void -EquationSystem::ApplyDomainLFIntegrators( - const std::string & test_var_name, - std::shared_ptr form, - NamedFieldsMap>>> & kernels_map) -{ - if (kernels_map.Has(test_var_name) && kernels_map.Get(test_var_name)->Has(test_var_name)) - { - auto kernels = kernels_map.GetRef(test_var_name).GetRef(test_var_name); - for (auto & kernel : kernels) - { - mfem::LinearFormIntegrator * integ = kernel->createLFIntegrator(); - - if (integ) - { - kernel->isSubdomainRestricted() - ? form->AddDomainIntegrator(std::move(integ), kernel->getSubdomainMarkers()) - : form->AddDomainIntegrator(std::move(integ)); - } - } - } -} - -inline void -EquationSystem::ApplyDomainNLFIntegrators( - const std::string & test_var_name, - std::shared_ptr form, - NamedFieldsMap>>> & kernels_map, - std::optional scale_factor) -{ - if (kernels_map.Has(test_var_name) && kernels_map.Get(test_var_name)->Has(test_var_name)) - { - auto kernels = kernels_map.GetRef(test_var_name).GetRef(test_var_name); - for (auto & kernel : kernels) - { - mfem::NonlinearFormIntegrator * integ = kernel->createNLIntegrator(); - if (integ) - { - _non_linear = true; - if (scale_factor.has_value()) - integ = new NLScaleIntegrator(integ, scale_factor.value(), true); - kernel->isSubdomainRestricted() - ? form->AddDomainIntegrator(std::move(integ), kernel->getSubdomainMarkers()) - : form->AddDomainIntegrator(std::move(integ)); - } - } - } -} - template void EquationSystem::ApplyBoundaryBLFIntegrators( const std::string & trial_var_name, const std::string & test_var_name, std::shared_ptr form, - NamedFieldsMap>>> & - integrated_bc_map, + NamedFieldsMap>>> & integrated_bc_map, std::optional scale_factor) { if (integrated_bc_map.Has(test_var_name) && @@ -336,59 +322,6 @@ EquationSystem::ApplyBoundaryBLFIntegrators( } } -inline void -EquationSystem::ApplyBoundaryLFIntegrators( - const std::string & test_var_name, - std::shared_ptr form, - NamedFieldsMap>>> & - integrated_bc_map) -{ - if (integrated_bc_map.Has(test_var_name) && - integrated_bc_map.Get(test_var_name)->Has(test_var_name)) - { - auto bcs = integrated_bc_map.GetRef(test_var_name).GetRef(test_var_name); - for (auto & bc : bcs) - { - mfem::LinearFormIntegrator * integ = bc->createLFIntegrator(); - - if (integ) - { - bc->isBoundaryRestricted() - ? form->AddBoundaryIntegrator(std::move(integ), bc->getBoundaryMarkers()) - : form->AddBoundaryIntegrator(std::move(integ)); - } - } - } -} - -inline void -EquationSystem::ApplyBoundaryNLFIntegrators( - const std::string & test_var_name, - std::shared_ptr form, - NamedFieldsMap>>> & - integrated_bc_map, - std::optional scale_factor) -{ - if (integrated_bc_map.Has(test_var_name) && - integrated_bc_map.Get(test_var_name)->Has(test_var_name)) - { - auto bcs = integrated_bc_map.GetRef(test_var_name).GetRef(test_var_name); - for (auto & bc : bcs) - { - mfem::NonlinearFormIntegrator * integ = bc->createNLIntegrator(); - if (integ) - { - _non_linear = true; - if (scale_factor.has_value()) - integ = new NLScaleIntegrator(integ, scale_factor.value(), true); - bc->isBoundaryRestricted() - ? form->AddBoundaryIntegrator(std::move(integ), bc->getBoundaryMarkers()) - : form->AddBoundaryIntegrator(std::move(integ)); - } - } - } -} - } // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/equation_systems/TimeDependentEquationSystem.h b/framework/include/mfem/equation_systems/TimeDependentEquationSystem.h index bc7a87669655..c310f3ec0ecd 100644 --- a/framework/include/mfem/equation_systems/TimeDependentEquationSystem.h +++ b/framework/include/mfem/equation_systems/TimeDependentEquationSystem.h @@ -21,10 +21,10 @@ namespace Moose::MFEM class TimeDependentEquationSystem : public EquationSystem { public: - TimeDependentEquationSystem(const Moose::MFEM::TimeDerivativeMap & time_derivative_map); + TimeDependentEquationSystem(const TimeDerivativeMap & time_derivative_map); virtual void SetTimeStep(mfem::real_t & dt) { _dt = dt; }; - virtual void AddKernel(std::shared_ptr kernel) override; + virtual void AddKernel(std::shared_ptr kernel) override; protected: virtual void BuildBilinearForms() override; @@ -35,15 +35,14 @@ class TimeDependentEquationSystem : public EquationSystem /// Timestep size mfem::real_t _dt; - Moose::MFEM::NamedFieldsMap>>> - _td_kernels_map; + NamedFieldsMap>>> _td_kernels_map; /// Containers to store contributions to weak form of the form (F du/dt, v) - Moose::MFEM::NamedFieldsMap _td_blfs; - Moose::MFEM::NamedFieldsMap> + NamedFieldsMap _td_blfs; + NamedFieldsMap> _td_mblfs; // named according to trial variable /// Map between variable names and their time derivatives - const Moose::MFEM::TimeDerivativeMap & _time_derivative_map; + const TimeDerivativeMap & _time_derivative_map; private: friend class TimeDependentEquationSystemProblemOperator; diff --git a/framework/include/mfem/executioners/MFEMProblemSolve.h b/framework/include/mfem/executioners/MFEMProblemSolve.h index 606b35f57597..9239dba45408 100644 --- a/framework/include/mfem/executioners/MFEMProblemSolve.h +++ b/framework/include/mfem/executioners/MFEMProblemSolve.h @@ -14,32 +14,31 @@ #include "ProblemOperatorBase.h" #include "SolveObject.h" -class MFEMProblem; class Executioner; -class MFEMProblemSolve : public SolveObject +namespace Moose::MFEM +{ +class Problem; + +class ProblemSolve : public SolveObject { public: static InputParameters validParams(); - MFEMProblemSolve( - Executioner & ex, - std::vector> & problem_operators); + ProblemSolve(Executioner & ex, + std::vector> & problem_operators); /** * Solve routine provided by this object. * @return True if solver is converged. Currently, this always will return true for - * MFEMProblemSolve. + * Moose::MFEM::ProblemSolve. */ virtual bool solve() override; protected: - MFEMProblem & _mfem_problem; - std::vector> & _problem_operators; - unsigned int _nl_max_its; - mfem::real_t _nl_abs_tol; - mfem::real_t _nl_rel_tol; - unsigned int _print_level; + Problem & _mfem_problem; + std::vector> & _problem_operators; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/executioners/MFEMSteady.h b/framework/include/mfem/executioners/MFEMSteady.h index e2e9f0403663..e9fbbbe1d81d 100644 --- a/framework/include/mfem/executioners/MFEMSteady.h +++ b/framework/include/mfem/executioners/MFEMSteady.h @@ -17,12 +17,14 @@ #include "EquationSystemProblemOperator.h" #include "ComplexEquationSystemProblemOperator.h" -class MFEMSteady : public Executioner, public Moose::MFEM::ProblemOperatorInterface +namespace Moose::MFEM +{ +class Steady : public Executioner, public ProblemOperatorInterface { public: static InputParameters validParams(); - explicit MFEMSteady(const InputParameters & params); + explicit Steady(const InputParameters & params); virtual void init() override; virtual void execute() override; @@ -31,9 +33,9 @@ class MFEMSteady : public Executioner, public Moose::MFEM::ProblemOperatorInterf virtual bool lastSolveConverged() const override { return _last_solve_converged; }; private: - MFEMProblem & _mfem_problem; - MFEMProblemData & _mfem_problem_data; - MFEMProblemSolve _mfem_problem_solve; + Problem & _mfem_problem; + ProblemData & _mfem_problem_data; + ProblemSolve _mfem_problem_solve; // Time variables used for consistency with MOOSE, needed for outputs. // Important for future synchronisation of solves in MultiApps @@ -45,4 +47,5 @@ class MFEMSteady : public Executioner, public Moose::MFEM::ProblemOperatorInterf bool _last_solve_converged; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/executioners/MFEMTransient.h b/framework/include/mfem/executioners/MFEMTransient.h index cd5184422098..770f41b1e688 100644 --- a/framework/include/mfem/executioners/MFEMTransient.h +++ b/framework/include/mfem/executioners/MFEMTransient.h @@ -16,17 +16,19 @@ #include "TimeDependentProblemOperator.h" #include "TransientBase.h" -class MFEMTransient : public TransientBase, public Moose::MFEM::ProblemOperatorInterface +namespace Moose::MFEM +{ +class Transient : public TransientBase, public ProblemOperatorInterface { public: static InputParameters validParams(); - explicit MFEMTransient(const InputParameters & params); + explicit Transient(const InputParameters & params); virtual void init() override; /// Return the solve object wrapped by time stepper - virtual SolveObject * timeStepSolveObject() override { return &_mfem_problem_solve; } + virtual SolveObject * timeStepSolveObject() override { return _fixed_point_solve.get(); } /// Do whatever is necessary to advance one step. virtual void takeStep(Real input_dt = -1.0) override; @@ -34,8 +36,9 @@ class MFEMTransient : public TransientBase, public Moose::MFEM::ProblemOperatorI /// Not supported for MFEM problems, so error if called. virtual Real relativeSolutionDifferenceNorm(bool /*check_aux*/) const override { - mooseError("MFEMTransient executioner does not yet support evaluating the relative solution " - "difference norm at each timestep."); + mooseError( + "Moose::MFEM::Transient executioner does not yet support evaluating the relative solution " + "difference norm at each timestep."); return 0.0; } @@ -46,9 +49,10 @@ class MFEMTransient : public TransientBase, public Moose::MFEM::ProblemOperatorI virtual std::vector getTimeIntegratorNames() const override { return {}; } private: - MFEMProblem & _mfem_problem; - MFEMProblemData & _mfem_problem_data; - MFEMProblemSolve _mfem_problem_solve; + Problem & _mfem_problem; + ProblemData & _mfem_problem_data; + ProblemSolve _mfem_problem_solve; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/fespaces/MFEMFESpace.h b/framework/include/mfem/fespaces/MFEMFESpace.h index ea15c0d06468..c01a6a1a6764 100644 --- a/framework/include/mfem/fespaces/MFEMFESpace.h +++ b/framework/include/mfem/fespaces/MFEMFESpace.h @@ -13,16 +13,18 @@ #include "MFEMObject.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParFiniteElementSpace object. Access using the * getFESpace() accessor. */ -class MFEMFESpace : public MFEMObject +class FESpace : public Object { public: static InputParameters validParams(); - MFEMFESpace(const InputParameters & parameters); + FESpace(const InputParameters & parameters); // Note: The simplest way to handle the boilerplate of constructing // FiniteElementCollection and FiniteElementSpace objects in the @@ -64,7 +66,7 @@ class MFEMFESpace : public MFEMObject virtual int getVDim() const = 0; /// Mesh FESpace is defined with respect to. May differ from main problem mesh if - /// FESpace is defined on an MFEMSubMesh. + /// FESpace is defined on an Moose::MFEM::SubMesh. mfem::ParMesh & _pmesh; private: @@ -79,4 +81,5 @@ class MFEMFESpace : public MFEMObject mutable std::shared_ptr _fespace{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/fespaces/MFEMGenericFESpace.h b/framework/include/mfem/fespaces/MFEMGenericFESpace.h index 5ee48bc8a887..c6d5536240ac 100644 --- a/framework/include/mfem/fespaces/MFEMGenericFESpace.h +++ b/framework/include/mfem/fespaces/MFEMGenericFESpace.h @@ -13,16 +13,18 @@ #include "MFEMFESpace.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParFiniteElementSpace object. Access using the * getFESpace() accessor. */ -class MFEMGenericFESpace : public MFEMFESpace +class GenericFESpace : public FESpace { public: static InputParameters validParams(); - MFEMGenericFESpace(const InputParameters & parameters); + GenericFESpace(const InputParameters & parameters); virtual bool isScalar() const override; @@ -44,4 +46,5 @@ class MFEMGenericFESpace : public MFEMFESpace const int _vdim; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/fespaces/MFEMScalarFESpace.h b/framework/include/mfem/fespaces/MFEMScalarFESpace.h index 3cea0c9b0585..554277e5ef6a 100644 --- a/framework/include/mfem/fespaces/MFEMScalarFESpace.h +++ b/framework/include/mfem/fespaces/MFEMScalarFESpace.h @@ -13,12 +13,14 @@ #include "MFEMSimplifiedFESpace.h" -class MFEMScalarFESpace : public MFEMSimplifiedFESpace +namespace Moose::MFEM +{ +class ScalarFESpace : public SimplifiedFESpace { public: static InputParameters validParams(); - MFEMScalarFESpace(const InputParameters & parameters); + ScalarFESpace(const InputParameters & parameters); virtual bool isScalar() const override { return true; } @@ -37,4 +39,5 @@ class MFEMScalarFESpace : public MFEMSimplifiedFESpace const std::string _fec_type; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/fespaces/MFEMSimplifiedFESpace.h b/framework/include/mfem/fespaces/MFEMSimplifiedFESpace.h index 78a397e35557..4ede8a637fd3 100644 --- a/framework/include/mfem/fespaces/MFEMSimplifiedFESpace.h +++ b/framework/include/mfem/fespaces/MFEMSimplifiedFESpace.h @@ -13,14 +13,16 @@ #include "MFEMFESpace.h" -/// Class with common parameters for MFEMVectorFESpace and -/// MFEMScalarFESpace. -class MFEMSimplifiedFESpace : public MFEMFESpace +/// Class with common parameters for Moose::MFEM::VectorFESpace and +/// Moose::MFEM::ScalarFESpace. +namespace Moose::MFEM +{ +class SimplifiedFESpace : public FESpace { public: static InputParameters validParams(); - MFEMSimplifiedFESpace(const InputParameters & parameters); + SimplifiedFESpace(const InputParameters & parameters); protected: /// Order of the basis functions in the finite element collection @@ -31,4 +33,5 @@ class MFEMSimplifiedFESpace : public MFEMFESpace int getProblemDim() const; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/fespaces/MFEMVectorFESpace.h b/framework/include/mfem/fespaces/MFEMVectorFESpace.h index f50d192bfa10..3b48ae45396a 100644 --- a/framework/include/mfem/fespaces/MFEMVectorFESpace.h +++ b/framework/include/mfem/fespaces/MFEMVectorFESpace.h @@ -13,12 +13,14 @@ #include "MFEMSimplifiedFESpace.h" -class MFEMVectorFESpace : public MFEMSimplifiedFESpace +namespace Moose::MFEM +{ +class VectorFESpace : public SimplifiedFESpace { public: static InputParameters validParams(); - MFEMVectorFESpace(const InputParameters & parameters); + VectorFESpace(const InputParameters & parameters); virtual bool isScalar() const override { return false; } @@ -40,4 +42,5 @@ class MFEMVectorFESpace : public MFEMSimplifiedFESpace const int _range_dim; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/functions/MFEMParsedFunction.h b/framework/include/mfem/functions/MFEMParsedFunction.h index 8d97f39a9371..11d7233db85c 100644 --- a/framework/include/mfem/functions/MFEMParsedFunction.h +++ b/framework/include/mfem/functions/MFEMParsedFunction.h @@ -30,8 +30,8 @@ class MFEMParsedFunction : public MooseParsedFunction, public FunctionParserUtil void initialSetup() override; protected: - /// reference to the MFEMProblem instance - MFEMProblem & _mfem_problem; + /// reference to the Moose::MFEM::Problem instance + Moose::MFEM::Problem & _mfem_problem; /// function parser object SymFunctionPtr _sym_function; /// coordinate and time variable names diff --git a/framework/include/mfem/functormaterials/MFEMFunctorMaterial.h b/framework/include/mfem/functormaterials/MFEMFunctorMaterial.h index 44f098a1fc07..6368118cc1b3 100644 --- a/framework/include/mfem/functormaterials/MFEMFunctorMaterial.h +++ b/framework/include/mfem/functormaterials/MFEMFunctorMaterial.h @@ -16,19 +16,20 @@ #include "MFEMBoundaryRestrictable.h" #include "CoefficientManager.h" -class MFEMFunctorMaterial : public MFEMObject, - public MFEMBlockRestrictable, - public MFEMBoundaryRestrictable +namespace Moose::MFEM +{ +class FunctorMaterial : public Object, public BlockRestrictable, public BoundaryRestrictable { public: static InputParameters validParams(); static libMesh::Point pointFromMFEMVector(const mfem::Vector & vec); - MFEMFunctorMaterial(const InputParameters & parameters); - virtual ~MFEMFunctorMaterial(); + FunctorMaterial(const InputParameters & parameters); + virtual ~FunctorMaterial(); protected: - Moose::MFEM::CoefficientManager & _properties; + CoefficientManager & _properties; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/functormaterials/MFEMGenericFunctorMaterial.h b/framework/include/mfem/functormaterials/MFEMGenericFunctorMaterial.h index 8f997552129d..af41b2c6ab22 100644 --- a/framework/include/mfem/functormaterials/MFEMGenericFunctorMaterial.h +++ b/framework/include/mfem/functormaterials/MFEMGenericFunctorMaterial.h @@ -14,22 +14,25 @@ #include "MFEMFunctorMaterial.h" #include "MFEMContainers.h" +namespace Moose::MFEM +{ /** * Declares material properties based on names and functions prescribed by input parameters. * * This is identical in function to the GenericFunctionMaterial in Moose. */ -class MFEMGenericFunctorMaterial : public MFEMFunctorMaterial +class GenericFunctorMaterial : public FunctorMaterial { public: static InputParameters validParams(); - MFEMGenericFunctorMaterial(const InputParameters & parameters); - virtual ~MFEMGenericFunctorMaterial(); + GenericFunctorMaterial(const InputParameters & parameters); + virtual ~GenericFunctorMaterial(); protected: const std::vector & _prop_names; - const std::vector & _prop_values; + const std::vector & _prop_values; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.h b/framework/include/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.h index 8b2b98ae6ad6..7211b35aedb1 100644 --- a/framework/include/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.h +++ b/framework/include/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.h @@ -14,22 +14,25 @@ #include "MFEMFunctorMaterial.h" #include "MFEMContainers.h" +namespace Moose::MFEM +{ /** * Declares material properties based on names and functions prescribed by input parameters. * * This is identical in function to the GenericFunctionVectorMaterial in Moose. */ -class MFEMGenericFunctorVectorMaterial : public MFEMFunctorMaterial +class GenericFunctorVectorMaterial : public FunctorMaterial { public: static InputParameters validParams(); - MFEMGenericFunctorVectorMaterial(const InputParameters & parameters); - virtual ~MFEMGenericFunctorVectorMaterial(); + GenericFunctorVectorMaterial(const InputParameters & parameters); + virtual ~GenericFunctorVectorMaterial(); protected: const std::vector & _prop_names; - const std::vector _prop_values; + const std::vector _prop_values; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/ics/MFEMInitialCondition.h b/framework/include/mfem/ics/MFEMInitialCondition.h index 65b84c3176b4..2278c4ed69c4 100644 --- a/framework/include/mfem/ics/MFEMInitialCondition.h +++ b/framework/include/mfem/ics/MFEMInitialCondition.h @@ -13,16 +13,19 @@ #include "MFEMExecutedObject.h" +namespace Moose::MFEM +{ /** - * Base class used to set the initial value(s) on an MFEMVariable. + * Base class used to set the initial value(s) on an Moose::MFEM::Variable. */ -class MFEMInitialCondition : public MFEMExecutedObject +class InitialCondition : public ExecutedObject { public: static InputParameters validParams(); - MFEMInitialCondition(const InputParameters & params); + InitialCondition(const InputParameters & params); virtual std::optional suppliedVariableName() const override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/ics/MFEMScalarBoundaryIC.h b/framework/include/mfem/ics/MFEMScalarBoundaryIC.h index 2180950ead2a..437f2af9961e 100644 --- a/framework/include/mfem/ics/MFEMScalarBoundaryIC.h +++ b/framework/include/mfem/ics/MFEMScalarBoundaryIC.h @@ -14,15 +14,18 @@ #include "MFEMInitialCondition.h" #include "MFEMBoundaryRestrictable.h" +namespace Moose::MFEM +{ /** - * Class used to set the initial value(s) on a scalar valued MFEMVariable. + * Class used to set the initial value(s) on a scalar valued Moose::MFEM::Variable. */ -class MFEMScalarBoundaryIC : public MFEMInitialCondition, public MFEMBoundaryRestrictable +class ScalarBoundaryIC : public InitialCondition, public BoundaryRestrictable { public: static InputParameters validParams(); - MFEMScalarBoundaryIC(const InputParameters & params); + ScalarBoundaryIC(const InputParameters & params); virtual void execute() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/ics/MFEMScalarIC.h b/framework/include/mfem/ics/MFEMScalarIC.h index 5d782eeba240..b2c9767eeaf1 100644 --- a/framework/include/mfem/ics/MFEMScalarIC.h +++ b/framework/include/mfem/ics/MFEMScalarIC.h @@ -13,15 +13,18 @@ #include "MFEMInitialCondition.h" +namespace Moose::MFEM +{ /** - * Class used to set the initial value(s) on a scalar valued MFEMVariable. + * Class used to set the initial value(s) on a scalar valued Moose::MFEM::Variable. */ -class MFEMScalarIC : public MFEMInitialCondition +class ScalarIC : public InitialCondition { public: static InputParameters validParams(); - MFEMScalarIC(const InputParameters & params); + ScalarIC(const InputParameters & params); virtual void execute() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/ics/MFEMVectorIC.h b/framework/include/mfem/ics/MFEMVectorIC.h index 60ac42c2326a..d4d14f41a643 100644 --- a/framework/include/mfem/ics/MFEMVectorIC.h +++ b/framework/include/mfem/ics/MFEMVectorIC.h @@ -13,15 +13,18 @@ #include "MFEMInitialCondition.h" +namespace Moose::MFEM +{ /** - * Class used to set the initial value(s) on a vector valued MFEMVariable. + * Class used to set the initial value(s) on a vector valued Moose::MFEM::Variable. */ -class MFEMVectorIC : public MFEMInitialCondition +class VectorIC : public InitialCondition { public: static InputParameters validParams(); - MFEMVectorIC(const InputParameters & params); + VectorIC(const InputParameters & params); virtual void execute() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/indicators/MFEMIndicator.h b/framework/include/mfem/indicators/MFEMIndicator.h index 8457162b5d81..c1791f6e4ebb 100644 --- a/framework/include/mfem/indicators/MFEMIndicator.h +++ b/framework/include/mfem/indicators/MFEMIndicator.h @@ -19,14 +19,16 @@ * Wrapper class for mfem::ErrorEstimator objects. To keep the * naming consistent with MOOSE, we refer to it as an Indicator. */ -class MFEMIndicator : public MFEMObject +namespace Moose::MFEM +{ +class Indicator : public Object { public: static InputParameters validParams(); - MFEMIndicator(const InputParameters & params); + Indicator(const InputParameters & params); - virtual ~MFEMIndicator() = default; + virtual ~Indicator() = default; /// Create the estimator internally. virtual void createEstimator() = 0; @@ -55,11 +57,12 @@ class MFEMIndicator : public MFEMObject }; inline std::shared_ptr -MFEMIndicator::getEstimator() const +Indicator::getEstimator() const { mooseAssert(_error_estimator, "Attempting to retrieve error estimator before it's been constructed"); return _error_estimator; } +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.h b/framework/include/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.h index 34442ae6313f..29ab640bc8aa 100644 --- a/framework/include/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.h +++ b/framework/include/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.h @@ -13,16 +13,18 @@ #include "MFEMIndicator.h" +namespace Moose::MFEM +{ /** * Wrapper for the Zienkiewicz-Zhu estimator with L2 projection. * See mfem example 6p for more details. */ -class MFEML2ZienkiewiczZhuIndicator : public MFEMIndicator +class L2ZienkiewiczZhuIndicator : public Indicator { public: static InputParameters validParams(); - MFEML2ZienkiewiczZhuIndicator(const InputParameters & parameters); + L2ZienkiewiczZhuIndicator(const InputParameters & parameters); /// Override the createEstimator method to use a Zienkiewicz-Zhu estimator. virtual void createEstimator() override; @@ -44,4 +46,5 @@ class MFEML2ZienkiewiczZhuIndicator : public MFEMIndicator std::unique_ptr _integ; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.h b/framework/include/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.h index 89e2dad74aa6..624e5502b05b 100644 --- a/framework/include/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.h +++ b/framework/include/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.h @@ -26,8 +26,10 @@ namespace Moose::MFEM class NLBoundaryConvectiveHeatFluxIntegrator : public mfem::NonlinearFormIntegrator { public: + /// Construct the nonlinear convective heat flux residual and Jacobian action. NLBoundaryConvectiveHeatFluxIntegrator(mfem::Coefficient & k, mfem::Coefficient & dk_du, + mfem::Coefficient & duinf_du, mfem::Coefficient & gf_offset, mfem::Coefficient & gf); @@ -41,13 +43,27 @@ class NLBoundaryConvectiveHeatFluxIntegrator : public mfem::NonlinearFormIntegra mfem::DenseMatrix & elmat) override; protected: - mfem::SumCoefficient _shifted_gf_coef; // (u_inf-u) - mfem::ProductCoefficient _k_uinf_coef; // k(u)*u_inf - mfem::ProductCoefficient _net_flux_du_coef; // dk/du*(u-u_inf) - mfem::BoundaryLFIntegrator _inwards_flux; // (k(u) u_inf, v) - mfem::BoundaryMassIntegrator _outwards_flux; // (k(u) u, v) + /// Coefficient for the shifted state, u - u_inf. + mfem::SumCoefficient _shifted_gf_coef; + /// Coefficient for the inwards flux contribution, k(u) * u_inf. + mfem::ProductCoefficient _k_uinf_coef; + /// Coefficient for the dk/du contribution, dk/du * (u - u_inf). + mfem::ProductCoefficient _net_flux_du_coef; + /// Coefficient for the d u_inf / du contribution, k(u) * d u_inf / du. + mfem::ProductCoefficient _k_duinf_du_coef; + /// Negated coefficient for the d u_inf / du Jacobian term, -k(u) * d u_inf / du. + mfem::ProductCoefficient _duinf_du_flux_coef; + /// Boundary load integrator for the inwards flux term. + mfem::BoundaryLFIntegrator _inwards_flux; + /// Boundary mass integrator for the outwards flux term. + mfem::BoundaryMassIntegrator _outwards_flux; + /// Jacobian contribution from the h(T) term. mfem::BoundaryMassIntegrator _jacobian_k_component; + /// Jacobian contribution from the dh/dT term. mfem::BoundaryMassIntegrator _jacobian_dk_du_component; + /// Jacobian contribution from the dT_inf/dT term. + mfem::BoundaryMassIntegrator _jacobian_duinf_du_component; + /// Sum of the boundary mass integrators forming the Jacobian action. mfem::SumIntegrator _jacobian_action{0}; }; } diff --git a/framework/include/mfem/interfaces/EquationSystemInterface.h b/framework/include/mfem/interfaces/EquationSystemInterface.h index f308fa0643c0..73464fea0947 100644 --- a/framework/include/mfem/interfaces/EquationSystemInterface.h +++ b/framework/include/mfem/interfaces/EquationSystemInterface.h @@ -11,8 +11,6 @@ #pragma once -#include "MFEMProblemData.h" - namespace Moose::MFEM { /** diff --git a/framework/include/mfem/interfaces/MFEMBlockRestrictable.h b/framework/include/mfem/interfaces/MFEMBlockRestrictable.h index 66832583777f..4385b00f2c64 100644 --- a/framework/include/mfem/interfaces/MFEMBlockRestrictable.h +++ b/framework/include/mfem/interfaces/MFEMBlockRestrictable.h @@ -16,16 +16,18 @@ #include "mfem/miniapps/common/mfem-common.hpp" #include "libmesh/restore_warnings.h" +namespace Moose::MFEM +{ /** * Base class for construction of an object that is restricted to a subset * of subdomains of the problem mesh. */ -class MFEMBlockRestrictable +class BlockRestrictable { public: static InputParameters validParams(); - MFEMBlockRestrictable(const InputParameters & parameters, const mfem::ParMesh & mfem_mesh); + BlockRestrictable(const InputParameters & parameters, const mfem::ParMesh & mfem_mesh); mfem::Array subdomainsToAttributes(); std::vector subdomainsToStrings(); @@ -48,4 +50,5 @@ class MFEMBlockRestrictable mfem::Array _subdomain_markers; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/interfaces/MFEMBoundaryRestrictable.h b/framework/include/mfem/interfaces/MFEMBoundaryRestrictable.h index 314d85978920..f349da6e6fec 100644 --- a/framework/include/mfem/interfaces/MFEMBoundaryRestrictable.h +++ b/framework/include/mfem/interfaces/MFEMBoundaryRestrictable.h @@ -16,16 +16,18 @@ #include "mfem/miniapps/common/mfem-common.hpp" #include "libmesh/restore_warnings.h" +namespace Moose::MFEM +{ /** * Base class for construction of an object that is restricted to a subset * of boundaries of the problem mesh. */ -class MFEMBoundaryRestrictable +class BoundaryRestrictable { public: static InputParameters validParams(); - MFEMBoundaryRestrictable(const InputParameters & parameters, const mfem::ParMesh & mfem_mesh); + BoundaryRestrictable(const InputParameters & parameters, const mfem::ParMesh & mfem_mesh); mfem::Array boundariesToAttributes(); std::vector boundariesToStrings(); @@ -51,4 +53,5 @@ class MFEMBoundaryRestrictable mfem::Array _boundary_markers; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/interfaces/ProblemOperatorInterface.h b/framework/include/mfem/interfaces/ProblemOperatorInterface.h index 9ab2316063f7..67dc996d3f71 100644 --- a/framework/include/mfem/interfaces/ProblemOperatorInterface.h +++ b/framework/include/mfem/interfaces/ProblemOperatorInterface.h @@ -17,8 +17,8 @@ namespace Moose::MFEM { /** * Interface required for MFEM executioners to add and get ProblemOperators: - * - MFEMTransient - * - MFEMSteady + * - Moose::MFEM::Transient + * - Moose::MFEM::Steady */ class ProblemOperatorInterface { diff --git a/framework/include/mfem/kernels/MFEMComplexKernel.h b/framework/include/mfem/kernels/MFEMComplexKernel.h index f94db0bca7b7..c9e314b706c9 100644 --- a/framework/include/mfem/kernels/MFEMComplexKernel.h +++ b/framework/include/mfem/kernels/MFEMComplexKernel.h @@ -16,14 +16,16 @@ /* Class to construct an MFEM integrator to apply to the equation system. */ -class MFEMComplexKernel : public MFEMKernel +namespace Moose::MFEM +{ +class ComplexKernel : public Kernel { public: static InputParameters validParams(); - MFEMComplexKernel(const InputParameters & parameters); + ComplexKernel(const InputParameters & parameters); - virtual ~MFEMComplexKernel() = default; + virtual ~ComplexKernel() = default; virtual mfem::LinearFormIntegrator * getRealLFIntegrator() { @@ -42,11 +44,12 @@ class MFEMComplexKernel : public MFEMKernel return _imag_kernel ? _imag_kernel->createBFIntegrator() : nullptr; } - virtual void setRealKernel(std::shared_ptr kernel) { _real_kernel = kernel; } - virtual void setImagKernel(std::shared_ptr kernel) { _imag_kernel = kernel; } + virtual void setRealKernel(std::shared_ptr kernel) { _real_kernel = kernel; } + virtual void setImagKernel(std::shared_ptr kernel) { _imag_kernel = kernel; } - std::shared_ptr _real_kernel{nullptr}; - std::shared_ptr _imag_kernel{nullptr}; + std::shared_ptr _real_kernel{nullptr}; + std::shared_ptr _imag_kernel{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMCurlCurlKernel.h b/framework/include/mfem/kernels/MFEMCurlCurlKernel.h index 913d8c8163d6..bedd3f97281c 100644 --- a/framework/include/mfem/kernels/MFEMCurlCurlKernel.h +++ b/framework/include/mfem/kernels/MFEMCurlCurlKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla \times \vec u, \vec \nabla \times \vec v) * \f] */ -class MFEMCurlCurlKernel : public MFEMKernel +class CurlCurlKernel : public Kernel { public: static InputParameters validParams(); - MFEMCurlCurlKernel(const InputParameters & parameters); + CurlCurlKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMCurlCurlKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMDiffusionKernel.h b/framework/include/mfem/kernels/MFEMDiffusionKernel.h index 1c2b67020f3e..d432dd3d693f 100644 --- a/framework/include/mfem/kernels/MFEMDiffusionKernel.h +++ b/framework/include/mfem/kernels/MFEMDiffusionKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla u, \vec \nabla v) * \f] */ -class MFEMDiffusionKernel : public MFEMKernel +class DiffusionKernel : public Kernel { public: static InputParameters validParams(); - MFEMDiffusionKernel(const InputParameters & parameters); + DiffusionKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMDiffusionKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMDivDivKernel.h b/framework/include/mfem/kernels/MFEMDivDivKernel.h index 5261a8ec6bd5..cf7eac88c656 100644 --- a/framework/include/mfem/kernels/MFEMDivDivKernel.h +++ b/framework/include/mfem/kernels/MFEMDivDivKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla \cdot \vec u, \vec \nabla \cdot \vec v) * \f] */ -class MFEMDivDivKernel : public MFEMKernel +class DivDivKernel : public Kernel { public: static InputParameters validParams(); - MFEMDivDivKernel(const InputParameters & parameters); + DivDivKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMDivDivKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMDomainLFKernel.h b/framework/include/mfem/kernels/MFEMDomainLFKernel.h index 8072da642601..1ac5a896867b 100644 --- a/framework/include/mfem/kernels/MFEMDomainLFKernel.h +++ b/framework/include/mfem/kernels/MFEMDomainLFKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (f, v) * \f] */ -class MFEMDomainLFKernel : public MFEMKernel +class DomainLFKernel : public Kernel { public: static InputParameters validParams(); - MFEMDomainLFKernel(const InputParameters & parameters); + DomainLFKernel(const InputParameters & parameters); virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMDomainLFKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMKernel.h b/framework/include/mfem/kernels/MFEMKernel.h index 223bddb9f09f..18ec2a01beae 100644 --- a/framework/include/mfem/kernels/MFEMKernel.h +++ b/framework/include/mfem/kernels/MFEMKernel.h @@ -15,17 +15,19 @@ #include "MFEMContainers.h" #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ /** * Class to construct an MFEM integrator to apply to the equation system. */ -class MFEMKernel : public MFEMObject, public MFEMBlockRestrictable +class Kernel : public Object, public BlockRestrictable { public: static InputParameters validParams(); - MFEMKernel(const InputParameters & parameters); + Kernel(const InputParameters & parameters); - virtual ~MFEMKernel() = default; + virtual ~Kernel() = default; /// Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. virtual mfem::LinearFormIntegrator * createLFIntegrator() { return nullptr; } @@ -46,4 +48,5 @@ class MFEMKernel : public MFEMObject, public MFEMBlockRestrictable const VariableName & _test_var_name; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMLinearElasticityKernel.h b/framework/include/mfem/kernels/MFEMLinearElasticityKernel.h index d9f3896ad4b4..181973cad5db 100644 --- a/framework/include/mfem/kernels/MFEMLinearElasticityKernel.h +++ b/framework/include/mfem/kernels/MFEMLinearElasticityKernel.h @@ -14,6 +14,8 @@ #include "MFEMKernel.h" // clang-format off +namespace Moose::MFEM +{ /** * \f[ * (c_{ikjl} \nabla u_j, \nabla v_i), @@ -25,12 +27,12 @@ * \f$ \nu \f$ is Poisson's ratio */ // clang-format on -class MFEMLinearElasticityKernel : public MFEMKernel +class LinearElasticityKernel : public Kernel { public: static InputParameters validParams(); - MFEMLinearElasticityKernel(const InputParameters & parameters); + LinearElasticityKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -39,4 +41,5 @@ class MFEMLinearElasticityKernel : public MFEMKernel mfem::Coefficient & _mu; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMassKernel.h b/framework/include/mfem/kernels/MFEMMassKernel.h index fe276b0dd16d..daa4f2ee573f 100644 --- a/framework/include/mfem/kernels/MFEMMassKernel.h +++ b/framework/include/mfem/kernels/MFEMMassKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k u, v) * \f] */ -class MFEMMassKernel : public MFEMKernel +class MassKernel : public Kernel { public: static InputParameters validParams(); - MFEMMassKernel(const InputParameters & parameters); + MassKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMMassKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMixedBilinearFormKernel.h b/framework/include/mfem/kernels/MFEMMixedBilinearFormKernel.h index eb80d0003ceb..82d1440b71fb 100644 --- a/framework/include/mfem/kernels/MFEMMixedBilinearFormKernel.h +++ b/framework/include/mfem/kernels/MFEMMixedBilinearFormKernel.h @@ -13,16 +13,18 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * Class to construct an MFEM mixed bilinear form integrator to apply to the equation system. */ -class MFEMMixedBilinearFormKernel : public MFEMKernel +class MixedBilinearFormKernel : public Kernel { public: static InputParameters validParams(); - MFEMMixedBilinearFormKernel(const InputParameters & parameters); - ~MFEMMixedBilinearFormKernel() = default; + MixedBilinearFormKernel(const InputParameters & parameters); + ~MixedBilinearFormKernel() = default; /// Get name of the trial variable (gridfunction) the kernel acts on. /// Defaults to the name of the test variable labelling the weak form. @@ -41,4 +43,5 @@ class MFEMMixedBilinearFormKernel : public MFEMKernel bool _transpose; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMixedGradGradKernel.h b/framework/include/mfem/kernels/MFEMMixedGradGradKernel.h index b86c23050e49..4da9cb47a9ec 100644 --- a/framework/include/mfem/kernels/MFEMMixedGradGradKernel.h +++ b/framework/include/mfem/kernels/MFEMMixedGradGradKernel.h @@ -13,17 +13,19 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla u, \nabla v) * \f] */ -class MFEMMixedGradGradKernel : public MFEMMixedBilinearFormKernel +class MixedGradGradKernel : public MixedBilinearFormKernel { public: static InputParameters validParams(); - MFEMMixedGradGradKernel(const InputParameters & parameters); + MixedGradGradKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMMixedGradGradKernel : public MFEMMixedBilinearFormKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMixedScalarCurlKernel.h b/framework/include/mfem/kernels/MFEMMixedScalarCurlKernel.h index e0114c46b169..863cc4f098ac 100644 --- a/framework/include/mfem/kernels/MFEMMixedScalarCurlKernel.h +++ b/framework/include/mfem/kernels/MFEMMixedScalarCurlKernel.h @@ -13,17 +13,19 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla \times \vec u, v) * \f] */ -class MFEMMixedScalarCurlKernel : public MFEMMixedBilinearFormKernel +class MixedScalarCurlKernel : public MixedBilinearFormKernel { public: static InputParameters validParams(); - MFEMMixedScalarCurlKernel(const InputParameters & parameters); + MixedScalarCurlKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMMixedScalarCurlKernel : public MFEMMixedBilinearFormKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMixedVectorGradientKernel.h b/framework/include/mfem/kernels/MFEMMixedVectorGradientKernel.h index da60ddcdab11..7da4f429f61a 100644 --- a/framework/include/mfem/kernels/MFEMMixedVectorGradientKernel.h +++ b/framework/include/mfem/kernels/MFEMMixedVectorGradientKernel.h @@ -13,17 +13,19 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla u, \vec v) * \f] */ -class MFEMMixedVectorGradientKernel : public MFEMMixedBilinearFormKernel +class MixedVectorGradientKernel : public MixedBilinearFormKernel { public: static InputParameters validParams(); - MFEMMixedVectorGradientKernel(const InputParameters & parameters); + MixedVectorGradientKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMMixedVectorGradientKernel : public MFEMMixedBilinearFormKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMMixedVectorMassKernel.h b/framework/include/mfem/kernels/MFEMMixedVectorMassKernel.h index a15a0283674d..a4220e143571 100644 --- a/framework/include/mfem/kernels/MFEMMixedVectorMassKernel.h +++ b/framework/include/mfem/kernels/MFEMMixedVectorMassKernel.h @@ -13,17 +13,19 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec u, \vec v) * \f] */ -class MFEMMixedVectorMassKernel : public MFEMMixedBilinearFormKernel +class MixedVectorMassKernel : public MixedBilinearFormKernel { public: static InputParameters validParams(); - MFEMMixedVectorMassKernel(const InputParameters & parameters); + MixedVectorMassKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMMixedVectorMassKernel : public MFEMMixedBilinearFormKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMNLDiffusionKernel.h b/framework/include/mfem/kernels/MFEMNLDiffusionKernel.h index 5c9a213e8bc1..b29b008382a1 100644 --- a/framework/include/mfem/kernels/MFEMNLDiffusionKernel.h +++ b/framework/include/mfem/kernels/MFEMNLDiffusionKernel.h @@ -12,17 +12,19 @@ #pragma once #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k(u) \vec \nabla u, \vec \nabla v) * \f] */ -class MFEMNLDiffusionKernel : public MFEMKernel +class NLDiffusionKernel : public Kernel { public: static InputParameters validParams(); - MFEMNLDiffusionKernel(const InputParameters & parameters); + NLDiffusionKernel(const InputParameters & parameters); virtual mfem::NonlinearFormIntegrator * createNLIntegrator() override; @@ -32,4 +34,5 @@ class MFEMNLDiffusionKernel : public MFEMKernel mfem::ParGridFunction & _trial_var; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMTimeDerivativeMassKernel.h b/framework/include/mfem/kernels/MFEMTimeDerivativeMassKernel.h index f6f1bd4f667b..c25c51021203 100644 --- a/framework/include/mfem/kernels/MFEMTimeDerivativeMassKernel.h +++ b/framework/include/mfem/kernels/MFEMTimeDerivativeMassKernel.h @@ -13,17 +13,19 @@ #include "MFEMMassKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k du/dt, v) * \f] */ -class MFEMTimeDerivativeMassKernel : public MFEMMassKernel +class TimeDerivativeMassKernel : public MassKernel { public: static InputParameters validParams(); - MFEMTimeDerivativeMassKernel(const InputParameters & parameters); + TimeDerivativeMassKernel(const InputParameters & parameters); /// Get name of the trial variable (gridfunction) the kernel acts on. /// Defaults to the name of the test variable labelling the weak form. @@ -34,4 +36,5 @@ class MFEMTimeDerivativeMassKernel : public MFEMMassKernel const VariableName _var_dot_name; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.h b/framework/include/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.h index 3fbd47c91afe..897395bb2349 100644 --- a/framework/include/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.h +++ b/framework/include/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.h @@ -13,17 +13,19 @@ #include "MFEMVectorFEMassKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k du/dt, v) * \f] */ -class MFEMTimeDerivativeVectorFEMassKernel : public MFEMVectorFEMassKernel +class TimeDerivativeVectorFEMassKernel : public VectorFEMassKernel { public: static InputParameters validParams(); - MFEMTimeDerivativeVectorFEMassKernel(const InputParameters & parameters); + TimeDerivativeVectorFEMassKernel(const InputParameters & parameters); /// Get name of the trial variable (gridfunction) the kernel acts on. /// Defaults to the name of the test variable labelling the weak form. @@ -34,4 +36,5 @@ class MFEMTimeDerivativeVectorFEMassKernel : public MFEMVectorFEMassKernel const VariableName _var_dot_name; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMVectorDomainLFKernel.h b/framework/include/mfem/kernels/MFEMVectorDomainLFKernel.h index 5297a3c808f1..d987f229a375 100644 --- a/framework/include/mfem/kernels/MFEMVectorDomainLFKernel.h +++ b/framework/include/mfem/kernels/MFEMVectorDomainLFKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (\vec f, \vec v) * \f] */ -class MFEMVectorDomainLFKernel : public MFEMKernel +class VectorDomainLFKernel : public Kernel { public: static InputParameters validParams(); - MFEMVectorDomainLFKernel(const InputParameters & parameters); + VectorDomainLFKernel(const InputParameters & parameters); virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMVectorDomainLFKernel : public MFEMKernel mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMVectorFEDivergenceKernel.h b/framework/include/mfem/kernels/MFEMVectorFEDivergenceKernel.h index 0f5604a4d89e..12ee8cff7165 100644 --- a/framework/include/mfem/kernels/MFEMVectorFEDivergenceKernel.h +++ b/framework/include/mfem/kernels/MFEMVectorFEDivergenceKernel.h @@ -13,18 +13,20 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec \nabla \cdot \vec u, v) * \f] */ -class MFEMVectorFEDivergenceKernel : public MFEMMixedBilinearFormKernel +class VectorFEDivergenceKernel : public MixedBilinearFormKernel { public: static InputParameters validParams(); - MFEMVectorFEDivergenceKernel(const InputParameters & parameters); - ~MFEMVectorFEDivergenceKernel() override = default; + VectorFEDivergenceKernel(const InputParameters & parameters); + ~VectorFEDivergenceKernel() override = default; virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override; @@ -32,4 +34,5 @@ class MFEMVectorFEDivergenceKernel : public MFEMMixedBilinearFormKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMVectorFEDomainLFKernel.h b/framework/include/mfem/kernels/MFEMVectorFEDomainLFKernel.h index 4228c77f60ad..62461daaf66e 100644 --- a/framework/include/mfem/kernels/MFEMVectorFEDomainLFKernel.h +++ b/framework/include/mfem/kernels/MFEMVectorFEDomainLFKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (\vec f, \vec v) * \f] */ -class MFEMVectorFEDomainLFKernel : public MFEMKernel +class VectorFEDomainLFKernel : public Kernel { public: static InputParameters validParams(); - MFEMVectorFEDomainLFKernel(const InputParameters & parameters); + VectorFEDomainLFKernel(const InputParameters & parameters); virtual mfem::LinearFormIntegrator * createLFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMVectorFEDomainLFKernel : public MFEMKernel mfem::VectorCoefficient & _vec_coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMVectorFEMassKernel.h b/framework/include/mfem/kernels/MFEMVectorFEMassKernel.h index 5866d6b57750..0ed7a5d94cf4 100644 --- a/framework/include/mfem/kernels/MFEMVectorFEMassKernel.h +++ b/framework/include/mfem/kernels/MFEMVectorFEMassKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * (k \vec u, \vec v) * \f] */ -class MFEMVectorFEMassKernel : public MFEMKernel +class VectorFEMassKernel : public Kernel { public: static InputParameters validParams(); - MFEMVectorFEMassKernel(const InputParameters & parameters); + VectorFEMassKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMVectorFEMassKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.h b/framework/include/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.h index f51a2855a642..1582a5a347d7 100644 --- a/framework/include/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.h +++ b/framework/include/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.h @@ -13,17 +13,19 @@ #include "MFEMKernel.h" +namespace Moose::MFEM +{ /** * \f[ * - (k \vec u, \vec \nabla v) * \f] */ -class MFEMVectorFEWeakDivergenceKernel : public MFEMKernel +class VectorFEWeakDivergenceKernel : public Kernel { public: static InputParameters validParams(); - MFEMVectorFEWeakDivergenceKernel(const InputParameters & parameters); + VectorFEWeakDivergenceKernel(const InputParameters & parameters); virtual mfem::BilinearFormIntegrator * createBFIntegrator() override; @@ -31,4 +33,5 @@ class MFEMVectorFEWeakDivergenceKernel : public MFEMKernel mfem::Coefficient & _coef; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/markers/MFEMRefinementMarker.h b/framework/include/mfem/markers/MFEMRefinementMarker.h index 1a7610b3ae00..1156578b732c 100644 --- a/framework/include/mfem/markers/MFEMRefinementMarker.h +++ b/framework/include/mfem/markers/MFEMRefinementMarker.h @@ -13,18 +13,20 @@ #include "MFEMObject.h" #include "MFEMIndicator.h" +namespace Moose::MFEM +{ /** * Class to construct threshold refiner. * The underlying mfem::ThresholdRefiner needs to be initialised with a reference to the estimator. */ -class MFEMRefinementMarker : public MFEMObject +class RefinementMarker : public Object { public: static InputParameters validParams(); - MFEMRefinementMarker(const InputParameters & params); + RefinementMarker(const InputParameters & params); - virtual ~MFEMRefinementMarker() = default; + virtual ~RefinementMarker() = default; /// Constructs associated mfem::ThresholdRefiner once mfem::ErrorEstimator is guaranteed to exist void initialSetup(); @@ -61,7 +63,8 @@ class MFEMRefinementMarker : public MFEMObject unsigned _p_ref_counter{0}; /// Pointer to the estimator/indicator - const MFEMIndicator * _estimator{nullptr}; + const Indicator * _estimator{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/mesh/MFEMMesh.h b/framework/include/mfem/mesh/MFEMMesh.h index e43d977309dd..1e6efc0fbbc6 100644 --- a/framework/include/mfem/mesh/MFEMMesh.h +++ b/framework/include/mfem/mesh/MFEMMesh.h @@ -13,18 +13,20 @@ #include "FileMesh.h" +namespace Moose::MFEM +{ /** - * MFEMMesh inherits a MOOSE mesh class which allows us to work with + * Moose::MFEM::Mesh inherits a MOOSE mesh class which allows us to work with * other MOOSE objects. It contains a pointer to the parallel MFEM mesh. */ -class MFEMMesh : public FileMesh +class Mesh : public FileMesh { public: static InputParameters validParams(); - MFEMMesh(const InputParameters & parameters); + Mesh(const InputParameters & parameters); - virtual ~MFEMMesh(); + virtual ~Mesh(); /** * Accessors for the _mfem_par_mesh object. If the mesh has @@ -99,9 +101,10 @@ class MFEMMesh : public FileMesh }; inline const mfem::ParMesh & -MFEMMesh::getMFEMParMesh() const +Mesh::getMFEMParMesh() const { - return const_cast(this)->getMFEMParMesh(); + return const_cast(this)->getMFEMParMesh(); } +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/outputs/MFEMConduitDataCollection.h b/framework/include/mfem/outputs/MFEMConduitDataCollection.h index fa1d47a2de38..18253f6d708c 100644 --- a/framework/include/mfem/outputs/MFEMConduitDataCollection.h +++ b/framework/include/mfem/outputs/MFEMConduitDataCollection.h @@ -13,15 +13,17 @@ #include "MFEMDataCollection.h" +namespace Moose::MFEM +{ /** * Class for output information saved in MFEM ConduitDataCollections */ -class MFEMConduitDataCollection : public MFEMDataCollection +class ConduitDataCollection : public DataCollection { public: static InputParameters validParams(); - MFEMConduitDataCollection(const InputParameters & parameters); + ConduitDataCollection(const InputParameters & parameters); virtual mfem::DataCollection & getDataCollection() override { return _conduit_dc; } @@ -30,4 +32,5 @@ class MFEMConduitDataCollection : public MFEMDataCollection const MooseEnum _protocol; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/outputs/MFEMDataCollection.h b/framework/include/mfem/outputs/MFEMDataCollection.h index 036e58f58668..e67f494cbcd3 100644 --- a/framework/include/mfem/outputs/MFEMDataCollection.h +++ b/framework/include/mfem/outputs/MFEMDataCollection.h @@ -14,25 +14,28 @@ #include "FileOutput.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ /** * Class for output information saved in MFEM DataCollections */ -class MFEMDataCollection : public FileOutput +class DataCollection : public FileOutput { public: static InputParameters validParams(); - MFEMDataCollection(const InputParameters & parameters); + DataCollection(const InputParameters & parameters); virtual mfem::DataCollection & getDataCollection() = 0; protected: void registerFields(); void output() override; - /// Reference to the MFEMProblemData struct storing the output variables. - MFEMProblemData & _problem_data; + /// Reference to the ProblemData struct storing the output variables. + ProblemData & _problem_data; /// Mesh set of output variables are defined on. May differ from main problem mesh if SubMesh /// variables are in use. mfem::ParMesh & _pmesh; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/outputs/MFEMParaViewDataCollection.h b/framework/include/mfem/outputs/MFEMParaViewDataCollection.h index 22703e11d78b..d268817d36db 100644 --- a/framework/include/mfem/outputs/MFEMParaViewDataCollection.h +++ b/framework/include/mfem/outputs/MFEMParaViewDataCollection.h @@ -13,15 +13,17 @@ #include "MFEMDataCollection.h" +namespace Moose::MFEM +{ /** * Class for output information saved in MFEM ParaViewDataCollections */ -class MFEMParaViewDataCollection : public MFEMDataCollection +class ParaViewDataCollection : public DataCollection { public: static InputParameters validParams(); - MFEMParaViewDataCollection(const InputParameters & parameters); + ParaViewDataCollection(const InputParameters & parameters); virtual mfem::DataCollection & getDataCollection() override { return _pv_dc; } @@ -32,4 +34,5 @@ class MFEMParaViewDataCollection : public MFEMDataCollection const mfem::VTKFormat _vtk_format; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/outputs/MFEMVisItDataCollection.h b/framework/include/mfem/outputs/MFEMVisItDataCollection.h index cd54f610ecf3..4e02f69b444f 100644 --- a/framework/include/mfem/outputs/MFEMVisItDataCollection.h +++ b/framework/include/mfem/outputs/MFEMVisItDataCollection.h @@ -13,15 +13,17 @@ #include "MFEMDataCollection.h" +namespace Moose::MFEM +{ /** * Class for output information saved in MFEM VisItDataCollections */ -class MFEMVisItDataCollection : public MFEMDataCollection +class VisItDataCollection : public DataCollection { public: static InputParameters validParams(); - MFEMVisItDataCollection(const InputParameters & parameters); + VisItDataCollection(const InputParameters & parameters); virtual mfem::DataCollection & getDataCollection() override { return _visit_dc; } @@ -30,4 +32,5 @@ class MFEMVisItDataCollection : public MFEMDataCollection const unsigned int _refinements; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.h b/framework/include/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.h index 4439b41bc24c..00ff4833b9da 100644 --- a/framework/include/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.h +++ b/framework/include/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.h @@ -14,17 +14,18 @@ #include "MFEMPostprocessor.h" #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ /** * Compute the time average of the inner product between two complex MFEM vector FE variables, * scaled by an optional scalar coefficient. */ -class MFEMComplexVectorPeriodAveragedPostprocessor : public MFEMPostprocessor, - public MFEMBlockRestrictable +class ComplexVectorPeriodAveragedPostprocessor : public Postprocessor, public BlockRestrictable { public: static InputParameters validParams(); - MFEMComplexVectorPeriodAveragedPostprocessor(const InputParameters & parameters); + ComplexVectorPeriodAveragedPostprocessor(const InputParameters & parameters); /** * Evaluate integral. @@ -59,4 +60,5 @@ class MFEMComplexVectorPeriodAveragedPostprocessor : public MFEMPostprocessor, mfem::ParLinearForm _subdomain_integrator; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/postprocessors/MFEML2Error.h b/framework/include/mfem/postprocessors/MFEML2Error.h index d6526e74e6aa..d8e10179e9a3 100644 --- a/framework/include/mfem/postprocessors/MFEML2Error.h +++ b/framework/include/mfem/postprocessors/MFEML2Error.h @@ -13,15 +13,17 @@ #include "MFEMPostprocessor.h" +namespace Moose::MFEM +{ /** * Compute the L2 error for a variable. */ -class MFEML2Error : public MFEMPostprocessor +class L2Error : public Postprocessor { public: static InputParameters validParams(); - MFEML2Error(const InputParameters & parameters); + L2Error(const InputParameters & parameters); virtual void initialize() override; virtual void execute() override; @@ -36,4 +38,5 @@ class MFEML2Error : public MFEMPostprocessor mfem::GridFunction & _var; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/postprocessors/MFEMPostprocessor.h b/framework/include/mfem/postprocessors/MFEMPostprocessor.h index 4cad9f099985..c0d5db01a9b5 100644 --- a/framework/include/mfem/postprocessors/MFEMPostprocessor.h +++ b/framework/include/mfem/postprocessors/MFEMPostprocessor.h @@ -14,16 +14,18 @@ #include "Postprocessor.h" #include "MFEMExecutedObject.h" +namespace Moose::MFEM +{ /** * Postprocessor for MFEM results. Must inherit from Postprocessor in * order for MOOSE to call it. */ -class MFEMPostprocessor : public MFEMExecutedObject, public Postprocessor +class Postprocessor : public ExecutedObject, public ::Postprocessor { public: static InputParameters validParams(); - MFEMPostprocessor(const InputParameters & parameters); + Postprocessor(const InputParameters & parameters); virtual std::optional suppliedPostprocessorName() const override; @@ -38,4 +40,5 @@ class MFEMPostprocessor : public MFEMExecutedObject, public Postprocessor virtual void finalize() override {} }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.h b/framework/include/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.h index 896e77c87701..22766196eac3 100644 --- a/framework/include/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.h +++ b/framework/include/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.h @@ -14,17 +14,18 @@ #include "MFEMPostprocessor.h" #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ /** * Compute the integral of the innter product between two MFEM vector FE variables, scaled by an * optional scalar coefficient. */ -class MFEMVectorFEInnerProductIntegralPostprocessor : public MFEMPostprocessor, - public MFEMBlockRestrictable +class VectorFEInnerProductIntegralPostprocessor : public Postprocessor, public BlockRestrictable { public: static InputParameters validParams(); - MFEMVectorFEInnerProductIntegralPostprocessor(const InputParameters & parameters); + VectorFEInnerProductIntegralPostprocessor(const InputParameters & parameters); /** * Evaluate integral. @@ -43,4 +44,5 @@ class MFEMVectorFEInnerProductIntegralPostprocessor : public MFEMPostprocessor, mfem::ParLinearForm _subdomain_integrator; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/postprocessors/MFEMVectorL2Error.h b/framework/include/mfem/postprocessors/MFEMVectorL2Error.h index 6b308afe1dcf..fd8de1fcdd46 100644 --- a/framework/include/mfem/postprocessors/MFEMVectorL2Error.h +++ b/framework/include/mfem/postprocessors/MFEMVectorL2Error.h @@ -13,15 +13,17 @@ #include "MFEMPostprocessor.h" +namespace Moose::MFEM +{ /** * Compute the L2 error for a vector variable. */ -class MFEMVectorL2Error : public MFEMPostprocessor +class VectorL2Error : public Postprocessor { public: static InputParameters validParams(); - MFEMVectorL2Error(const InputParameters & parameters); + VectorL2Error(const InputParameters & parameters); virtual void initialize() override; virtual void execute() override; @@ -36,4 +38,5 @@ class MFEMVectorL2Error : public MFEMPostprocessor mfem::GridFunction & _var; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/problem/MFEMProblem.h b/framework/include/mfem/problem/MFEMProblem.h index bfa67e0f1200..5b55ceeb778f 100644 --- a/framework/include/mfem/problem/MFEMProblem.h +++ b/framework/include/mfem/problem/MFEMProblem.h @@ -18,7 +18,9 @@ #include "MFEMRefinementMarker.h" #include "MFEMComplexVariable.h" -class MFEMProblem : public ExternalProblem +namespace Moose::MFEM +{ +class Problem : public ExternalProblem { public: /** @@ -29,12 +31,12 @@ class MFEMProblem : public ExternalProblem /** * Construct an MFEM problem from the supplied parameters. */ - MFEMProblem(const InputParameters & params); + Problem(const InputParameters & params); /** * Destroy the MFEM problem. */ - virtual ~MFEMProblem() {} + virtual ~Problem() {} virtual void initialSetup() override; virtual void execute(const ExecFlagType & exec_type) override; @@ -43,10 +45,10 @@ class MFEMProblem : public ExternalProblem /** * Overwritten mesh() method from base MooseMesh to retrieve the correct mesh type, in this case - * MFEMMesh. + * Moose::MFEM::Mesh. */ - virtual MFEMMesh & mesh() override; - virtual const MFEMMesh & mesh() const override; + virtual Mesh & mesh() override; + virtual const Mesh & mesh() const override; using ExternalProblem::mesh; /** @@ -134,28 +136,28 @@ class MFEMProblem : public ExternalProblem InputParameters & parameters) override; /** - * Adds a real component kernel to the parent MFEMComplexKernel. + * Adds a real component kernel to the parent Moose::MFEM::ComplexKernel. */ void addRealComponentToKernel(const std::string & kernel_name, const std::string & name, InputParameters & parameters); /** - * Adds an imaginary component kernel to the parent MFEMComplexKernel. + * Adds an imaginary component kernel to the parent Moose::MFEM::ComplexKernel. */ void addImagComponentToKernel(const std::string & kernel_name, const std::string & name, InputParameters & parameters); /** - * Adds a real component BC to the parent MFEMComplexIntegratedBC. + * Adds a real component BC to the parent Moose::MFEM::ComplexIntegratedBC. */ void addRealComponentToBC(const std::string & kernel_name, const std::string & name, InputParameters & parameters); /** - * Adds an imaginary component BC to the parent MFEMComplexIntegratedBC. + * Adds an imaginary component BC to the parent Moose::MFEM::ComplexIntegratedBC. */ void addImagComponentToBC(const std::string & kernel_name, const std::string & name, @@ -206,16 +208,16 @@ class MFEMProblem : public ExternalProblem const std::string & name, InputParameters & parameters); /** - * Override of FEProblemBase::addIndicator. Creates the MFEMIndicator used when setting up - * adaptive mesh refinement later. + * Override of FEProblemBase::addIndicator. Creates the Moose::MFEM::Indicator used when setting + * up adaptive mesh refinement later. */ void addIndicator(const std::string & type, const std::string & name, InputParameters & parameters) override; /** - * Override of FEProblemBase::addMarker. Creates the MFEMRefinementMarker used for adaptive mesh - * refinement. + * Override of FEProblemBase::addMarker. Creates the Moose::MFEM::RefinementMarker used for + * adaptive mesh refinement. */ void addMarker(const std::string & type, const std::string & name, @@ -228,15 +230,6 @@ class MFEMProblem : public ExternalProblem const std::string & name, InputParameters & parameters); - /** - * Add the nonlinear solver to the system. TODO: allow user to specify solver options, - * similar to the linear solvers. - */ - void addMFEMNonlinearSolver(unsigned int nl_max_its, - mfem::real_t nl_abs_tol, - mfem::real_t nl_rel_tol, - unsigned int print_level); - /** * Execute MFEM executed objects scheduled on the supplied execute flag. */ @@ -254,18 +247,18 @@ class MFEMProblem : public ExternalProblem * properties and converting them to MFEM coefficients. This is used * by Material and Kernel classes (among others). */ - Moose::MFEM::CoefficientManager & getCoefficients() { return _problem_data.coefficients; } + CoefficientManager & getCoefficients() { return _problem_data.coefficients; } /** - * Method to get the current MFEMProblemData object storing the + * Method to get the current ProblemData object storing the * current data specifying the FE problem. */ - MFEMProblemData & getProblemData() { return _problem_data; } + ProblemData & getProblemData() { return _problem_data; } /** * Return the current MFEM problem data in a const context. */ - const MFEMProblemData & getProblemData() const { return _problem_data; } + const ProblemData & getProblemData() const { return _problem_data; } /** * Return the MPI communicator associated with this FE problem's mesh. @@ -283,7 +276,7 @@ class MFEMProblem : public ExternalProblem return *_problem_data.cmplx_gridfunctions.Get(var_name)->ParFESpace()->GetParMesh(); else mooseError("Variable " + var_name + - " not found in MFEMProblem real or complex gridfunctions."); + " not found in Moose::MFEM::Problem real or complex gridfunctions."); } /** @@ -373,14 +366,14 @@ class MFEMProblem : public ExternalProblem /** * Aggregated MFEM-side state for meshes, spaces, variables, coefficients, and solvers. */ - MFEMProblemData _problem_data; + ProblemData _problem_data; }; template T & -MFEMProblem::getMFEMObject(const std::string & system, - const std::string & name, - const THREAD_ID tid) const +Problem::getMFEMObject(const std::string & system, + const std::string & name, + const THREAD_ID tid) const { std::vector objs; theWarehouse() @@ -395,4 +388,5 @@ MFEMProblem::getMFEMObject(const std::string & system, return *(objs[0]); } +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/problem/MFEMProblemData.h b/framework/include/mfem/problem/MFEMProblemData.h index 0751cbe2a6f6..37549327a348 100644 --- a/framework/include/mfem/problem/MFEMProblemData.h +++ b/framework/include/mfem/problem/MFEMProblemData.h @@ -15,39 +15,43 @@ #include "ComplexEquationSystem.h" #include "MFEMContainers.h" #include "CoefficientManager.h" -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +#include "MFEMNonlinearSolverBase.h" #include "MFEMRefinementMarker.h" +namespace Moose::MFEM +{ /// Base problem data struct. -struct MFEMProblemData +struct ProblemData { public: - MFEMProblemData() = default; - virtual ~MFEMProblemData() { ode_solver.reset(); }; + ProblemData() = default; + virtual ~ProblemData() { ode_solver.reset(); }; std::shared_ptr pmesh{nullptr}; - Moose::MFEM::SubMeshes submeshes; - Moose::MFEM::CoefficientManager coefficients; + SubMeshes submeshes; + CoefficientManager coefficients; std::unique_ptr ode_solver{nullptr}; mfem::BlockVector f; - std::shared_ptr eqn_system{nullptr}; - std::shared_ptr nonlinear_solver{nullptr}; + std::shared_ptr eqn_system{nullptr}; + std::shared_ptr nonlinear_solver{nullptr}; - std::shared_ptr jacobian_solver{nullptr}; + std::shared_ptr jacobian_solver{nullptr}; - Moose::MFEM::FECollections fecs; - Moose::MFEM::FESpaces fespaces; - Moose::MFEM::GridFunctions gridfunctions; - Moose::MFEM::TimeDerivativeMap time_derivative_map; - Moose::MFEM::ComplexGridFunctions cmplx_gridfunctions; + FECollections fecs; + FESpaces fespaces; + GridFunctions gridfunctions; + TimeDerivativeMap time_derivative_map; + ComplexGridFunctions cmplx_gridfunctions; - std::shared_ptr refiner; + std::shared_ptr refiner; MPI_Comm comm; int myid; int num_procs; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/problem_operators/ComplexEquationSystemProblemOperator.h b/framework/include/mfem/problem_operators/ComplexEquationSystemProblemOperator.h index 05f165012916..e02be95f4d51 100644 --- a/framework/include/mfem/problem_operators/ComplexEquationSystemProblemOperator.h +++ b/framework/include/mfem/problem_operators/ComplexEquationSystemProblemOperator.h @@ -20,17 +20,16 @@ class ComplexEquationSystemProblemOperator : public EquationSystemProblemOperato { public: - ComplexEquationSystemProblemOperator(MFEMProblem & problem) + ComplexEquationSystemProblemOperator(Problem & problem) : EquationSystemProblemOperator(problem), - _equation_system{ - std::dynamic_pointer_cast(_problem_data.eqn_system)} + _equation_system{std::dynamic_pointer_cast(_problem_data.eqn_system)} { } virtual void SetGridFunctions() override; virtual void Solve() override; - [[nodiscard]] virtual Moose::MFEM::ComplexEquationSystem * GetEquationSystem() const override + [[nodiscard]] virtual ComplexEquationSystem * GetEquationSystem() const override { mooseAssert(_equation_system, "No ComplexEquationSystem in ComplexEquationSystemProblemOperator."); @@ -38,7 +37,7 @@ class ComplexEquationSystemProblemOperator : public EquationSystemProblemOperato } private: - std::shared_ptr _equation_system{nullptr}; + std::shared_ptr _equation_system{nullptr}; std::vector _cmplx_trial_variables; std::vector _cmplx_test_variables; }; diff --git a/framework/include/mfem/problem_operators/EquationSystemProblemOperator.h b/framework/include/mfem/problem_operators/EquationSystemProblemOperator.h index 3f52306c12bf..c09ecdbdf282 100644 --- a/framework/include/mfem/problem_operators/EquationSystemProblemOperator.h +++ b/framework/include/mfem/problem_operators/EquationSystemProblemOperator.h @@ -20,7 +20,7 @@ namespace Moose::MFEM class EquationSystemProblemOperator : public ProblemOperator, public EquationSystemInterface { public: - EquationSystemProblemOperator(MFEMProblem & problem) + EquationSystemProblemOperator(Problem & problem) : ProblemOperator(problem), _equation_system(_problem_data.eqn_system) { } @@ -28,7 +28,7 @@ class EquationSystemProblemOperator : public ProblemOperator, public EquationSys virtual void SetGridFunctions() override; virtual void Solve() override; - [[nodiscard]] virtual Moose::MFEM::EquationSystem * GetEquationSystem() const override + [[nodiscard]] virtual EquationSystem * GetEquationSystem() const override { mooseAssert(_equation_system, "No EquationSystem in EquationSystemProblemOperator."); return _equation_system.get(); @@ -39,7 +39,7 @@ class EquationSystemProblemOperator : public ProblemOperator, public EquationSys void BuildEquationSystemOperator(); private: - std::shared_ptr _equation_system{nullptr}; + std::shared_ptr _equation_system{nullptr}; }; } // namespace Moose::MFEM diff --git a/framework/include/mfem/problem_operators/ProblemOperator.h b/framework/include/mfem/problem_operators/ProblemOperator.h index 2ead064b556e..9b7e83dc01b2 100644 --- a/framework/include/mfem/problem_operators/ProblemOperator.h +++ b/framework/include/mfem/problem_operators/ProblemOperator.h @@ -11,7 +11,6 @@ #pragma once -#include "MFEMProblemData.h" #include "ProblemOperatorBase.h" namespace Moose::MFEM @@ -20,7 +19,7 @@ namespace Moose::MFEM class ProblemOperator : public mfem::Operator, public ProblemOperatorBase { public: - ProblemOperator(MFEMProblem & problem) : ProblemOperatorBase(problem) {} + ProblemOperator(Problem & problem) : ProblemOperatorBase(problem) {} virtual void SetGridFunctions() override; diff --git a/framework/include/mfem/problem_operators/ProblemOperatorBase.h b/framework/include/mfem/problem_operators/ProblemOperatorBase.h index 99cf203e3c0f..df7547aaba35 100644 --- a/framework/include/mfem/problem_operators/ProblemOperatorBase.h +++ b/framework/include/mfem/problem_operators/ProblemOperatorBase.h @@ -12,6 +12,7 @@ #pragma once #include "MFEMProblem.h" +#include namespace Moose::MFEM { @@ -19,7 +20,7 @@ namespace Moose::MFEM class ProblemOperatorBase { public: - ProblemOperatorBase(MFEMProblem & problem); + ProblemOperatorBase(Problem & problem); virtual ~ProblemOperatorBase() = default; virtual void SetGridFunctions(); @@ -33,9 +34,17 @@ class ProblemOperatorBase mfem::BlockVector _true_x, _true_rhs; protected: + /// Solve the current operator using the configured nonlinear solver, or a one-step Newton solve + /// when no nonlinear solver object has been provided for a linear problem. + void SolveWithOperator(mfem::Operator & op, + const mfem::Vector & rhs, + mfem::Vector & x, + bool nonlinear, + const std::function & prepare_linear_solver); + /// Reference to the current problem. - MFEMProblem & _problem; - MFEMProblemData & _problem_data; + Problem & _problem; + ProblemData & _problem_data; /// Vector of names of state gridfunctions used in formulation, ordered by appearance in block /// vector during solve. diff --git a/framework/include/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.h b/framework/include/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.h index 9c622a60cd20..c16f71844bed 100644 --- a/framework/include/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.h +++ b/framework/include/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.h @@ -23,7 +23,7 @@ class TimeDependentEquationSystemProblemOperator : public TimeDependentProblemOp public EquationSystemInterface { public: - TimeDependentEquationSystemProblemOperator(MFEMProblem & problem) + TimeDependentEquationSystemProblemOperator(Problem & problem) : TimeDependentProblemOperator(problem), _equation_system( std::dynamic_pointer_cast(_problem_data.eqn_system)) @@ -35,8 +35,7 @@ class TimeDependentEquationSystemProblemOperator : public TimeDependentProblemOp virtual void ImplicitSolve(const mfem::real_t, const mfem::Vector &, mfem::Vector &) override; virtual void Solve() override; - [[nodiscard]] virtual Moose::MFEM::TimeDependentEquationSystem * - GetEquationSystem() const override + [[nodiscard]] virtual TimeDependentEquationSystem * GetEquationSystem() const override { mooseAssert(_equation_system, "No TimeDependentEquationSystem in TimeDependentEquationSystemProblemOperator."); @@ -48,7 +47,7 @@ class TimeDependentEquationSystemProblemOperator : public TimeDependentProblemOp void BuildEquationSystemOperator(mfem::real_t dt); private: - std::shared_ptr _equation_system{nullptr}; + std::shared_ptr _equation_system{nullptr}; }; } // namespace Moose::MFEM diff --git a/framework/include/mfem/problem_operators/TimeDependentProblemOperator.h b/framework/include/mfem/problem_operators/TimeDependentProblemOperator.h index 73bb0c885dea..8cc896db32a1 100644 --- a/framework/include/mfem/problem_operators/TimeDependentProblemOperator.h +++ b/framework/include/mfem/problem_operators/TimeDependentProblemOperator.h @@ -11,7 +11,6 @@ #pragma once -#include "MFEMProblemData.h" #include "ProblemOperatorBase.h" namespace Moose::MFEM @@ -21,7 +20,7 @@ namespace Moose::MFEM class TimeDependentProblemOperator : public mfem::TimeDependentOperator, public ProblemOperatorBase { public: - TimeDependentProblemOperator(MFEMProblem & problem) : ProblemOperatorBase(problem) {} + TimeDependentProblemOperator(Problem & problem) : ProblemOperatorBase(problem) {} virtual void SetGridFunctions() override; virtual void Solve() override {} diff --git a/framework/include/mfem/solvers/MFEMCGSolver.h b/framework/include/mfem/solvers/MFEMCGSolver.h index 2f38833bc381..9da480878f92 100644 --- a/framework/include/mfem/solvers/MFEMCGSolver.h +++ b/framework/include/mfem/solvers/MFEMCGSolver.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::CGSolver. */ -class MFEMCGSolver : public MFEMSolverBase +class CGSolver : public LinearSolverBase { public: static InputParameters validParams(); - MFEMCGSolver(const InputParameters & parameters); + CGSolver(const InputParameters & parameters); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -30,4 +32,5 @@ class MFEMCGSolver : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMGMRESSolver.h b/framework/include/mfem/solvers/MFEMGMRESSolver.h index 3709a09afef3..2175c4a550a9 100644 --- a/framework/include/mfem/solvers/MFEMGMRESSolver.h +++ b/framework/include/mfem/solvers/MFEMGMRESSolver.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::GMRESSolver. */ -class MFEMGMRESSolver : public MFEMSolverBase +class GMRESSolver : public LinearSolverBase { public: static InputParameters validParams(); - MFEMGMRESSolver(const InputParameters & parameters); + GMRESSolver(const InputParameters & parameters); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -30,4 +32,5 @@ class MFEMGMRESSolver : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHypreADS.h b/framework/include/mfem/solvers/MFEMHypreADS.h index e589af1daa51..741c5cc5e823 100644 --- a/framework/include/mfem/solvers/MFEMHypreADS.h +++ b/framework/include/mfem/solvers/MFEMHypreADS.h @@ -11,18 +11,20 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" #include "MFEMFESpace.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HypreADS solver. */ -class MFEMHypreADS : public MFEMSolverBase +class HypreADS : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHypreADS(const InputParameters &); + HypreADS(const InputParameters &); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -31,7 +33,8 @@ class MFEMHypreADS : public MFEMSolverBase void constructSolver() override; private: - const MFEMFESpace & _mfem_fespace; + const FESpace & _mfem_fespace; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHypreAMS.h b/framework/include/mfem/solvers/MFEMHypreAMS.h index 0a1c9dcecc5e..8e69cb2ddd29 100644 --- a/framework/include/mfem/solvers/MFEMHypreAMS.h +++ b/framework/include/mfem/solvers/MFEMHypreAMS.h @@ -11,18 +11,20 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" #include "MFEMFESpace.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HypreAMS solver. */ -class MFEMHypreAMS : public MFEMSolverBase +class HypreAMS : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHypreAMS(const InputParameters &); + HypreAMS(const InputParameters &); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -31,7 +33,8 @@ class MFEMHypreAMS : public MFEMSolverBase void constructSolver() override; private: - const MFEMFESpace & _mfem_fespace; + const FESpace & _mfem_fespace; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHypreBoomerAMG.h b/framework/include/mfem/solvers/MFEMHypreBoomerAMG.h index 20ec916c665d..e5d1f525554f 100644 --- a/framework/include/mfem/solvers/MFEMHypreBoomerAMG.h +++ b/framework/include/mfem/solvers/MFEMHypreBoomerAMG.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HypreBoomerAMG solver. */ -class MFEMHypreBoomerAMG : public MFEMSolverBase +class HypreBoomerAMG : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHypreBoomerAMG(const InputParameters &); + HypreBoomerAMG(const InputParameters &); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -33,4 +35,5 @@ class MFEMHypreBoomerAMG : public MFEMSolverBase std::shared_ptr _mfem_fespace{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHypreFGMRES.h b/framework/include/mfem/solvers/MFEMHypreFGMRES.h index 8d01d570d068..01f8f9293920 100644 --- a/framework/include/mfem/solvers/MFEMHypreFGMRES.h +++ b/framework/include/mfem/solvers/MFEMHypreFGMRES.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HypreFGMRES solver. */ -class MFEMHypreFGMRES : public MFEMSolverBase +class HypreFGMRES : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHypreFGMRES(const InputParameters & parameters); + HypreFGMRES(const InputParameters & parameters); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -30,4 +32,5 @@ class MFEMHypreFGMRES : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHypreGMRES.h b/framework/include/mfem/solvers/MFEMHypreGMRES.h index 1049d6e4260c..fd2b402567cf 100644 --- a/framework/include/mfem/solvers/MFEMHypreGMRES.h +++ b/framework/include/mfem/solvers/MFEMHypreGMRES.h @@ -11,18 +11,20 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" #include "MFEMHypreBoomerAMG.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HypreGMRES solver. */ -class MFEMHypreGMRES : public MFEMSolverBase +class HypreGMRES : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHypreGMRES(const InputParameters &); + HypreGMRES(const InputParameters &); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -31,4 +33,5 @@ class MFEMHypreGMRES : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHyprePCG.h b/framework/include/mfem/solvers/MFEMHyprePCG.h index 35f3e4ebf0b3..47d8e4db4081 100644 --- a/framework/include/mfem/solvers/MFEMHyprePCG.h +++ b/framework/include/mfem/solvers/MFEMHyprePCG.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::HyprePCG solver. */ -class MFEMHyprePCG : public MFEMSolverBase +class HyprePCG : public LinearSolverBase { public: static InputParameters validParams(); - MFEMHyprePCG(const InputParameters & parameters); + HyprePCG(const InputParameters & parameters); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -30,4 +32,5 @@ class MFEMHyprePCG : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMHyprePatch.h b/framework/include/mfem/solvers/MFEMHyprePatch.h index f25ed7685ae4..508e7df879cc 100644 --- a/framework/include/mfem/solvers/MFEMHyprePatch.h +++ b/framework/include/mfem/solvers/MFEMHyprePatch.h @@ -11,6 +11,10 @@ #ifdef MOOSE_MFEM_ENABLED +#pragma once + +#include "mfem/linalg/hypre.hpp" + namespace mfem { namespace patched diff --git a/framework/include/mfem/solvers/MFEMLinearSolverBase.h b/framework/include/mfem/solvers/MFEMLinearSolverBase.h new file mode 100644 index 000000000000..9a12a71c912d --- /dev/null +++ b/framework/include/mfem/solvers/MFEMLinearSolverBase.h @@ -0,0 +1,52 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#pragma once + +#include "MFEMSolverBase.h" + +namespace Moose::MFEM +{ +/** + * Base class for linear MFEM solvers and preconditioners. + */ +class LinearSolverBase : public SolverBase +{ +public: + static InputParameters validParams(); + + LinearSolverBase(const InputParameters & parameters); + + /// Retrieves the preconditioner userobject if present, sets the member pointer to + /// said object if still unset, and sets the solver to use this preconditioner. + template + void setPreconditioner(T & solver); + + /// Updates the solver with the given bilinear form and essential dof list, in case an LOR or + /// algebraic solver is needed. + virtual void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) = 0; + + /// Returns whether or not this solver (or its preconditioner) uses LOR + bool isLOR() const { return _lor || (_preconditioner && _preconditioner->isLOR()); } + +protected: + /// Checks for the correct configuration of quadrature bases for LOR spectral equivalence + virtual void checkSpectralEquivalence(mfem::ParBilinearForm & blf) const; + + /// Variable defining whether to use LOR solver + bool _lor; + + /// Preconditioner to be used for the problem + LinearSolverBase * _preconditioner; +}; +} // namespace Moose::MFEM + +#endif diff --git a/framework/include/mfem/solvers/MFEMMUMPS.h b/framework/include/mfem/solvers/MFEMMUMPS.h index f5b81c21dc1a..f132d799892a 100644 --- a/framework/include/mfem/solvers/MFEMMUMPS.h +++ b/framework/include/mfem/solvers/MFEMMUMPS.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::MUMPSSolver */ -class MFEMMUMPS : public MFEMSolverBase +class MUMPS : public LinearSolverBase { public: static InputParameters validParams(); - MFEMMUMPS(const InputParameters & parameters); + MUMPS(const InputParameters & parameters); protected: void constructSolver() override; @@ -30,4 +32,5 @@ class MFEMMUMPS : public MFEMSolverBase void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMNewtonNonlinearSolver.h b/framework/include/mfem/solvers/MFEMNewtonNonlinearSolver.h new file mode 100644 index 000000000000..61c24158c076 --- /dev/null +++ b/framework/include/mfem/solvers/MFEMNewtonNonlinearSolver.h @@ -0,0 +1,38 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#pragma once + +#include "MFEMNonlinearSolverBase.h" + +namespace Moose::MFEM +{ +/** + * MooseObject wrapper for mfem::NewtonSolver-backed nonlinear solves. + */ +class NewtonNonlinearSolver : public NonlinearSolverBase +{ +public: + static InputParameters validParams(); + + NewtonNonlinearSolver(const InputParameters & parameters); + + void constructSolver() override; + + void SetOperator(const mfem::Operator & op) override; + void SetLinearSolver(mfem::Solver & solver) override; + void Mult(const mfem::Vector & rhs, mfem::Vector & x) override; + bool requiresGradient() const override { return true; } + bool usesExternalLinearSolver() const override { return true; } +}; + +} // namespace Moose::MFEM +#endif diff --git a/framework/include/mfem/solvers/MFEMNonlinearSolverBase.h b/framework/include/mfem/solvers/MFEMNonlinearSolverBase.h new file mode 100644 index 000000000000..18b278d87339 --- /dev/null +++ b/framework/include/mfem/solvers/MFEMNonlinearSolverBase.h @@ -0,0 +1,53 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#pragma once + +#include "MFEMSolverBase.h" + +#include "libmesh/ignore_warnings.h" +#include "mfem.hpp" +#include "libmesh/restore_warnings.h" + +namespace Moose::MFEM +{ +/** + * MooseObject base for nonlinear MFEM solve strategies configured in the input file. + */ +class NonlinearSolverBase : public SolverBase +{ +public: + virtual ~NonlinearSolverBase() = default; + + static InputParameters validParams(); + + NonlinearSolverBase(const InputParameters & parameters); + + void constructSolver() override = 0; + + /// Configure the nonlinear solver with the residual/Jacobian operator. + virtual void SetOperator(const mfem::Operator & op) = 0; + + /// Configure the linear solver used inside the nonlinear solve. + virtual void SetLinearSolver(mfem::Solver & solver) = 0; + + /// Solve the nonlinear system for the provided right-hand side and solution vector. + virtual void Mult(const mfem::Vector & rhs, mfem::Vector & x) = 0; + + /// Return whether this nonlinear solver requires Jacobian/gradient information from the operator. + virtual bool requiresGradient() const = 0; + + /// Return whether this nonlinear solver uses the externally configured MFEM linear solver. + virtual bool usesExternalLinearSolver() const = 0; +}; +} // namespace Moose::MFEM + +#endif diff --git a/framework/include/mfem/solvers/MFEMOperatorJacobiSmoother.h b/framework/include/mfem/solvers/MFEMOperatorJacobiSmoother.h index 41ec7f404130..2c42817c7365 100644 --- a/framework/include/mfem/solvers/MFEMOperatorJacobiSmoother.h +++ b/framework/include/mfem/solvers/MFEMOperatorJacobiSmoother.h @@ -11,17 +11,19 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" +namespace Moose::MFEM +{ /** * Wrapper for mfem::OperatorJacobiSmoother solver. */ -class MFEMOperatorJacobiSmoother : public MFEMSolverBase +class OperatorJacobiSmoother : public LinearSolverBase { public: static InputParameters validParams(); - MFEMOperatorJacobiSmoother(const InputParameters & parameters); + OperatorJacobiSmoother(const InputParameters & parameters); /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; @@ -30,4 +32,5 @@ class MFEMOperatorJacobiSmoother : public MFEMSolverBase void constructSolver() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/solvers/MFEMPetscNonlinearSolver.h b/framework/include/mfem/solvers/MFEMPetscNonlinearSolver.h new file mode 100644 index 000000000000..1ac5f1608ca9 --- /dev/null +++ b/framework/include/mfem/solvers/MFEMPetscNonlinearSolver.h @@ -0,0 +1,42 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#pragma once + +#include "MFEMNonlinearSolverBase.h" + +#ifdef MFEM_USE_PETSC + +namespace Moose::MFEM +{ +/** + * MooseObject wrapper for mfem::PetscNonlinearSolver-backed nonlinear solves. + */ +class PetscNonlinearSolver : public NonlinearSolverBase +{ +public: + static InputParameters validParams(); + + PetscNonlinearSolver(const InputParameters & parameters); + + void constructSolver() override; + + void SetOperator(const mfem::Operator & op) override; + void SetLinearSolver(mfem::Solver & solver) override; + void Mult(const mfem::Vector & rhs, mfem::Vector & x) override; + bool requiresGradient() const override { return true; } + bool usesExternalLinearSolver() const override { return false; } +}; + +#endif + +} // namespace Moose::MFEM +#endif diff --git a/framework/include/mfem/solvers/MFEMSolverBase.h b/framework/include/mfem/solvers/MFEMSolverBase.h index 635c44f577e3..0750ac804068 100644 --- a/framework/include/mfem/solvers/MFEMSolverBase.h +++ b/framework/include/mfem/solvers/MFEMSolverBase.h @@ -14,49 +14,32 @@ #include "MFEMObject.h" #include "MFEMHyprePatch.h" +namespace Moose::MFEM +{ /** * Base class for wrapping mfem::Solver-derived classes. */ -class MFEMSolverBase : public MFEMObject +class SolverBase : public Object { public: static InputParameters validParams(); - MFEMSolverBase(const InputParameters & parameters); - - /// Retrieves the preconditioner userobject if present, sets the member pointer to - /// said object if still unset, and sets the solver to use this preconditioner. - template - void setPreconditioner(T & solver); + SolverBase(const InputParameters & parameters); /// Returns the wrapped MFEM solver mfem::Solver & getSolver(); - /// Updates the solver with the given bilinear form and essential dof list, in case an LOR or algebraic solver is needed. - virtual void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) = 0; - - /// Returns whether or not this solver (or its preconditioner) uses LOR - bool isLOR() const { return _lor || (_preconditioner && _preconditioner->isLOR()); } - /// Override in derived classes to construct and set the solver options. virtual void constructSolver() = 0; protected: - /// Checks for the correct configuration of quadrature bases for LOR spectral equivalence - virtual void checkSpectralEquivalence(mfem::ParBilinearForm & blf) const; - - /// Variable defining whether to use LOR solver - bool _lor; - /// Solver to be used for the problem std::unique_ptr _solver; - - /// Preconditioner to be used for the problem - MFEMSolverBase * _preconditioner; }; +} // namespace Moose::MFEM inline mfem::Solver & -MFEMSolverBase::getSolver() +Moose::MFEM::SolverBase::getSolver() { mooseAssert(_solver, "Attempting to retrieve solver before it's been constructed"); return *_solver; diff --git a/framework/include/mfem/solvers/MFEMSuperLU.h b/framework/include/mfem/solvers/MFEMSuperLU.h index 13483fb0a4d7..9a37d26f0763 100644 --- a/framework/include/mfem/solvers/MFEMSuperLU.h +++ b/framework/include/mfem/solvers/MFEMSuperLU.h @@ -11,7 +11,7 @@ #pragma once -#include "MFEMSolverBase.h" +#include "MFEMLinearSolverBase.h" namespace Moose::MFEM { @@ -36,17 +36,16 @@ class SuperLUSolver : public mfem::SuperLUSolver std::unique_ptr _a_superlu{nullptr}; std::unique_ptr _s_superlu{nullptr}; }; -} // namespace Moose::MFEM /** - * Wrapper for Moose::MFEM::SuperLUSolver. + * Wrapper for SuperLUSolver. */ -class MFEMSuperLU : public MFEMSolverBase +class SuperLU : public LinearSolverBase { public: static InputParameters validParams(); - MFEMSuperLU(const InputParameters & parameters); + SuperLU(const InputParameters & parameters); protected: void constructSolver() override; @@ -54,5 +53,6 @@ class MFEMSuperLU : public MFEMSolverBase /// Updates the solver with the bilinear form in case LOR solve is required void updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/submeshes/MFEMBoundarySubMesh.h b/framework/include/mfem/submeshes/MFEMBoundarySubMesh.h index 8b463edbb17b..17107de27a4d 100644 --- a/framework/include/mfem/submeshes/MFEMBoundarySubMesh.h +++ b/framework/include/mfem/submeshes/MFEMBoundarySubMesh.h @@ -14,19 +14,22 @@ #include "MFEMSubMesh.h" #include "MFEMBoundaryRestrictable.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParSubMesh object as * as a restriction of the parent mesh to the set of user-specified boundaries. * Access using the getSubMesh() accessor. */ -class MFEMBoundarySubMesh : public MFEMSubMesh, public MFEMBoundaryRestrictable +class BoundarySubMesh : public SubMesh, public BoundaryRestrictable { public: static InputParameters validParams(); - MFEMBoundarySubMesh(const InputParameters & parameters); + BoundarySubMesh(const InputParameters & parameters); protected: virtual void buildSubMesh() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/submeshes/MFEMCutTransitionSubMesh.h b/framework/include/mfem/submeshes/MFEMCutTransitionSubMesh.h index b470dd6fdb45..504ba56f08fd 100644 --- a/framework/include/mfem/submeshes/MFEMCutTransitionSubMesh.h +++ b/framework/include/mfem/submeshes/MFEMCutTransitionSubMesh.h @@ -14,17 +14,19 @@ #include "MFEMSubMesh.h" #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ /** * Modifies the MFEM Mesh to label a subdomain consisting of elements adjacent to an * interior surface on one side, and constructs and stores an mfem::ParSubMesh object * associated with it. * Access using the getSubMesh() accessor. */ -class MFEMCutTransitionSubMesh : public MFEMSubMesh, public MFEMBlockRestrictable +class CutTransitionSubMesh : public SubMesh, public BlockRestrictable { public: static InputParameters validParams(); - MFEMCutTransitionSubMesh(const InputParameters & parameters); + CutTransitionSubMesh(const InputParameters & parameters); protected: virtual void buildSubMesh() override; @@ -52,4 +54,5 @@ class MFEMCutTransitionSubMesh : public MFEMSubMesh, public MFEMBlockRestrictabl mfem::Vector _cut_normal; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/submeshes/MFEMDomainSubMesh.h b/framework/include/mfem/submeshes/MFEMDomainSubMesh.h index e6e478787253..d42767bf11a3 100644 --- a/framework/include/mfem/submeshes/MFEMDomainSubMesh.h +++ b/framework/include/mfem/submeshes/MFEMDomainSubMesh.h @@ -14,19 +14,22 @@ #include "MFEMSubMesh.h" #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParSubMesh object as * as a restriction of the parent mesh to the set of user-specified subdomains. * Access using the getSubMesh() accessor. */ -class MFEMDomainSubMesh : public MFEMSubMesh, public MFEMBlockRestrictable +class DomainSubMesh : public SubMesh, public BlockRestrictable { public: static InputParameters validParams(); - MFEMDomainSubMesh(const InputParameters & parameters); + DomainSubMesh(const InputParameters & parameters); protected: virtual void buildSubMesh() override; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/submeshes/MFEMSubMesh.h b/framework/include/mfem/submeshes/MFEMSubMesh.h index 0f4ddc8ecd65..d4fbd1b7a77e 100644 --- a/framework/include/mfem/submeshes/MFEMSubMesh.h +++ b/framework/include/mfem/submeshes/MFEMSubMesh.h @@ -13,16 +13,18 @@ #include "MFEMObject.h" +namespace Moose::MFEM +{ /** * Base class for construction of a mfem::ParSubMesh object. Access using the * getSubMesh() accessor. */ -class MFEMSubMesh : public MFEMObject +class SubMesh : public Object { public: static InputParameters validParams(); - MFEMSubMesh(const InputParameters & parameters); + SubMesh(const InputParameters & parameters); /// Returns a shared pointer to the constructed fespace. inline std::shared_ptr getSubMesh() @@ -39,4 +41,5 @@ class MFEMSubMesh : public MFEMObject virtual void buildSubMesh() = 0; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/transfers/MFEMSubMeshTransfer.h b/framework/include/mfem/transfers/MFEMSubMeshTransfer.h index d744a7bd4730..72daea8fc481 100644 --- a/framework/include/mfem/transfers/MFEMSubMeshTransfer.h +++ b/framework/include/mfem/transfers/MFEMSubMeshTransfer.h @@ -13,16 +13,18 @@ #include "MFEMExecutedObject.h" +namespace Moose::MFEM +{ /** * Class to transfer MFEM variable data to or from a restricted copy of the variable defined on an a - * subspace of an MFEMMesh, represented as an MFEMSubMesh. + * subspace of an Moose::MFEM::Mesh, represented as an Moose::MFEM::SubMesh. */ -class MFEMSubMeshTransfer : public MFEMExecutedObject +class SubMeshTransfer : public ExecutedObject { public: static InputParameters validParams(); - MFEMSubMeshTransfer(const InputParameters & parameters); + SubMeshTransfer(const InputParameters & parameters); virtual std::optional suppliedVariableName() const override; @@ -30,14 +32,15 @@ class MFEMSubMeshTransfer : public MFEMExecutedObject virtual void execute() override; private: - /// Name of source MFEMVariable to transfer DoF data from. + /// Name of source Moose::MFEM::Variable to transfer DoF data from. const VariableName & _source_var_name; /// Reference to source gridfunction. const mfem::ParGridFunction & _source_var; - /// Name of MFEMVariable to store the transferred output in. + /// Name of Moose::MFEM::Variable to store the transferred output in. const VariableName & _result_var_name; /// Reference to result gridfunction. mfem::ParGridFunction & _result_var; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/transfers/MultiAppMFEMCopyTransfer.h b/framework/include/mfem/transfers/MultiAppMFEMCopyTransfer.h index 5068d94dd3e2..891902dda072 100644 --- a/framework/include/mfem/transfers/MultiAppMFEMCopyTransfer.h +++ b/framework/include/mfem/transfers/MultiAppMFEMCopyTransfer.h @@ -23,7 +23,7 @@ class MooseMesh; //* // Copy MFEMVariables between multiapps // The variables must be of the same type and dimension -// and the MFEMMesh must be identical in both multiapps +// and the Moose::MFEM::Mesh must be identical in both multiapps // */ class MultiAppMFEMCopyTransfer : public MultiAppTransfer @@ -41,7 +41,7 @@ class MultiAppMFEMCopyTransfer : public MultiAppTransfer std::vector _from_var_names; std::vector _to_var_names; - void transfer(MFEMProblem & to_problem, MFEMProblem & from_problem); + void transfer(Moose::MFEM::Problem & to_problem, Moose::MFEM::Problem & from_problem); void checkSiblingsTransferSupported() const override; }; diff --git a/framework/include/mfem/variables/MFEMComplexVariable.h b/framework/include/mfem/variables/MFEMComplexVariable.h index 5aefbc1c4db1..3650fdfcd9a1 100644 --- a/framework/include/mfem/variables/MFEMComplexVariable.h +++ b/framework/include/mfem/variables/MFEMComplexVariable.h @@ -5,15 +5,17 @@ #include "MFEMFESpace.h" #include "MFEMObject.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParComplexGridFunction object. */ -class MFEMComplexVariable : public MFEMObject +class ComplexVariable : public Object { public: static InputParameters validParams(); - MFEMComplexVariable(const InputParameters & parameters); + ComplexVariable(const InputParameters & parameters); /// Returns a shared pointer to the constructed gridfunction. inline std::shared_ptr getComplexGridFunction() const @@ -22,10 +24,10 @@ class MFEMComplexVariable : public MFEMObject } /// Returns a reference to the fespace used by the gridfunction. - inline const MFEMFESpace & getFESpace() const { return _fespace; } + inline const FESpace & getFESpace() const { return _fespace; } protected: - const MFEMFESpace & _fespace; + const FESpace & _fespace; private: /// Constructs the gridfunction. @@ -35,4 +37,5 @@ class MFEMComplexVariable : public MFEMObject const std::shared_ptr _cmplx_gridfunction{nullptr}; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/variables/MFEMVariable.h b/framework/include/mfem/variables/MFEMVariable.h index a3d575acf133..5fe060e142af 100644 --- a/framework/include/mfem/variables/MFEMVariable.h +++ b/framework/include/mfem/variables/MFEMVariable.h @@ -14,27 +14,29 @@ #include "MFEMFESpace.h" #include "MFEMObject.h" +namespace Moose::MFEM +{ /** * Constructs and stores an mfem::ParGridFunction object. */ -class MFEMVariable : public MFEMObject +class Variable : public Object { public: static InputParameters validParams(); - MFEMVariable(const InputParameters & parameters); + Variable(const InputParameters & parameters); /// Returns a shared pointer to the constructed gridfunction. inline std::shared_ptr getGridFunction() const { return _gridfunction; } /// Returns a reference to the fespace used by the gridfunction. - inline const MFEMFESpace & getFESpace() const { return _fespace; } + inline const FESpace & getFESpace() const { return _fespace; } - /// Returns the variable name corresponding to the time derivative of the MFEMVariable. + /// Returns the variable name corresponding to the time derivative of the Moose::MFEM::Variable. inline const VariableName & getTimeDerivativeName() const { return _time_derivative_name; } protected: - const MFEMFESpace & _fespace; + const FESpace & _fespace; private: /// Constructs the gridfunction. @@ -47,4 +49,5 @@ class MFEMVariable : public MFEMObject const VariableName _time_derivative_name; }; +} // namespace Moose::MFEM #endif diff --git a/framework/include/mfem/vectorpostprocessors/MFEMLineValueSampler.h b/framework/include/mfem/vectorpostprocessors/MFEMLineValueSampler.h index 335c0dd9ddb3..d0d0987f2c9d 100644 --- a/framework/include/mfem/vectorpostprocessors/MFEMLineValueSampler.h +++ b/framework/include/mfem/vectorpostprocessors/MFEMLineValueSampler.h @@ -17,12 +17,15 @@ * MFEM Postprocessor which samples values at a set of points evenly * distributed along a line. */ -class MFEMLineValueSampler : public MFEMValueSamplerBase +namespace Moose::MFEM +{ +class LineValueSampler : public ValueSamplerBase { public: static InputParameters validParams(); - MFEMLineValueSampler(const InputParameters & parameters); + LineValueSampler(const InputParameters & parameters); }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/vectorpostprocessors/MFEMPointValueSampler.h b/framework/include/mfem/vectorpostprocessors/MFEMPointValueSampler.h index b1bc905590dc..66dd1f2287d7 100644 --- a/framework/include/mfem/vectorpostprocessors/MFEMPointValueSampler.h +++ b/framework/include/mfem/vectorpostprocessors/MFEMPointValueSampler.h @@ -16,12 +16,15 @@ /* * MFEM Postprocessor which samples values at points. */ -class MFEMPointValueSampler : public MFEMValueSamplerBase +namespace Moose::MFEM +{ +class PointValueSampler : public ValueSamplerBase { public: static InputParameters validParams(); - MFEMPointValueSampler(const InputParameters & parameters); + PointValueSampler(const InputParameters & parameters); }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/vectorpostprocessors/MFEMValueSamplerBase.h b/framework/include/mfem/vectorpostprocessors/MFEMValueSamplerBase.h index 3849de3e45e6..181c1c02696c 100644 --- a/framework/include/mfem/vectorpostprocessors/MFEMValueSamplerBase.h +++ b/framework/include/mfem/vectorpostprocessors/MFEMValueSamplerBase.h @@ -18,12 +18,14 @@ * * Subclasses should override validParams and provide and use the constructor. */ -class MFEMValueSamplerBase : public MFEMVectorPostprocessor +namespace Moose::MFEM +{ +class ValueSamplerBase : public VectorPostprocessor { public: static InputParameters validParams(); - MFEMValueSamplerBase(const InputParameters & parameters, const std::vector & points); + ValueSamplerBase(const InputParameters & parameters, const std::vector & points); /** Perform the interpolation in FindPointsGSLIB. */ @@ -48,4 +50,5 @@ class MFEMValueSamplerBase : public MFEMVectorPostprocessor std::vector> _declared_vals; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/mfem/vectorpostprocessors/MFEMVectorPostprocessor.h b/framework/include/mfem/vectorpostprocessors/MFEMVectorPostprocessor.h index 6559a4053084..bd8c051e085f 100644 --- a/framework/include/mfem/vectorpostprocessors/MFEMVectorPostprocessor.h +++ b/framework/include/mfem/vectorpostprocessors/MFEMVectorPostprocessor.h @@ -18,14 +18,17 @@ * Vector postprocessor for MFEM results. Must inherit from VectorPostprocessor * in order for MOOSE to call it. */ -class MFEMVectorPostprocessor : public MFEMExecutedObject, public VectorPostprocessor +namespace Moose::MFEM +{ +class VectorPostprocessor : public ExecutedObject, public ::VectorPostprocessor { public: static InputParameters validParams(); - MFEMVectorPostprocessor(const InputParameters & parameters); + VectorPostprocessor(const InputParameters & parameters); virtual std::optional suppliedVectorPostprocessorName() const override; }; +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/include/utils/InputParameters.h b/framework/include/utils/InputParameters.h index f52a21d6fe54..705f74109245 100644 --- a/framework/include/utils/InputParameters.h +++ b/framework/include/utils/InputParameters.h @@ -2487,8 +2487,8 @@ template constexpr bool isMFEMFunctorNameTypeHelper(T *) { - return std::is_same_v || - std::is_same_v; + return std::is_same_v || + std::is_same_v; } template @@ -2506,7 +2506,7 @@ isScalarFunctorNameTypeHelper(T *) { return std::is_same_v #ifdef MOOSE_MFEM_ENABLED - || std::is_same_v + || std::is_same_v #endif ; } @@ -2523,7 +2523,7 @@ constexpr bool isVectorFunctorNameTypeHelper(T *) { #ifdef MOOSE_MFEM_ENABLED - return std::is_same_v; + return std::is_same_v; #else return false; #endif diff --git a/framework/include/utils/MooseTypes.h b/framework/include/utils/MooseTypes.h index e02f5f63b976..9f330af49e30 100644 --- a/framework/include/utils/MooseTypes.h +++ b/framework/include/utils/MooseTypes.h @@ -1120,7 +1120,8 @@ struct enable_bitmask_operators * Be sure to use the DerivativeStringToJSON macro for new types in * MooseTypes.C to also define to_json for each */ -#define MooseDerivativeStringClass(TheName) \ +/// Private helper — defines the class body only, used by the macros below. +#define MOOSE_DERIVATIVE_STRING_CLASS_IMPL(TheName) \ class TheName : public std::string, public Moose::DerivativeStringClass \ { \ public: \ @@ -1130,7 +1131,10 @@ struct enable_bitmask_operators TheName(const char * s, size_t n) : std::string(s, n) {} \ TheName(const char * s) : std::string(s) {} \ TheName(size_t n, char c) : std::string(n, c) {} \ - }; \ + } + +#define MooseDerivativeStringClass(TheName) \ + MOOSE_DERIVATIVE_STRING_CLASS_IMPL(TheName); \ namespace nlohmann \ { \ template <> \ @@ -1141,6 +1145,26 @@ struct enable_bitmask_operators } \ static_assert(true, "") +/** + * Like MooseDerivativeStringClass but defines the class inside the given namespace NS (e.g. + * Moose::MFEM). The nlohmann::adl_serializer specialization is always placed in the global + * ::nlohmann namespace regardless of the calling scope. + */ +#define MooseDerivativeStringClassInNamespace(NS, TheName) \ + namespace NS \ + { \ + MOOSE_DERIVATIVE_STRING_CLASS_IMPL(TheName); \ + } \ + namespace nlohmann \ + { \ + template <> \ + struct adl_serializer \ + { \ + static void to_json(json & j, const NS::TheName & v); \ + }; \ + } \ + static_assert(true, "") + // Instantiate new Types /// This type is for expected (i.e. input) file names or paths that your simulation needs. @@ -1284,11 +1308,11 @@ MooseDerivativeStringClass(CLIArgString); * Coefficients used in input for MFEM residual objects */ ///@{ -MooseDerivativeStringClass(MFEMScalarCoefficientName); -MooseDerivativeStringClass(MFEMVectorCoefficientName); -MooseDerivativeStringClass(MFEMMatrixCoefficientName); -MooseDerivativeStringClass(MFEMFESpaceName); -MooseDerivativeStringClass(MFEMSolverName); +MooseDerivativeStringClassInNamespace(Moose::MFEM, ScalarCoefficientName); +MooseDerivativeStringClassInNamespace(Moose::MFEM, VectorCoefficientName); +MooseDerivativeStringClassInNamespace(Moose::MFEM, MatrixCoefficientName); +MooseDerivativeStringClassInNamespace(Moose::MFEM, FESpaceName); +MooseDerivativeStringClassInNamespace(Moose::MFEM, SolverName); ///@} #endif /** diff --git a/framework/src/base/Moose.C b/framework/src/base/Moose.C index fab73aa6971f..23dabb259cce 100644 --- a/framework/src/base/Moose.C +++ b/framework/src/base/Moose.C @@ -22,6 +22,10 @@ #include "MooseSyntax.h" #include "ExecFlagRegistry.h" +#ifdef MOOSE_MFEM_ENABLED +#include "MFEMSolverBase.h" +#endif + #include "hit/parse.h" #include @@ -444,15 +448,14 @@ addActionTypes(Syntax & syntax) addTaskDependency("add_kernel", "add_mfem_problem_operator"); // add SubMeshes - registerMooseObjectTask("add_mfem_submeshes", MFEMSubMesh, false); + registerMooseObjectTask("add_mfem_submeshes", Moose::MFEM::SubMesh, false); addTaskDependency("add_mfem_submeshes", "create_problem_complete"); // add SubMesh transfers - appendMooseObjectTask("add_transfer", MFEMSubMeshTransfer); + appendMooseObjectTask("add_transfer", Moose::MFEM::SubMeshTransfer); // add FESpaces - registerMooseObjectTask("add_mfem_fespaces", MFEMFESpace, false); - appendMooseObjectTask("add_mfem_fespaces", MFEMFECollection); + registerMooseObjectTask("add_mfem_fespaces", Moose::MFEM::FESpace, false); addTaskDependency("add_mfem_fespaces", "add_mfem_submeshes"); addTaskDependency("add_variable", "add_mfem_fespaces"); addTaskDependency("add_aux_variable", "add_mfem_fespaces"); @@ -473,12 +476,12 @@ addActionTypes(Syntax & syntax) addTaskDependency("set_mesh_fe_space", "init_mesh"); // add preconditioning. - registerMooseObjectTask("add_mfem_preconditioner", MFEMSolverBase, false); + registerMooseObjectTask("add_mfem_preconditioner", Moose::MFEM::SolverBase, false); addTaskDependency("add_mfem_preconditioner", "add_mfem_problem_operator"); addTaskDependency("add_mfem_preconditioner", "add_variable"); - // add solver. - registerMooseObjectTask("add_mfem_solver", MFEMSolverBase, true); + // add solver objects. + registerMooseObjectTask("add_mfem_solver", Moose::MFEM::SolverBase, true); addTaskDependency("add_mfem_solver", "add_mfem_preconditioner"); addTaskDependency("add_mfem_solver", "add_mfem_problem_operator"); #endif @@ -756,7 +759,8 @@ associateSyntaxInner(Syntax & syntax, ActionFactory & /*action_factory*/) registerSyntaxTask( "AddMFEMComplexBCComponentAction", "BCs/*/*", "add_mfem_complex_bc_components"); registerSyntaxTask("AddMFEMPreconditionerAction", "Preconditioner/*", "add_mfem_preconditioner"); - registerSyntaxTask("AddMFEMSolverAction", "Solver", "add_mfem_solver"); + registerSyntaxTask("AddMFEMSolverAction", "Solvers/*", "add_mfem_solver"); + syntax.registerSyntaxType("Solvers/*", "UserObjectName"); #endif registerSyntax("NEML2ActionCommon", "NEML2"); diff --git a/framework/src/base/MooseApp.C b/framework/src/base/MooseApp.C index 6bdf130cda1c..fdd49d415f1a 100644 --- a/framework/src/base/MooseApp.C +++ b/framework/src/base/MooseApp.C @@ -3349,7 +3349,8 @@ MooseApp::isInTree() #ifdef MOOSE_MFEM_ENABLED void -MooseApp::setMFEMDevice(const std::string & device_string, Moose::PassKey) +MooseApp::setMFEMDevice(const std::string & device_string, + Moose::PassKey) { const auto string_vec = MooseUtils::split(device_string, ","); auto string_set = std::set(string_vec.begin(), string_vec.end()); diff --git a/framework/src/mfem/actions/AddMFEMComplexBCComponentAction.C b/framework/src/mfem/actions/AddMFEMComplexBCComponentAction.C index 0e1ba90cb652..807f5e3948c1 100644 --- a/framework/src/mfem/actions/AddMFEMComplexBCComponentAction.C +++ b/framework/src/mfem/actions/AddMFEMComplexBCComponentAction.C @@ -18,8 +18,8 @@ AddMFEMComplexBCComponentAction::validParams() { InputParameters params = MooseObjectAction::validParams(); params.addClassDescription( - "Add an MFEMIntegratedBC to serve as the real or imaginary component of " - "an MFEMComplexIntegratedBC."); + "Add an Moose::MFEM::IntegratedBC to serve as the real or imaginary component of " + "an Moose::MFEM::ComplexIntegratedBC."); return params; } @@ -33,7 +33,7 @@ AddMFEMComplexBCComponentAction::act() { std::vector elements; MooseUtils::tokenize(_pars.blockFullpath(), elements); - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem && _name == "RealComponent") mfem_problem->addRealComponentToBC(_type, elements[elements.size() - 2], _moose_object_pars); diff --git a/framework/src/mfem/actions/AddMFEMComplexKernelComponentAction.C b/framework/src/mfem/actions/AddMFEMComplexKernelComponentAction.C index 79116dd8e382..3405f1cecc09 100644 --- a/framework/src/mfem/actions/AddMFEMComplexKernelComponentAction.C +++ b/framework/src/mfem/actions/AddMFEMComplexKernelComponentAction.C @@ -19,8 +19,8 @@ InputParameters AddMFEMComplexKernelComponentAction::validParams() { InputParameters params = MooseObjectAction::validParams(); - params.addClassDescription( - "Add an MFEMKernel to serve as the real or imaginary component of an MFEMComplexKernel."); + params.addClassDescription("Add an Moose::MFEM::Kernel to serve as the real or imaginary " + "component of an Moose::MFEM::ComplexKernel."); return params; } @@ -35,7 +35,7 @@ AddMFEMComplexKernelComponentAction::act() { std::vector elements; MooseUtils::tokenize(_pars.blockFullpath(), elements); - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem && _name == "RealComponent") mfem_problem->addRealComponentToKernel( diff --git a/framework/src/mfem/actions/AddMFEMFESpaceAction.C b/framework/src/mfem/actions/AddMFEMFESpaceAction.C index 0d58fae8297a..d066eee6f250 100644 --- a/framework/src/mfem/actions/AddMFEMFESpaceAction.C +++ b/framework/src/mfem/actions/AddMFEMFESpaceAction.C @@ -29,7 +29,7 @@ AddMFEMFESpaceAction::AddMFEMFESpaceAction(const InputParameters & parameters) void AddMFEMFESpaceAction::act() { - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem) mfem_problem->addFESpace(_type, _name, _moose_object_pars); } diff --git a/framework/src/mfem/actions/AddMFEMPreconditionerAction.C b/framework/src/mfem/actions/AddMFEMPreconditionerAction.C index 67072c26a1a5..56ddc58c1c9e 100644 --- a/framework/src/mfem/actions/AddMFEMPreconditionerAction.C +++ b/framework/src/mfem/actions/AddMFEMPreconditionerAction.C @@ -30,7 +30,7 @@ AddMFEMPreconditionerAction::AddMFEMPreconditionerAction(const InputParameters & void AddMFEMPreconditionerAction::act() { - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem) mfem_problem->addMFEMPreconditioner(_type, _name, _moose_object_pars); } diff --git a/framework/src/mfem/actions/AddMFEMSolverAction.C b/framework/src/mfem/actions/AddMFEMSolverAction.C index 32359cafaf95..0f4b15f1c088 100644 --- a/framework/src/mfem/actions/AddMFEMSolverAction.C +++ b/framework/src/mfem/actions/AddMFEMSolverAction.C @@ -18,7 +18,7 @@ InputParameters AddMFEMSolverAction::validParams() { InputParameters params = MooseObjectAction::validParams(); - params.addClassDescription("Set the Moose::MFEM solver and the solver options."); + params.addClassDescription("Add a Moose::MFEM linear or nonlinear solver object."); return params; } @@ -30,7 +30,7 @@ AddMFEMSolverAction::AddMFEMSolverAction(const InputParameters & parameters) void AddMFEMSolverAction::act() { - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem) mfem_problem->addMFEMSolver(_type, _name, _moose_object_pars); } diff --git a/framework/src/mfem/actions/AddMFEMSubMeshAction.C b/framework/src/mfem/actions/AddMFEMSubMeshAction.C index 536f77c853d2..60b49c6ed7aa 100644 --- a/framework/src/mfem/actions/AddMFEMSubMeshAction.C +++ b/framework/src/mfem/actions/AddMFEMSubMeshAction.C @@ -29,11 +29,11 @@ AddMFEMSubMeshAction::AddMFEMSubMeshAction(const InputParameters & parameters) void AddMFEMSubMeshAction::act() { - MFEMProblem * mfem_problem = dynamic_cast(_problem.get()); + Moose::MFEM::Problem * mfem_problem = dynamic_cast(_problem.get()); if (mfem_problem) mfem_problem->addSubMesh(_type, _name, _moose_object_pars); else - mooseError("Cannot add SubMeshes unless an MFEMProblem is in use."); + mooseError("Cannot add SubMeshes unless an Moose::MFEM::Problem is in use."); } #endif diff --git a/framework/src/mfem/actions/SetMFEMMeshFESpaceAction.C b/framework/src/mfem/actions/SetMFEMMeshFESpaceAction.C index 26637ade1aac..116c425e5e31 100644 --- a/framework/src/mfem/actions/SetMFEMMeshFESpaceAction.C +++ b/framework/src/mfem/actions/SetMFEMMeshFESpaceAction.C @@ -30,7 +30,7 @@ SetMFEMMeshFESpaceAction::SetMFEMMeshFESpaceAction(const InputParameters & param void SetMFEMMeshFESpaceAction::act() { - auto * mfem_problem = dynamic_cast(_problem.get()); + auto * mfem_problem = dynamic_cast(_problem.get()); if (!mfem_problem) { diff --git a/framework/src/mfem/auxkernels/MFEMAuxKernel.C b/framework/src/mfem/auxkernels/MFEMAuxKernel.C index cb0660ca3846..6af7e806995e 100644 --- a/framework/src/mfem/auxkernels/MFEMAuxKernel.C +++ b/framework/src/mfem/auxkernels/MFEMAuxKernel.C @@ -12,10 +12,12 @@ #include "MFEMAuxKernel.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMAuxKernel::validParams() +AuxKernel::validParams() { - InputParameters params = MFEMExecutedObject::validParams(); + InputParameters params = ExecutedObject::validParams(); params.registerBase("AuxKernel"); params.addClassDescription("Base class for MFEM objects that update auxiliary variables outside " "of the main solve step."); @@ -24,17 +26,18 @@ MFEMAuxKernel::validParams() return params; } -MFEMAuxKernel::MFEMAuxKernel(const InputParameters & parameters) - : MFEMExecutedObject(parameters), +AuxKernel::AuxKernel(const InputParameters & parameters) + : ExecutedObject(parameters), _result_var_name(getParam("variable")), _result_var(*getMFEMProblem().getGridFunction(_result_var_name)) { } std::optional -MFEMAuxKernel::suppliedVariableName() const +AuxKernel::suppliedVariableName() const { return _result_var_name; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexAuxKernel.C b/framework/src/mfem/auxkernels/MFEMComplexAuxKernel.C index 39d0e53aef7b..c439c3f93625 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexAuxKernel.C +++ b/framework/src/mfem/auxkernels/MFEMComplexAuxKernel.C @@ -12,10 +12,12 @@ #include "MFEMComplexAuxKernel.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMComplexAuxKernel::validParams() +ComplexAuxKernel::validParams() { - InputParameters params = MFEMExecutedObject::validParams(); + InputParameters params = ExecutedObject::validParams(); params.registerBase("AuxKernel"); params.addClassDescription("Base class for MFEM objects that update auxiliary variables outside " "of the main solve step."); @@ -24,29 +26,29 @@ MFEMComplexAuxKernel::validParams() return params; } -MFEMComplexAuxKernel::MFEMComplexAuxKernel(const InputParameters & parameters) - : MFEMExecutedObject(parameters), +ComplexAuxKernel::ComplexAuxKernel(const InputParameters & parameters) + : ExecutedObject(parameters), _result_var_name(getParam("variable")), _result_var(*getMFEMProblem().getComplexGridFunction(_result_var_name)) { } std::optional -MFEMComplexAuxKernel::suppliedVariableName() const +ComplexAuxKernel::suppliedVariableName() const { return _result_var_name; } void -MFEMComplexAuxKernel::complexAdd(mfem::ParComplexGridFunction & a, - const mfem::ParComplexGridFunction & b, - const std::complex scale) +ComplexAuxKernel::complexAdd(mfem::ParComplexGridFunction & a, + const mfem::ParComplexGridFunction & b, + const std::complex scale) { // a += scale * b // check that the parfespaces match if (a.ParFESpace() != b.ParFESpace()) - mooseError("MFEMComplexAuxKernel::complexAdd: ParFESpaces of input variables do not match."); + mooseError("ComplexAuxKernel::complexAdd: ParFESpaces of input variables do not match."); a.real().Add(scale.real(), b.real()); a.real().Add(-scale.imag(), b.imag()); @@ -55,8 +57,8 @@ MFEMComplexAuxKernel::complexAdd(mfem::ParComplexGridFunction & a, } void -MFEMComplexAuxKernel::complexScale(mfem::ParComplexGridFunction & a, - const std::complex scale) +ComplexAuxKernel::complexScale(mfem::ParComplexGridFunction & a, + const std::complex scale) { // a *= scale @@ -66,4 +68,5 @@ MFEMComplexAuxKernel::complexScale(mfem::ParComplexGridFunction & a, complexAdd(a, b, scale - 1); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexCurlAux.C b/framework/src/mfem/auxkernels/MFEMComplexCurlAux.C index 78bb62cd5e98..71dd75075839 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexCurlAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexCurlAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexCurlAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexCurlAux); +registerMooseMFEMObject("MooseApp", ComplexCurlAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexCurlAux::validParams() +ComplexCurlAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Calculates the curl of a complex H(curl) conforming ND source variable and stores the result" " on an H(div) conforming RT result complex auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Vector H(curl) MFEMComplexVariable to take the curl of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Vector H(curl) Moose::MFEM::ComplexVariable to take the curl of."); params.addParam( "scale_factor_real", 1.0, "Real part of the factor to scale result auxvariable by."); params.addParam( @@ -30,8 +32,8 @@ MFEMComplexCurlAux::validParams() return params; } -MFEMComplexCurlAux::MFEMComplexCurlAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexCurlAux::ComplexCurlAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getComplexGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor_real"), @@ -45,7 +47,7 @@ MFEMComplexCurlAux::MFEMComplexCurlAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMComplexCurlAux::execute() +ComplexCurlAux::execute() { update(); _curl.AddMult(_source_var.real(), _result_var.real() = 0); @@ -55,7 +57,7 @@ MFEMComplexCurlAux::execute() } void -MFEMComplexCurlAux::update() +ComplexCurlAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -66,4 +68,5 @@ MFEMComplexCurlAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexDivAux.C b/framework/src/mfem/auxkernels/MFEMComplexDivAux.C index fa92c1325977..f3a0bc36bbf0 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexDivAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexDivAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexDivAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexDivAux); +registerMooseMFEMObject("MooseApp", ComplexDivAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexDivAux::validParams() +ComplexDivAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription("Calculates the divergence of a complex H(div) conforming RT source " "variable and stores the result" " on an L2 conforming result complex auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Vector H(div) MFEMComplexVariable to take the divergence of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Vector H(div) Moose::MFEM::ComplexVariable to take the divergence of."); params.addParam( "scale_factor_real", 1.0, "Real part of the factor to scale result auxvariable by."); params.addParam( @@ -31,8 +33,8 @@ MFEMComplexDivAux::validParams() return params; } -MFEMComplexDivAux::MFEMComplexDivAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexDivAux::ComplexDivAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getComplexGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor_real"), @@ -46,7 +48,7 @@ MFEMComplexDivAux::MFEMComplexDivAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMComplexDivAux::execute() +ComplexDivAux::execute() { update(); _div.AddMult(_source_var.real(), _result_var.real() = 0); @@ -56,7 +58,7 @@ MFEMComplexDivAux::execute() } void -MFEMComplexDivAux::update() +ComplexDivAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -67,4 +69,5 @@ MFEMComplexDivAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexExteriorProductAux.C b/framework/src/mfem/auxkernels/MFEMComplexExteriorProductAux.C index 0af927256606..bd756a2c50b8 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexExteriorProductAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexExteriorProductAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexExteriorProductAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexExteriorProductAux); +registerMooseMFEMObject("MooseApp", ComplexExteriorProductAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexExteriorProductAux::validParams() +ComplexExteriorProductAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Projects $s \\vec u \\wedge \\vec v*$ onto a complex vector MFEM auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "first_source_vec", "Complex vector variable (3D)"); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "second_source_vec", "Complex vector variable (3D)"); params.addParam("scale_factor_real", 1.0, "Real part of constant multiplier"); params.addParam("scale_factor_imag", 0.0, "Imaginary part of constant multiplier"); @@ -30,8 +32,8 @@ MFEMComplexExteriorProductAux::validParams() return params; } -MFEMComplexExteriorProductAux::MFEMComplexExteriorProductAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexExteriorProductAux::ComplexExteriorProductAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _scale_factor(getParam("scale_factor_real"), getParam("scale_factor_imag")), _u_coef_real(getVectorCoefficientByName(getParam("first_source_vec") + "_real")), @@ -50,20 +52,23 @@ MFEMComplexExteriorProductAux::MFEMComplexExteriorProductAux(const InputParamete // Must be [L2]^3 if (!dynamic_cast(fes->FEColl()) || fes->GetVDim() != 3) - mooseError("MFEMComplexExteriorProductAux requires the target variable to be vector [L2]^3."); + mooseError( + "Moose::MFEM::ComplexExteriorProductAux requires the target variable to be vector [L2]^3."); // Must have no shared/constrained DOFs (pure interior DOFs) if (fes->GetTrueVSize() != fes->GetVSize()) - mooseError("MFEMComplexExteriorProductAux currently supports only L2 spaces with interior DOFs " + mooseError("Moose::MFEM::ComplexExteriorProductAux currently supports only L2 spaces with " + "interior DOFs " "(no shared/constrained DOFs)."); } void -MFEMComplexExteriorProductAux::execute() +ComplexExteriorProductAux::execute() { _result_var.ProjectCoefficient(_final_coef_real, _final_coef_imag); complexScale(_result_var, _scale_factor); } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/auxkernels/MFEMComplexGradAux.C b/framework/src/mfem/auxkernels/MFEMComplexGradAux.C index 2209199a1224..d677217f84d2 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexGradAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexGradAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexGradAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexGradAux); +registerMooseMFEMObject("MooseApp", ComplexGradAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexGradAux::validParams() +ComplexGradAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Calculates the gradient of an H1 conforming source variable and stores the result" " on an H(curl) conforming ND result auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Scalar H1 MFEMVariable to take the gradient of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Scalar H1 Moose::MFEM::Variable to take the gradient of."); params.addParam( "scale_factor_real", 1.0, "Real part of the factor to scale result auxvariable by."); params.addParam( @@ -30,8 +32,8 @@ MFEMComplexGradAux::validParams() return params; } -MFEMComplexGradAux::MFEMComplexGradAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexGradAux::ComplexGradAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getComplexGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor_real"), @@ -45,7 +47,7 @@ MFEMComplexGradAux::MFEMComplexGradAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMComplexGradAux::execute() +ComplexGradAux::execute() { update(); _grad.AddMult(_source_var.real(), _result_var.real() = 0); @@ -55,7 +57,7 @@ MFEMComplexGradAux::execute() } void -MFEMComplexGradAux::update() +ComplexGradAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -66,4 +68,5 @@ MFEMComplexGradAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexInnerProductAux.C b/framework/src/mfem/auxkernels/MFEMComplexInnerProductAux.C index 149fe7eb790b..c0da549d7757 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexInnerProductAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexInnerProductAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexInnerProductAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexInnerProductAux); +registerMooseMFEMObject("MooseApp", ComplexInnerProductAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexInnerProductAux::validParams() +ComplexInnerProductAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Projects $s \\vec u \\cdot \\vec v*$ onto a complex scalar MFEM auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "first_source_vec", "Complex vector variable"); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "second_source_vec", "Complex vector variable"); params.addParam("scale_factor_real", 1.0, "Real part of constant multiplier"); params.addParam("scale_factor_imag", 0.0, "Imaginary part of constant multiplier"); @@ -30,8 +32,8 @@ MFEMComplexInnerProductAux::validParams() return params; } -MFEMComplexInnerProductAux::MFEMComplexInnerProductAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexInnerProductAux::ComplexInnerProductAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _scale_factor(getParam("scale_factor_real"), getParam("scale_factor_imag")), _u_coef_real(getVectorCoefficientByName(getParam("first_source_vec") + "_real")), @@ -50,20 +52,22 @@ MFEMComplexInnerProductAux::MFEMComplexInnerProductAux(const InputParameters & p // Must be scalar L2 if (!dynamic_cast(fes->FEColl()) || fes->GetVDim() != 1) - mooseError("MFEMComplexInnerProductAux requires the target variable to be scalar L2."); + mooseError("Moose::MFEM::ComplexInnerProductAux requires the target variable to be scalar L2."); // Must have no shared/constrained DOFs (pure interior DOFs) if (fes->GetTrueVSize() != fes->GetVSize()) - mooseError("MFEMComplexInnerProductAux currently supports only L2 spaces with interior DOFs " - "(no shared/constrained DOFs)."); + mooseError( + "Moose::MFEM::ComplexInnerProductAux currently supports only L2 spaces with interior DOFs " + "(no shared/constrained DOFs)."); } void -MFEMComplexInnerProductAux::execute() +ComplexInnerProductAux::execute() { _result_var.ProjectCoefficient(_final_coef_real, _final_coef_imag); complexScale(_result_var, _scale_factor); } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/auxkernels/MFEMComplexScalarProjectionAux.C b/framework/src/mfem/auxkernels/MFEMComplexScalarProjectionAux.C index ec8ec1dfc5fd..49c43fe6dccd 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexScalarProjectionAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexScalarProjectionAux.C @@ -11,32 +11,35 @@ #include "MFEMComplexScalarProjectionAux.h" -registerMooseObject("MooseApp", MFEMComplexScalarProjectionAux); +registerMooseMFEMObject("MooseApp", ComplexScalarProjectionAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexScalarProjectionAux::validParams() +ComplexScalarProjectionAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Projects a real and imaginary scalar coefficient onto a complex scalar MFEM auxvariable"); - params.addRequiredParam( + params.addRequiredParam( "coefficient_real", "Name of the real part of the scalar coefficient to project."); - params.addRequiredParam( + params.addRequiredParam( "coefficient_imag", "Name of the imaginary part of the scalar coefficient to project."); return params; } -MFEMComplexScalarProjectionAux::MFEMComplexScalarProjectionAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexScalarProjectionAux::ComplexScalarProjectionAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _coef_real(getScalarCoefficient("coefficient_real")), _coef_imag(getScalarCoefficient("coefficient_imag")) { } void -MFEMComplexScalarProjectionAux::execute() +ComplexScalarProjectionAux::execute() { _result_var.ProjectCoefficient(_coef_real, _coef_imag); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexSumAux.C b/framework/src/mfem/auxkernels/MFEMComplexSumAux.C index f9d663b886d5..6886ebcf69cf 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexSumAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexSumAux.C @@ -12,17 +12,19 @@ #include "MFEMComplexSumAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexSumAux); +registerMooseMFEMObject("MooseApp", ComplexSumAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexSumAux::validParams() +ComplexSumAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Calculates the sum of an arbitrary number of complex variables sharing an FE space, each " "optionally scaled by a complex constant, and stores the result in an auxiliary complex " "variable."); - MFEMExecutedObject::addRequiredDependencyParam>( + ExecutedObject::addRequiredDependencyParam>( params, "source_variables", "The names of the MFEM complex variables to sum"); params.addParam>( "scale_factors_real", @@ -34,8 +36,8 @@ MFEMComplexSumAux::validParams() return params; } -MFEMComplexSumAux::MFEMComplexSumAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexSumAux::ComplexSumAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _var_names(getParam>("source_variables")), _scale_factors_real(parameters.isParamValid("scale_factors_real") ? getParam>("scale_factors_real") @@ -69,7 +71,7 @@ MFEMComplexSumAux::MFEMComplexSumAux(const InputParameters & parameters) } void -MFEMComplexSumAux::execute() +ComplexSumAux::execute() { // result = sum_i ((_scale_factor_i_real+i*scale_factor_i_imag) * _summed_var_i) _result_var.real() = 0.0; @@ -81,4 +83,5 @@ MFEMComplexSumAux::execute() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMComplexVectorProjectionAux.C b/framework/src/mfem/auxkernels/MFEMComplexVectorProjectionAux.C index 04472e74f1e3..38195018737b 100644 --- a/framework/src/mfem/auxkernels/MFEMComplexVectorProjectionAux.C +++ b/framework/src/mfem/auxkernels/MFEMComplexVectorProjectionAux.C @@ -11,33 +11,36 @@ #include "MFEMComplexVectorProjectionAux.h" -registerMooseObject("MooseApp", MFEMComplexVectorProjectionAux); +registerMooseMFEMObject("MooseApp", ComplexVectorProjectionAux); +namespace Moose::MFEM +{ InputParameters -MFEMComplexVectorProjectionAux::validParams() +ComplexVectorProjectionAux::validParams() { - InputParameters params = MFEMComplexAuxKernel::validParams(); + InputParameters params = ComplexAuxKernel::validParams(); params.addClassDescription( "Projects a a real and imaginary vector coefficient onto a complex vector MFEM auxvariable."); - params.addRequiredParam( + params.addRequiredParam( "vector_coefficient_real", "Name of the real part of the vector coefficient to project."); - params.addRequiredParam( + params.addRequiredParam( "vector_coefficient_imag", "Name of the imaginary part of the vector coefficient to project."); return params; } -MFEMComplexVectorProjectionAux::MFEMComplexVectorProjectionAux(const InputParameters & parameters) - : MFEMComplexAuxKernel(parameters), +ComplexVectorProjectionAux::ComplexVectorProjectionAux(const InputParameters & parameters) + : ComplexAuxKernel(parameters), _vec_coef_real(getVectorCoefficient("vector_coefficient_real")), _vec_coef_imag(getVectorCoefficient("vector_coefficient_imag")) { } void -MFEMComplexVectorProjectionAux::execute() +ComplexVectorProjectionAux::execute() { _result_var.ProjectCoefficient(_vec_coef_real, _vec_coef_imag); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMCrossProductAux.C b/framework/src/mfem/auxkernels/MFEMCrossProductAux.C index 5121e741172e..8fb909698e8d 100644 --- a/framework/src/mfem/auxkernels/MFEMCrossProductAux.C +++ b/framework/src/mfem/auxkernels/MFEMCrossProductAux.C @@ -12,22 +12,26 @@ #include "MFEMCrossProductAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMCrossProductAux); +registerMooseMFEMObject("MooseApp", CrossProductAux); +namespace Moose::MFEM +{ InputParameters -MFEMCrossProductAux::validParams() +CrossProductAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription("Projects $s \\vec u \\times \\vec v$ onto a vector MFEM auxvariable"); - params.addRequiredParam("first_source_vec", "Vector coeff (3D)"); - params.addRequiredParam("second_source_vec", "Vector coeff (3D)"); - params.addParam( + params.addRequiredParam("first_source_vec", + "Vector coeff (3D)"); + params.addRequiredParam("second_source_vec", + "Vector coeff (3D)"); + params.addParam( "coefficient", "1.", "Name of scalar coefficient s to scale the cross product by"); return params; } -MFEMCrossProductAux::MFEMCrossProductAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +CrossProductAux::CrossProductAux(const InputParameters & parameters) + : AuxKernel(parameters), _cross(getVectorCoefficient("first_source_vec"), getVectorCoefficient("second_source_vec")), _scaled_cross(getScalarCoefficient("coefficient"), _cross) { @@ -36,18 +40,19 @@ MFEMCrossProductAux::MFEMCrossProductAux(const InputParameters & parameters) // Must be [L2]^3 if (!dynamic_cast(fes->FEColl()) || fes->GetVDim() != 3) - mooseError("MFEMCrossProductAux requires the target variable to be vector [L2]^3."); + mooseError("Moose::MFEM::CrossProductAux requires the target variable to be vector [L2]^3."); // Must have no shared/constrained DOFs (pure interior DOFs) if (fes->GetTrueVSize() != fes->GetVSize()) - mooseError("MFEMCrossProductAux currently supports only L2 spaces with interior DOFs " + mooseError("Moose::MFEM::CrossProductAux currently supports only L2 spaces with interior DOFs " "(no shared/constrained DOFs)."); } void -MFEMCrossProductAux::execute() +CrossProductAux::execute() { _result_var.ProjectCoefficient(_scaled_cross); } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/auxkernels/MFEMCurlAux.C b/framework/src/mfem/auxkernels/MFEMCurlAux.C index 5f2b6a29b161..1bf7ccf2373c 100644 --- a/framework/src/mfem/auxkernels/MFEMCurlAux.C +++ b/framework/src/mfem/auxkernels/MFEMCurlAux.C @@ -12,23 +12,25 @@ #include "MFEMCurlAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMCurlAux); +registerMooseMFEMObject("MooseApp", CurlAux); +namespace Moose::MFEM +{ InputParameters -MFEMCurlAux::validParams() +CurlAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription( "Calculates the curl of an H(curl) conforming ND source variable and stores the result" " on an H(div) conforming RT result auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Vector H(curl) MFEMVariable to take the curl of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Vector H(curl) Moose::MFEM::Variable to take the curl of."); params.addParam("scale_factor", 1.0, "Factor to scale result auxvariable by."); return params; } -MFEMCurlAux::MFEMCurlAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +CurlAux::CurlAux(const InputParameters & parameters) + : AuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor")), @@ -41,14 +43,14 @@ MFEMCurlAux::MFEMCurlAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMCurlAux::execute() +CurlAux::execute() { update(); _curl.AddMult(_source_var, _result_var = 0, _scale_factor); } void -MFEMCurlAux::update() +CurlAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -59,4 +61,5 @@ MFEMCurlAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMDivAux.C b/framework/src/mfem/auxkernels/MFEMDivAux.C index e2c9a7c69843..c78ea7a6186e 100644 --- a/framework/src/mfem/auxkernels/MFEMDivAux.C +++ b/framework/src/mfem/auxkernels/MFEMDivAux.C @@ -12,23 +12,25 @@ #include "MFEMDivAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMDivAux); +registerMooseMFEMObject("MooseApp", DivAux); +namespace Moose::MFEM +{ InputParameters -MFEMDivAux::validParams() +DivAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription( "Calculates the divergence of an H(div) conforming RT source variable and stores the result" " on an L2 conforming result auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Vector H(div) MFEMVariable to take the divergence of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Vector H(div) Moose::MFEM::Variable to take the divergence of."); params.addParam("scale_factor", 1.0, "Factor to scale result auxvariable by."); return params; } -MFEMDivAux::MFEMDivAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +DivAux::DivAux(const InputParameters & parameters) + : AuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor")), @@ -41,14 +43,14 @@ MFEMDivAux::MFEMDivAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMDivAux::execute() +DivAux::execute() { update(); _div.AddMult(_source_var, _result_var = 0, _scale_factor); } void -MFEMDivAux::update() +DivAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -59,4 +61,5 @@ MFEMDivAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMGradAux.C b/framework/src/mfem/auxkernels/MFEMGradAux.C index 6fa8becf9693..4f27f3b45a24 100644 --- a/framework/src/mfem/auxkernels/MFEMGradAux.C +++ b/framework/src/mfem/auxkernels/MFEMGradAux.C @@ -12,23 +12,25 @@ #include "MFEMGradAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMGradAux); +registerMooseMFEMObject("MooseApp", GradAux); +namespace Moose::MFEM +{ InputParameters -MFEMGradAux::validParams() +GradAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription( "Calculates the gradient of an H1 conforming source variable and stores the result" " on an H(curl) conforming ND result auxvariable"); - MFEMExecutedObject::addRequiredDependencyParam( - params, "source", "Scalar H1 MFEMVariable to take the gradient of."); + ExecutedObject::addRequiredDependencyParam( + params, "source", "Scalar H1 Moose::MFEM::Variable to take the gradient of."); params.addParam("scale_factor", 1.0, "Factor to scale result auxvariable by."); return params; } -MFEMGradAux::MFEMGradAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +GradAux::GradAux(const InputParameters & parameters) + : AuxKernel(parameters), _source_var_name(getParam("source")), _source_var(*getMFEMProblem().getGridFunction(_source_var_name)), _scale_factor(getParam("scale_factor")), @@ -41,14 +43,14 @@ MFEMGradAux::MFEMGradAux(const InputParameters & parameters) // Computes the auxvariable. void -MFEMGradAux::execute() +GradAux::execute() { update(); _grad.AddMult(_source_var, _result_var = 0, _scale_factor); } void -MFEMGradAux::update() +GradAux::update() { if (long sequence = _source_var.GetSequence() + _result_var.GetSequence() > _sequence) { @@ -59,4 +61,5 @@ MFEMGradAux::update() } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMInnerProductAux.C b/framework/src/mfem/auxkernels/MFEMInnerProductAux.C index a051594e61c8..fa5cc41c8d56 100644 --- a/framework/src/mfem/auxkernels/MFEMInnerProductAux.C +++ b/framework/src/mfem/auxkernels/MFEMInnerProductAux.C @@ -12,22 +12,26 @@ #include "MFEMInnerProductAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMInnerProductAux); +registerMooseMFEMObject("MooseApp", InnerProductAux); +namespace Moose::MFEM +{ InputParameters -MFEMInnerProductAux::validParams() +InnerProductAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription("Projects $s \\vec u \\cdot \\vec v$ onto a scalar MFEM auxvariable"); - params.addRequiredParam("first_source_vec", "Vector coefficient"); - params.addRequiredParam("second_source_vec", "Vector coefficient"); - params.addParam( + params.addRequiredParam("first_source_vec", + "Vector coefficient"); + params.addRequiredParam("second_source_vec", + "Vector coefficient"); + params.addParam( "coefficient", "1.", "Name of scalar coefficient s to scale the inner product by"); return params; } -MFEMInnerProductAux::MFEMInnerProductAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +InnerProductAux::InnerProductAux(const InputParameters & parameters) + : AuxKernel(parameters), _inner(getVectorCoefficient("first_source_vec"), getVectorCoefficient("second_source_vec")), _scaled_inner(getScalarCoefficient("coefficient"), _inner) { @@ -36,18 +40,19 @@ MFEMInnerProductAux::MFEMInnerProductAux(const InputParameters & parameters) // Must be scalar L2 if (!dynamic_cast(fes->FEColl()) || fes->GetVDim() != 1) - mooseError("MFEMInnerProductAux requires the target variable to be scalar L2."); + mooseError("Moose::MFEM::InnerProductAux requires the target variable to be scalar L2."); // Must have no shared/constrained DOFs (pure interior DOFs) if (fes->GetTrueVSize() != fes->GetVSize()) - mooseError("MFEMInnerProductAux currently supports only L2 spaces with interior DOFs " + mooseError("Moose::MFEM::InnerProductAux currently supports only L2 spaces with interior DOFs " "(no shared/constrained DOFs)."); } void -MFEMInnerProductAux::execute() +InnerProductAux::execute() { _result_var.ProjectCoefficient(_scaled_inner); } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/auxkernels/MFEMScalarProjectionAux.C b/framework/src/mfem/auxkernels/MFEMScalarProjectionAux.C index 0c018a21bd89..b3d30c315b8d 100644 --- a/framework/src/mfem/auxkernels/MFEMScalarProjectionAux.C +++ b/framework/src/mfem/auxkernels/MFEMScalarProjectionAux.C @@ -11,27 +11,30 @@ #include "MFEMScalarProjectionAux.h" -registerMooseObject("MooseApp", MFEMScalarProjectionAux); +registerMooseMFEMObject("MooseApp", ScalarProjectionAux); +namespace Moose::MFEM +{ InputParameters -MFEMScalarProjectionAux::validParams() +ScalarProjectionAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription("Projects a scalar coefficient onto a scalar MFEM auxvariable"); - params.addRequiredParam("coefficient", - "Name of the scalar coefficient to project."); + params.addRequiredParam( + "coefficient", "Name of the scalar coefficient to project."); return params; } -MFEMScalarProjectionAux::MFEMScalarProjectionAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), _coef(getScalarCoefficient("coefficient")) +ScalarProjectionAux::ScalarProjectionAux(const InputParameters & parameters) + : AuxKernel(parameters), _coef(getScalarCoefficient("coefficient")) { } void -MFEMScalarProjectionAux::execute() +ScalarProjectionAux::execute() { _result_var.ProjectCoefficient(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMScalarTimeAverageAux.C b/framework/src/mfem/auxkernels/MFEMScalarTimeAverageAux.C index fa5e6ab9876d..16fbc803bb6c 100644 --- a/framework/src/mfem/auxkernels/MFEMScalarTimeAverageAux.C +++ b/framework/src/mfem/auxkernels/MFEMScalarTimeAverageAux.C @@ -12,22 +12,25 @@ #include "MFEMScalarTimeAverageAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMScalarTimeAverageAux); +registerMooseMFEMObject("MooseApp", ScalarTimeAverageAux); +namespace Moose::MFEM +{ InputParameters -MFEMScalarTimeAverageAux::validParams() +ScalarTimeAverageAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription( "Calculates a running time average of a scalar coefficient projected onto an auxvariable"); - params.addRequiredParam("source", "Scalar coefficient to average"); + params.addRequiredParam("source", + "Scalar coefficient to average"); params.addParam("time_skip", 0.0, "Time to skip before beginning the average"); return params; } -MFEMScalarTimeAverageAux::MFEMScalarTimeAverageAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +ScalarTimeAverageAux::ScalarTimeAverageAux(const InputParameters & parameters) + : AuxKernel(parameters), _source_coefficient(getScalarCoefficient("source")), _result_coefficient(getScalarCoefficientByName(_result_var_name)), _average_var(_result_var.ParFESpace()), @@ -38,7 +41,7 @@ MFEMScalarTimeAverageAux::MFEMScalarTimeAverageAux(const InputParameters & param } void -MFEMScalarTimeAverageAux::execute() +ScalarTimeAverageAux::execute() { if (_time <= _skip) return; @@ -51,4 +54,5 @@ MFEMScalarTimeAverageAux::execute() _result_var = _average_var; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMSumAux.C b/framework/src/mfem/auxkernels/MFEMSumAux.C index 608b9f41533f..363e3c6a7433 100644 --- a/framework/src/mfem/auxkernels/MFEMSumAux.C +++ b/framework/src/mfem/auxkernels/MFEMSumAux.C @@ -12,24 +12,26 @@ #include "MFEMSumAux.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMSumAux); +registerMooseMFEMObject("MooseApp", SumAux); +namespace Moose::MFEM +{ InputParameters -MFEMSumAux::validParams() +SumAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription( "Calculates the sum of an arbitrary number of variables sharing an FE space, each " "optionally scaled by a real constant, and stores the result in an auxiliary variable."); - MFEMExecutedObject::addRequiredDependencyParam>( + ExecutedObject::addRequiredDependencyParam>( params, "source_variables", "The names of the MFEM variables to sum"); params.addParam>( "scale_factors", "The factors to scale each MFEM variable by during summation"); return params; } -MFEMSumAux::MFEMSumAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), +SumAux::SumAux(const InputParameters & parameters) + : AuxKernel(parameters), _var_names(getParam>("source_variables")), _scale_factors(parameters.isParamValid("scale_factors") ? getParam>("scale_factors") @@ -54,7 +56,7 @@ MFEMSumAux::MFEMSumAux(const InputParameters & parameters) } void -MFEMSumAux::execute() +SumAux::execute() { // result = sum_i (_scale_factor_i * _summed_var_i) _result_var = 0.0; @@ -62,4 +64,5 @@ MFEMSumAux::execute() _result_var.Add(_scale_factors[i], *_summed_vars[i]); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/auxkernels/MFEMVectorProjectionAux.C b/framework/src/mfem/auxkernels/MFEMVectorProjectionAux.C index 6598164a02cf..2e8503d90109 100644 --- a/framework/src/mfem/auxkernels/MFEMVectorProjectionAux.C +++ b/framework/src/mfem/auxkernels/MFEMVectorProjectionAux.C @@ -11,27 +11,30 @@ #include "MFEMVectorProjectionAux.h" -registerMooseObject("MooseApp", MFEMVectorProjectionAux); +registerMooseMFEMObject("MooseApp", VectorProjectionAux); +namespace Moose::MFEM +{ InputParameters -MFEMVectorProjectionAux::validParams() +VectorProjectionAux::validParams() { - InputParameters params = MFEMAuxKernel::validParams(); + InputParameters params = AuxKernel::validParams(); params.addClassDescription("Projects a vector coefficient onto a vector MFEM auxvariable."); - params.addRequiredParam("vector_coefficient", - "Name of the vector coefficient to project."); + params.addRequiredParam( + "vector_coefficient", "Name of the vector coefficient to project."); return params; } -MFEMVectorProjectionAux::MFEMVectorProjectionAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +VectorProjectionAux::VectorProjectionAux(const InputParameters & parameters) + : AuxKernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } void -MFEMVectorProjectionAux::execute() +VectorProjectionAux::execute() { _result_var.ProjectCoefficient(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/base/MFEMExecutedObject.C b/framework/src/mfem/base/MFEMExecutedObject.C index 10622ef49c5d..f99f9b7273e0 100644 --- a/framework/src/mfem/base/MFEMExecutedObject.C +++ b/framework/src/mfem/base/MFEMExecutedObject.C @@ -11,43 +11,45 @@ #include "MFEMExecutedObject.h" +namespace Moose::MFEM +{ InputParameters -MFEMExecutedObject::validParams() +ExecutedObject::validParams() { - InputParameters params = MFEMObject::validParams(); + InputParameters params = Object::validParams(); params += SetupInterface::validParams(); - params.registerSystemAttributeName("MFEMExecutedObject"); + params.registerSystemAttributeName("Moose::MFEM::ExecutedObject"); params.addPrivateParam>("_mfem_dependency_param_names", {}); params.set("execute_on", true) = EXEC_TIMESTEP_END; params.addClassDescription("Base class for executed MFEM objects."); return params; } -MFEMExecutedObject::MFEMExecutedObject(const InputParameters & parameters) - : MFEMObject(parameters), SetupInterface(this), DependencyResolverInterface() +ExecutedObject::ExecutedObject(const InputParameters & parameters) + : Object(parameters), SetupInterface(this), DependencyResolverInterface() { } std::optional -MFEMExecutedObject::suppliedVariableName() const +ExecutedObject::suppliedVariableName() const { return std::nullopt; } std::optional -MFEMExecutedObject::suppliedPostprocessorName() const +ExecutedObject::suppliedPostprocessorName() const { return std::nullopt; } std::optional -MFEMExecutedObject::suppliedVectorPostprocessorName() const +ExecutedObject::suppliedVectorPostprocessorName() const { return std::nullopt; } const std::set & -MFEMExecutedObject::getRequestedItems() +ExecutedObject::getRequestedItems() { if (_requested_items) return *_requested_items; @@ -77,7 +79,7 @@ MFEMExecutedObject::getRequestedItems() } const std::set & -MFEMExecutedObject::getSuppliedItems() +ExecutedObject::getSuppliedItems() { if (_supplied_items) return *_supplied_items; @@ -95,28 +97,29 @@ MFEMExecutedObject::getSuppliedItems() } std::string -MFEMExecutedObject::variableDependencyKey(const std::string & name) +ExecutedObject::variableDependencyKey(const std::string & name) { return "variable:" + name; } std::string -MFEMExecutedObject::postprocessorDependencyKey(const std::string & name) +ExecutedObject::postprocessorDependencyKey(const std::string & name) { return "postprocessor:" + name; } std::string -MFEMExecutedObject::vectorPostprocessorDependencyKey(const std::string & name) +ExecutedObject::vectorPostprocessorDependencyKey(const std::string & name) { return "vector_postprocessor:" + name; } void -MFEMExecutedObject::appendDependencyParam(InputParameters & params, const std::string & param_name) +ExecutedObject::appendDependencyParam(InputParameters & params, const std::string & param_name) { auto & param_names = params.set>("_mfem_dependency_param_names"); param_names.push_back(param_name); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/base/MFEMObject.C b/framework/src/mfem/base/MFEMObject.C index 28ce042464ef..5782b4700540 100644 --- a/framework/src/mfem/base/MFEMObject.C +++ b/framework/src/mfem/base/MFEMObject.C @@ -13,8 +13,10 @@ #include "MFEMProblem.h" #include "SubProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMObject::validParams() +Object::validParams() { InputParameters params = MooseObject::validParams(); params += FunctionInterface::validParams(); @@ -25,51 +27,52 @@ MFEMObject::validParams() return params; } -MFEMObject::MFEMObject(const InputParameters & parameters) +Object::Object(const InputParameters & parameters) : MooseObject(parameters), FunctionInterface(this), PostprocessorInterface(this), VectorPostprocessorInterface(this), ReporterInterface(this), _mfem_problem( - static_cast(*parameters.getCheckedPointerParam("_subproblem"))) + static_cast(*parameters.getCheckedPointerParam("_subproblem"))) { } mfem::Coefficient & -MFEMObject::getScalarCoefficientByName(const MFEMScalarCoefficientName & name) +Object::getScalarCoefficientByName(const Moose::MFEM::ScalarCoefficientName & name) { return getMFEMProblem().getCoefficients().getScalarCoefficient(name); } mfem::VectorCoefficient & -MFEMObject::getVectorCoefficientByName(const MFEMVectorCoefficientName & name) +Object::getVectorCoefficientByName(const Moose::MFEM::VectorCoefficientName & name) { return getMFEMProblem().getCoefficients().getVectorCoefficient(name); } mfem::MatrixCoefficient & -MFEMObject::getMatrixCoefficientByName(const MFEMMatrixCoefficientName & name) +Object::getMatrixCoefficientByName(const Moose::MFEM::MatrixCoefficientName & name) { return getMFEMProblem().getCoefficients().getMatrixCoefficient(name); } mfem::Coefficient & -MFEMObject::getScalarCoefficient(const std::string & name) +Object::getScalarCoefficient(const std::string & name) { - return getScalarCoefficientByName(getParam(name)); + return getScalarCoefficientByName(getParam(name)); } mfem::VectorCoefficient & -MFEMObject::getVectorCoefficient(const std::string & name) +Object::getVectorCoefficient(const std::string & name) { - return getVectorCoefficientByName(getParam(name)); + return getVectorCoefficientByName(getParam(name)); } mfem::MatrixCoefficient & -MFEMObject::getMatrixCoefficient(const std::string & name) +Object::getMatrixCoefficient(const std::string & name) { - return getMatrixCoefficientByName(getParam(name)); + return getMatrixCoefficientByName(getParam(name)); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMBoundaryCondition.C b/framework/src/mfem/bcs/MFEMBoundaryCondition.C index 0110a667b82a..8b0248cecccc 100644 --- a/framework/src/mfem/bcs/MFEMBoundaryCondition.C +++ b/framework/src/mfem/bcs/MFEMBoundaryCondition.C @@ -15,11 +15,13 @@ #include "mfem/miniapps/common/mesh_extras.hpp" #include "libmesh/restore_warnings.h" +namespace Moose::MFEM +{ InputParameters -MFEMBoundaryCondition::validParams() +BoundaryCondition::validParams() { - InputParameters params = MFEMObject::validParams(); - params += MFEMBoundaryRestrictable::validParams(); + InputParameters params = Object::validParams(); + params += BoundaryRestrictable::validParams(); params.addClassDescription("Base class for applying boundary conditions to MFEM problems."); params.registerBase("BoundaryCondition"); @@ -28,12 +30,13 @@ MFEMBoundaryCondition::validParams() return params; } -MFEMBoundaryCondition::MFEMBoundaryCondition(const InputParameters & parameters) - : MFEMObject(parameters), - MFEMBoundaryRestrictable( - parameters, getMFEMProblem().getMFEMVariableMesh(getParam("variable"))), +BoundaryCondition::BoundaryCondition(const InputParameters & parameters) + : Object(parameters), + BoundaryRestrictable(parameters, + getMFEMProblem().getMFEMVariableMesh(getParam("variable"))), _test_var_name(getParam("variable")) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMBoundaryIntegratedBC.C b/framework/src/mfem/bcs/MFEMBoundaryIntegratedBC.C index 6dcc5b1cd000..5a74ba457219 100644 --- a/framework/src/mfem/bcs/MFEMBoundaryIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMBoundaryIntegratedBC.C @@ -11,31 +11,34 @@ #include "MFEMBoundaryIntegratedBC.h" -registerMooseObject("MooseApp", MFEMBoundaryIntegratedBC); +registerMooseMFEMObject("MooseApp", BoundaryIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMBoundaryIntegratedBC::validParams() +BoundaryIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(f, v)_\\Omega$ " "arising from the weak form of the forcing term $f$."); - params.addParam( + params.addParam( "coefficient", "1.", "The coefficient which will be used in the integrated BC"); return params; } -MFEMBoundaryIntegratedBC::MFEMBoundaryIntegratedBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) +BoundaryIntegratedBC::BoundaryIntegratedBC(const InputParameters & parameters) + : IntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) { } // Create a new MFEM integrator to apply to the RHS of the weak form. Ownership managed by the // caller. mfem::LinearFormIntegrator * -MFEMBoundaryIntegratedBC::createLFIntegrator() +BoundaryIntegratedBC::createLFIntegrator() { return new mfem::BoundaryLFIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMBoundaryNormalIntegratedBC.C b/framework/src/mfem/bcs/MFEMBoundaryNormalIntegratedBC.C index d5ba062a7c5f..243b1a00c2d7 100644 --- a/framework/src/mfem/bcs/MFEMBoundaryNormalIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMBoundaryNormalIntegratedBC.C @@ -11,15 +11,17 @@ #include "MFEMBoundaryNormalIntegratedBC.h" -registerMooseObject("MooseApp", MFEMBoundaryNormalIntegratedBC); +registerMooseMFEMObject("MooseApp", BoundaryNormalIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMBoundaryNormalIntegratedBC::validParams() +BoundaryNormalIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(\\vec f \\cdot \\hat n, v)_{\\partial\\Omega}$"); - params.addParam( + params.addParam( "vector_coefficient", "1. 1. 1.", "Vector coefficient whose normal component will be used in the integrated BC"); @@ -27,17 +29,18 @@ MFEMBoundaryNormalIntegratedBC::validParams() } // TODO: Currently assumes the vector function coefficient is 3D -MFEMBoundaryNormalIntegratedBC::MFEMBoundaryNormalIntegratedBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +BoundaryNormalIntegratedBC::BoundaryNormalIntegratedBC(const InputParameters & parameters) + : IntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } // Create a new MFEM integrator to apply to the RHS of the weak form. Ownership managed by the // caller. mfem::LinearFormIntegrator * -MFEMBoundaryNormalIntegratedBC::createLFIntegrator() +BoundaryNormalIntegratedBC::createLFIntegrator() { return new mfem::BoundaryNormalLFIntegrator(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexEssentialBC.C b/framework/src/mfem/bcs/MFEMComplexEssentialBC.C index f981069ad65c..67b70b9f953c 100644 --- a/framework/src/mfem/bcs/MFEMComplexEssentialBC.C +++ b/framework/src/mfem/bcs/MFEMComplexEssentialBC.C @@ -11,16 +11,19 @@ #include "MFEMComplexEssentialBC.h" +namespace Moose::MFEM +{ InputParameters -MFEMComplexEssentialBC::validParams() +ComplexEssentialBC::validParams() { - InputParameters params = MFEMBoundaryCondition::validParams(); + InputParameters params = BoundaryCondition::validParams(); return params; } -MFEMComplexEssentialBC::MFEMComplexEssentialBC(const InputParameters & parameters) - : MFEMBoundaryCondition(parameters) +ComplexEssentialBC::ComplexEssentialBC(const InputParameters & parameters) + : BoundaryCondition(parameters) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexIntegratedBC.C b/framework/src/mfem/bcs/MFEMComplexIntegratedBC.C index cb78cebd1b65..3cdbba465cfa 100644 --- a/framework/src/mfem/bcs/MFEMComplexIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMComplexIntegratedBC.C @@ -11,19 +11,22 @@ #include "MFEMComplexIntegratedBC.h" -registerMooseObject("MooseApp", MFEMComplexIntegratedBC); +registerMooseMFEMObject("MooseApp", ComplexIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMComplexIntegratedBC::validParams() +ComplexIntegratedBC::validParams() { - InputParameters params = MFEMBoundaryCondition::validParams(); + InputParameters params = BoundaryCondition::validParams(); return params; } -MFEMComplexIntegratedBC::MFEMComplexIntegratedBC(const InputParameters & parameters) - : MFEMBoundaryCondition(parameters) +ComplexIntegratedBC::ComplexIntegratedBC(const InputParameters & parameters) + : BoundaryCondition(parameters) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexScalarDirichletBC.C b/framework/src/mfem/bcs/MFEMComplexScalarDirichletBC.C index a7e303394f6e..180a15652af4 100644 --- a/framework/src/mfem/bcs/MFEMComplexScalarDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMComplexScalarDirichletBC.C @@ -11,18 +11,20 @@ #include "MFEMComplexScalarDirichletBC.h" -registerMooseObject("MooseApp", MFEMComplexScalarDirichletBC); +registerMooseMFEMObject("MooseApp", ComplexScalarDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMComplexScalarDirichletBC::validParams() +ComplexScalarDirichletBC::validParams() { - InputParameters params = MFEMComplexEssentialBC::validParams(); + InputParameters params = ComplexEssentialBC::validParams(); params.addClassDescription("Applies a Dirichlet condition to a scalar variable."); - params.addParam( + params.addParam( "coefficient_real", "0.", "The coefficient setting the real part of the values on the essential boundary"); - params.addParam( + params.addParam( "coefficient_imag", "0.", "The coefficient setting the imaginary part of the values on the essential boundary"); @@ -30,17 +32,18 @@ MFEMComplexScalarDirichletBC::validParams() return params; } -MFEMComplexScalarDirichletBC::MFEMComplexScalarDirichletBC(const InputParameters & parameters) - : MFEMComplexEssentialBC(parameters), +ComplexScalarDirichletBC::ComplexScalarDirichletBC(const InputParameters & parameters) + : ComplexEssentialBC(parameters), _coef_real(getScalarCoefficient("coefficient_real")), _coef_imag(getScalarCoefficient("coefficient_imag")) { } void -MFEMComplexScalarDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) +ComplexScalarDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) { gridfunc.ProjectBdrCoefficient(_coef_real, _coef_imag, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexVectorDirichletBCBase.C b/framework/src/mfem/bcs/MFEMComplexVectorDirichletBCBase.C index 80b38a460dca..f69641610b64 100644 --- a/framework/src/mfem/bcs/MFEMComplexVectorDirichletBCBase.C +++ b/framework/src/mfem/bcs/MFEMComplexVectorDirichletBCBase.C @@ -11,28 +11,32 @@ #include "MFEMComplexVectorDirichletBCBase.h" +namespace Moose::MFEM +{ InputParameters -MFEMComplexVectorDirichletBCBase::validParams() +ComplexVectorDirichletBCBase::validParams() { - InputParameters params = MFEMComplexEssentialBC::validParams(); - params.addParam("vector_coefficient_real", - "0. 0. 0.", - "Vector coefficient specifying the real part of the " - "values the variable takes on the boundary"); - params.addParam("vector_coefficient_imag", - "0. 0. 0.", - "Vector coefficient specifying the imaginary part of " - "the values the variable takes on the boundary"); + InputParameters params = ComplexEssentialBC::validParams(); + params.addParam( + "vector_coefficient_real", + "0. 0. 0.", + "Vector coefficient specifying the real part of the " + "values the variable takes on the boundary"); + params.addParam( + "vector_coefficient_imag", + "0. 0. 0.", + "Vector coefficient specifying the imaginary part of " + "the values the variable takes on the boundary"); return params; } -MFEMComplexVectorDirichletBCBase::MFEMComplexVectorDirichletBCBase( - const InputParameters & parameters) - : MFEMComplexEssentialBC(parameters), +ComplexVectorDirichletBCBase::ComplexVectorDirichletBCBase(const InputParameters & parameters) + : ComplexEssentialBC(parameters), _vec_coef_real(getVectorCoefficient("vector_coefficient_real")), _vec_coef_imag(getVectorCoefficient("vector_coefficient_imag")) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexVectorNormalDirichletBC.C b/framework/src/mfem/bcs/MFEMComplexVectorNormalDirichletBC.C index cd5bc58a1283..f96ae3c351dc 100644 --- a/framework/src/mfem/bcs/MFEMComplexVectorNormalDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMComplexVectorNormalDirichletBC.C @@ -11,27 +11,29 @@ #include "MFEMComplexVectorNormalDirichletBC.h" -registerMooseObject("MooseApp", MFEMComplexVectorNormalDirichletBC); +registerMooseMFEMObject("MooseApp", ComplexVectorNormalDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMComplexVectorNormalDirichletBC::validParams() +ComplexVectorNormalDirichletBC::validParams() { - InputParameters params = MFEMComplexVectorDirichletBCBase::validParams(); + InputParameters params = ComplexVectorDirichletBCBase::validParams(); params.addClassDescription( "Applies a complex Dirichlet condition to the normal components of a vector variable."); return params; } -MFEMComplexVectorNormalDirichletBC::MFEMComplexVectorNormalDirichletBC( - const InputParameters & parameters) - : MFEMComplexVectorDirichletBCBase(parameters) +ComplexVectorNormalDirichletBC::ComplexVectorNormalDirichletBC(const InputParameters & parameters) + : ComplexVectorDirichletBCBase(parameters) { } void -MFEMComplexVectorNormalDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) +ComplexVectorNormalDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) { gridfunc.ProjectBdrCoefficientNormal(_vec_coef_real, _vec_coef_imag, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.C b/framework/src/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.C index 727141fe662f..873c717f9efb 100644 --- a/framework/src/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMComplexVectorTangentialDirichletBC.C @@ -11,27 +11,30 @@ #include "MFEMComplexVectorTangentialDirichletBC.h" -registerMooseObject("MooseApp", MFEMComplexVectorTangentialDirichletBC); +registerMooseMFEMObject("MooseApp", ComplexVectorTangentialDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMComplexVectorTangentialDirichletBC::validParams() +ComplexVectorTangentialDirichletBC::validParams() { - InputParameters params = MFEMComplexVectorDirichletBCBase::validParams(); + InputParameters params = ComplexVectorDirichletBCBase::validParams(); params.addClassDescription( "Applies a complex Dirichlet condition to the tangential components of a vector variable."); return params; } -MFEMComplexVectorTangentialDirichletBC::MFEMComplexVectorTangentialDirichletBC( +ComplexVectorTangentialDirichletBC::ComplexVectorTangentialDirichletBC( const InputParameters & parameters) - : MFEMComplexVectorDirichletBCBase(parameters) + : ComplexVectorDirichletBCBase(parameters) { } void -MFEMComplexVectorTangentialDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) +ComplexVectorTangentialDirichletBC::ApplyBC(mfem::ParComplexGridFunction & gridfunc) { gridfunc.ProjectBdrCoefficientTangent(_vec_coef_real, _vec_coef_imag, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMConvectiveHeatFluxBC.C b/framework/src/mfem/bcs/MFEMConvectiveHeatFluxBC.C index bf0cd3b8c01e..2ce81ba62ae0 100644 --- a/framework/src/mfem/bcs/MFEMConvectiveHeatFluxBC.C +++ b/framework/src/mfem/bcs/MFEMConvectiveHeatFluxBC.C @@ -12,28 +12,30 @@ #include "MFEMConvectiveHeatFluxBC.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMConvectiveHeatFluxBC); +registerMooseMFEMObject("MooseApp", ConvectiveHeatFluxBC); +namespace Moose::MFEM +{ InputParameters -MFEMConvectiveHeatFluxBC::validParams() +ConvectiveHeatFluxBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); // FIXME: Should these really be specified via properties? T_infinity in particular? Use functions // instead? params.addClassDescription( "Convective heat transfer boundary condition with temperature and heat " "transfer coefficent given by material properties to add to MFEM problems."); - params.addParam( + params.addParam( "T_infinity", "0.", "Name of a coefficient specifying the far-field temperature"); - params.addParam( + params.addParam( "heat_transfer_coefficient", "1.", "Name of the coefficient specifying the heat transfer coefficient"); return params; } -MFEMConvectiveHeatFluxBC::MFEMConvectiveHeatFluxBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), +ConvectiveHeatFluxBC::ConvectiveHeatFluxBC(const InputParameters & parameters) + : IntegratedBC(parameters), _heat_transfer_coef(getScalarCoefficient("heat_transfer_coefficient")), _T_inf_coef(getScalarCoefficient("T_infinity")), _external_heat_flux_coef( @@ -47,16 +49,17 @@ MFEMConvectiveHeatFluxBC::MFEMConvectiveHeatFluxBC(const InputParameters & param // Create a new MFEM integrator to apply to the RHS of the weak form. Ownership managed by the // caller. mfem::LinearFormIntegrator * -MFEMConvectiveHeatFluxBC::createLFIntegrator() +ConvectiveHeatFluxBC::createLFIntegrator() { return new mfem::BoundaryLFIntegrator(_external_heat_flux_coef); } // Create a new MFEM integrator to apply to LHS of the weak form. Ownership managed by the caller. mfem::BilinearFormIntegrator * -MFEMConvectiveHeatFluxBC::createBFIntegrator() +ConvectiveHeatFluxBC::createBFIntegrator() { return new mfem::BoundaryMassIntegrator(_heat_transfer_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMEssentialBC.C b/framework/src/mfem/bcs/MFEMEssentialBC.C index 7df0b68acc44..99626b215e95 100644 --- a/framework/src/mfem/bcs/MFEMEssentialBC.C +++ b/framework/src/mfem/bcs/MFEMEssentialBC.C @@ -11,16 +11,16 @@ #include "MFEMEssentialBC.h" +namespace Moose::MFEM +{ InputParameters -MFEMEssentialBC::validParams() +EssentialBC::validParams() { - InputParameters params = MFEMBoundaryCondition::validParams(); + InputParameters params = BoundaryCondition::validParams(); return params; } -MFEMEssentialBC::MFEMEssentialBC(const InputParameters & parameters) - : MFEMBoundaryCondition(parameters) -{ -} +EssentialBC::EssentialBC(const InputParameters & parameters) : BoundaryCondition(parameters) {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMIntegratedBC.C b/framework/src/mfem/bcs/MFEMIntegratedBC.C index 70cc30e4a048..e52b7fc547b6 100644 --- a/framework/src/mfem/bcs/MFEMIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMIntegratedBC.C @@ -11,16 +11,16 @@ #include "MFEMIntegratedBC.h" +namespace Moose::MFEM +{ InputParameters -MFEMIntegratedBC::validParams() +IntegratedBC::validParams() { - InputParameters params = MFEMBoundaryCondition::validParams(); + InputParameters params = BoundaryCondition::validParams(); return params; } -MFEMIntegratedBC::MFEMIntegratedBC(const InputParameters & parameters) - : MFEMBoundaryCondition(parameters) -{ -} +IntegratedBC::IntegratedBC(const InputParameters & parameters) : BoundaryCondition(parameters) {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMNLConvectiveHeatFluxBC.C b/framework/src/mfem/bcs/MFEMNLConvectiveHeatFluxBC.C index 4382bd94962c..a2c9c489986b 100644 --- a/framework/src/mfem/bcs/MFEMNLConvectiveHeatFluxBC.C +++ b/framework/src/mfem/bcs/MFEMNLConvectiveHeatFluxBC.C @@ -13,33 +13,41 @@ #include "NLBoundaryConvectiveHeatFluxIntegrator.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMNLConvectiveHeatFluxBC); +registerMooseMFEMObject("MooseApp", NLConvectiveHeatFluxBC); +namespace Moose::MFEM +{ InputParameters -MFEMNLConvectiveHeatFluxBC::validParams() +NLConvectiveHeatFluxBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription( "Convective heat transfer boundary condition with temperature and heat " "transfer coefficent given by material properties to add to MFEM problems."); - params.addParam( + params.addParam( "T_infinity", "0.", "Name of a coefficient specifying the far-field temperature"); - params.addParam( + params.addParam( "heat_transfer_coefficient", "1.", "Name of the coefficient specifying the heat transfer coefficient"); - params.addParam( + params.addParam( "d_heat_transfer_dT_coefficient", "0.", "Name of the coefficient specifying the derivative of the heat transfer coefficient with " "respect to temperature"); + params.addParam( + "d_T_infinity_dT_coefficient", + "0.", + "Name of the coefficient specifying the derivative of the far-field temperature with " + "respect to temperature"); return params; } -MFEMNLConvectiveHeatFluxBC::MFEMNLConvectiveHeatFluxBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), +NLConvectiveHeatFluxBC::NLConvectiveHeatFluxBC(const InputParameters & parameters) + : IntegratedBC(parameters), _heat_transfer_coef(getScalarCoefficient("heat_transfer_coefficient")), _d_heat_transfer_dT_coef(getScalarCoefficient("d_heat_transfer_dT_coefficient")), + _d_T_inf_dT_coef(getScalarCoefficient("d_T_infinity_dT_coefficient")), _T_inf_coef(getScalarCoefficient("T_infinity")), _T_coef(getScalarCoefficientByName((getTrialVariableName()))) { @@ -47,10 +55,11 @@ MFEMNLConvectiveHeatFluxBC::MFEMNLConvectiveHeatFluxBC(const InputParameters & p // Create a new MFEM integrator to apply to LHS of the weak form. Ownership managed by the caller. mfem::NonlinearFormIntegrator * -MFEMNLConvectiveHeatFluxBC::createNLIntegrator() +NLConvectiveHeatFluxBC::createNLIntegrator() { - return new Moose::MFEM::NLBoundaryConvectiveHeatFluxIntegrator( - _heat_transfer_coef, _d_heat_transfer_dT_coef, _T_inf_coef, _T_coef); + return new NLBoundaryConvectiveHeatFluxIntegrator( + _heat_transfer_coef, _d_heat_transfer_dT_coef, _d_T_inf_dT_coef, _T_inf_coef, _T_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMRWTE10IntegratedBC.C b/framework/src/mfem/bcs/MFEMRWTE10IntegratedBC.C index 59dd3d2da17e..27fc090ce47f 100644 --- a/framework/src/mfem/bcs/MFEMRWTE10IntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMRWTE10IntegratedBC.C @@ -11,12 +11,14 @@ #include "MFEMRWTE10IntegratedBC.h" -registerMooseObject("MooseApp", MFEMRWTE10IntegratedBC); +registerMooseMFEMObject("MooseApp", RWTE10IntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMRWTE10IntegratedBC::validParams() +RWTE10IntegratedBC::validParams() { - InputParameters params = MFEMComplexIntegratedBC::validParams(); + InputParameters params = ComplexIntegratedBC::validParams(); params.addClassDescription("Adds the Robin boundary conditions for an electromagnetic problem " "with transverse waves in a rectangular waveguide."); params.addParam( @@ -36,8 +38,8 @@ MFEMRWTE10IntegratedBC::validParams() return params; } -MFEMRWTE10IntegratedBC::MFEMRWTE10IntegratedBC(const InputParameters & parameters) - : MFEMComplexIntegratedBC(parameters), +RWTE10IntegratedBC::RWTE10IntegratedBC(const InputParameters & parameters) + : ComplexIntegratedBC(parameters), _mu(getParam("mu")), _epsilon(getParam("epsilon")), _omega(2 * M_PI * getParam("frequency")), @@ -62,7 +64,7 @@ MFEMRWTE10IntegratedBC::MFEMRWTE10IntegratedBC(const InputParameters & parameter } void -MFEMRWTE10IntegratedBC::RWTE10(const mfem::Vector & x, std::vector> & E) +RWTE10IntegratedBC::RWTE10(const mfem::Vector & x, std::vector> & E) { mfem::Vector e_hat(normalizedCrossProduct(_k_c, _k_a)); @@ -78,7 +80,7 @@ MFEMRWTE10IntegratedBC::RWTE10(const mfem::Vector & x, std::vector> eval(x.Size()); RWTE10(x, eval); @@ -86,7 +88,7 @@ MFEMRWTE10IntegratedBC::RWTE10Real(const mfem::Vector & x, mfem::Vector & v) v(i) = -2 * _k.imag() * eval[i].imag() / _mu; } void -MFEMRWTE10IntegratedBC::RWTE10Imag(const mfem::Vector & x, mfem::Vector & v) +RWTE10IntegratedBC::RWTE10Imag(const mfem::Vector & x, mfem::Vector & v) { std::vector> eval(x.Size()); RWTE10(x, eval); @@ -94,4 +96,5 @@ MFEMRWTE10IntegratedBC::RWTE10Imag(const mfem::Vector & x, mfem::Vector & v) v(i) = 2 * _k.imag() * eval[i].real() / _mu; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMScalarDirichletBC.C b/framework/src/mfem/bcs/MFEMScalarDirichletBC.C index 040dfd792656..cc2042e53038 100644 --- a/framework/src/mfem/bcs/MFEMScalarDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMScalarDirichletBC.C @@ -11,27 +11,30 @@ #include "MFEMScalarDirichletBC.h" -registerMooseObject("MooseApp", MFEMScalarDirichletBC); +registerMooseMFEMObject("MooseApp", ScalarDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMScalarDirichletBC::validParams() +ScalarDirichletBC::validParams() { - InputParameters params = MFEMEssentialBC::validParams(); + InputParameters params = EssentialBC::validParams(); params.addClassDescription("Applies a Dirichlet condition to a scalar variable."); - params.addParam( + params.addParam( "coefficient", "0.", "The coefficient setting the values on the essential boundary"); return params; } -MFEMScalarDirichletBC::MFEMScalarDirichletBC(const InputParameters & parameters) - : MFEMEssentialBC(parameters), _coef(getScalarCoefficient("coefficient")) +ScalarDirichletBC::ScalarDirichletBC(const InputParameters & parameters) + : EssentialBC(parameters), _coef(getScalarCoefficient("coefficient")) { } void -MFEMScalarDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) +ScalarDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) { gridfunc.ProjectBdrCoefficient(_coef, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorBoundaryIntegratedBC.C b/framework/src/mfem/bcs/MFEMVectorBoundaryIntegratedBC.C index 3ccb5c5df0a6..ebec912784ca 100644 --- a/framework/src/mfem/bcs/MFEMVectorBoundaryIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMVectorBoundaryIntegratedBC.C @@ -11,30 +11,33 @@ #include "MFEMVectorBoundaryIntegratedBC.h" -registerMooseObject("MooseApp", MFEMVectorBoundaryIntegratedBC); +registerMooseMFEMObject("MooseApp", VectorBoundaryIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorBoundaryIntegratedBC::validParams() +VectorBoundaryIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(\\vec f, \\vec v)_{\\partial\\Omega}$"); - params.addParam( + params.addParam( "vector_coefficient", "1. 1. 1.", "Vector coefficient used in the boundary integrator"); return params; } -MFEMVectorBoundaryIntegratedBC::MFEMVectorBoundaryIntegratedBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +VectorBoundaryIntegratedBC::VectorBoundaryIntegratedBC(const InputParameters & parameters) + : IntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } // Create a new MFEM integrator to apply to the RHS of the weak form. Ownership managed by the // caller. mfem::LinearFormIntegrator * -MFEMVectorBoundaryIntegratedBC::createLFIntegrator() +VectorBoundaryIntegratedBC::createLFIntegrator() { return new mfem::VectorBoundaryLFIntegrator(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorDirichletBC.C b/framework/src/mfem/bcs/MFEMVectorDirichletBC.C index fac30060da20..654ddb1049b1 100644 --- a/framework/src/mfem/bcs/MFEMVectorDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMVectorDirichletBC.C @@ -11,26 +11,29 @@ #include "MFEMVectorDirichletBC.h" -registerMooseObject("MooseApp", MFEMVectorDirichletBC); +registerMooseMFEMObject("MooseApp", VectorDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorDirichletBC::validParams() +VectorDirichletBC::validParams() { - InputParameters params = MFEMVectorDirichletBCBase::validParams(); + InputParameters params = VectorDirichletBCBase::validParams(); params.addClassDescription( "Applies a Dirichlet condition to all components of a vector variable."); return params; } -MFEMVectorDirichletBC::MFEMVectorDirichletBC(const InputParameters & parameters) - : MFEMVectorDirichletBCBase(parameters) +VectorDirichletBC::VectorDirichletBC(const InputParameters & parameters) + : VectorDirichletBCBase(parameters) { } void -MFEMVectorDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) +VectorDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) { gridfunc.ProjectBdrCoefficient(_vec_coef, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorDirichletBCBase.C b/framework/src/mfem/bcs/MFEMVectorDirichletBCBase.C index b5cafa85aad4..78b7d4c80022 100644 --- a/framework/src/mfem/bcs/MFEMVectorDirichletBCBase.C +++ b/framework/src/mfem/bcs/MFEMVectorDirichletBCBase.C @@ -11,20 +11,23 @@ #include "MFEMVectorDirichletBCBase.h" +namespace Moose::MFEM +{ InputParameters -MFEMVectorDirichletBCBase::validParams() +VectorDirichletBCBase::validParams() { - InputParameters params = MFEMEssentialBC::validParams(); - params.addParam( + InputParameters params = EssentialBC::validParams(); + params.addParam( "vector_coefficient", "0. 0. 0.", "Vector coefficient specifying the values the variable takes on the boundary"); return params; } -MFEMVectorDirichletBCBase::MFEMVectorDirichletBCBase(const InputParameters & parameters) - : MFEMEssentialBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +VectorDirichletBCBase::VectorDirichletBCBase(const InputParameters & parameters) + : EssentialBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.C b/framework/src/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.C index 1bb072c65b41..553c21e453fa 100644 --- a/framework/src/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMVectorFEBoundaryFluxIntegratedBC.C @@ -11,30 +11,33 @@ #include "MFEMVectorFEBoundaryFluxIntegratedBC.h" -registerMooseObject("MooseApp", MFEMVectorFEBoundaryFluxIntegratedBC); +registerMooseMFEMObject("MooseApp", VectorFEBoundaryFluxIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEBoundaryFluxIntegratedBC::validParams() +VectorFEBoundaryFluxIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(f, \\vec v \\cdot \\hat n)_{\\partial\\Omega}$"); - params.addParam( + params.addParam( "coefficient", "1.", "The coefficient which will be used in the integrated BC."); return params; } -MFEMVectorFEBoundaryFluxIntegratedBC::MFEMVectorFEBoundaryFluxIntegratedBC( +VectorFEBoundaryFluxIntegratedBC::VectorFEBoundaryFluxIntegratedBC( const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) + : IntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) { } // Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. mfem::LinearFormIntegrator * -MFEMVectorFEBoundaryFluxIntegratedBC::createLFIntegrator() +VectorFEBoundaryFluxIntegratedBC::createLFIntegrator() { return new mfem::VectorFEBoundaryFluxLFIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.C b/framework/src/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.C index 99b4c8d6f9fa..e8f77482c36f 100644 --- a/framework/src/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMVectorFEBoundaryTangentIntegratedBC.C @@ -11,30 +11,33 @@ #include "MFEMVectorFEBoundaryTangentIntegratedBC.h" -registerMooseObject("MooseApp", MFEMVectorFEBoundaryTangentIntegratedBC); +registerMooseMFEMObject("MooseApp", VectorFEBoundaryTangentIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEBoundaryTangentIntegratedBC::validParams() +VectorFEBoundaryTangentIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(\\vec n \\times \\vec f, \\vec v)_{\\partial\\Omega}$"); - params.addParam( + params.addParam( "vector_coefficient", "1. 1. 1.", "Vector coefficient used in the boundary integrator"); return params; } -MFEMVectorFEBoundaryTangentIntegratedBC::MFEMVectorFEBoundaryTangentIntegratedBC( +VectorFEBoundaryTangentIntegratedBC::VectorFEBoundaryTangentIntegratedBC( const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) + : IntegratedBC(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } // Create MFEM integrator to apply to the RHS of the weak form. Ownership managed by the caller. mfem::LinearFormIntegrator * -MFEMVectorFEBoundaryTangentIntegratedBC::createLFIntegrator() +VectorFEBoundaryTangentIntegratedBC::createLFIntegrator() { return new mfem::VectorFEBoundaryTangentLFIntegrator(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorFEMassIntegratedBC.C b/framework/src/mfem/bcs/MFEMVectorFEMassIntegratedBC.C index 0c07afc4e7f7..9cd1771c9d22 100644 --- a/framework/src/mfem/bcs/MFEMVectorFEMassIntegratedBC.C +++ b/framework/src/mfem/bcs/MFEMVectorFEMassIntegratedBC.C @@ -11,30 +11,33 @@ #include "MFEMVectorFEMassIntegratedBC.h" -registerMooseObject("MooseApp", MFEMVectorFEMassIntegratedBC); +registerMooseMFEMObject("MooseApp", VectorFEMassIntegratedBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEMassIntegratedBC::validParams() +VectorFEMassIntegratedBC::validParams() { - InputParameters params = MFEMIntegratedBC::validParams(); + InputParameters params = IntegratedBC::validParams(); params.addClassDescription("Adds the boundary integrator to an MFEM problem for the linear form " "$(\\vec u , \\vec v)_{\\partial\\Omega}$"); - params.addParam( + params.addParam( "coefficient", "1.", "The coefficient which will be used in the integrated BC."); return params; } -MFEMVectorFEMassIntegratedBC::MFEMVectorFEMassIntegratedBC(const InputParameters & parameters) - : MFEMIntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) +VectorFEMassIntegratedBC::VectorFEMassIntegratedBC(const InputParameters & parameters) + : IntegratedBC(parameters), _coef(getScalarCoefficient("coefficient")) { } // Create MFEM integrator to apply to the LHS of the weak form. Ownership managed by the caller. mfem::BilinearFormIntegrator * -MFEMVectorFEMassIntegratedBC::createBFIntegrator() +VectorFEMassIntegratedBC::createBFIntegrator() { return new mfem::VectorFEMassIntegrator(_coef); ; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorNormalDirichletBC.C b/framework/src/mfem/bcs/MFEMVectorNormalDirichletBC.C index 483a99c3293b..a0a0c5d6efaa 100644 --- a/framework/src/mfem/bcs/MFEMVectorNormalDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMVectorNormalDirichletBC.C @@ -11,26 +11,29 @@ #include "MFEMVectorNormalDirichletBC.h" -registerMooseObject("MooseApp", MFEMVectorNormalDirichletBC); +registerMooseMFEMObject("MooseApp", VectorNormalDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorNormalDirichletBC::validParams() +VectorNormalDirichletBC::validParams() { - InputParameters params = MFEMVectorDirichletBCBase::validParams(); + InputParameters params = VectorDirichletBCBase::validParams(); params.addClassDescription( "Applies a Dirichlet condition to the normal components of a vector variable."); return params; } -MFEMVectorNormalDirichletBC::MFEMVectorNormalDirichletBC(const InputParameters & parameters) - : MFEMVectorDirichletBCBase(parameters) +VectorNormalDirichletBC::VectorNormalDirichletBC(const InputParameters & parameters) + : VectorDirichletBCBase(parameters) { } void -MFEMVectorNormalDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) +VectorNormalDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) { gridfunc.ProjectBdrCoefficientNormal(_vec_coef, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/bcs/MFEMVectorTangentialDirichletBC.C b/framework/src/mfem/bcs/MFEMVectorTangentialDirichletBC.C index 1ace4a1fc3b2..ead4f74a611f 100644 --- a/framework/src/mfem/bcs/MFEMVectorTangentialDirichletBC.C +++ b/framework/src/mfem/bcs/MFEMVectorTangentialDirichletBC.C @@ -11,26 +11,29 @@ #include "MFEMVectorTangentialDirichletBC.h" -registerMooseObject("MooseApp", MFEMVectorTangentialDirichletBC); +registerMooseMFEMObject("MooseApp", VectorTangentialDirichletBC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorTangentialDirichletBC::validParams() +VectorTangentialDirichletBC::validParams() { - InputParameters params = MFEMVectorDirichletBCBase::validParams(); + InputParameters params = VectorDirichletBCBase::validParams(); params.addClassDescription( "Applies a Dirichlet condition to the tangential components of a vector variable."); return params; } -MFEMVectorTangentialDirichletBC::MFEMVectorTangentialDirichletBC(const InputParameters & parameters) - : MFEMVectorDirichletBCBase(parameters) +VectorTangentialDirichletBC::VectorTangentialDirichletBC(const InputParameters & parameters) + : VectorDirichletBCBase(parameters) { } void -MFEMVectorTangentialDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) +VectorTangentialDirichletBC::ApplyBC(mfem::GridFunction & gridfunc) { gridfunc.ProjectBdrCoefficientTangent(_vec_coef, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/equation_systems/ComplexEquationSystem.C b/framework/src/mfem/equation_systems/ComplexEquationSystem.C index 8a4240c8169f..54407e8ac72c 100644 --- a/framework/src/mfem/equation_systems/ComplexEquationSystem.C +++ b/framework/src/mfem/equation_systems/ComplexEquationSystem.C @@ -148,7 +148,7 @@ ComplexEquationSystem::ApplyEssentialBCs() } void -ComplexEquationSystem::AddComplexKernel(std::shared_ptr kernel) +ComplexEquationSystem::AddComplexKernel(std::shared_ptr kernel) { const auto & trial_var_name = kernel->getTrialVariableName(); const auto & test_var_name = kernel->getTestVariableName(); @@ -158,20 +158,20 @@ ComplexEquationSystem::AddComplexKernel(std::shared_ptr kerne if (!_cmplx_kernels_map.Has(test_var_name)) { auto kernel_field_map = - std::make_shared>>>(); + std::make_shared>>>(); _cmplx_kernels_map.Register(test_var_name, std::move(kernel_field_map)); } // Register new complex kernels map if not present for the test/trial variable pair if (!_cmplx_kernels_map.Get(test_var_name)->Has(trial_var_name)) { - auto kernels = std::make_shared>>(); + auto kernels = std::make_shared>>(); _cmplx_kernels_map.Get(test_var_name)->Register(trial_var_name, std::move(kernels)); } _cmplx_kernels_map.GetRef(test_var_name).Get(trial_var_name)->push_back(std::move(kernel)); } void -ComplexEquationSystem::AddComplexIntegratedBC(std::shared_ptr bc) +ComplexEquationSystem::AddComplexIntegratedBC(std::shared_ptr bc) { const auto & trial_var_name = bc->getTrialVariableName(); const auto & test_var_name = bc->getTestVariableName(); @@ -181,27 +181,27 @@ ComplexEquationSystem::AddComplexIntegratedBC(std::shared_ptr>>>(); + std::make_shared>>>(); _cmplx_integrated_bc_map.Register(test_var_name, std::move(integrated_bc_field_map)); } // Register new complex integrated bc map if not present for the test/trial variable pair if (!_cmplx_integrated_bc_map.Get(test_var_name)->Has(trial_var_name)) { - auto bcs = std::make_shared>>(); + auto bcs = std::make_shared>>(); _cmplx_integrated_bc_map.Get(test_var_name)->Register(trial_var_name, std::move(bcs)); } _cmplx_integrated_bc_map.GetRef(test_var_name).Get(trial_var_name)->push_back(std::move(bc)); } void -ComplexEquationSystem::AddComplexEssentialBCs(std::shared_ptr bc) +ComplexEquationSystem::AddComplexEssentialBCs(std::shared_ptr bc) { const auto & test_var_name = bc->getTestVariableName(); AddTestVariableNameIfMissing(test_var_name); // Register new complex essential bc map if not present for the test variable if (!_cmplx_essential_bc_map.Has(test_var_name)) { - auto bcs = std::make_shared>>(); + auto bcs = std::make_shared>>(); _cmplx_essential_bc_map.Register(test_var_name, std::move(bcs)); } _cmplx_essential_bc_map.GetRef(test_var_name).push_back(std::move(bc)); diff --git a/framework/src/mfem/equation_systems/EquationSystem.C b/framework/src/mfem/equation_systems/EquationSystem.C index 91530f4be6e8..a08a1661b7f7 100644 --- a/framework/src/mfem/equation_systems/EquationSystem.C +++ b/framework/src/mfem/equation_systems/EquationSystem.C @@ -88,7 +88,7 @@ EquationSystem::SetTrialVariableNames() } void -EquationSystem::AddKernel(std::shared_ptr kernel) +EquationSystem::AddKernel(std::shared_ptr kernel) { const auto & trial_var_name = kernel->getTrialVariableName(); const auto & test_var_name = kernel->getTestVariableName(); @@ -98,20 +98,20 @@ EquationSystem::AddKernel(std::shared_ptr kernel) if (!_kernels_map.Has(test_var_name)) { auto kernel_field_map = - std::make_shared>>>(); + std::make_shared>>>(); _kernels_map.Register(test_var_name, std::move(kernel_field_map)); } // Register new kernels map if not present for the test/trial variable pair if (!_kernels_map.Get(test_var_name)->Has(trial_var_name)) { - auto kernels = std::make_shared>>(); + auto kernels = std::make_shared>>(); _kernels_map.Get(test_var_name)->Register(trial_var_name, std::move(kernels)); } _kernels_map.GetRef(test_var_name).Get(trial_var_name)->push_back(std::move(kernel)); } void -EquationSystem::AddIntegratedBC(std::shared_ptr bc) +EquationSystem::AddIntegratedBC(std::shared_ptr bc) { const auto & trial_var_name = bc->getTrialVariableName(); const auto & test_var_name = bc->getTestVariableName(); @@ -120,36 +120,36 @@ EquationSystem::AddIntegratedBC(std::shared_ptr bc) // Register new integrated bc map if not present for the test variable if (!_integrated_bc_map.Has(test_var_name)) { - auto integrated_bc_field_map = std::make_shared< - Moose::MFEM::NamedFieldsMap>>>(); + auto integrated_bc_field_map = + std::make_shared>>>(); _integrated_bc_map.Register(test_var_name, std::move(integrated_bc_field_map)); } // Register new integrated bc map if not present for the test/trial variable pair if (!_integrated_bc_map.Get(test_var_name)->Has(trial_var_name)) { - auto bcs = std::make_shared>>(); + auto bcs = std::make_shared>>(); _integrated_bc_map.Get(test_var_name)->Register(trial_var_name, std::move(bcs)); } _integrated_bc_map.GetRef(test_var_name).Get(trial_var_name)->push_back(std::move(bc)); } void -EquationSystem::AddEssentialBC(std::shared_ptr bc) +EquationSystem::AddEssentialBC(std::shared_ptr bc) { const auto & test_var_name = bc->getTestVariableName(); AddTestVariableNameIfMissing(test_var_name); // Register new essential bc map if not present for the test variable if (!_essential_bc_map.Has(test_var_name)) { - auto bcs = std::make_shared>>(); + auto bcs = std::make_shared>>(); _essential_bc_map.Register(test_var_name, std::move(bcs)); } _essential_bc_map.GetRef(test_var_name).push_back(std::move(bc)); } void -EquationSystem::Init(Moose::MFEM::GridFunctions & gridfunctions, - Moose::MFEM::ComplexGridFunctions & cmplx_gridfunctions, +EquationSystem::Init(GridFunctions & gridfunctions, + ComplexGridFunctions & cmplx_gridfunctions, mfem::AssemblyLevel assembly_level) { _assembly_level = assembly_level; @@ -391,20 +391,9 @@ EquationSystem::FormSystem(mfem::BlockVector & trueX, mfem::BlockVector & trueRH void EquationSystem::Mult(const mfem::Vector & sol, mfem::Vector & residual) const { - // Update gridfunctions that may be referenced by coefficients within nonlinear integrators - const mfem::BlockVector blockSolution(const_cast(sol), _block_true_offsets); - SetTrialVariablesFromTrueVectors(blockSolution); - if (_non_linear) { - mfem::BlockVector blockResidual(residual, _block_true_offsets); - for (unsigned int i = 0; i < _test_var_names.size(); i++) - { - auto & test_var_name = _test_var_names.at(i); - auto nlf = _nlfs.GetShared(test_var_name); - nlf->Mult(blockSolution.GetBlock(i), blockResidual.GetBlock(i)); - blockResidual.GetBlock(i).SyncAliasMemory(blockResidual); - } + ComputeNonlinearResidual(sol, residual); _linear_operator->AddMult(sol, residual); } else @@ -417,6 +406,25 @@ EquationSystem::Mult(const mfem::Vector & sol, mfem::Vector & residual) const residual.HostRead(); } +void +EquationSystem::ComputeNonlinearResidual(const mfem::Vector & sol, mfem::Vector & residual) const +{ + mooseAssert(_non_linear, "Should not be calling this method if our forms are not nonlinear"); + residual = 0.0; + + const mfem::BlockVector block_solution(const_cast(sol), _block_true_offsets); + SetTrialVariablesFromTrueVectors(block_solution); + + mfem::BlockVector block_residual(residual, _block_true_offsets); + for (unsigned int i = 0; i < _test_var_names.size(); i++) + { + auto & test_var_name = _test_var_names.at(i); + auto nlf = _nlfs.GetShared(test_var_name); + nlf->Mult(block_solution.GetBlock(i), block_residual.GetBlock(i)); + block_residual.GetBlock(i).SyncAliasMemory(block_residual); + } +} + void EquationSystem::FormJacobianMatrix(const mfem::Vector & u) { @@ -452,7 +460,12 @@ mfem::Operator & EquationSystem::GetGradient(const mfem::Vector & u) const { if (_non_linear) + { + if (_assembly_level != mfem::AssemblyLevel::LEGACY) + mooseError("MFEM nonlinear solvers that require GetGradient() currently require legacy " + "assembly in EquationSystem."); const_cast(this)->FormJacobianMatrix(u); + } else _jacobian = _linear_operator; @@ -508,8 +521,8 @@ EquationSystem::BuildNonlinearForms() // Apply kernels auto nlf = _nlfs.GetShared(test_var_name); nlf->SetEssentialTrueDofs(_ess_tdof_lists.at(i)); - ApplyDomainNLFIntegrators(test_var_name, nlf, _kernels_map); - ApplyBoundaryNLFIntegrators(test_var_name, nlf, _integrated_bc_map); + ApplyDomainNLFIntegrators(test_var_name, nlf, _kernels_map, std::nullopt); + ApplyBoundaryNLFIntegrators(test_var_name, nlf, _integrated_bc_map, std::nullopt); } } @@ -546,7 +559,7 @@ EquationSystem::BuildMixedBilinearForms() for (const auto i : index_range(_test_var_names)) { auto test_var_name = _test_var_names.at(i); - auto test_mblfs = std::make_shared>(); + auto test_mblfs = std::make_shared>(); for (const auto j : index_range(_coupled_var_names)) { const auto & coupled_var_name = _coupled_var_names.at(j); @@ -582,6 +595,118 @@ EquationSystem::BuildEquationSystem() BuildNonlinearForms(); } +void +EquationSystem::ApplyDomainLFIntegrators( + const std::string & test_var_name, + std::shared_ptr form, + NamedFieldsMap>>> & kernels_map) +{ + if (kernels_map.Has(test_var_name) && kernels_map.Get(test_var_name)->Has(test_var_name)) + { + auto kernels = kernels_map.GetRef(test_var_name).GetRef(test_var_name); + for (auto & kernel : kernels) + { + mfem::LinearFormIntegrator * integ = kernel->createLFIntegrator(); + + if (integ) + { + kernel->isSubdomainRestricted() + ? form->AddDomainIntegrator(std::move(integ), kernel->getSubdomainMarkers()) + : form->AddDomainIntegrator(std::move(integ)); + } + } + } +} + +void +EquationSystem::ApplyDomainNLFIntegrators( + const std::string & test_var_name, + std::shared_ptr form, + NamedFieldsMap>>> & kernels_map, + std::optional scale_factor) +{ + if (kernels_map.Has(test_var_name)) + for (const auto & [trial_var_name, kernels] : kernels_map.GetRef(test_var_name)) + for (auto & kernel : *kernels) + if (auto * integ = kernel->createNLIntegrator()) + { + if (_solver_requires_gradient && (trial_var_name != test_var_name)) + mooseError("Support for off-diagonal MFEM nonlinear domain integrators in conjunction " + "with a nonlinear solver that requires a gradient is not currently " + "implemented. Kernel '", + kernel->name(), + "' contributes to test variable '", + test_var_name, + "' from trial variable '", + trial_var_name, + "'."); + + _non_linear = true; + if (scale_factor.has_value()) + integ = new NLScaleIntegrator(integ, scale_factor.value(), true); + kernel->isSubdomainRestricted() + ? form->AddDomainIntegrator(std::move(integ), kernel->getSubdomainMarkers()) + : form->AddDomainIntegrator(std::move(integ)); + } +} + +void +EquationSystem::ApplyBoundaryLFIntegrators( + const std::string & test_var_name, + std::shared_ptr form, + NamedFieldsMap>>> & integrated_bc_map) +{ + if (integrated_bc_map.Has(test_var_name) && + integrated_bc_map.Get(test_var_name)->Has(test_var_name)) + { + auto bcs = integrated_bc_map.GetRef(test_var_name).GetRef(test_var_name); + for (auto & bc : bcs) + { + mfem::LinearFormIntegrator * integ = bc->createLFIntegrator(); + + if (integ) + { + bc->isBoundaryRestricted() + ? form->AddBoundaryIntegrator(std::move(integ), bc->getBoundaryMarkers()) + : form->AddBoundaryIntegrator(std::move(integ)); + } + } + } +} + +void +EquationSystem::ApplyBoundaryNLFIntegrators( + const std::string & test_var_name, + std::shared_ptr form, + NamedFieldsMap>>> & integrated_bc_map, + std::optional scale_factor) +{ + if (integrated_bc_map.Has(test_var_name)) + for (const auto & [trial_var_name, bcs] : integrated_bc_map.GetRef(test_var_name)) + for (auto & bc : *bcs) + if (auto * integ = bc->createNLIntegrator()) + { + if (_solver_requires_gradient && (test_var_name != trial_var_name)) + mooseError( + "Support for Off-diagonal MFEM nonlinear boundary integrators in conjunction with " + "a nonlinear solver that requires a gradient is not currently " + "implemented. Boundary condition '", + bc->name(), + "' contributes to test variable '", + test_var_name, + "' from trial variable '", + trial_var_name, + "'."); + + _non_linear = true; + if (scale_factor.has_value()) + integ = new NLScaleIntegrator(integ, scale_factor.value(), true); + bc->isBoundaryRestricted() + ? form->AddBoundaryIntegrator(std::move(integ), bc->getBoundaryMarkers()) + : form->AddBoundaryIntegrator(std::move(integ)); + } +} + } // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/equation_systems/TimeDependentEquationSystem.C b/framework/src/mfem/equation_systems/TimeDependentEquationSystem.C index 5736174c5ac3..8964cf37fb4e 100644 --- a/framework/src/mfem/equation_systems/TimeDependentEquationSystem.C +++ b/framework/src/mfem/equation_systems/TimeDependentEquationSystem.C @@ -14,13 +14,13 @@ namespace Moose::MFEM { TimeDependentEquationSystem::TimeDependentEquationSystem( - const Moose::MFEM::TimeDerivativeMap & time_derivative_map) + const TimeDerivativeMap & time_derivative_map) : _dt(1.0), _time_derivative_map(time_derivative_map) { } void -TimeDependentEquationSystem::AddKernel(std::shared_ptr kernel) +TimeDependentEquationSystem::AddKernel(std::shared_ptr kernel) { if (!_time_derivative_map.isTimeDerivative(kernel->getTrialVariableName())) { @@ -37,13 +37,13 @@ TimeDependentEquationSystem::AddKernel(std::shared_ptr kernel) if (!_td_kernels_map.Has(test_var_name)) { auto kernel_field_map = - std::make_shared>>>(); + std::make_shared>>>(); _td_kernels_map.Register(test_var_name, std::move(kernel_field_map)); } // Register new td kernels map if not present for the test/trial variable pair if (!_td_kernels_map.Get(test_var_name)->Has(trial_var_name)) { - auto kernels = std::make_shared>>(); + auto kernels = std::make_shared>>(); _td_kernels_map.Get(test_var_name)->Register(trial_var_name, std::move(kernels)); } _td_kernels_map.GetRef(test_var_name).Get(trial_var_name)->push_back(std::move(kernel)); @@ -95,7 +95,7 @@ TimeDependentEquationSystem::BuildMixedBilinearForms() for (const auto i : index_range(_test_var_names)) { const auto & test_var_name = _test_var_names.at(i); - auto test_mblfs = std::make_shared>(); + auto test_mblfs = std::make_shared>(); for (const auto j : index_range(_coupled_var_names)) { const auto & coupled_var_name = _coupled_var_names.at(j); @@ -134,8 +134,7 @@ TimeDependentEquationSystem::BuildMixedBilinearForms() for (const auto i : index_range(_test_var_names)) { const auto & test_var_name = _test_var_names.at(i); - auto test_td_mblfs = - std::make_shared>(); + auto test_td_mblfs = std::make_shared>(); for (const auto j : index_range(_trial_var_names)) { const auto & trial_var_name = _trial_var_names.at(j); diff --git a/framework/src/mfem/executioners/MFEMProblemSolve.C b/framework/src/mfem/executioners/MFEMProblemSolve.C index 1c37e4507335..b17d61255b1c 100644 --- a/framework/src/mfem/executioners/MFEMProblemSolve.C +++ b/framework/src/mfem/executioners/MFEMProblemSolve.C @@ -13,73 +13,37 @@ #include "MFEMProblemSolve.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMProblemSolve::validParams() +ProblemSolve::validParams() { InputParameters params = emptyInputParameters(); params.addClassDescription("Solve object for MFEM problems."); - params.addParam("nl_max_its", 1, "Max Nonlinear Iterations"); - params.addParam("nl_abs_tol", 1.0e-50, "Nonlinear Absolute Tolerance"); - params.addParam("nl_rel_tol", 1.0e-8, "Nonlinear Relative Tolerance"); - params.addParam("print_level", 1, "Print level"); params.addParam("device", "Run app on the chosen device."); MooseEnum assembly_levels("legacy full element partial none", "legacy", true); params.addParam("assembly_level", assembly_levels, "Matrix assembly level."); return params; } -MFEMProblemSolve::MFEMProblemSolve( - Executioner & ex, - std::vector> & problem_operators) +ProblemSolve::ProblemSolve(Executioner & ex, + std::vector> & problem_operators) : SolveObject(ex), - _mfem_problem(dynamic_cast(_problem)), - _problem_operators(problem_operators), - _nl_max_its(getParam("nl_max_its")), - _nl_abs_tol(getParam("nl_abs_tol")), - _nl_rel_tol(getParam("nl_rel_tol")), - _print_level(getParam("print_level")) + _mfem_problem(dynamic_cast(_problem)), + _problem_operators(problem_operators) { if (const auto compute_device = _app.getComputeDevice()) - _app.setMFEMDevice(*compute_device, Moose::PassKey()); + _app.setMFEMDevice(*compute_device, Moose::PassKey()); else _app.setMFEMDevice(isParamValid("device") ? getParam("device") : _app.isUltimateMaster() ? "cpu" : "", - Moose::PassKey()); - _mfem_problem.addMFEMNonlinearSolver(_nl_max_its, _nl_abs_tol, _nl_rel_tol, _print_level); + Moose::PassKey()); } bool -MFEMProblemSolve::solve() +ProblemSolve::solve() { - // FixedPointSolve::solve() is libMesh specific, so we need - // to include all steps therein relevant to the MFEM backend here. - - bool converged = true; - - // need to back up multi-apps even when not doing fixed point iteration for recovering from failed - // multiapp solve - _mfem_problem.backupMultiApps(EXEC_MULTIAPP_FIXED_POINT_BEGIN); - _mfem_problem.backupMultiApps(EXEC_TIMESTEP_BEGIN); - _mfem_problem.backupMultiApps(EXEC_TIMESTEP_END); - _mfem_problem.backupMultiApps(EXEC_MULTIAPP_FIXED_POINT_END); - - // Solve step begins - _executioner.preSolve(); - _mfem_problem.execTransfers(EXEC_TIMESTEP_BEGIN); - - _mfem_problem.execute(EXEC_MULTIAPP_FIXED_POINT_BEGIN); - _mfem_problem.execTransfers(EXEC_MULTIAPP_FIXED_POINT_BEGIN); - _mfem_problem.execMultiApps(EXEC_MULTIAPP_FIXED_POINT_BEGIN, true); - _mfem_problem.outputStep(EXEC_MULTIAPP_FIXED_POINT_BEGIN); - - _mfem_problem.execMultiApps(EXEC_TIMESTEP_BEGIN, true); - _mfem_problem.execute(EXEC_TIMESTEP_BEGIN); - _mfem_problem.outputStep(EXEC_TIMESTEP_BEGIN); - - // Update warehouse active objects - _mfem_problem.updateActiveObjects(); - if (_mfem_problem.shouldSolve()) { for (const auto & problem_operator : _problem_operators) @@ -89,7 +53,8 @@ MFEMProblemSolve::solve() while (_mfem_problem.pRefine() || _mfem_problem.hRefine()) { // Remove me: reconstruct the solver due to possible mfem/hypre bug - _mfem_problem.getProblemData().jacobian_solver->constructSolver(); + if (_mfem_problem.getProblemData().jacobian_solver) + _mfem_problem.getProblemData().jacobian_solver->constructSolver(); // Reset gridfunctions for (const auto & problem_operator : _problem_operators) @@ -100,26 +65,11 @@ MFEMProblemSolve::solve() problem_operator->Solve(); } } - _mfem_problem.displaceMesh(); - - // Execute user objects, transfers, and multiapps at timestep end - _mfem_problem.onTimestepEnd(); - _mfem_problem.execute(EXEC_TIMESTEP_END); - _mfem_problem.execTransfers(EXEC_TIMESTEP_END); - _mfem_problem.execMultiApps(EXEC_TIMESTEP_END, true); - _executioner.postSolve(); - // Solve step ends - if (converged) - { - // Fixed point iteration loop ends right above - _mfem_problem.execute(EXEC_MULTIAPP_FIXED_POINT_END); - _mfem_problem.execTransfers(EXEC_MULTIAPP_FIXED_POINT_END); - _mfem_problem.execMultiApps(EXEC_MULTIAPP_FIXED_POINT_END, true); - _mfem_problem.outputStep(EXEC_MULTIAPP_FIXED_POINT_END); - } + _mfem_problem.displaceMesh(); - return converged; + return true; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/executioners/MFEMSteady.C b/framework/src/mfem/executioners/MFEMSteady.C index 8a871ab9ac11..a68f75da8e25 100644 --- a/framework/src/mfem/executioners/MFEMSteady.C +++ b/framework/src/mfem/executioners/MFEMSteady.C @@ -13,21 +13,23 @@ #include "MFEMProblem.h" #include "EquationSystemProblemOperator.h" -registerMooseObject("MooseApp", MFEMSteady); +registerMooseMFEMObject("MooseApp", Steady); +namespace Moose::MFEM +{ InputParameters -MFEMSteady::validParams() +Steady::validParams() { - InputParameters params = MFEMProblemSolve::validParams(); + InputParameters params = ProblemSolve::validParams(); params += Executioner::validParams(); params.addClassDescription("Executioner for steady state MFEM problems."); params.addParam("time", 0.0, "System time"); return params; } -MFEMSteady::MFEMSteady(const InputParameters & params) +Steady::Steady(const InputParameters & params) : Executioner(params), - _mfem_problem(dynamic_cast(feProblem())), + _mfem_problem(dynamic_cast(feProblem())), _mfem_problem_data(_mfem_problem.getProblemData()), _mfem_problem_solve(*this, getProblemOperators()), _system_time(getParam("time")), @@ -35,21 +37,21 @@ MFEMSteady::MFEMSteady(const InputParameters & params) _time([this]() -> Real & { return this->_mfem_problem.time() = this->_system_time; }()), _last_solve_converged(false) { + _fixed_point_solve->setInnerSolve(_mfem_problem_solve); + // If no ProblemOperators have been added by the user, add a default if (getProblemOperators().empty()) { - if (_mfem_problem.num_type == MFEMProblem::NumericType::REAL) + if (_mfem_problem.num_type == Problem::NumericType::REAL) { - _mfem_problem_data.eqn_system = std::make_shared(); - auto problem_operator = - std::make_shared(_mfem_problem); + _mfem_problem_data.eqn_system = std::make_shared(); + auto problem_operator = std::make_shared(_mfem_problem); addProblemOperator(std::move(problem_operator)); } - else if (_mfem_problem.num_type == MFEMProblem::NumericType::COMPLEX) + else if (_mfem_problem.num_type == Problem::NumericType::COMPLEX) { - _mfem_problem_data.eqn_system = std::make_shared(); - auto problem_operator = - std::make_shared(_mfem_problem); + _mfem_problem_data.eqn_system = std::make_shared(); + auto problem_operator = std::make_shared(_mfem_problem); addProblemOperator(std::move(problem_operator)); } else @@ -59,10 +61,15 @@ MFEMSteady::MFEMSteady(const InputParameters & params) } void -MFEMSteady::init() +Steady::init() { _mfem_problem.execute(EXEC_PRE_MULTIAPP_SETUP); _mfem_problem.initialSetup(); + _fixed_point_solve->initialSetup(); + + if (_mfem_problem_data.nonlinear_solver) + _mfem_problem_data.eqn_system->SetSolverRequiresGradient( + _mfem_problem_data.nonlinear_solver->requiresGradient()); // Set up initial conditions _mfem_problem_data.eqn_system->Init( @@ -78,7 +85,7 @@ MFEMSteady::init() } void -MFEMSteady::execute() +Steady::execute() { if (_app.isRecovering()) { @@ -99,7 +106,7 @@ MFEMSteady::execute() _time_step = 1; _mfem_problem.timestepSetup(); - _last_solve_converged = _mfem_problem_solve.solve(); + _last_solve_converged = _fixed_point_solve->solve(); _mfem_problem.computeIndicators(); _mfem_problem.computeMarkers(); @@ -123,4 +130,5 @@ MFEMSteady::execute() postExecute(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/executioners/MFEMTransient.C b/framework/src/mfem/executioners/MFEMTransient.C index 35243c6e2bc1..97b97b17a305 100644 --- a/framework/src/mfem/executioners/MFEMTransient.C +++ b/framework/src/mfem/executioners/MFEMTransient.C @@ -14,39 +14,47 @@ #include "TimeDependentEquationSystemProblemOperator.h" #include "TimeStepper.h" -registerMooseObject("MooseApp", MFEMTransient); +registerMooseMFEMObject("MooseApp", Transient); +namespace Moose::MFEM +{ InputParameters -MFEMTransient::validParams() +Transient::validParams() { - InputParameters params = MFEMProblemSolve::validParams(); + InputParameters params = ProblemSolve::validParams(); params += TransientBase::validParams(); params.addClassDescription("Executioner for transient MFEM problems."); return params; } -MFEMTransient::MFEMTransient(const InputParameters & params) +Transient::Transient(const InputParameters & params) : TransientBase(params), - _mfem_problem(dynamic_cast(feProblem())), + _mfem_problem(dynamic_cast(feProblem())), _mfem_problem_data(_mfem_problem.getProblemData()), _mfem_problem_solve(*this, getProblemOperators()) { + _fixed_point_solve->setInnerSolve(_mfem_problem_solve); + // If no ProblemOperators have been added by the user, add a default if (getProblemOperators().empty()) { - _mfem_problem_data.eqn_system = std::make_shared( - _mfem_problem_data.time_derivative_map); + _mfem_problem_data.eqn_system = + std::make_shared(_mfem_problem_data.time_derivative_map); auto problem_operator = - std::make_shared(_mfem_problem); + std::make_shared(_mfem_problem); addProblemOperator(std::move(problem_operator)); } } void -MFEMTransient::init() +Transient::init() { TransientBase::init(); + if (_mfem_problem_data.nonlinear_solver) + _mfem_problem_data.eqn_system->SetSolverRequiresGradient( + _mfem_problem_data.nonlinear_solver->requiresGradient()); + // Set up initial conditions _mfem_problem_data.eqn_system->Init( _mfem_problem_data.gridfunctions, @@ -58,10 +66,12 @@ MFEMTransient::init() problem_operator->SetGridFunctions(); problem_operator->Init(_mfem_problem_data.f); } + + _mfem_problem_solve.initialSetup(); } void -MFEMTransient::takeStep(Real input_dt) +Transient::takeStep(Real input_dt) { _dt_old = _dt; @@ -106,4 +116,5 @@ MFEMTransient::takeStep(Real input_dt) _time_stepper->postSolve(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/fespaces/MFEMFESpace.C b/framework/src/mfem/fespaces/MFEMFESpace.C index e81082aee257..c3febdd08b41 100644 --- a/framework/src/mfem/fespaces/MFEMFESpace.C +++ b/framework/src/mfem/fespaces/MFEMFESpace.C @@ -12,12 +12,14 @@ #include "MFEMFESpace.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMFESpace::validParams() +FESpace::validParams() { - InputParameters params = MFEMObject::validParams(); - params.registerBase("MFEMFESpace"); - params.registerSystemAttributeName("MFEMFESpace"); + InputParameters params = Object::validParams(); + params.registerBase("Moose::MFEM::FESpace"); + params.registerSystemAttributeName("Moose::MFEM::FESpace"); MooseEnum ordering("NODES VDIM", "VDIM", false); params.addParam("ordering", ordering, "Ordering style to use for vector DoFs."); params.addParam("vdim", 1, "The number of degrees of freedom per basis function."); @@ -26,8 +28,8 @@ MFEMFESpace::validParams() return params; } -MFEMFESpace::MFEMFESpace(const InputParameters & parameters) - : MFEMObject(parameters), +FESpace::FESpace(const InputParameters & parameters) + : Object(parameters), _ordering(parameters.get("ordering")), _pmesh( parameters.isParamValid("submesh") @@ -37,17 +39,18 @@ MFEMFESpace::MFEMFESpace(const InputParameters & parameters) } void -MFEMFESpace::buildFEC() const +FESpace::buildFEC() const { _fec = std::shared_ptr( mfem::FiniteElementCollection::New(getFECName().c_str())); } void -MFEMFESpace::buildFESpace() const +FESpace::buildFESpace() const { _fespace = std::make_shared(&_pmesh, getFEC().get(), getVDim(), _ordering); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/fespaces/MFEMGenericFESpace.C b/framework/src/mfem/fespaces/MFEMGenericFESpace.C index 4772b1053607..04f49a8bec77 100644 --- a/framework/src/mfem/fespaces/MFEMGenericFESpace.C +++ b/framework/src/mfem/fespaces/MFEMGenericFESpace.C @@ -12,12 +12,14 @@ #include "MFEMGenericFESpace.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMGenericFESpace); +registerMooseMFEMObject("MooseApp", GenericFESpace); +namespace Moose::MFEM +{ InputParameters -MFEMGenericFESpace::validParams() +GenericFESpace::validParams() { - InputParameters params = MFEMFESpace::validParams(); + InputParameters params = FESpace::validParams(); params.addClassDescription("Class for creating arbitrary MFEM finite element spaces. It requires " "the user to have some knowledge of how MFEM works."); params.addRequiredParam("fec_name", @@ -27,33 +29,33 @@ MFEMGenericFESpace::validParams() return params; } -MFEMGenericFESpace::MFEMGenericFESpace(const InputParameters & parameters) - : MFEMFESpace(parameters), +GenericFESpace::GenericFESpace(const InputParameters & parameters) + : FESpace(parameters), _fec_name(parameters.get("fec_name")), _vdim(parameters.get("vdim")) { } std::string -MFEMGenericFESpace::getFECName() const +GenericFESpace::getFECName() const { return _fec_name; } int -MFEMGenericFESpace::getVDim() const +GenericFESpace::getVDim() const { return _vdim; } bool -MFEMGenericFESpace::isScalar() const +GenericFESpace::isScalar() const { return !isVector(); } bool -MFEMGenericFESpace::isVector() const +GenericFESpace::isVector() const { std::string fec = getFECName(); if (!strncmp(fec.c_str(), "RT", 2) || !strncmp(fec.c_str(), "ND", 2)) @@ -62,4 +64,5 @@ MFEMGenericFESpace::isVector() const return getVDim() > 1; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/fespaces/MFEMScalarFESpace.C b/framework/src/mfem/fespaces/MFEMScalarFESpace.C index 10a0b470fc57..9dde39a5776d 100644 --- a/framework/src/mfem/fespaces/MFEMScalarFESpace.C +++ b/framework/src/mfem/fespaces/MFEMScalarFESpace.C @@ -11,12 +11,14 @@ #include "MFEMScalarFESpace.h" -registerMooseObject("MooseApp", MFEMScalarFESpace); +registerMooseMFEMObject("MooseApp", ScalarFESpace); +namespace Moose::MFEM +{ InputParameters -MFEMScalarFESpace::validParams() +ScalarFESpace::validParams() { - InputParameters params = MFEMSimplifiedFESpace::validParams(); + InputParameters params = SimplifiedFESpace::validParams(); params.addClassDescription("Convenience class to construct scalar finite element spaces."); MooseEnum fec_types("H1 L2 L2Int", "H1"); params.addParam("fec_type", fec_types, "Specifies the family of FE shape functions."); @@ -32,13 +34,13 @@ MFEMScalarFESpace::validParams() return params; } -MFEMScalarFESpace::MFEMScalarFESpace(const InputParameters & parameters) - : MFEMSimplifiedFESpace(parameters), _fec_type(getParam("fec_type")) +ScalarFESpace::ScalarFESpace(const InputParameters & parameters) + : SimplifiedFESpace(parameters), _fec_type(getParam("fec_type")) { } std::string -MFEMScalarFESpace::getFECName() const +ScalarFESpace::getFECName() const { std::string basis = _fec_type == "L2" || _fec_type == "L2Int" @@ -50,9 +52,10 @@ MFEMScalarFESpace::getFECName() const } int -MFEMScalarFESpace::getVDim() const +ScalarFESpace::getVDim() const { return 1; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/fespaces/MFEMSimplifiedFESpace.C b/framework/src/mfem/fespaces/MFEMSimplifiedFESpace.C index e827cbbaad76..1983d070d561 100644 --- a/framework/src/mfem/fespaces/MFEMSimplifiedFESpace.C +++ b/framework/src/mfem/fespaces/MFEMSimplifiedFESpace.C @@ -13,10 +13,12 @@ #include "MFEMProblem.h" #include "AddVariableAction.h" +namespace Moose::MFEM +{ InputParameters -MFEMSimplifiedFESpace::validParams() +SimplifiedFESpace::validParams() { - InputParameters params = MFEMFESpace::validParams(); + InputParameters params = FESpace::validParams(); params.addClassDescription("Base class for the simplified interfaces to build MFEM finite " "element spaces. It provides the common parameters."); params.addParam("fec_order", @@ -25,15 +27,16 @@ MFEMSimplifiedFESpace::validParams() return params; } -MFEMSimplifiedFESpace::MFEMSimplifiedFESpace(const InputParameters & parameters) - : MFEMFESpace(parameters), _fec_order(parameters.get("fec_order")) +SimplifiedFESpace::SimplifiedFESpace(const InputParameters & parameters) + : FESpace(parameters), _fec_order(parameters.get("fec_order")) { } int -MFEMSimplifiedFESpace::getProblemDim() const +SimplifiedFESpace::getProblemDim() const { return _pmesh.Dimension(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/fespaces/MFEMVectorFESpace.C b/framework/src/mfem/fespaces/MFEMVectorFESpace.C index c1d22f4cc2cb..3cc79408334e 100644 --- a/framework/src/mfem/fespaces/MFEMVectorFESpace.C +++ b/framework/src/mfem/fespaces/MFEMVectorFESpace.C @@ -11,12 +11,14 @@ #include "MFEMVectorFESpace.h" -registerMooseObject("MooseApp", MFEMVectorFESpace); +registerMooseMFEMObject("MooseApp", VectorFESpace); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFESpace::validParams() +VectorFESpace::validParams() { - InputParameters params = MFEMSimplifiedFESpace::validParams(); + InputParameters params = SimplifiedFESpace::validParams(); params.addClassDescription( "Convenience class to construct vector finite element spaces, abstracting away some of the " "mathematical complexity of specifying the dimensions."); @@ -48,15 +50,15 @@ MFEMVectorFESpace::validParams() return params; } -MFEMVectorFESpace::MFEMVectorFESpace(const InputParameters & parameters) - : MFEMSimplifiedFESpace(parameters), +VectorFESpace::VectorFESpace(const InputParameters & parameters) + : SimplifiedFESpace(parameters), _fec_type(getParam("fec_type")), _range_dim(getParam("range_dim")) { } std::string -MFEMVectorFESpace::getFECName() const +VectorFESpace::getFECName() const { const int pdim = getProblemDim(); std::string actual_type = _fec_type; @@ -90,7 +92,7 @@ MFEMVectorFESpace::getFECName() const } int -MFEMVectorFESpace::getVDim() const +VectorFESpace::getVDim() const { if (_fec_type == "H1" || _fec_type == "L2" || _fec_type == "L2Int") { @@ -102,4 +104,5 @@ MFEMVectorFESpace::getVDim() const } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/functions/MFEMParsedFunction.C b/framework/src/mfem/functions/MFEMParsedFunction.C index 274ce6635fe3..3b4dcd7ac878 100644 --- a/framework/src/mfem/functions/MFEMParsedFunction.C +++ b/framework/src/mfem/functions/MFEMParsedFunction.C @@ -27,7 +27,7 @@ MFEMParsedFunction::validParams() MFEMParsedFunction::MFEMParsedFunction(const InputParameters & parameters) : MooseParsedFunction(parameters), FunctionParserUtils(parameters), - _mfem_problem(static_cast(_pfb_feproblem)), + _mfem_problem(static_cast(_pfb_feproblem)), _sym_function(std::make_shared()), _xyzt({"x", "y", "z", "t"}) { diff --git a/framework/src/mfem/functormaterials/MFEMFunctorMaterial.C b/framework/src/mfem/functormaterials/MFEMFunctorMaterial.C index 2fa110458be4..001e44606804 100644 --- a/framework/src/mfem/functormaterials/MFEMFunctorMaterial.C +++ b/framework/src/mfem/functormaterials/MFEMFunctorMaterial.C @@ -12,12 +12,14 @@ #include "MFEMFunctorMaterial.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMFunctorMaterial::validParams() +FunctorMaterial::validParams() { - InputParameters params = MFEMObject::validParams(); - params += MFEMBlockRestrictable::validParams(); - params += MFEMBoundaryRestrictable::validParams(); + InputParameters params = Object::validParams(); + params += BlockRestrictable::validParams(); + params += BoundaryRestrictable::validParams(); params.addClassDescription( "Base class for declaration of material properties to add to MFEM problems."); @@ -29,21 +31,22 @@ MFEMFunctorMaterial::validParams() } libMesh::Point -MFEMFunctorMaterial::pointFromMFEMVector(const mfem::Vector & vec) +FunctorMaterial::pointFromMFEMVector(const mfem::Vector & vec) { return libMesh::Point(vec.Elem(0), vec.Elem(1), vec.Elem(2)); } -MFEMFunctorMaterial::MFEMFunctorMaterial(const InputParameters & parameters) - : MFEMObject(parameters), - MFEMBlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), - MFEMBoundaryRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), +FunctorMaterial::FunctorMaterial(const InputParameters & parameters) + : Object(parameters), + BlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), + BoundaryRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), _properties(getMFEMProblem().getCoefficients()) { if (isSubdomainRestricted() && isBoundaryRestricted()) paramError("boundary", "Cannot specify both block and boundary parameters"); } -MFEMFunctorMaterial::~MFEMFunctorMaterial() {} +FunctorMaterial::~FunctorMaterial() {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/functormaterials/MFEMGenericFunctorMaterial.C b/framework/src/mfem/functormaterials/MFEMGenericFunctorMaterial.C index 0aa3151a313c..777d77dbe185 100644 --- a/framework/src/mfem/functormaterials/MFEMGenericFunctorMaterial.C +++ b/framework/src/mfem/functormaterials/MFEMGenericFunctorMaterial.C @@ -12,27 +12,29 @@ #include "MFEMGenericFunctorMaterial.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMGenericFunctorMaterial); +registerMooseMFEMObject("MooseApp", GenericFunctorMaterial); +namespace Moose::MFEM +{ InputParameters -MFEMGenericFunctorMaterial::validParams() +GenericFunctorMaterial::validParams() { - InputParameters params = MFEMFunctorMaterial::validParams(); + InputParameters params = FunctorMaterial::validParams(); params.addClassDescription("Declares material scalar properties based on names and coefficients " "prescribed by input parameters."); params.addRequiredParam>( "prop_names", "The names of the properties this material will have"); - params.addRequiredParam>( + params.addRequiredParam>( "prop_values", "The corresponding names of coefficients associated with the named properties"); return params; } -MFEMGenericFunctorMaterial::MFEMGenericFunctorMaterial(const InputParameters & parameters) - : MFEMFunctorMaterial(parameters), +GenericFunctorMaterial::GenericFunctorMaterial(const InputParameters & parameters) + : FunctorMaterial(parameters), _prop_names(getParam>("prop_names")), - _prop_values(getParam>("prop_values")) + _prop_values(getParam>("prop_values")) { if (_prop_names.size() != _prop_values.size()) paramError("prop_names", "Must match the size of prop_values"); @@ -44,6 +46,7 @@ MFEMGenericFunctorMaterial::MFEMGenericFunctorMaterial(const InputParameters & p _prop_values[i]); } -MFEMGenericFunctorMaterial::~MFEMGenericFunctorMaterial() {} +GenericFunctorMaterial::~GenericFunctorMaterial() {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.C b/framework/src/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.C index 9c9a3157af6c..de9a43354652 100644 --- a/framework/src/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.C +++ b/framework/src/mfem/functormaterials/MFEMGenericFunctorVectorMaterial.C @@ -12,15 +12,15 @@ #include "MFEMGenericFunctorVectorMaterial.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMGenericFunctorVectorMaterial); +registerMooseMFEMObject("MooseApp", GenericFunctorVectorMaterial); /// Handle any numerical vector values, which should be enclosed in curly braces -std::vector -processLiteralVectors(const std::vector & input) +std::vector +processLiteralVectors(const std::vector & input) { - std::vector result; + std::vector result; bool in_literal = false; - MFEMVectorCoefficientName literal; + Moose::MFEM::VectorCoefficientName literal; for (const auto & item : input) { if (in_literal) @@ -52,32 +52,33 @@ processLiteralVectors(const std::vector & input) } if (in_literal) mooseError("No closing curly brace for vector value in " - "MFEMGenericFunctorVectorMaterial prop_values: '{" + + "Moose::MFEM::GenericFunctorVectorMaterial prop_values: '{" + literal + "'"); return result; } +namespace Moose::MFEM +{ InputParameters -MFEMGenericFunctorVectorMaterial::validParams() +GenericFunctorVectorMaterial::validParams() { - InputParameters params = MFEMFunctorMaterial::validParams(); + InputParameters params = FunctorMaterial::validParams(); params.addClassDescription("Declares material vector properties based on names and coefficients " "prescribed by input parameters."); params.addRequiredParam>( "prop_names", "The names of the properties this material will have"); - params.addRequiredParam>( + params.addRequiredParam>( "prop_values", "The corresponding names of coefficients associated with the named properties"); return params; } -MFEMGenericFunctorVectorMaterial::MFEMGenericFunctorVectorMaterial( - const InputParameters & parameters) - : MFEMFunctorMaterial(parameters), +GenericFunctorVectorMaterial::GenericFunctorVectorMaterial(const InputParameters & parameters) + : FunctorMaterial(parameters), _prop_names(getParam>("prop_names")), - _prop_values( - processLiteralVectors(getParam>("prop_values"))) + _prop_values(processLiteralVectors( + getParam>("prop_values"))) { if (_prop_names.size() != _prop_values.size()) paramError("prop_names", "Must match the size of prop_values"); @@ -89,6 +90,7 @@ MFEMGenericFunctorVectorMaterial::MFEMGenericFunctorVectorMaterial( _prop_values[i]); } -MFEMGenericFunctorVectorMaterial::~MFEMGenericFunctorVectorMaterial() {} +GenericFunctorVectorMaterial::~GenericFunctorVectorMaterial() {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/ics/MFEMInitialCondition.C b/framework/src/mfem/ics/MFEMInitialCondition.C index e407b1d12192..8f1f8d07467d 100644 --- a/framework/src/mfem/ics/MFEMInitialCondition.C +++ b/framework/src/mfem/ics/MFEMInitialCondition.C @@ -11,10 +11,12 @@ #include "MFEMInitialCondition.h" +namespace Moose::MFEM +{ InputParameters -MFEMInitialCondition::validParams() +InitialCondition::validParams() { - auto params = MFEMExecutedObject::validParams(); + auto params = ExecutedObject::validParams(); params.addRequiredParam("variable", "The variable to apply the initial condition on."); params.registerBase("InitialCondition"); @@ -28,15 +30,13 @@ MFEMInitialCondition::validParams() return params; } -MFEMInitialCondition::MFEMInitialCondition(const InputParameters & params) - : MFEMExecutedObject(params) -{ -} +InitialCondition::InitialCondition(const InputParameters & params) : ExecutedObject(params) {} std::optional -MFEMInitialCondition::suppliedVariableName() const +InitialCondition::suppliedVariableName() const { return getParam("variable"); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/ics/MFEMScalarBoundaryIC.C b/framework/src/mfem/ics/MFEMScalarBoundaryIC.C index e25a16422054..2d57de947c79 100644 --- a/framework/src/mfem/ics/MFEMScalarBoundaryIC.C +++ b/framework/src/mfem/ics/MFEMScalarBoundaryIC.C @@ -12,32 +12,36 @@ #include "MFEMScalarBoundaryIC.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMScalarBoundaryIC); +registerMooseMFEMObject("MooseApp", ScalarBoundaryIC); +namespace Moose::MFEM +{ InputParameters -MFEMScalarBoundaryIC::validParams() +ScalarBoundaryIC::validParams() { - auto params = MFEMInitialCondition::validParams(); - params += MFEMBoundaryRestrictable::validParams(); + auto params = InitialCondition::validParams(); + params += BoundaryRestrictable::validParams(); params.addClassDescription("Sets the initial values of an MFEM scalar variable from a " "user-specified scalar coefficient."); - params.addRequiredParam("coefficient", "The scalar coefficient"); + params.addRequiredParam("coefficient", + "The scalar coefficient"); return params; } -MFEMScalarBoundaryIC::MFEMScalarBoundaryIC(const InputParameters & params) - : MFEMInitialCondition(params), - MFEMBoundaryRestrictable( - params, getMFEMProblem().getMFEMVariableMesh(getParam("variable"))) +ScalarBoundaryIC::ScalarBoundaryIC(const InputParameters & params) + : InitialCondition(params), + BoundaryRestrictable(params, + getMFEMProblem().getMFEMVariableMesh(getParam("variable"))) { } void -MFEMScalarBoundaryIC::execute() +ScalarBoundaryIC::execute() { auto & coeff = getScalarCoefficient("coefficient"); auto grid_function = getMFEMProblem().getGridFunction(getParam("variable")); grid_function->ProjectBdrCoefficient(coeff, getBoundaryMarkers()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/ics/MFEMScalarIC.C b/framework/src/mfem/ics/MFEMScalarIC.C index 97341600854d..e8487c115049 100644 --- a/framework/src/mfem/ics/MFEMScalarIC.C +++ b/framework/src/mfem/ics/MFEMScalarIC.C @@ -12,26 +12,30 @@ #include "MFEMScalarIC.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMScalarIC); +registerMooseMFEMObject("MooseApp", ScalarIC); +namespace Moose::MFEM +{ InputParameters -MFEMScalarIC::validParams() +ScalarIC::validParams() { - auto params = MFEMInitialCondition::validParams(); + auto params = InitialCondition::validParams(); params.addClassDescription("Sets the initial values of an MFEM scalar variable from a " "user-specified scalar coefficient."); - params.addRequiredParam("coefficient", "The scalar coefficient"); + params.addRequiredParam("coefficient", + "The scalar coefficient"); return params; } -MFEMScalarIC::MFEMScalarIC(const InputParameters & params) : MFEMInitialCondition(params) {} +ScalarIC::ScalarIC(const InputParameters & params) : InitialCondition(params) {} void -MFEMScalarIC::execute() +ScalarIC::execute() { auto & coeff = getScalarCoefficient("coefficient"); auto grid_function = getMFEMProblem().getGridFunction(getParam("variable")); grid_function->ProjectCoefficient(coeff); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/ics/MFEMVectorIC.C b/framework/src/mfem/ics/MFEMVectorIC.C index 826a681cc852..e5b434c9946b 100644 --- a/framework/src/mfem/ics/MFEMVectorIC.C +++ b/framework/src/mfem/ics/MFEMVectorIC.C @@ -12,27 +12,30 @@ #include "MFEMVectorIC.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorIC); +registerMooseMFEMObject("MooseApp", VectorIC); +namespace Moose::MFEM +{ InputParameters -MFEMVectorIC::validParams() +VectorIC::validParams() { - auto params = MFEMInitialCondition::validParams(); + auto params = InitialCondition::validParams(); params.addClassDescription("Sets the initial values of an MFEM vector variable from a " "user-specified vector coefficient."); - params.addRequiredParam("vector_coefficient", - "The vector coefficient"); + params.addRequiredParam("vector_coefficient", + "The vector coefficient"); return params; } -MFEMVectorIC::MFEMVectorIC(const InputParameters & params) : MFEMInitialCondition(params) {} +VectorIC::VectorIC(const InputParameters & params) : InitialCondition(params) {} void -MFEMVectorIC::execute() +VectorIC::execute() { auto & coeff = getVectorCoefficient("vector_coefficient"); auto grid_function = getMFEMProblem().getGridFunction(getParam("variable")); grid_function->ProjectCoefficient(coeff); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/indicators/MFEMIndicator.C b/framework/src/mfem/indicators/MFEMIndicator.C index 0b2751bb0d61..d9f5baec9ab0 100644 --- a/framework/src/mfem/indicators/MFEMIndicator.C +++ b/framework/src/mfem/indicators/MFEMIndicator.C @@ -12,10 +12,12 @@ #include "MFEMIndicator.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMIndicator::validParams() +Indicator::validParams() { - InputParameters params = MFEMObject::validParams(); + InputParameters params = Object::validParams(); params.registerBase("Indicator"); params.registerSystemAttributeName("Indicator"); @@ -24,12 +26,13 @@ MFEMIndicator::validParams() return params; } -MFEMIndicator::MFEMIndicator(const InputParameters & params) - : MFEMObject(params), +Indicator::Indicator(const InputParameters & params) + : Object(params), _var_name(getParam("variable")), _kernel_name(getParam("kernel")), _fespace(*getMFEMProblem().getGridFunction(_var_name)->ParFESpace()) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.C b/framework/src/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.C index 73bfb5082306..b4e074c1cdaf 100644 --- a/framework/src/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.C +++ b/framework/src/mfem/indicators/MFEML2ZienkiewiczZhuIndicator.C @@ -13,49 +13,54 @@ #include "MFEMProblem.h" #include "MFEMKernel.h" -registerMooseObject("MooseApp", MFEML2ZienkiewiczZhuIndicator); +registerMooseMFEMObject("MooseApp", L2ZienkiewiczZhuIndicator); +namespace Moose::MFEM +{ InputParameters -MFEML2ZienkiewiczZhuIndicator::validParams() +L2ZienkiewiczZhuIndicator::validParams() { - InputParameters params = MFEMIndicator::validParams(); - params.addParam("flux_fespace", "FE space to write the flux into"); - params.addParam("smooth_flux_fespace", "FE space to write the smooth flux into"); + InputParameters params = Indicator::validParams(); + params.addParam("flux_fespace", "FE space to write the flux into"); + params.addParam("smooth_flux_fespace", + "FE space to write the smooth flux into"); return params; } // Make sure we don't do this until all the grid functions etc are set up! -MFEML2ZienkiewiczZhuIndicator::MFEML2ZienkiewiczZhuIndicator(const InputParameters & params) - : MFEMIndicator(params) +L2ZienkiewiczZhuIndicator::L2ZienkiewiczZhuIndicator(const InputParameters & params) + : Indicator(params) { if (isParamSetByUser("flux_fespace")) { // fetch the flux_fespace from the object system auto object_ptr = getMFEMProblem() - .getMFEMObject("MFEMFESpace", getParam("flux_fespace")) + .getMFEMObject("Moose::MFEM::FESpace", + getParam("flux_fespace")) .getSharedPtr(); - auto fespace_ptr = std::dynamic_pointer_cast(object_ptr); + auto fespace_ptr = std::dynamic_pointer_cast(object_ptr); _flux_fes = fespace_ptr->getFESpace(); } if (isParamSetByUser("smooth_flux_fespace")) { // fetch the smooth_flux_fespace from the object system - auto object_ptr = getMFEMProblem() - .getMFEMObject( - "MFEMFESpace", getParam("smooth_flux_fespace")) - .getSharedPtr(); - auto fespace_ptr = std::dynamic_pointer_cast(object_ptr); + auto object_ptr = + getMFEMProblem() + .getMFEMObject("Moose::MFEM::FESpace", + getParam("smooth_flux_fespace")) + .getSharedPtr(); + auto fespace_ptr = std::dynamic_pointer_cast(object_ptr); _smooth_flux_fes = fespace_ptr->getFESpace(); } } void -MFEML2ZienkiewiczZhuIndicator::createEstimator() +L2ZienkiewiczZhuIndicator::createEstimator() { // fetch the kernel first so we can build an auxiliary blf integrator - MFEMKernel & kernel = getMFEMProblem().getMFEMObject("Kernel", _kernel_name); + Kernel & kernel = getMFEMProblem().getMFEMObject("Kernel", _kernel_name); _integ = std::unique_ptr(kernel.createBFIntegrator()); // Next, we need to check that this integrator is supported by mfem::L2ZienkiewiczZhuEstimator @@ -69,8 +74,8 @@ MFEML2ZienkiewiczZhuIndicator::createEstimator() is_supported |= (dynamic_cast(_integ.get()) != nullptr); if (!is_supported) - mooseError("MFEML2ZienkiewiczZhuIndicator only supports MFEMDiffusionKernel, " - "MFEMCurlCurlKernel and MFEMLinearElasticityKernel"); + mooseError("Moose::MFEM::L2ZienkiewiczZhuIndicator only supports Moose::MFEM::DiffusionKernel, " + "Moose::MFEM::CurlCurlKernel and Moose::MFEM::LinearElasticityKernel"); int order = getFESpace().GetMaxElementOrder(); int dim = getParMesh().Dimension(); @@ -99,4 +104,5 @@ MFEML2ZienkiewiczZhuIndicator::createEstimator() *_integ, *gridfunction, *_flux_fes, *_smooth_flux_fes); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.C b/framework/src/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.C index 049747dfe100..b623407c6a17 100644 --- a/framework/src/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.C +++ b/framework/src/mfem/integrators/NLBoundaryConvectiveHeatFluxIntegrator.C @@ -16,18 +16,23 @@ namespace Moose::MFEM NLBoundaryConvectiveHeatFluxIntegrator::NLBoundaryConvectiveHeatFluxIntegrator( mfem::Coefficient & k, mfem::Coefficient & dk_du, + mfem::Coefficient & duinf_du, mfem::Coefficient & gf_offset, mfem::Coefficient & gf) - : _shifted_gf_coef(gf, gf_offset, 1.0, -1.0), // u-u_inf - _k_uinf_coef(k, gf_offset), // k(u)*u_inf - _net_flux_du_coef(dk_du, _shifted_gf_coef), // dk/du*(u-u_inf) + : _shifted_gf_coef(gf, gf_offset, 1.0, -1.0), // u-u_inf + _k_uinf_coef(k, gf_offset), // k(u)*u_inf + _net_flux_du_coef(dk_du, _shifted_gf_coef), // dk/du*(u-u_inf) + _k_duinf_du_coef(k, duinf_du), // k(u) * du_inf/du + _duinf_du_flux_coef(-1.0, _k_duinf_du_coef), // -k(u) * du_inf/du _inwards_flux(_k_uinf_coef), _outwards_flux(k), _jacobian_k_component(k), - _jacobian_dk_du_component(_net_flux_du_coef) + _jacobian_dk_du_component(_net_flux_du_coef), + _jacobian_duinf_du_component(_duinf_du_flux_coef) { _jacobian_action.AddIntegrator(&_jacobian_k_component); _jacobian_action.AddIntegrator(&_jacobian_dk_du_component); + _jacobian_action.AddIntegrator(&_jacobian_duinf_du_component); } void diff --git a/framework/src/mfem/integrators/NLDiffusionIntegrator.C b/framework/src/mfem/integrators/NLDiffusionIntegrator.C index 85dfd4a936df..3e6aa0a95b3d 100644 --- a/framework/src/mfem/integrators/NLDiffusionIntegrator.C +++ b/framework/src/mfem/integrators/NLDiffusionIntegrator.C @@ -21,7 +21,7 @@ NLDiffusionIntegrator::NLDiffusionIntegrator(mfem::Coefficient & k, _grad_trial(gf), _neg_grad_trial(_neg_one, _grad_trial), _neg_dk_du_grad_trial(dk_du, _neg_grad_trial), - _weak_div_integ(_neg_grad_trial) + _weak_div_integ(_neg_dk_du_grad_trial) { _sum.AddIntegrator(&_diffusion_integ); _sum.AddIntegrator(&_weak_div_integ); diff --git a/framework/src/mfem/interfaces/MFEMBlockRestrictable.C b/framework/src/mfem/interfaces/MFEMBlockRestrictable.C index 83207c00dba4..287931fc8291 100644 --- a/framework/src/mfem/interfaces/MFEMBlockRestrictable.C +++ b/framework/src/mfem/interfaces/MFEMBlockRestrictable.C @@ -11,8 +11,10 @@ #include "MFEMBlockRestrictable.h" +namespace Moose::MFEM +{ InputParameters -MFEMBlockRestrictable::validParams() +BlockRestrictable::validParams() { // Create InputParameters object that will be appended to the parameters for the inheriting object InputParameters params = emptyInputParameters(); @@ -26,8 +28,8 @@ MFEMBlockRestrictable::validParams() return params; } -MFEMBlockRestrictable::MFEMBlockRestrictable(const InputParameters & parameters, - const mfem::ParMesh & mfem_mesh) +BlockRestrictable::BlockRestrictable(const InputParameters & parameters, + const mfem::ParMesh & mfem_mesh) : _mfem_mesh(mfem_mesh), _subdomain_names(parameters.get>("block")), _subdomain_attributes(subdomainsToAttributes()) @@ -38,7 +40,7 @@ MFEMBlockRestrictable::MFEMBlockRestrictable(const InputParameters & parameters, } mfem::Array -MFEMBlockRestrictable::subdomainsToAttributes() +BlockRestrictable::subdomainsToAttributes() { mfem::Array attributes; auto & mesh = getMesh(); @@ -63,7 +65,7 @@ MFEMBlockRestrictable::subdomainsToAttributes() } std::vector -MFEMBlockRestrictable::subdomainsToStrings() +BlockRestrictable::subdomainsToStrings() { const auto & attrs = _subdomain_attributes; std::vector strs(attrs.Size()); @@ -71,4 +73,5 @@ MFEMBlockRestrictable::subdomainsToStrings() return strs; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/interfaces/MFEMBoundaryRestrictable.C b/framework/src/mfem/interfaces/MFEMBoundaryRestrictable.C index caac3ee1dec9..0a5a59d605a9 100644 --- a/framework/src/mfem/interfaces/MFEMBoundaryRestrictable.C +++ b/framework/src/mfem/interfaces/MFEMBoundaryRestrictable.C @@ -11,8 +11,10 @@ #include "MFEMBoundaryRestrictable.h" +namespace Moose::MFEM +{ InputParameters -MFEMBoundaryRestrictable::validParams() +BoundaryRestrictable::validParams() { // Create InputParameters object that will be appended to the parameters for the inheriting object InputParameters params = emptyInputParameters(); @@ -24,8 +26,8 @@ MFEMBoundaryRestrictable::validParams() return params; } -MFEMBoundaryRestrictable::MFEMBoundaryRestrictable(const InputParameters & parameters, - const mfem::ParMesh & mfem_mesh) +BoundaryRestrictable::BoundaryRestrictable(const InputParameters & parameters, + const mfem::ParMesh & mfem_mesh) : _mfem_mesh(mfem_mesh), _boundary_names(parameters.get>("boundary")), _boundary_attributes(boundariesToAttributes()) @@ -36,7 +38,7 @@ MFEMBoundaryRestrictable::MFEMBoundaryRestrictable(const InputParameters & param } mfem::Array -MFEMBoundaryRestrictable::boundariesToAttributes() +BoundaryRestrictable::boundariesToAttributes() { mfem::Array attributes(_boundary_names.size()); auto & mesh = getMesh(); @@ -65,7 +67,7 @@ MFEMBoundaryRestrictable::boundariesToAttributes() } std::vector -MFEMBoundaryRestrictable::boundariesToStrings() +BoundaryRestrictable::boundariesToStrings() { const auto & attrs = _boundary_attributes; std::vector strs(attrs.Size()); @@ -73,4 +75,5 @@ MFEMBoundaryRestrictable::boundariesToStrings() return strs; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMComplexKernel.C b/framework/src/mfem/kernels/MFEMComplexKernel.C index a4b7c2b35498..b334174f2f19 100644 --- a/framework/src/mfem/kernels/MFEMComplexKernel.C +++ b/framework/src/mfem/kernels/MFEMComplexKernel.C @@ -13,18 +13,21 @@ #include "MFEMProblem.h" #include "ScaleIntegrator.h" -registerMooseObject("MooseApp", MFEMComplexKernel); +registerMooseMFEMObject("MooseApp", ComplexKernel); +namespace Moose::MFEM +{ InputParameters -MFEMComplexKernel::validParams() +ComplexKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( - "Holds MFEMKernel objects for the real and imaginary parts of a complex kernel."); + "Holds Moose::MFEM::Kernel objects for the real and imaginary parts of a complex kernel."); return params; } -MFEMComplexKernel::MFEMComplexKernel(const InputParameters & parameters) : MFEMKernel(parameters) {} +ComplexKernel::ComplexKernel(const InputParameters & parameters) : Kernel(parameters) {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMCurlCurlKernel.C b/framework/src/mfem/kernels/MFEMCurlCurlKernel.C index c73a4ba746be..0cf03d3aad8d 100644 --- a/framework/src/mfem/kernels/MFEMCurlCurlKernel.C +++ b/framework/src/mfem/kernels/MFEMCurlCurlKernel.C @@ -12,33 +12,36 @@ #include "MFEMCurlCurlKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMCurlCurlKernel); +registerMooseMFEMObject("MooseApp", CurlCurlKernel); +namespace Moose::MFEM +{ InputParameters -MFEMCurlCurlKernel::validParams() +CurlCurlKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the bilinear form " "$(k\\vec\\nabla \\times \\vec u, \\vec\\nabla \\times \\vec v)_\\Omega$ " "arising from the weak form of the curl curl operator " "$k\\vec\\nabla \\times \\vec\\nabla \\times \\vec u$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of scalar coefficient k to multiply the integrator by."); return params; } -MFEMCurlCurlKernel::MFEMCurlCurlKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +CurlCurlKernel::CurlCurlKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMCurlCurlKernel::createBFIntegrator() +CurlCurlKernel::createBFIntegrator() { return new mfem::CurlCurlIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMDiffusionKernel.C b/framework/src/mfem/kernels/MFEMDiffusionKernel.C index 4d0ed195dbff..a85b82eadaab 100644 --- a/framework/src/mfem/kernels/MFEMDiffusionKernel.C +++ b/framework/src/mfem/kernels/MFEMDiffusionKernel.C @@ -12,32 +12,35 @@ #include "MFEMDiffusionKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMDiffusionKernel); +registerMooseMFEMObject("MooseApp", DiffusionKernel); +namespace Moose::MFEM +{ InputParameters -MFEMDiffusionKernel::validParams() +DiffusionKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the bilinear form " "$(k\\vec\\nabla u, \\vec\\nabla v)_\\Omega$ " "arising from the weak form of the Laplacian operator " "$- \\vec\\nabla \\cdot \\left( k \\vec \\nabla u \\right)$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of property for diffusion coefficient k."); return params; } -MFEMDiffusionKernel::MFEMDiffusionKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +DiffusionKernel::DiffusionKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMDiffusionKernel::createBFIntegrator() +DiffusionKernel::createBFIntegrator() { return new mfem::DiffusionIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMDivDivKernel.C b/framework/src/mfem/kernels/MFEMDivDivKernel.C index 9fd20e9c4688..e2669760001a 100644 --- a/framework/src/mfem/kernels/MFEMDivDivKernel.C +++ b/framework/src/mfem/kernels/MFEMDivDivKernel.C @@ -12,33 +12,36 @@ #include "MFEMDivDivKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMDivDivKernel); +registerMooseMFEMObject("MooseApp", DivDivKernel); +namespace Moose::MFEM +{ InputParameters -MFEMDivDivKernel::validParams() +DivDivKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the bilinear form " "$(k\\vec\\nabla \\cdot \\vec u, \\vec\\nabla \\cdot \\vec v)_\\Omega$ " "arising from the weak form of the grad-div operator " "$-\\vec\\nabla \\left( k \\vec\\nabla \\cdot \\vec u \\right)$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of property k to multiply the integrator by"); return params; } -MFEMDivDivKernel::MFEMDivDivKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +DivDivKernel::DivDivKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::BilinearFormIntegrator * -MFEMDivDivKernel::createBFIntegrator() +DivDivKernel::createBFIntegrator() { return new mfem::DivDivIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMDomainLFKernel.C b/framework/src/mfem/kernels/MFEMDomainLFKernel.C index 44bc7281b303..f9b2ab2776cf 100644 --- a/framework/src/mfem/kernels/MFEMDomainLFKernel.C +++ b/framework/src/mfem/kernels/MFEMDomainLFKernel.C @@ -12,29 +12,32 @@ #include "MFEMDomainLFKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMDomainLFKernel); +registerMooseMFEMObject("MooseApp", DomainLFKernel); +namespace Moose::MFEM +{ InputParameters -MFEMDomainLFKernel::validParams() +DomainLFKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the linear form " "$(f, v)_\\Omega$ " "arising from the weak form of the forcing term $f$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of scalar coefficient $f$."); return params; } -MFEMDomainLFKernel::MFEMDomainLFKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +DomainLFKernel::DomainLFKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::LinearFormIntegrator * -MFEMDomainLFKernel::createLFIntegrator() +DomainLFKernel::createLFIntegrator() { return new mfem::DomainLFIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMKernel.C b/framework/src/mfem/kernels/MFEMKernel.C index 8ea15435b571..ce354f545676 100644 --- a/framework/src/mfem/kernels/MFEMKernel.C +++ b/framework/src/mfem/kernels/MFEMKernel.C @@ -15,11 +15,13 @@ #include "mfem/miniapps/common/mesh_extras.hpp" #include "libmesh/restore_warnings.h" +namespace Moose::MFEM +{ InputParameters -MFEMKernel::validParams() +Kernel::validParams() { - InputParameters params = MFEMObject::validParams(); - params += MFEMBlockRestrictable::validParams(); + InputParameters params = Object::validParams(); + params += BlockRestrictable::validParams(); params.registerBase("Kernel"); params.registerSystemAttributeName("Kernel"); params.addParam("variable", @@ -27,12 +29,13 @@ MFEMKernel::validParams() return params; } -MFEMKernel::MFEMKernel(const InputParameters & parameters) - : MFEMObject(parameters), - MFEMBlockRestrictable(parameters, - getMFEMProblem().getMFEMVariableMesh(getParam("variable"))), +Kernel::Kernel(const InputParameters & parameters) + : Object(parameters), + BlockRestrictable(parameters, + getMFEMProblem().getMFEMVariableMesh(getParam("variable"))), _test_var_name(getParam("variable")) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMLinearElasticityKernel.C b/framework/src/mfem/kernels/MFEMLinearElasticityKernel.C index a39a25056f47..825841d6791e 100644 --- a/framework/src/mfem/kernels/MFEMLinearElasticityKernel.C +++ b/framework/src/mfem/kernels/MFEMLinearElasticityKernel.C @@ -12,12 +12,14 @@ #include "MFEMLinearElasticityKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMLinearElasticityKernel); +registerMooseMFEMObject("MooseApp", LinearElasticityKernel); +namespace Moose::MFEM +{ InputParameters -MFEMLinearElasticityKernel::validParams() +LinearElasticityKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( "The isotropic linear elasticity operator with weak form " "$(c_{ikjl} \\nabla u_j, \\nabla v_i)$, to be added to an MFEM problem, where " @@ -28,23 +30,24 @@ MFEMLinearElasticityKernel::validParams() "$\\mu$ is the second Lame parameter, $\\mu = \\frac{E}{2(1+\\nu)}$, " "where $E$ is Young's modulus and $\\nu$ is Poisson's ratio."); - params.addParam( + params.addParam( "lambda", "1.", "Name of MFEM Lame constant lambda to multiply the div(u)*I term by"); - params.addParam( + params.addParam( "mu", "1.", "Name of MFEM Lame constant mu to multiply the gradients term by"); return params; } -MFEMLinearElasticityKernel::MFEMLinearElasticityKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _lambda(getScalarCoefficient("lambda")), _mu(getScalarCoefficient("mu")) +LinearElasticityKernel::LinearElasticityKernel(const InputParameters & parameters) + : Kernel(parameters), _lambda(getScalarCoefficient("lambda")), _mu(getScalarCoefficient("mu")) { } mfem::BilinearFormIntegrator * -MFEMLinearElasticityKernel::createBFIntegrator() +LinearElasticityKernel::createBFIntegrator() { return new mfem::ElasticityIntegrator(_lambda, _mu); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMassKernel.C b/framework/src/mfem/kernels/MFEMMassKernel.C index 84fdd531e4f9..fac43951586f 100644 --- a/framework/src/mfem/kernels/MFEMMassKernel.C +++ b/framework/src/mfem/kernels/MFEMMassKernel.C @@ -12,30 +12,33 @@ #include "MFEMMassKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMMassKernel); +registerMooseMFEMObject("MooseApp", MassKernel); +namespace Moose::MFEM +{ InputParameters -MFEMMassKernel::validParams() +MassKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the bilinear form " "$(k u, v)_\\Omega$ " "arising from the weak form of the mass operator " "$ku$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of property for the mass coefficient k."); return params; } -MFEMMassKernel::MFEMMassKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +MassKernel::MassKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::BilinearFormIntegrator * -MFEMMassKernel::createBFIntegrator() +MassKernel::createBFIntegrator() { return new mfem::MassIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMixedBilinearFormKernel.C b/framework/src/mfem/kernels/MFEMMixedBilinearFormKernel.C index e8eeebba6a02..a14e08620728 100644 --- a/framework/src/mfem/kernels/MFEMMixedBilinearFormKernel.C +++ b/framework/src/mfem/kernels/MFEMMixedBilinearFormKernel.C @@ -11,10 +11,12 @@ #include "MFEMMixedBilinearFormKernel.h" +namespace Moose::MFEM +{ InputParameters -MFEMMixedBilinearFormKernel::validParams() +MixedBilinearFormKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( "Base class for mixed bilinear form kernels, allowing different trial and test variables."); params.addParam( @@ -26,8 +28,8 @@ MFEMMixedBilinearFormKernel::validParams() return params; } -MFEMMixedBilinearFormKernel::MFEMMixedBilinearFormKernel(const InputParameters & parameters) - : MFEMKernel(parameters), +MixedBilinearFormKernel::MixedBilinearFormKernel(const InputParameters & parameters) + : Kernel(parameters), _trial_var_name(isParamValid("trial_variable") ? getParam("trial_variable") : _test_var_name), _transpose(getParam("transpose")) @@ -35,14 +37,15 @@ MFEMMixedBilinearFormKernel::MFEMMixedBilinearFormKernel(const InputParameters & } const VariableName & -MFEMMixedBilinearFormKernel::getTrialVariableName() const +MixedBilinearFormKernel::getTrialVariableName() const { return _trial_var_name; } mfem::BilinearFormIntegrator * -MFEMMixedBilinearFormKernel::createBFIntegrator() +MixedBilinearFormKernel::createBFIntegrator() { return _transpose ? new mfem::TransposeIntegrator(createMBFIntegrator()) : createMBFIntegrator(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMixedGradGradKernel.C b/framework/src/mfem/kernels/MFEMMixedGradGradKernel.C index 8cb005302746..4d53c4b60384 100644 --- a/framework/src/mfem/kernels/MFEMMixedGradGradKernel.C +++ b/framework/src/mfem/kernels/MFEMMixedGradGradKernel.C @@ -11,30 +11,34 @@ #include "MFEMMixedGradGradKernel.h" -registerMooseObject("MooseApp", MFEMMixedGradGradKernel); +registerMooseMFEMObject("MooseApp", MixedGradGradKernel); +namespace Moose::MFEM +{ InputParameters -MFEMMixedGradGradKernel::validParams() +MixedGradGradKernel::validParams() { - InputParameters params = MFEMMixedBilinearFormKernel::validParams(); + InputParameters params = MixedBilinearFormKernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the mixed bilinear form " "$(k\\vec\\nabla u, \\vec\\nabla v)_\\Omega$."); - params.addParam("coefficient", "1.", "Name of property k to use."); + params.addParam( + "coefficient", "1.", "Name of property k to use."); return params; } -MFEMMixedGradGradKernel::MFEMMixedGradGradKernel(const InputParameters & parameters) - : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) +MixedGradGradKernel::MixedGradGradKernel(const InputParameters & parameters) + : MixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMMixedGradGradKernel::createMBFIntegrator() +MixedGradGradKernel::createMBFIntegrator() { return new mfem::MixedGradGradIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMixedScalarCurlKernel.C b/framework/src/mfem/kernels/MFEMMixedScalarCurlKernel.C index 0a80d06778e0..c62d652a70e4 100644 --- a/framework/src/mfem/kernels/MFEMMixedScalarCurlKernel.C +++ b/framework/src/mfem/kernels/MFEMMixedScalarCurlKernel.C @@ -12,30 +12,33 @@ #include "MFEMMixedScalarCurlKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMMixedScalarCurlKernel); +registerMooseMFEMObject("MooseApp", MixedScalarCurlKernel); +namespace Moose::MFEM +{ InputParameters -MFEMMixedScalarCurlKernel::validParams() +MixedScalarCurlKernel::validParams() { - InputParameters params = MFEMMixedBilinearFormKernel::validParams(); + InputParameters params = MixedBilinearFormKernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the bilinear form " "$(k\\vec\\nabla \\times \\vec u, v)_\\Omega$ " "arising from the weak form of the scalar curl operator " "$k\\vec\\nabla \\times u$. The vector must be 2D."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of scalar property k to multiply the integrator by."); return params; } -MFEMMixedScalarCurlKernel::MFEMMixedScalarCurlKernel(const InputParameters & parameters) - : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) +MixedScalarCurlKernel::MixedScalarCurlKernel(const InputParameters & parameters) + : MixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::BilinearFormIntegrator * -MFEMMixedScalarCurlKernel::createMBFIntegrator() +MixedScalarCurlKernel::createMBFIntegrator() { return new mfem::MixedScalarCurlIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMixedVectorGradientKernel.C b/framework/src/mfem/kernels/MFEMMixedVectorGradientKernel.C index c83470eb8e87..0375133343fb 100644 --- a/framework/src/mfem/kernels/MFEMMixedVectorGradientKernel.C +++ b/framework/src/mfem/kernels/MFEMMixedVectorGradientKernel.C @@ -12,32 +12,36 @@ #include "MFEMMixedVectorGradientKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMMixedVectorGradientKernel); +registerMooseMFEMObject("MooseApp", MixedVectorGradientKernel); +namespace Moose::MFEM +{ InputParameters -MFEMMixedVectorGradientKernel::validParams() +MixedVectorGradientKernel::validParams() { - InputParameters params = MFEMMixedBilinearFormKernel::validParams(); + InputParameters params = MixedBilinearFormKernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the mixed bilinear form " "$(k\\vec\\nabla u, \\vec v)_\\Omega$ " "arising from the weak form of the gradient operator " "$k\\vec \\nabla u$."); - params.addParam("coefficient", "1.", "Name of property k to use."); + params.addParam( + "coefficient", "1.", "Name of property k to use."); return params; } -MFEMMixedVectorGradientKernel::MFEMMixedVectorGradientKernel(const InputParameters & parameters) - : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) +MixedVectorGradientKernel::MixedVectorGradientKernel(const InputParameters & parameters) + : MixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMMixedVectorGradientKernel::createMBFIntegrator() +MixedVectorGradientKernel::createMBFIntegrator() { return new mfem::MixedVectorGradientIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMMixedVectorMassKernel.C b/framework/src/mfem/kernels/MFEMMixedVectorMassKernel.C index 60b0c3cbfc1c..01977eb72273 100644 --- a/framework/src/mfem/kernels/MFEMMixedVectorMassKernel.C +++ b/framework/src/mfem/kernels/MFEMMixedVectorMassKernel.C @@ -11,30 +11,34 @@ #include "MFEMMixedVectorMassKernel.h" -registerMooseObject("MooseApp", MFEMMixedVectorMassKernel); +registerMooseMFEMObject("MooseApp", MixedVectorMassKernel); +namespace Moose::MFEM +{ InputParameters -MFEMMixedVectorMassKernel::validParams() +MixedVectorMassKernel::validParams() { - InputParameters params = MFEMMixedBilinearFormKernel::validParams(); + InputParameters params = MixedBilinearFormKernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the mixed bilinear form " "$(k\\vec u, \\vec v)_\\Omega$."); - params.addParam("coefficient", "1.", "Name of property k to use."); + params.addParam( + "coefficient", "1.", "Name of property k to use."); return params; } -MFEMMixedVectorMassKernel::MFEMMixedVectorMassKernel(const InputParameters & parameters) - : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) +MixedVectorMassKernel::MixedVectorMassKernel(const InputParameters & parameters) + : MixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMMixedVectorMassKernel::createMBFIntegrator() +MixedVectorMassKernel::createMBFIntegrator() { return new mfem::MixedVectorMassIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMNLDiffusionKernel.C b/framework/src/mfem/kernels/MFEMNLDiffusionKernel.C index 382240f3f918..b2711cec7414 100644 --- a/framework/src/mfem/kernels/MFEMNLDiffusionKernel.C +++ b/framework/src/mfem/kernels/MFEMNLDiffusionKernel.C @@ -13,19 +13,21 @@ #include "MFEMProblem.h" #include "NLDiffusionIntegrator.h" -registerMooseObject("MooseApp", MFEMNLDiffusionKernel); +registerMooseMFEMObject("MooseApp", NLDiffusionKernel); +namespace Moose::MFEM +{ InputParameters -MFEMNLDiffusionKernel::validParams() +NLDiffusionKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the nonlinear form " "$(k(u) \\vec\\nabla u, \\vec\\nabla v)_\\Omega " "arising from the weak form of the non-linear operator " "$- \\vec\\nabla \\cdot (k(u) \\vec\\nabla u)$."); - params.addParam( + params.addParam( "k_coefficient", "1.", "Name of property for nonlinear diffusivity coefficient k(u)."); - params.addParam( + params.addParam( "dk_du_coefficient", "0.", "Name of property partial derivative of diffusivity coefficient k(u) with respect to the " @@ -33,8 +35,8 @@ MFEMNLDiffusionKernel::validParams() return params; } -MFEMNLDiffusionKernel::MFEMNLDiffusionKernel(const InputParameters & parameters) - : MFEMKernel(parameters), +NLDiffusionKernel::NLDiffusionKernel(const InputParameters & parameters) + : Kernel(parameters), _k_coef(getScalarCoefficient("k_coefficient")), _dk_du_coef(getScalarCoefficient("dk_du_coefficient")), _trial_var(*getMFEMProblem().getGridFunction(getTrialVariableName())) @@ -42,9 +44,10 @@ MFEMNLDiffusionKernel::MFEMNLDiffusionKernel(const InputParameters & parameters) } mfem::NonlinearFormIntegrator * -MFEMNLDiffusionKernel::createNLIntegrator() +NLDiffusionKernel::createNLIntegrator() { - return new Moose::MFEM::NLDiffusionIntegrator(_k_coef, _dk_du_coef, &_trial_var); + return new NLDiffusionIntegrator(_k_coef, _dk_du_coef, &_trial_var); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMTimeDerivativeMassKernel.C b/framework/src/mfem/kernels/MFEMTimeDerivativeMassKernel.C index 0a4b997e8b91..4b788e96d2d3 100644 --- a/framework/src/mfem/kernels/MFEMTimeDerivativeMassKernel.C +++ b/framework/src/mfem/kernels/MFEMTimeDerivativeMassKernel.C @@ -12,12 +12,14 @@ #include "MFEMTimeDerivativeMassKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMTimeDerivativeMassKernel); +registerMooseMFEMObject("MooseApp", TimeDerivativeMassKernel); +namespace Moose::MFEM +{ InputParameters -MFEMTimeDerivativeMassKernel::validParams() +TimeDerivativeMassKernel::validParams() { - InputParameters params = MFEMMassKernel::validParams(); + InputParameters params = MassKernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the bilinear form " "$(k \\dot{u}, v)_\\Omega$ " "arising from the weak form of the operator " @@ -25,11 +27,12 @@ MFEMTimeDerivativeMassKernel::validParams() return params; } -MFEMTimeDerivativeMassKernel::MFEMTimeDerivativeMassKernel(const InputParameters & parameters) - : MFEMMassKernel(parameters), +TimeDerivativeMassKernel::TimeDerivativeMassKernel(const InputParameters & parameters) + : MassKernel(parameters), _var_dot_name( getMFEMProblem().getProblemData().time_derivative_map.getTimeDerivativeName(_test_var_name)) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.C b/framework/src/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.C index 265bc6ffd4ec..217e7835582e 100644 --- a/framework/src/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.C +++ b/framework/src/mfem/kernels/MFEMTimeDerivativeVectorFEMassKernel.C @@ -12,12 +12,14 @@ #include "MFEMTimeDerivativeVectorFEMassKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMTimeDerivativeVectorFEMassKernel); +registerMooseMFEMObject("MooseApp", TimeDerivativeVectorFEMassKernel); +namespace Moose::MFEM +{ InputParameters -MFEMTimeDerivativeVectorFEMassKernel::validParams() +TimeDerivativeVectorFEMassKernel::validParams() { - InputParameters params = MFEMVectorFEMassKernel::validParams(); + InputParameters params = VectorFEMassKernel::validParams(); params.addClassDescription("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 " @@ -25,12 +27,13 @@ MFEMTimeDerivativeVectorFEMassKernel::validParams() return params; } -MFEMTimeDerivativeVectorFEMassKernel::MFEMTimeDerivativeVectorFEMassKernel( +TimeDerivativeVectorFEMassKernel::TimeDerivativeVectorFEMassKernel( const InputParameters & parameters) - : MFEMVectorFEMassKernel(parameters), + : VectorFEMassKernel(parameters), _var_dot_name( getMFEMProblem().getProblemData().time_derivative_map.getTimeDerivativeName(_test_var_name)) { } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMVectorDomainLFKernel.C b/framework/src/mfem/kernels/MFEMVectorDomainLFKernel.C index af1d0707a6a0..3479e9bac149 100644 --- a/framework/src/mfem/kernels/MFEMVectorDomainLFKernel.C +++ b/framework/src/mfem/kernels/MFEMVectorDomainLFKernel.C @@ -12,29 +12,32 @@ #include "MFEMVectorDomainLFKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorDomainLFKernel); +registerMooseMFEMObject("MooseApp", VectorDomainLFKernel); +namespace Moose::MFEM +{ InputParameters -MFEMVectorDomainLFKernel::validParams() +VectorDomainLFKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the linear form " "$(\\vec f, \\vec v)_\\Omega$ " "arising from the weak form of the forcing term $\\vec f$."); - params.addParam( + params.addParam( "vector_coefficient", "1. 1. 1.", "Name of body force density f."); return params; } -MFEMVectorDomainLFKernel::MFEMVectorDomainLFKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +VectorDomainLFKernel::VectorDomainLFKernel(const InputParameters & parameters) + : Kernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } mfem::LinearFormIntegrator * -MFEMVectorDomainLFKernel::createLFIntegrator() +VectorDomainLFKernel::createLFIntegrator() { return new mfem::VectorDomainLFIntegrator(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMVectorFEDivergenceKernel.C b/framework/src/mfem/kernels/MFEMVectorFEDivergenceKernel.C index c0b9cfd0fb70..09a9d704a3aa 100644 --- a/framework/src/mfem/kernels/MFEMVectorFEDivergenceKernel.C +++ b/framework/src/mfem/kernels/MFEMVectorFEDivergenceKernel.C @@ -11,29 +11,33 @@ #include "MFEMVectorFEDivergenceKernel.h" -registerMooseObject("MooseApp", MFEMVectorFEDivergenceKernel); +registerMooseMFEMObject("MooseApp", VectorFEDivergenceKernel); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEDivergenceKernel::validParams() +VectorFEDivergenceKernel::validParams() { - InputParameters params = MFEMMixedBilinearFormKernel::validParams(); + InputParameters params = MixedBilinearFormKernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the mixed bilinear form " "$(k \\vec \\nabla \\cdot \\vec u, v)_\\Omega$ arising from the weak form " "of the divergence operator $k \\vec \\nabla \\cdot \\vec u$."); - params.addParam("coefficient", "1.", "Name of property k to use."); + params.addParam( + "coefficient", "1.", "Name of property k to use."); return params; } -MFEMVectorFEDivergenceKernel::MFEMVectorFEDivergenceKernel(const InputParameters & parameters) - : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) +VectorFEDivergenceKernel::VectorFEDivergenceKernel(const InputParameters & parameters) + : MixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::BilinearFormIntegrator * -MFEMVectorFEDivergenceKernel::createMBFIntegrator() +VectorFEDivergenceKernel::createMBFIntegrator() { return new mfem::VectorFEDivergenceIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMVectorFEDomainLFKernel.C b/framework/src/mfem/kernels/MFEMVectorFEDomainLFKernel.C index a04fc6c4a252..f3f3e38db39b 100644 --- a/framework/src/mfem/kernels/MFEMVectorFEDomainLFKernel.C +++ b/framework/src/mfem/kernels/MFEMVectorFEDomainLFKernel.C @@ -12,30 +12,33 @@ #include "MFEMVectorFEDomainLFKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorFEDomainLFKernel); +registerMooseMFEMObject("MooseApp", VectorFEDomainLFKernel); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEDomainLFKernel::validParams() +VectorFEDomainLFKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the linear form " "$(\\vec f, \\vec v)_\\Omega$ " "arising from the weak form of the forcing term $\\vec f$."); - params.addParam( + params.addParam( "vector_coefficient", "1. 1. 1.", "The name of the vector coefficient f"); return params; } -MFEMVectorFEDomainLFKernel::MFEMVectorFEDomainLFKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) +VectorFEDomainLFKernel::VectorFEDomainLFKernel(const InputParameters & parameters) + : Kernel(parameters), _vec_coef(getVectorCoefficient("vector_coefficient")) { } mfem::LinearFormIntegrator * -MFEMVectorFEDomainLFKernel::createLFIntegrator() +VectorFEDomainLFKernel::createLFIntegrator() { return new mfem::VectorFEDomainLFIntegrator(_vec_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMVectorFEMassKernel.C b/framework/src/mfem/kernels/MFEMVectorFEMassKernel.C index 57a9610d0d4e..57751148dd72 100644 --- a/framework/src/mfem/kernels/MFEMVectorFEMassKernel.C +++ b/framework/src/mfem/kernels/MFEMVectorFEMassKernel.C @@ -12,32 +12,35 @@ #include "MFEMVectorFEMassKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorFEMassKernel); +registerMooseMFEMObject("MooseApp", VectorFEMassKernel); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEMassKernel::validParams() +VectorFEMassKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription("Adds the domain integrator to an MFEM problem for the bilinear form " "$(k \\vec u, \\vec v)_\\Omega$ " "arising from the weak form of the mass operator " "$k \\vec u$."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of property k to multiply the integrator by"); return params; } -MFEMVectorFEMassKernel::MFEMVectorFEMassKernel(const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +VectorFEMassKernel::VectorFEMassKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) // FIXME: The MFEM bilinear form can also handle vector and matrix // coefficients, so ideally we'd handle all three too. { } mfem::BilinearFormIntegrator * -MFEMVectorFEMassKernel::createBFIntegrator() +VectorFEMassKernel::createBFIntegrator() { return new mfem::VectorFEMassIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.C b/framework/src/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.C index d57974d730de..f62d1b8d3663 100644 --- a/framework/src/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.C +++ b/framework/src/mfem/kernels/MFEMVectorFEWeakDivergenceKernel.C @@ -12,31 +12,34 @@ #include "MFEMVectorFEWeakDivergenceKernel.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorFEWeakDivergenceKernel); +registerMooseMFEMObject("MooseApp", VectorFEWeakDivergenceKernel); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEWeakDivergenceKernel::validParams() +VectorFEWeakDivergenceKernel::validParams() { - InputParameters params = MFEMKernel::validParams(); + InputParameters params = Kernel::validParams(); params.addClassDescription( "Adds the domain integrator to an MFEM problem for the mixed bilinear form " "$(-k\\vec u, \\vec\\nabla v)_\\Omega$ " "arising from the weak form of the divergence operator " "$\\vec \\nabla \\cdot (k\\vec u)$."); - params.addParam("coefficient", "1.", "Name of property k to use."); + params.addParam( + "coefficient", "1.", "Name of property k to use."); return params; } -MFEMVectorFEWeakDivergenceKernel::MFEMVectorFEWeakDivergenceKernel( - const InputParameters & parameters) - : MFEMKernel(parameters), _coef(getScalarCoefficient("coefficient")) +VectorFEWeakDivergenceKernel::VectorFEWeakDivergenceKernel(const InputParameters & parameters) + : Kernel(parameters), _coef(getScalarCoefficient("coefficient")) { } mfem::BilinearFormIntegrator * -MFEMVectorFEWeakDivergenceKernel::createBFIntegrator() +VectorFEWeakDivergenceKernel::createBFIntegrator() { return new mfem::VectorFEWeakDivergenceIntegrator(_coef); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/markers/MFEMRefinementMarker.C b/framework/src/mfem/markers/MFEMRefinementMarker.C index 185e09f3fd08..9e2d41f99a8f 100644 --- a/framework/src/mfem/markers/MFEMRefinementMarker.C +++ b/framework/src/mfem/markers/MFEMRefinementMarker.C @@ -12,12 +12,14 @@ #include "MFEMRefinementMarker.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMRefinementMarker); +registerMooseMFEMObject("MooseApp", RefinementMarker); +namespace Moose::MFEM +{ InputParameters -MFEMRefinementMarker::validParams() +RefinementMarker::validParams() { - InputParameters params = MFEMObject::validParams(); + InputParameters params = Object::validParams(); params.registerBase("Marker"); params.registerSystemAttributeName("Marker"); @@ -35,8 +37,8 @@ MFEMRefinementMarker::validParams() return params; } -MFEMRefinementMarker::MFEMRefinementMarker(const InputParameters & params) - : MFEMObject(params), +RefinementMarker::RefinementMarker(const InputParameters & params) + : Object(params), _estimator_name(getParam("indicator")), _error_threshold(getParam("threshold")), _rebalance(getParam("rebalance")), @@ -46,10 +48,10 @@ MFEMRefinementMarker::MFEMRefinementMarker(const InputParameters & params) } void -MFEMRefinementMarker::initialSetup() +RefinementMarker::initialSetup() { // fetch const ref to the estimator - _estimator = &getMFEMProblem().getMFEMObject("Indicator", _estimator_name); + _estimator = &getMFEMProblem().getMFEMObject("Indicator", _estimator_name); // Check if p-refinement is supported by the fespace supplied with the variable if (_max_p_level and !_estimator->getFESpace().PRefinementSupported()) @@ -80,7 +82,7 @@ MFEMRefinementMarker::initialSetup() } bool -MFEMRefinementMarker::pRefine() +RefinementMarker::pRefine() { // Nothing to do if we've reached the max level of refinement if (_p_ref_counter >= _max_p_level) @@ -108,7 +110,7 @@ MFEMRefinementMarker::pRefine() } bool -MFEMRefinementMarker::hRefine() +RefinementMarker::hRefine() { // Nothing to do if we've reached the max level of refinement if (_h_ref_counter >= _max_h_level) @@ -133,4 +135,5 @@ MFEMRefinementMarker::hRefine() return refined && ++_h_ref_counter; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/mesh/MFEMMesh.C b/framework/src/mfem/mesh/MFEMMesh.C index db0a8d3e21ed..28742ba2a5b4 100644 --- a/framework/src/mfem/mesh/MFEMMesh.C +++ b/framework/src/mfem/mesh/MFEMMesh.C @@ -12,10 +12,12 @@ #include "MFEMMesh.h" #include "libmesh/mesh_generation.h" -registerMooseObject("MooseApp", MFEMMesh); +registerMooseMFEMObject("MooseApp", Mesh); +namespace Moose::MFEM +{ InputParameters -MFEMMesh::validParams() +Mesh::validParams() { InputParameters params = FileMesh::validParams(); params.addParam( @@ -43,12 +45,12 @@ MFEMMesh::validParams() return params; } -MFEMMesh::MFEMMesh(const InputParameters & parameters) : FileMesh(parameters) {} +Mesh::Mesh(const InputParameters & parameters) : FileMesh(parameters) {} -MFEMMesh::~MFEMMesh() {} +Mesh::~Mesh() {} void -MFEMMesh::buildMesh() +Mesh::buildMesh() { TIME_SECTION("buildMesh", 2, "Reading Mesh"); @@ -96,7 +98,7 @@ MFEMMesh::buildMesh() } void -MFEMMesh::displace(mfem::GridFunction const & displacement) +Mesh::displace(mfem::GridFunction const & displacement) { _mfem_par_mesh->EnsureNodes(); mfem::GridFunction * nodes = _mfem_par_mesh->GetNodes(); @@ -105,22 +107,23 @@ MFEMMesh::displace(mfem::GridFunction const & displacement) } void -MFEMMesh::buildDummyMooseMesh() +Mesh::buildDummyMooseMesh() { MeshTools::Generation::build_point(static_cast(getMesh())); } void -MFEMMesh::uniformRefinement(mfem::Mesh & mesh, const unsigned int nref) const +Mesh::uniformRefinement(mfem::Mesh & mesh, const unsigned int nref) const { for (unsigned int i = 0; i < nref; ++i) mesh.UniformRefinement(); } std::unique_ptr -MFEMMesh::safeClone() const +Mesh::safeClone() const { return _app.getFactory().copyConstruct(*this); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/outputs/MFEMConduitDataCollection.C b/framework/src/mfem/outputs/MFEMConduitDataCollection.C index b61b4bc2766b..716c5fdc45c2 100644 --- a/framework/src/mfem/outputs/MFEMConduitDataCollection.C +++ b/framework/src/mfem/outputs/MFEMConduitDataCollection.C @@ -11,13 +11,16 @@ #include "MFEMConduitDataCollection.h" -registerMooseObject("MooseApp", MFEMConduitDataCollection); +registerMooseMFEMObject("MooseApp", ConduitDataCollection); +namespace Moose::MFEM +{ InputParameters -MFEMConduitDataCollection::validParams() +ConduitDataCollection::validParams() { - InputParameters params = MFEMDataCollection::validParams(); - params.addClassDescription("Output for controlling MFEMConduitDataCollection inherited data."); + InputParameters params = DataCollection::validParams(); + params.addClassDescription( + "Output for controlling Moose::MFEM::ConduitDataCollection inherited data."); MooseEnum protocol("hdf5 json conduit_json conduit_bin", "hdf5", false); params.addParam("protocol", protocol, @@ -26,8 +29,8 @@ MFEMConduitDataCollection::validParams() return params; } -MFEMConduitDataCollection::MFEMConduitDataCollection(const InputParameters & parameters) - : MFEMDataCollection(parameters), +ConduitDataCollection::ConduitDataCollection(const InputParameters & parameters) + : DataCollection(parameters), _conduit_dc((_file_base).c_str(), &_pmesh), _protocol(getParam("protocol")) { @@ -35,4 +38,5 @@ MFEMConduitDataCollection::MFEMConduitDataCollection(const InputParameters & par registerFields(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/outputs/MFEMDataCollection.C b/framework/src/mfem/outputs/MFEMDataCollection.C index cb8c3c9aa7ab..fe06116caee5 100644 --- a/framework/src/mfem/outputs/MFEMDataCollection.C +++ b/framework/src/mfem/outputs/MFEMDataCollection.C @@ -11,19 +11,21 @@ #include "MFEMDataCollection.h" +namespace Moose::MFEM +{ InputParameters -MFEMDataCollection::validParams() +DataCollection::validParams() { InputParameters params = FileOutput::validParams(); - params.addClassDescription("Output for controlling MFEMDataCollection inherited data."); + params.addClassDescription("Output for controlling Moose::MFEM::DataCollection inherited data."); params.addParam("submesh", "Submesh to output variables on. Leave blank to use base mesh."); return params; } -MFEMDataCollection::MFEMDataCollection(const InputParameters & parameters) +DataCollection::DataCollection(const InputParameters & parameters) : FileOutput(parameters), - _problem_data(static_cast(_problem_ptr)->getProblemData()), + _problem_data(static_cast(_problem_ptr)->getProblemData()), _pmesh(parameters.isParamValid("submesh") ? _problem_data.submeshes.GetRef(getParam("submesh")) : const_cast(*_problem_data.pmesh.get())) @@ -31,7 +33,7 @@ MFEMDataCollection::MFEMDataCollection(const InputParameters & parameters) } void -MFEMDataCollection::registerFields() +DataCollection::registerFields() { // Save real fields mfem::DataCollection & dc(getDataCollection()); @@ -61,7 +63,7 @@ MFEMDataCollection::registerFields() } void -MFEMDataCollection::output() +DataCollection::output() { mfem::DataCollection & dc(getDataCollection()); // Write fields to disk @@ -71,4 +73,5 @@ MFEMDataCollection::output() ++_file_num; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/outputs/MFEMParaViewDataCollection.C b/framework/src/mfem/outputs/MFEMParaViewDataCollection.C index 80e8cf18b82e..30116a04fa81 100644 --- a/framework/src/mfem/outputs/MFEMParaViewDataCollection.C +++ b/framework/src/mfem/outputs/MFEMParaViewDataCollection.C @@ -11,12 +11,14 @@ #include "MFEMParaViewDataCollection.h" -registerMooseObject("MooseApp", MFEMParaViewDataCollection); +registerMooseMFEMObject("MooseApp", ParaViewDataCollection); +namespace Moose::MFEM +{ InputParameters -MFEMParaViewDataCollection::validParams() +ParaViewDataCollection::validParams() { - InputParameters params = MFEMDataCollection::validParams(); + InputParameters params = DataCollection::validParams(); params.addClassDescription("Output for controlling export to an mfem::ParaViewDataCollection."); params.addParam("refinements", 0, @@ -38,8 +40,8 @@ MFEMParaViewDataCollection::validParams() return params; } -MFEMParaViewDataCollection::MFEMParaViewDataCollection(const InputParameters & parameters) - : MFEMDataCollection(parameters), +ParaViewDataCollection::ParaViewDataCollection(const InputParameters & parameters) + : DataCollection(parameters), _pv_dc((_file_base + std::string("/Run") + std::to_string(getFileNumber())).c_str(), &_pmesh), _high_order_output(getParam("high_order_output")), _refinements(getParam("refinements")), @@ -52,4 +54,5 @@ MFEMParaViewDataCollection::MFEMParaViewDataCollection(const InputParameters & p registerFields(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/outputs/MFEMVisItDataCollection.C b/framework/src/mfem/outputs/MFEMVisItDataCollection.C index 07d3d3e4a4f4..252d2a973115 100644 --- a/framework/src/mfem/outputs/MFEMVisItDataCollection.C +++ b/framework/src/mfem/outputs/MFEMVisItDataCollection.C @@ -11,12 +11,14 @@ #include "MFEMVisItDataCollection.h" -registerMooseObject("MooseApp", MFEMVisItDataCollection); +registerMooseMFEMObject("MooseApp", VisItDataCollection); +namespace Moose::MFEM +{ InputParameters -MFEMVisItDataCollection::validParams() +VisItDataCollection::validParams() { - InputParameters params = MFEMDataCollection::validParams(); + InputParameters params = DataCollection::validParams(); params.addClassDescription("Output for controlling export to an mfem::VisItDataCollection."); params.addParam("refinements", 0, @@ -26,8 +28,8 @@ MFEMVisItDataCollection::validParams() return params; } -MFEMVisItDataCollection::MFEMVisItDataCollection(const InputParameters & parameters) - : MFEMDataCollection(parameters), +VisItDataCollection::VisItDataCollection(const InputParameters & parameters) + : DataCollection(parameters), _visit_dc((_file_base + std::string("/Run") + std::to_string(getFileNumber())).c_str(), &_pmesh), _refinements(getParam("refinements")) @@ -36,4 +38,5 @@ MFEMVisItDataCollection::MFEMVisItDataCollection(const InputParameters & paramet registerFields(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.C b/framework/src/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.C index 1c6ecc5c2c52..a6d2a34bffa0 100644 --- a/framework/src/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.C +++ b/framework/src/mfem/postprocessors/MFEMComplexVectorPeriodAveragedPostprocessor.C @@ -12,29 +12,31 @@ #include "MFEMComplexVectorPeriodAveragedPostprocessor.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMComplexVectorPeriodAveragedPostprocessor); +registerMooseMFEMObject("MooseApp", ComplexVectorPeriodAveragedPostprocessor); +namespace Moose::MFEM +{ InputParameters -MFEMComplexVectorPeriodAveragedPostprocessor::validParams() +ComplexVectorPeriodAveragedPostprocessor::validParams() { - InputParameters params = MFEMPostprocessor::validParams(); - params += MFEMBlockRestrictable::validParams(); + InputParameters params = Postprocessor::validParams(); + params += BlockRestrictable::validParams(); params.addClassDescription("Calculates the time average of the inner product between two " "complex MFEM vector FE variables, scaled by an optional scalar " "coefficient."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of optional scalar coefficient to scale integrand by."); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "primal_variable", "Name of the first complex vector variable in the inner product."); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "dual_variable", "Name of the second complex vector variable in the inner product."); return params; } -MFEMComplexVectorPeriodAveragedPostprocessor::MFEMComplexVectorPeriodAveragedPostprocessor( +ComplexVectorPeriodAveragedPostprocessor::ComplexVectorPeriodAveragedPostprocessor( const InputParameters & parameters) - : MFEMPostprocessor(parameters), - MFEMBlockRestrictable( + : Postprocessor(parameters), + BlockRestrictable( parameters, getMFEMProblem().getMFEMVariableMesh(getParam("primal_variable"))), _l2_fec(getMFEMProblem() @@ -66,7 +68,7 @@ MFEMComplexVectorPeriodAveragedPostprocessor::MFEMComplexVectorPeriodAveragedPos } void -MFEMComplexVectorPeriodAveragedPostprocessor::execute() +ComplexVectorPeriodAveragedPostprocessor::execute() { _scalar_var.ProjectCoefficient(_scalar_coef); _subdomain_integrator.Assemble(); @@ -74,9 +76,10 @@ MFEMComplexVectorPeriodAveragedPostprocessor::execute() } PostprocessorValue -MFEMComplexVectorPeriodAveragedPostprocessor::getValue() const +ComplexVectorPeriodAveragedPostprocessor::getValue() const { return _integral; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/postprocessors/MFEML2Error.C b/framework/src/mfem/postprocessors/MFEML2Error.C index 319fdf473df8..76c09d57d867 100644 --- a/framework/src/mfem/postprocessors/MFEML2Error.C +++ b/framework/src/mfem/postprocessors/MFEML2Error.C @@ -12,43 +12,46 @@ #include "MFEML2Error.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEML2Error); +registerMooseMFEMObject("MooseApp", L2Error); +namespace Moose::MFEM +{ InputParameters -MFEML2Error::validParams() +L2Error::validParams() { - InputParameters params = MFEMPostprocessor::validParams(); + InputParameters params = Postprocessor::validParams(); params.addClassDescription( "Computes L2 error $\\left\\Vert u_{ex} - u_{h}\\right\\Vert_{\\rm L2}$ for " "gridfunctions using H1 or L2 elements."); - params.addParam("function", - "The analytic solution to compare against."); - MFEMExecutedObject::addRequiredDependencyParam( + params.addParam("function", + "The analytic solution to compare against."); + ExecutedObject::addRequiredDependencyParam( params, "variable", "Name of the variable of which to find the norm of the error."); return params; } -MFEML2Error::MFEML2Error(const InputParameters & parameters) - : MFEMPostprocessor(parameters), +L2Error::L2Error(const InputParameters & parameters) + : Postprocessor(parameters), _coeff(getScalarCoefficient("function")), _var(*getMFEMProblem().getGridFunction(getParam("variable"))) { } void -MFEML2Error::initialize() +L2Error::initialize() { } void -MFEML2Error::execute() +L2Error::execute() { } PostprocessorValue -MFEML2Error::getValue() const +L2Error::getValue() const { return _var.ComputeL2Error(_coeff); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/postprocessors/MFEMPostprocessor.C b/framework/src/mfem/postprocessors/MFEMPostprocessor.C index 765cbd27e920..ae64f9a29d96 100644 --- a/framework/src/mfem/postprocessors/MFEMPostprocessor.C +++ b/framework/src/mfem/postprocessors/MFEMPostprocessor.C @@ -11,24 +11,27 @@ #include "MFEMPostprocessor.h" +namespace Moose::MFEM +{ InputParameters -MFEMPostprocessor::validParams() +Postprocessor::validParams() { - InputParameters params = MFEMExecutedObject::validParams(); - params += Postprocessor::validParams(); - params.registerSystemAttributeName("MFEMExecutedObject"); + InputParameters params = ExecutedObject::validParams(); + params += ::Postprocessor::validParams(); + params.registerSystemAttributeName("Moose::MFEM::ExecutedObject"); return params; } -MFEMPostprocessor::MFEMPostprocessor(const InputParameters & parameters) - : MFEMExecutedObject(parameters), Postprocessor(this) +Postprocessor::Postprocessor(const InputParameters & parameters) + : ExecutedObject(parameters), ::Postprocessor(this) { } std::optional -MFEMPostprocessor::suppliedPostprocessorName() const +Postprocessor::suppliedPostprocessorName() const { return name(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.C b/framework/src/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.C index 334df614066d..ee564aa9355c 100644 --- a/framework/src/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.C +++ b/framework/src/mfem/postprocessors/MFEMVectorFEInnerProductIntegralPostprocessor.C @@ -12,28 +12,30 @@ #include "MFEMVectorFEInnerProductIntegralPostprocessor.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorFEInnerProductIntegralPostprocessor); +registerMooseMFEMObject("MooseApp", VectorFEInnerProductIntegralPostprocessor); +namespace Moose::MFEM +{ InputParameters -MFEMVectorFEInnerProductIntegralPostprocessor::validParams() +VectorFEInnerProductIntegralPostprocessor::validParams() { - InputParameters params = MFEMPostprocessor::validParams(); - params += MFEMBlockRestrictable::validParams(); + InputParameters params = Postprocessor::validParams(); + params += BlockRestrictable::validParams(); params.addClassDescription( "Calculates the integral of the inner product of two vector variables within a subdomain."); - params.addParam( + params.addParam( "coefficient", "1.", "Name of optional scalar coefficient to scale integrand by."); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "primal_variable", "Name of the first vector variable in the inner product."); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "dual_variable", "Name of the second vector variable in the inner product."); return params; } -MFEMVectorFEInnerProductIntegralPostprocessor::MFEMVectorFEInnerProductIntegralPostprocessor( +VectorFEInnerProductIntegralPostprocessor::VectorFEInnerProductIntegralPostprocessor( const InputParameters & parameters) - : MFEMPostprocessor(parameters), - MFEMBlockRestrictable( + : Postprocessor(parameters), + BlockRestrictable( parameters, getMFEMProblem().getMFEMVariableMesh(getParam("primal_variable"))), _primal_var(*getMFEMProblem().getGridFunction(getParam("primal_variable"))), @@ -50,16 +52,17 @@ MFEMVectorFEInnerProductIntegralPostprocessor::MFEMVectorFEInnerProductIntegralP } void -MFEMVectorFEInnerProductIntegralPostprocessor::execute() +VectorFEInnerProductIntegralPostprocessor::execute() { _subdomain_integrator.Assemble(); _integral = _subdomain_integrator(_primal_var); } PostprocessorValue -MFEMVectorFEInnerProductIntegralPostprocessor::getValue() const +VectorFEInnerProductIntegralPostprocessor::getValue() const { return _integral; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/postprocessors/MFEMVectorL2Error.C b/framework/src/mfem/postprocessors/MFEMVectorL2Error.C index 6dbd5d6d9143..56175470054f 100644 --- a/framework/src/mfem/postprocessors/MFEMVectorL2Error.C +++ b/framework/src/mfem/postprocessors/MFEMVectorL2Error.C @@ -12,43 +12,46 @@ #include "MFEMVectorL2Error.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMVectorL2Error); +registerMooseMFEMObject("MooseApp", VectorL2Error); +namespace Moose::MFEM +{ InputParameters -MFEMVectorL2Error::validParams() +VectorL2Error::validParams() { - InputParameters params = MFEMPostprocessor::validParams(); + InputParameters params = Postprocessor::validParams(); params.addClassDescription( "Computes L2 error $\\left\\Vert \\vec u_{ex} - \\vec u_{h}\\right\\Vert_{\\rm L2}$ for " "vector gridfunctions."); - params.addParam("function", - "The analytic solution to compare against."); - MFEMExecutedObject::addRequiredDependencyParam( + params.addParam("function", + "The analytic solution to compare against."); + ExecutedObject::addRequiredDependencyParam( params, "variable", "Name of the vector variable of which to find the norm of the error."); return params; } -MFEMVectorL2Error::MFEMVectorL2Error(const InputParameters & parameters) - : MFEMPostprocessor(parameters), +VectorL2Error::VectorL2Error(const InputParameters & parameters) + : Postprocessor(parameters), _vec_coeff(getVectorCoefficient("function")), _var(*getMFEMProblem().getGridFunction(getParam("variable"))) { } void -MFEMVectorL2Error::initialize() +VectorL2Error::initialize() { } void -MFEMVectorL2Error::execute() +VectorL2Error::execute() { } PostprocessorValue -MFEMVectorL2Error::getValue() const +VectorL2Error::getValue() const { return _var.ComputeL2Error(_vec_coeff); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/problem/MFEMProblem.C b/framework/src/mfem/problem/MFEMProblem.C index 4aba26e4f44a..a187eed812d1 100644 --- a/framework/src/mfem/problem/MFEMProblem.C +++ b/framework/src/mfem/problem/MFEMProblem.C @@ -19,6 +19,8 @@ #include "MFEMExecutedObject.h" #include "Postprocessor.h" #include "VectorPostprocessor.h" +#include "MFEMNonlinearSolverBase.h" + #include "libmesh/string_to_enum.h" #include @@ -28,10 +30,12 @@ #include #include -registerMooseObject("MooseApp", MFEMProblem); +registerMooseMFEMObject("MooseApp", Problem); +namespace Moose::MFEM +{ InputParameters -MFEMProblem::validParams() +Problem::validParams() { InputParameters params = ExternalProblem::validParams(); params.addClassDescription("Problem type for building and solving the finite element problem " @@ -42,7 +46,7 @@ MFEMProblem::validParams() return params; } -MFEMProblem::MFEMProblem(const InputParameters & params) +Problem::Problem(const InputParameters & params) : ExternalProblem(params), num_type{static_cast(getParam("numeric_type"))} { // Initialise Hypre for all MFEM problems. @@ -53,20 +57,20 @@ MFEMProblem::MFEMProblem(const InputParameters & params) } void -MFEMProblem::initialSetup() +Problem::initialSetup() { FEProblemBase::initialSetup(); // MFEM indicators create their estimators during addIndicator(); markers still need an explicit // setup pass because they are no longer initialized through the libMesh/MOOSE user-object path. - std::vector markers; + std::vector markers; theWarehouse().query().condition("Marker").queryInto(markers); for (auto marker : markers) marker->initialSetup(); } void -MFEMProblem::execute(const ExecFlagType & exec_type) +Problem::execute(const ExecFlagType & exec_type) { setCurrentExecuteOnFlag(exec_type); executeMFEMObjects(exec_type); @@ -75,7 +79,7 @@ MFEMProblem::execute(const ExecFlagType & exec_type) } void -MFEMProblem::setMesh() +Problem::setMesh() { auto pmesh = mesh().getMFEMParMeshPtr(); getProblemData().pmesh = pmesh; @@ -85,105 +89,92 @@ MFEMProblem::setMesh() } void -MFEMProblem::addMFEMPreconditioner(const std::string & user_object_name, - const std::string & name, - InputParameters & parameters) +Problem::addMFEMPreconditioner(const std::string & user_object_name, + const std::string & name, + InputParameters & parameters) { - addObject(user_object_name, name, parameters); + addObject(user_object_name, name, parameters); } void -MFEMProblem::addIndicator(const std::string & user_object_name, - const std::string & name, - InputParameters & parameters) +Problem::addIndicator(const std::string & user_object_name, + const std::string & name, + InputParameters & parameters) { - auto estimator = addObject(user_object_name, name, parameters).front(); + auto estimator = addObject(user_object_name, name, parameters).front(); // construct the estimator itself estimator->createEstimator(); } void -MFEMProblem::addMarker(const std::string & user_object_name, - const std::string & name, - InputParameters & parameters) +Problem::addMarker(const std::string & user_object_name, + const std::string & name, + InputParameters & parameters) { getProblemData().refiner = - addObject(user_object_name, name, parameters).front(); -} - -void -MFEMProblem::addMFEMSolver(const std::string & user_object_name, - const std::string & name, - InputParameters & parameters) -{ - getProblemData().jacobian_solver = - addObject(user_object_name, name, parameters).front(); + addObject(user_object_name, name, parameters).front(); } void -MFEMProblem::addMFEMNonlinearSolver(unsigned int nl_max_its, - mfem::real_t nl_abs_tol, - mfem::real_t nl_rel_tol, - unsigned int print_level) +Problem::addMFEMSolver(const std::string & user_object_name, + const std::string & name, + InputParameters & parameters) { - // TODO: allow users to specify other mfem::IterativeSolvers - auto nl_solver = std::make_shared(getComm()); + auto object = addObject(user_object_name, name, parameters).front(); - // Defaults to one iteration, without further nonlinear iterations - nl_solver->SetRelTol(nl_rel_tol); - nl_solver->SetAbsTol(nl_abs_tol); - nl_solver->SetMaxIter(nl_max_its); - nl_solver->SetPrintLevel(print_level); - getProblemData().nonlinear_solver = nl_solver; + if (auto lin_solver = std::dynamic_pointer_cast(object)) + getProblemData().jacobian_solver = lin_solver; + else if (auto nonlinear_solver = std::dynamic_pointer_cast(object); + nonlinear_solver) + getProblemData().nonlinear_solver = nonlinear_solver; + else + mooseError( + "Unsupported MFEM solver object type '", user_object_name, "' for solver '", name, "'."); } void -MFEMProblem::addBoundaryCondition(const std::string & bc_name, - const std::string & name, - InputParameters & parameters) +Problem::addBoundaryCondition(const std::string & bc_name, + const std::string & name, + InputParameters & parameters) { - auto bc = addObject(bc_name, name, parameters).front(); + auto bc = addObject(bc_name, name, parameters).front(); const auto & mfem_bc = *bc; - if (dynamic_cast(&mfem_bc)) + if (dynamic_cast(&mfem_bc)) { - auto integrated_bc = std::dynamic_pointer_cast(bc); - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto integrated_bc = std::dynamic_pointer_cast(bc); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddIntegratedBC(std::move(integrated_bc)); else mooseError("Cannot add integrated BC with name '" + name + "' because there is no corresponding equation system."); } - else if (dynamic_cast(&mfem_bc)) + else if (dynamic_cast(&mfem_bc)) { - auto integrated_bc = std::dynamic_pointer_cast(bc); - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto integrated_bc = std::dynamic_pointer_cast(bc); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddComplexIntegratedBC(std::move(integrated_bc)); else mooseError("Cannot add complex integrated BC with name '" + name + "' because there is no corresponding equation system."); } - else if (dynamic_cast(&mfem_bc)) + else if (dynamic_cast(&mfem_bc)) { - auto essential_bc = std::dynamic_pointer_cast(bc); - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto essential_bc = std::dynamic_pointer_cast(bc); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddComplexEssentialBCs(std::move(essential_bc)); else mooseError("Cannot add boundary condition with name '" + name + "' because there is no corresponding equation system."); } - else if (dynamic_cast(&mfem_bc)) + else if (dynamic_cast(&mfem_bc)) { - auto essential_bc = std::dynamic_pointer_cast(bc); - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto essential_bc = std::dynamic_pointer_cast(bc); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddEssentialBC(std::move(essential_bc)); else @@ -197,26 +188,26 @@ MFEMProblem::addBoundaryCondition(const std::string & bc_name, } void -MFEMProblem::addMaterial(const std::string &, const std::string &, InputParameters &) +Problem::addMaterial(const std::string &, const std::string &, InputParameters &) { mooseError( "MFEM materials must be added through the 'FunctorMaterials' block and not 'Materials'"); } void -MFEMProblem::addFunctorMaterial(const std::string & material_name, - const std::string & name, - InputParameters & parameters) +Problem::addFunctorMaterial(const std::string & material_name, + const std::string & name, + InputParameters & parameters) { - addObject(material_name, name, parameters); + addObject(material_name, name, parameters); } void -MFEMProblem::addFESpace(const std::string & type, - const std::string & name, - InputParameters & parameters) +Problem::addFESpace(const std::string & type, + const std::string & name, + InputParameters & parameters) { - auto & mfem_fespace = *addObject(type, name, parameters).front(); + auto & mfem_fespace = *addObject(type, name, parameters).front(); // Register fespace and associated fe collection. getProblemData().fecs.Register(name, mfem_fespace.getFEC()); @@ -224,9 +215,9 @@ MFEMProblem::addFESpace(const std::string & type, } void -MFEMProblem::addVariable(const std::string & var_type, - const std::string & var_name, - InputParameters & parameters) +Problem::addVariable(const std::string & var_type, + const std::string & var_name, + InputParameters & parameters) { addGridFunction(var_type, var_name, parameters); // MOOSE variables store DoFs for the trial variable and its time derivatives up to second order; @@ -235,7 +226,7 @@ MFEMProblem::addVariable(const std::string & var_type, if (isTransient()) { const auto time_derivative_var_name = - getMFEMObject("MooseVariableBase", var_name).getTimeDerivativeName(); + getMFEMObject("MooseVariableBase", var_name).getTimeDerivativeName(); getProblemData().time_derivative_map.addTimeDerivativeAssociation(var_name, time_derivative_var_name); addGridFunction(var_type, time_derivative_var_name, parameters); @@ -243,18 +234,18 @@ MFEMProblem::addVariable(const std::string & var_type, } void -MFEMProblem::addGridFunction(const std::string & var_type, - const std::string & var_name, - InputParameters & parameters) +Problem::addGridFunction(const std::string & var_type, + const std::string & var_name, + InputParameters & parameters) { if (var_type == "MFEMVariable" || var_type == "MFEMComplexVariable") { // Add MFEM variable directly. if (var_type == "MFEMComplexVariable") - addObject(var_type, var_name, parameters); + addObject(var_type, var_name, parameters); else - addObject(var_type, var_name, parameters); + addObject(var_type, var_name, parameters); } else { @@ -263,14 +254,13 @@ MFEMProblem::addGridFunction(const std::string & var_type, // Add MFEM variable indirectly ("gridfunction"). InputParameters mfem_variable_params = addMFEMFESpaceFromMOOSEVariable(parameters); - addObject("MFEMVariable", var_name, mfem_variable_params); + addObject("MFEMVariable", var_name, mfem_variable_params); } // Register gridfunction. if (var_type == "MFEMComplexVariable") { - MFEMComplexVariable & mfem_variable = - getMFEMObject("MooseVariableBase", var_name); + ComplexVariable & mfem_variable = getMFEMObject("MooseVariableBase", var_name); getProblemData().cmplx_gridfunctions.Register(var_name, mfem_variable.getComplexGridFunction()); if (mfem_variable.getFESpace().isScalar()) { @@ -289,7 +279,7 @@ MFEMProblem::addGridFunction(const std::string & var_type, } else // must be real, but may have been set up indirectly from a MOOSE variable { - MFEMVariable & mfem_variable = getMFEMObject("MooseVariableBase", var_name); + Variable & mfem_variable = getMFEMObject("MooseVariableBase", var_name); getProblemData().gridfunctions.Register(var_name, mfem_variable.getGridFunction()); if (mfem_variable.getFESpace().isScalar()) getCoefficients().declareScalar( @@ -301,9 +291,9 @@ MFEMProblem::addGridFunction(const std::string & var_type, } void -MFEMProblem::addAuxVariable(const std::string & var_type, - const std::string & var_name, - InputParameters & parameters) +Problem::addAuxVariable(const std::string & var_type, + const std::string & var_name, + InputParameters & parameters) { // We handle MFEM AuxVariables just like MFEM Variables, except // we do not add additional GridFunctions for time derivatives. @@ -311,26 +301,25 @@ MFEMProblem::addAuxVariable(const std::string & var_type, } void -MFEMProblem::addAuxKernel(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addAuxKernel(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - addObject(kernel_name, name, parameters); + addObject(kernel_name, name, parameters); } void -MFEMProblem::addKernel(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addKernel(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - auto kernel = addObject(kernel_name, name, parameters).front(); + auto kernel = addObject(kernel_name, name, parameters).front(); const auto & kernel_object = *kernel; - if (dynamic_cast(&kernel_object)) + if (dynamic_cast(&kernel_object)) { - auto complex_kernel = std::dynamic_pointer_cast(kernel); - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto complex_kernel = std::dynamic_pointer_cast(kernel); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddComplexKernel(std::move(complex_kernel)); else @@ -339,8 +328,7 @@ MFEMProblem::addKernel(const std::string & kernel_name, } else { - auto eqsys = - std::dynamic_pointer_cast(getProblemData().eqn_system); + auto eqsys = std::dynamic_pointer_cast(getProblemData().eqn_system); if (eqsys) eqsys->AddKernel(std::move(kernel)); else @@ -350,56 +338,56 @@ MFEMProblem::addKernel(const std::string & kernel_name, } void -MFEMProblem::addRealComponentToKernel(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addRealComponentToKernel(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - auto parent_ptr = std::dynamic_pointer_cast( - getMFEMObject("Kernel", name).getSharedPtr()); + auto parent_ptr = std::dynamic_pointer_cast( + getMFEMObject("Kernel", name).getSharedPtr()); parameters.set("variable") = parent_ptr->getParam("variable"); - auto kernel_ptr = addObject(kernel_name, name + "_real", parameters).front(); + auto kernel_ptr = addObject(kernel_name, name + "_real", parameters).front(); parent_ptr->setRealKernel(kernel_ptr); } void -MFEMProblem::addImagComponentToKernel(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addImagComponentToKernel(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - auto parent_ptr = std::dynamic_pointer_cast( - getMFEMObject("Kernel", name).getSharedPtr()); + auto parent_ptr = std::dynamic_pointer_cast( + getMFEMObject("Kernel", name).getSharedPtr()); parameters.set("variable") = parent_ptr->getParam("variable"); - auto kernel_ptr = addObject(kernel_name, name + "_imag", parameters).front(); + auto kernel_ptr = addObject(kernel_name, name + "_imag", parameters).front(); parent_ptr->setImagKernel(kernel_ptr); } void -MFEMProblem::addRealComponentToBC(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addRealComponentToBC(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - auto parent_ptr = std::dynamic_pointer_cast( - getMFEMObject("BoundaryCondition", name).getSharedPtr()); + auto parent_ptr = std::dynamic_pointer_cast( + getMFEMObject("BoundaryCondition", name).getSharedPtr()); parameters.set("variable") = parent_ptr->getParam("variable"); parameters.set>("boundary") = parent_ptr->getParam>("boundary"); - auto bc_ptr = std::dynamic_pointer_cast( - addObject(kernel_name, name + "_real", parameters).front()); + auto bc_ptr = std::dynamic_pointer_cast( + addObject(kernel_name, name + "_real", parameters).front()); parent_ptr->setRealBC(bc_ptr); } void -MFEMProblem::addImagComponentToBC(const std::string & kernel_name, - const std::string & name, - InputParameters & parameters) +Problem::addImagComponentToBC(const std::string & kernel_name, + const std::string & name, + InputParameters & parameters) { - auto parent_ptr = std::dynamic_pointer_cast( - getMFEMObject("BoundaryCondition", name).getSharedPtr()); + auto parent_ptr = std::dynamic_pointer_cast( + getMFEMObject("BoundaryCondition", name).getSharedPtr()); parameters.set("variable") = parent_ptr->getParam("variable"); parameters.set>("boundary") = parent_ptr->getParam>("boundary"); - auto bc_ptr = std::dynamic_pointer_cast( - addObject(kernel_name, name + "_imag", parameters).front()); + auto bc_ptr = std::dynamic_pointer_cast( + addObject(kernel_name, name + "_imag", parameters).front()); parent_ptr->setImagBC(bc_ptr); } @@ -478,9 +466,9 @@ const std::vector SCALAR_FUNCS = {"Axisymmetric2D3DSolutionFunction VECTOR_FUNCS = {"ParsedVectorFunction", "LevelSetOlssonVortex"}; void -MFEMProblem::addFunction(const std::string & type, - const std::string & name, - InputParameters & parameters) +Problem::addFunction(const std::string & type, + const std::string & name, + InputParameters & parameters) { ExternalProblem::addFunction(type, name, parameters); auto & func = getFunction(name); @@ -517,14 +505,14 @@ MFEMProblem::addFunction(const std::string & type, } void -MFEMProblem::addPostprocessor(const std::string & type, - const std::string & name, - InputParameters & parameters) +Problem::addPostprocessor(const std::string & type, + const std::string & name, + InputParameters & parameters) { - if (parameters.getSystemAttributeName() == "MFEMExecutedObject") + if (parameters.getSystemAttributeName() == "Moose::MFEM::ExecutedObject") { checkUserObjectNameCollision(name, "Postprocessor"); - addObject(type, name, parameters); + addObject(type, name, parameters); const PostprocessorValue & val = getPostprocessorValueByName(name); getCoefficients().declareScalar( name, [&val](const mfem::Vector &) -> mfem::real_t { return val; }); @@ -534,21 +522,21 @@ MFEMProblem::addPostprocessor(const std::string & type, } void -MFEMProblem::addVectorPostprocessor(const std::string & type, - const std::string & name, - InputParameters & parameters) +Problem::addVectorPostprocessor(const std::string & type, + const std::string & name, + InputParameters & parameters) { - if (parameters.getSystemAttributeName() == "MFEMExecutedObject") + if (parameters.getSystemAttributeName() == "Moose::MFEM::ExecutedObject") { checkUserObjectNameCollision(name, "VectorPostprocessor"); - addObject(type, name, parameters); + addObject(type, name, parameters); } else FEProblemBase::addVectorPostprocessor(type, name, parameters); } InputParameters -MFEMProblem::addMFEMFESpaceFromMOOSEVariable(InputParameters & parameters) +Problem::addMFEMFESpaceFromMOOSEVariable(InputParameters & parameters) { InputParameters fespace_params = _factory.getValidParams("MFEMGenericFESpace"); @@ -594,18 +582,18 @@ MFEMProblem::addMFEMFESpaceFromMOOSEVariable(InputParameters & parameters) fespace_params.set("fec_name") = fespace_name; fespace_params.set("vdim") = mfem_vdim; - if (!hasMFEMObject("MFEMFESpace", fespace_name)) // Create the fespace (implicit). + if (!hasMFEMObject("Moose::MFEM::FESpace", fespace_name)) // Create the fespace (implicit). { addFESpace("MFEMGenericFESpace", fespace_name, fespace_params); } - mfem_variable_params.set("fespace") = fespace_name; + mfem_variable_params.set("fespace") = fespace_name; return mfem_variable_params; } void -MFEMProblem::displaceMesh() +Problem::displaceMesh() { // Displace mesh if (mesh().shouldDisplace()) @@ -616,7 +604,7 @@ MFEMProblem::displaceMesh() } std::optional> -MFEMProblem::getMeshDisplacementGridFunction() +Problem::getMeshDisplacementGridFunction() { // If C++23 transform were available this would be easier auto const displacement_variable = mesh().getMeshDisplacementVariable(); @@ -631,7 +619,7 @@ MFEMProblem::getMeshDisplacementGridFunction() } void -MFEMProblem::rebalanceMesh(mfem::ParMesh & pmesh) +Problem::rebalanceMesh(mfem::ParMesh & pmesh) { if (pmesh.Nonconforming()) { @@ -642,80 +630,80 @@ MFEMProblem::rebalanceMesh(mfem::ParMesh & pmesh) } void -MFEMProblem::updateFESpaces() +Problem::updateFESpaces() { for (const auto & fe_space_pair : _problem_data.fespaces) fe_space_pair.second->Update(); } void -MFEMProblem::updateGridFunctions() +Problem::updateGridFunctions() { for (const auto & gridfunction_pair : _problem_data.gridfunctions) gridfunction_pair.second->Update(); } std::vector -MFEMProblem::getAuxVariableNames() +Problem::getAuxVariableNames() { return systemBaseAuxiliary().getVariableNames(); } -MFEMMesh & -MFEMProblem::mesh() +Mesh & +Problem::mesh() { mooseAssert(ExternalProblem::mesh().type() == "MFEMMesh", - "Please choose the MFEMMesh mesh type for an MFEMProblem\n"); - return static_cast(_mesh); + "Please choose the MFEMMesh mesh type for an Moose::MFEM::Problem\n"); + return static_cast(_mesh); } -const MFEMMesh & -MFEMProblem::mesh() const +const Mesh & +Problem::mesh() const { - return const_cast(this)->mesh(); + return const_cast(this)->mesh(); } void -MFEMProblem::addSubMesh(const std::string & var_type, - const std::string & var_name, - InputParameters & parameters) +Problem::addSubMesh(const std::string & var_type, + const std::string & var_name, + InputParameters & parameters) { - auto & mfem_submesh = *addObject(var_type, var_name, parameters).front(); + auto & mfem_submesh = *addObject(var_type, var_name, parameters).front(); // Register submesh. getProblemData().submeshes.Register(var_name, mfem_submesh.getSubMesh()); } void -MFEMProblem::addTransfer(const std::string & transfer_name, - const std::string & name, - InputParameters & parameters) +Problem::addTransfer(const std::string & transfer_name, + const std::string & name, + InputParameters & parameters) { - if (parameters.getBase() == "MFEMSubMeshTransfer") - addObject(transfer_name, name, parameters); + if (parameters.getBase() == "Moose::MFEM::SubMeshTransfer") + addObject(transfer_name, name, parameters); else FEProblemBase::addTransfer(transfer_name, name, parameters); } void -MFEMProblem::addInitialCondition(const std::string & ic_name, - const std::string & name, - InputParameters & parameters) +Problem::addInitialCondition(const std::string & ic_name, + const std::string & name, + InputParameters & parameters) { - addObject(ic_name, name, parameters); + addObject(ic_name, name, parameters); } void -MFEMProblem::executeMFEMObjects(const ExecFlagType & exec_type) +Problem::executeMFEMObjects(const ExecFlagType & exec_type) { - std::vector objects; + std::vector objects; theWarehouse() .query() - .condition("MFEMExecutedObject") + .condition("Moose::MFEM::ExecutedObject") .condition(exec_type) .condition(0) .queryInto(objects); - std::map suppliers; + std::map suppliers; for (auto * const object : objects) for (const auto & item : object->getSuppliedItems()) { @@ -750,14 +738,14 @@ MFEMProblem::executeMFEMObjects(const ExecFlagType & exec_type) } std::string -MFEMProblem::solverTypeString(const unsigned int libmesh_dbg_var(solver_sys_num)) +Problem::solverTypeString(const unsigned int libmesh_dbg_var(solver_sys_num)) { mooseAssert(solver_sys_num == 0, "No support for multi-system with MFEM right now"); - return MooseUtils::prettyCppType(getProblemData().jacobian_solver.get()); + return getProblemData().jacobian_solver->type(); } bool -MFEMProblem::hasMFEMObject(const std::string & system, const std::string & name) const +Problem::hasMFEMObject(const std::string & system, const std::string & name) const { std::vector objs; theWarehouse() @@ -769,4 +757,5 @@ MFEMProblem::hasMFEMObject(const std::string & system, const std::string & name) return !objs.empty(); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/problem_operators/ComplexEquationSystemProblemOperator.C b/framework/src/mfem/problem_operators/ComplexEquationSystemProblemOperator.C index ed17bd9d1ddd..eb7009b32022 100644 --- a/framework/src/mfem/problem_operators/ComplexEquationSystemProblemOperator.C +++ b/framework/src/mfem/problem_operators/ComplexEquationSystemProblemOperator.C @@ -54,12 +54,15 @@ ComplexEquationSystemProblemOperator::Solve() { BuildEquationSystemOperator(); - if (_problem_data.jacobian_solver->isLOR()) - mooseError("LOR solve is not supported for complex equation systems."); - - _problem_data.nonlinear_solver->SetPreconditioner(_problem_data.jacobian_solver->getSolver()); - _problem_data.nonlinear_solver->SetOperator(*GetEquationSystem()); - _problem_data.nonlinear_solver->Mult(_true_rhs, _true_x); + SolveWithOperator(*GetEquationSystem(), + _true_rhs, + _true_x, + GetEquationSystem()->nonlinear(), + [this]() + { + if (_problem_data.jacobian_solver->isLOR()) + mooseError("LOR solve is not supported for complex equation systems."); + }); GetEquationSystem()->SetTrialVariablesFromTrueVectors(_true_x); } diff --git a/framework/src/mfem/problem_operators/EquationSystemProblemOperator.C b/framework/src/mfem/problem_operators/EquationSystemProblemOperator.C index 4c551552803d..b7fd05548c7f 100644 --- a/framework/src/mfem/problem_operators/EquationSystemProblemOperator.C +++ b/framework/src/mfem/problem_operators/EquationSystemProblemOperator.C @@ -26,15 +26,20 @@ EquationSystemProblemOperator::Solve() { BuildEquationSystemOperator(); - if (_problem_data.jacobian_solver->isLOR() && GetEquationSystem()->GetTestVarNames().size() > 1) - mooseError("LOR solve is only supported for single-variable systems"); - _problem_data.jacobian_solver->updateSolver( - *GetEquationSystem()->_blfs.Get(GetEquationSystem()->GetTestVarNames().at(0)), - GetEquationSystem()->_ess_tdof_lists.at(0)); - - _problem_data.nonlinear_solver->SetPreconditioner(_problem_data.jacobian_solver->getSolver()); - _problem_data.nonlinear_solver->SetOperator(*GetEquationSystem()); - _problem_data.nonlinear_solver->Mult(_true_rhs, _true_x); + SolveWithOperator( + *GetEquationSystem(), + _true_rhs, + _true_x, + GetEquationSystem()->nonlinear(), + [this]() + { + if (_problem_data.jacobian_solver->isLOR() && + GetEquationSystem()->GetTestVarNames().size() > 1) + mooseError("LOR solve is only supported for single-variable systems"); + _problem_data.jacobian_solver->updateSolver( + *GetEquationSystem()->_blfs.Get(GetEquationSystem()->GetTestVarNames().at(0)), + GetEquationSystem()->_ess_tdof_lists.at(0)); + }); GetEquationSystem()->SetTrialVariablesFromTrueVectors(_true_x); } diff --git a/framework/src/mfem/problem_operators/ProblemOperatorBase.C b/framework/src/mfem/problem_operators/ProblemOperatorBase.C index 1a6e2ae7f3c7..1a58dc7c0a68 100644 --- a/framework/src/mfem/problem_operators/ProblemOperatorBase.C +++ b/framework/src/mfem/problem_operators/ProblemOperatorBase.C @@ -11,12 +11,10 @@ #include "ProblemOperatorBase.h" -class MFEMProblem; - namespace Moose::MFEM { -ProblemOperatorBase::ProblemOperatorBase(MFEMProblem & problem) +ProblemOperatorBase::ProblemOperatorBase(Problem & problem) : _problem(problem), _problem_data(problem.getProblemData()) { } @@ -73,6 +71,49 @@ ProblemOperatorBase::SetTrialVariablesFromTrueVectors() trial_var->SetFromTrueVector(); } } + +void +ProblemOperatorBase::SolveWithOperator(mfem::Operator & op, + const mfem::Vector & rhs, + mfem::Vector & x, + const bool nonlinear, + const std::function & prepare_linear_solver) +{ + // `nonlinear` describes the assembled MFEM operator, not whether the user configured a + // nonlinear solver object. A linear problem may still intentionally be solved through the + // nonlinear solver machinery when one is provided. + if (nonlinear || _problem_data.nonlinear_solver) + { + if (nonlinear && !_problem_data.nonlinear_solver) + mooseError("A nonlinear MFEM solve requires a nonlinear solver, but none was provided."); + + auto & solver = *_problem_data.nonlinear_solver; + if (solver.usesExternalLinearSolver()) + { + if (!_problem_data.jacobian_solver) + mooseError("The configured MFEM nonlinear solver requires an external linear solver, but " + "none was provided."); + prepare_linear_solver(); + solver.SetLinearSolver(_problem_data.jacobian_solver->getSolver()); + } + + solver.SetOperator(op); + solver.Mult(rhs, x); + return; + } + + if (!_problem_data.jacobian_solver) + mooseError("A linear MFEM solve requires a linear solver, but none was provided."); + + prepare_linear_solver(); + + mfem::NewtonSolver linear_solver_wrapper(_problem.getComm()); + linear_solver_wrapper.SetSolver(_problem_data.jacobian_solver->getSolver()); + linear_solver_wrapper.SetOperator(op); + linear_solver_wrapper.SetPrintLevel(0); + linear_solver_wrapper.SetMaxIter(1); + linear_solver_wrapper.Mult(rhs, x); +} } #endif diff --git a/framework/src/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.C b/framework/src/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.C index 5d4738fdac8d..2eb179022c96 100644 --- a/framework/src/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.C +++ b/framework/src/mfem/problem_operators/TimeDependentEquationSystemProblemOperator.C @@ -64,15 +64,20 @@ TimeDependentEquationSystemProblemOperator::ImplicitSolve(const mfem::real_t dt, _problem_data.coefficients.setTime(GetTime()); BuildEquationSystemOperator(dt); - if (_problem_data.jacobian_solver->isLOR() && GetEquationSystem()->GetTestVarNames().size() > 1) - mooseError("LOR solve is only supported for single-variable systems"); - _problem_data.jacobian_solver->updateSolver( - *GetEquationSystem()->_blfs.Get(GetEquationSystem()->GetTestVarNames().at(0)), - GetEquationSystem()->_ess_tdof_lists.at(0)); - - _problem_data.nonlinear_solver->SetPreconditioner(_problem_data.jacobian_solver->getSolver()); - _problem_data.nonlinear_solver->SetOperator(*GetEquationSystem()); - _problem_data.nonlinear_solver->Mult(_true_rhs, _true_x); + SolveWithOperator( + *GetEquationSystem(), + _true_rhs, + _true_x, + GetEquationSystem()->nonlinear(), + [this]() + { + if (_problem_data.jacobian_solver->isLOR() && + GetEquationSystem()->GetTestVarNames().size() > 1) + mooseError("LOR solve is only supported for single-variable systems"); + _problem_data.jacobian_solver->updateSolver( + *GetEquationSystem()->_blfs.Get(GetEquationSystem()->GetTestVarNames().at(0)), + GetEquationSystem()->_ess_tdof_lists.at(0)); + }); X_new = _true_x; } diff --git a/framework/src/mfem/solvers/MFEMCGSolver.C b/framework/src/mfem/solvers/MFEMCGSolver.C index 783d0d396e7c..85da799e7bb2 100644 --- a/framework/src/mfem/solvers/MFEMCGSolver.C +++ b/framework/src/mfem/solvers/MFEMCGSolver.C @@ -12,12 +12,14 @@ #include "MFEMCGSolver.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMCGSolver); +registerMooseMFEMObject("MooseApp", CGSolver); +namespace Moose::MFEM +{ InputParameters -MFEMCGSolver::validParams() +CGSolver::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("MFEM native solver for the iterative solution of MFEM equation " "systems using the conjugate gradient method."); @@ -25,18 +27,19 @@ MFEMCGSolver::validParams() params.addParam("l_abs_tol", 1e-50, "Set the absolute tolerance."); params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam("preconditioner", "Optional choice of preconditioner to use."); + params.addParam("preconditioner", + "Optional choice of preconditioner to use."); return params; } -MFEMCGSolver::MFEMCGSolver(const InputParameters & parameters) : MFEMSolverBase(parameters) +CGSolver::CGSolver(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMCGSolver::constructSolver() +CGSolver::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetRelTol(getParam("l_tol")); @@ -48,7 +51,7 @@ MFEMCGSolver::constructSolver() } void -MFEMCGSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +CGSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor && _preconditioner) mooseError("LOR solver cannot take a preconditioner"); @@ -71,4 +74,5 @@ MFEMCGSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMGMRESSolver.C b/framework/src/mfem/solvers/MFEMGMRESSolver.C index cbb7df6cdef9..52a5e3f59e3b 100644 --- a/framework/src/mfem/solvers/MFEMGMRESSolver.C +++ b/framework/src/mfem/solvers/MFEMGMRESSolver.C @@ -12,12 +12,14 @@ #include "MFEMGMRESSolver.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMGMRESSolver); +registerMooseMFEMObject("MooseApp", GMRESSolver); +namespace Moose::MFEM +{ InputParameters -MFEMGMRESSolver::validParams() +GMRESSolver::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("MFEM native solver for the iterative solution of MFEM equation " "systems using the generalized minimal residual method."); @@ -25,18 +27,19 @@ MFEMGMRESSolver::validParams() params.addParam("l_abs_tol", 1e-50, "Set the absolute tolerance."); params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam("preconditioner", "Optional choice of preconditioner to use."); + params.addParam("preconditioner", + "Optional choice of preconditioner to use."); return params; } -MFEMGMRESSolver::MFEMGMRESSolver(const InputParameters & parameters) : MFEMSolverBase(parameters) +GMRESSolver::GMRESSolver(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMGMRESSolver::constructSolver() +GMRESSolver::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetRelTol(getParam("l_tol")); @@ -48,7 +51,7 @@ MFEMGMRESSolver::constructSolver() } void -MFEMGMRESSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +GMRESSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor && _preconditioner) mooseError("LOR solver cannot take a preconditioner"); @@ -71,4 +74,5 @@ MFEMGMRESSolver::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdof } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHypreADS.C b/framework/src/mfem/solvers/MFEMHypreADS.C index b9fa95af5a85..c9f2fb203aa9 100644 --- a/framework/src/mfem/solvers/MFEMHypreADS.C +++ b/framework/src/mfem/solvers/MFEMHypreADS.C @@ -12,30 +12,32 @@ #include "MFEMHypreADS.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMHypreADS); +registerMooseMFEMObject("MooseApp", HypreADS); +namespace Moose::MFEM +{ InputParameters -MFEMHypreADS::validParams() +HypreADS::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre auxiliary-space divergence solver and preconditioner for the " "iterative solution of MFEM equation systems."); - params.addParam("fespace", "H(div) FESpace to use in HypreADS setup."); + params.addParam("fespace", "H(div) FESpace to use in HypreADS setup."); params.addParam("print_level", 2, "Set the solver verbosity."); return params; } -MFEMHypreADS::MFEMHypreADS(const InputParameters & parameters) - : MFEMSolverBase(parameters), - _mfem_fespace(getMFEMProblem().getMFEMObject("MFEMFESpace", - getParam("fespace"))) +HypreADS::HypreADS(const InputParameters & parameters) + : LinearSolverBase(parameters), + _mfem_fespace(getMFEMProblem().getMFEMObject( + "Moose::MFEM::FESpace", getParam("fespace"))) { constructSolver(); } void -MFEMHypreADS::constructSolver() +HypreADS::constructSolver() { auto solver = std::make_unique(_mfem_fespace.getFESpace().get()); solver->SetPrintLevel(getParam("print_level")); @@ -44,7 +46,7 @@ MFEMHypreADS::constructSolver() } void -MFEMHypreADS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HypreADS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor) { @@ -59,4 +61,5 @@ MFEMHypreADS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHypreAMS.C b/framework/src/mfem/solvers/MFEMHypreAMS.C index 1fafb8269e25..9c98e6301ba9 100644 --- a/framework/src/mfem/solvers/MFEMHypreAMS.C +++ b/framework/src/mfem/solvers/MFEMHypreAMS.C @@ -12,15 +12,17 @@ #include "MFEMHypreAMS.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMHypreAMS); +registerMooseMFEMObject("MooseApp", HypreAMS); +namespace Moose::MFEM +{ InputParameters -MFEMHypreAMS::validParams() +HypreAMS::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre auxiliary-space Maxwell solver and preconditioner for the " "iterative solution of MFEM equation systems."); - params.addParam("fespace", "H(curl) FESpace to use in HypreAMS setup."); + params.addParam("fespace", "H(curl) FESpace to use in HypreAMS setup."); params.addParam("singular", false, "Declare that the system is singular; use when solving curl-curl problem " @@ -30,16 +32,16 @@ MFEMHypreAMS::validParams() return params; } -MFEMHypreAMS::MFEMHypreAMS(const InputParameters & parameters) - : MFEMSolverBase(parameters), - _mfem_fespace(getMFEMProblem().getMFEMObject("MFEMFESpace", - getParam("fespace"))) +HypreAMS::HypreAMS(const InputParameters & parameters) + : LinearSolverBase(parameters), + _mfem_fespace(getMFEMProblem().getMFEMObject( + "Moose::MFEM::FESpace", getParam("fespace"))) { constructSolver(); } void -MFEMHypreAMS::constructSolver() +HypreAMS::constructSolver() { auto solver = std::make_unique(_mfem_fespace.getFESpace().get()); if (getParam("singular")) @@ -51,7 +53,7 @@ MFEMHypreAMS::constructSolver() } void -MFEMHypreAMS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HypreAMS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor) { @@ -69,4 +71,5 @@ MFEMHypreAMS::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHypreBoomerAMG.C b/framework/src/mfem/solvers/MFEMHypreBoomerAMG.C index 7259040af254..23f44018df63 100644 --- a/framework/src/mfem/solvers/MFEMHypreBoomerAMG.C +++ b/framework/src/mfem/solvers/MFEMHypreBoomerAMG.C @@ -13,18 +13,20 @@ #include "MFEMFESpace.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMHypreBoomerAMG); +registerMooseMFEMObject("MooseApp", HypreBoomerAMG); +namespace Moose::MFEM +{ InputParameters -MFEMHypreBoomerAMG::validParams() +HypreBoomerAMG::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre BoomerAMG solver and preconditioner for the iterative solution " "of MFEM equation systems."); params.addParam("l_tol", 1e-5, "Set the relative tolerance."); params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam( + params.addParam( "fespace", "H1 FESpace to use in HypreBoomerAMG setup for elasticity problems."); params.addParam( "strength_threshold", 0.25, "HypreBoomerAMG strong threshold. Defaults to 0.25."); @@ -33,20 +35,20 @@ MFEMHypreBoomerAMG::validParams() return params; } -MFEMHypreBoomerAMG::MFEMHypreBoomerAMG(const InputParameters & parameters) - : MFEMSolverBase(parameters), - _mfem_fespace( - isParamSetByUser("fespace") - ? getMFEMProblem() - .getMFEMObject("MFEMFESpace", getParam("fespace")) - .getFESpace() - : nullptr) +HypreBoomerAMG::HypreBoomerAMG(const InputParameters & parameters) + : LinearSolverBase(parameters), + _mfem_fespace(isParamSetByUser("fespace") + ? getMFEMProblem() + .getMFEMObject("Moose::MFEM::FESpace", + getParam("fespace")) + .getFESpace() + : nullptr) { constructSolver(); } void -MFEMHypreBoomerAMG::constructSolver() +HypreBoomerAMG::constructSolver() { auto solver = std::make_unique(); @@ -63,7 +65,7 @@ MFEMHypreBoomerAMG::constructSolver() } void -MFEMHypreBoomerAMG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HypreBoomerAMG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor) { @@ -81,4 +83,5 @@ MFEMHypreBoomerAMG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & t } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHypreFGMRES.C b/framework/src/mfem/solvers/MFEMHypreFGMRES.C index bb308b0c5374..fcd28b04cc5c 100644 --- a/framework/src/mfem/solvers/MFEMHypreFGMRES.C +++ b/framework/src/mfem/solvers/MFEMHypreFGMRES.C @@ -12,30 +12,33 @@ #include "MFEMHypreFGMRES.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMHypreFGMRES); +registerMooseMFEMObject("MooseApp", HypreFGMRES); +namespace Moose::MFEM +{ InputParameters -MFEMHypreFGMRES::validParams() +HypreFGMRES::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre solver for the iterative solution of MFEM equation systems " "using the flexible generalized minimal residual method."); params.addParam("l_tol", 1e-5, "Set the relative tolerance."); params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("kdim", 10, "Set the k-dimension."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam("preconditioner", "Optional choice of preconditioner to use."); + params.addParam("preconditioner", + "Optional choice of preconditioner to use."); return params; } -MFEMHypreFGMRES::MFEMHypreFGMRES(const InputParameters & parameters) : MFEMSolverBase(parameters) +HypreFGMRES::HypreFGMRES(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMHypreFGMRES::constructSolver() +HypreFGMRES::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetTol(getParam("l_tol")); @@ -47,7 +50,7 @@ MFEMHypreFGMRES::constructSolver() } void -MFEMHypreFGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HypreFGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor && _preconditioner) mooseError("LOR solver cannot take a preconditioner"); @@ -71,4 +74,5 @@ MFEMHypreFGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdof } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHypreGMRES.C b/framework/src/mfem/solvers/MFEMHypreGMRES.C index 3358e196bd6b..82ea54c26b7f 100644 --- a/framework/src/mfem/solvers/MFEMHypreGMRES.C +++ b/framework/src/mfem/solvers/MFEMHypreGMRES.C @@ -11,13 +11,16 @@ #include "MFEMHypreGMRES.h" #include "MFEMProblem.h" +#include "MFEMHyprePatch.h" -registerMooseObject("MooseApp", MFEMHypreGMRES); +registerMooseMFEMObject("MooseApp", HypreGMRES); +namespace Moose::MFEM +{ InputParameters -MFEMHypreGMRES::validParams() +HypreGMRES::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre solver for the iterative solution of MFEM equation systems " "using the generalized minimal residual method."); @@ -26,18 +29,19 @@ MFEMHypreGMRES::validParams() params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("kdim", 10, "Set the k-dimension."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam("preconditioner", "Optional choice of preconditioner to use."); + params.addParam("preconditioner", + "Optional choice of preconditioner to use."); return params; } -MFEMHypreGMRES::MFEMHypreGMRES(const InputParameters & parameters) : MFEMSolverBase(parameters) +HypreGMRES::HypreGMRES(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMHypreGMRES::constructSolver() +HypreGMRES::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetTol(getParam("l_tol")); @@ -50,7 +54,7 @@ MFEMHypreGMRES::constructSolver() } void -MFEMHypreGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HypreGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor && _preconditioner) mooseError("LOR solver cannot take a preconditioner"); @@ -75,4 +79,5 @@ MFEMHypreGMRES::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMHyprePCG.C b/framework/src/mfem/solvers/MFEMHyprePCG.C index d4deef96f949..7d5110f37000 100644 --- a/framework/src/mfem/solvers/MFEMHyprePCG.C +++ b/framework/src/mfem/solvers/MFEMHyprePCG.C @@ -11,13 +11,16 @@ #include "MFEMHyprePCG.h" #include "MFEMProblem.h" +#include "MFEMHyprePatch.h" -registerMooseObject("MooseApp", MFEMHyprePCG); +registerMooseMFEMObject("MooseApp", HyprePCG); +namespace Moose::MFEM +{ InputParameters -MFEMHyprePCG::validParams() +HyprePCG::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("Hypre solver for the iterative solution of MFEM equation systems " "using the preconditioned conjugate gradient method."); @@ -25,18 +28,19 @@ MFEMHyprePCG::validParams() params.addParam("l_abs_tol", 1e-50, "Set the absolute tolerance."); params.addParam("l_max_its", 10000, "Set the maximum number of iterations."); params.addParam("print_level", 2, "Set the solver verbosity."); - params.addParam("preconditioner", "Optional choice of preconditioner to use."); + params.addParam("preconditioner", + "Optional choice of preconditioner to use."); return params; } -MFEMHyprePCG::MFEMHyprePCG(const InputParameters & parameters) : MFEMSolverBase(parameters) +HyprePCG::HyprePCG(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMHyprePCG::constructSolver() +HyprePCG::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetTol(getParam("l_tol")); @@ -48,7 +52,7 @@ MFEMHyprePCG::constructSolver() } void -MFEMHyprePCG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +HyprePCG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor && _preconditioner) mooseError("LOR solver cannot take a preconditioner"); @@ -72,4 +76,5 @@ MFEMHyprePCG::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMLinearSolverBase.C b/framework/src/mfem/solvers/MFEMLinearSolverBase.C new file mode 100644 index 000000000000..78fda0d2a95c --- /dev/null +++ b/framework/src/mfem/solvers/MFEMLinearSolverBase.C @@ -0,0 +1,89 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#include "MFEMLinearSolverBase.h" +#include "MFEMHyprePatch.h" +#include "MFEMProblem.h" + +namespace Moose::MFEM +{ +InputParameters +LinearSolverBase::validParams() +{ + InputParameters params = SolverBase::validParams(); + params.addClassDescription( + "Base class for defining linear mfem::Solver derived classes for Moose."); + params.addParam("low_order_refined", false, "Set usage of Low-Order Refined solver."); + return params; +} + +LinearSolverBase::LinearSolverBase(const InputParameters & parameters) + : SolverBase(parameters), _lor{getParam("low_order_refined")}, _preconditioner{nullptr} +{ +} + +template +void +LinearSolverBase::setPreconditioner(T & solver) +{ + if (isParamSetByUser("preconditioner")) + { + if (!_preconditioner) + _preconditioner = &getMFEMProblem().getMFEMObject( + "Moose::MFEM::SolverBase", getParam("preconditioner")); + + auto & mfem_pre = _preconditioner->getSolver(); + if constexpr (std::is_base_of_v) + if (auto * const hypre_pre = dynamic_cast(&mfem_pre)) + solver.SetPreconditioner(*hypre_pre); + else + mooseError("hypre solver preconditioners must themselves be hypre solvers"); + else + solver.SetPreconditioner(mfem_pre); + } +} + +template void LinearSolverBase::setPreconditioner(mfem::CGSolver &); +template void LinearSolverBase::setPreconditioner(mfem::GMRESSolver &); +template void LinearSolverBase::setPreconditioner(mfem::HypreFGMRES &); +template void LinearSolverBase::setPreconditioner(mfem::HypreGMRES &); +template void LinearSolverBase::setPreconditioner(mfem::HyprePCG &); + +template void LinearSolverBase::setPreconditioner(mfem::patched::HypreGMRES &); +template void LinearSolverBase::setPreconditioner(mfem::patched::HyprePCG &); + +void +LinearSolverBase::checkSpectralEquivalence(mfem::ParBilinearForm & blf) const +{ + if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) + { + if (fec->GetBasisType() != mfem::BasisType::GaussLobatto) + mooseError("Low-Order-Refined solver requires the FESpace basis to be GaussLobatto " + "for H1 elements."); + } + else if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) + { + if (fec->GetClosedBasisType() != mfem::BasisType::GaussLobatto || + fec->GetOpenBasisType() != mfem::BasisType::IntegratedGLL) + mooseError("Low-Order-Refined solver requires the FESpace closed-basis to be GaussLobatto " + "and the open-basis to be IntegratedGLL for ND elements."); + } + else if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) + { + if (fec->GetClosedBasisType() != mfem::BasisType::GaussLobatto || + fec->GetOpenBasisType() != mfem::BasisType::IntegratedGLL) + mooseError("Low-Order-Refined solver requires the FESpace closed-basis to be GaussLobatto " + "and the open-basis to be IntegratedGLL for RT elements."); + } +} +} // namespace Moose::MFEM + +#endif diff --git a/framework/src/mfem/solvers/MFEMMUMPS.C b/framework/src/mfem/solvers/MFEMMUMPS.C index df3b8c84add6..7633f2b6fb2c 100644 --- a/framework/src/mfem/solvers/MFEMMUMPS.C +++ b/framework/src/mfem/solvers/MFEMMUMPS.C @@ -12,12 +12,14 @@ #include "MFEMMUMPS.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMMUMPS); +registerMooseMFEMObject("MooseApp", MUMPS); +namespace Moose::MFEM +{ InputParameters -MFEMMUMPS::validParams() +MUMPS::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("MFEM solver for performing direct solves of sparse systems in " "parallel using the MUMPS library."); params.addParam("print_level", 2, "Set the solver verbosity."); @@ -25,13 +27,13 @@ MFEMMUMPS::validParams() return params; } -MFEMMUMPS::MFEMMUMPS(const InputParameters & parameters) : MFEMSolverBase(parameters) +MUMPS::MUMPS(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMMUMPS::constructSolver() +MUMPS::constructSolver() { auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetPrintLevel(getParam("print_level")); @@ -39,10 +41,11 @@ MFEMMUMPS::constructSolver() } void -MFEMMUMPS::updateSolver(mfem::ParBilinearForm &, mfem::Array &) +MUMPS::updateSolver(mfem::ParBilinearForm &, mfem::Array &) { if (_lor) mooseError("MUMPS solver does not support LOR solve"); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMNewtonNonlinearSolver.C b/framework/src/mfem/solvers/MFEMNewtonNonlinearSolver.C new file mode 100644 index 000000000000..d3bebc26ed4f --- /dev/null +++ b/framework/src/mfem/solvers/MFEMNewtonNonlinearSolver.C @@ -0,0 +1,63 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#include "MFEMNewtonNonlinearSolver.h" +#include "MFEMProblem.h" + +registerMooseMFEMObject("MooseApp", NewtonNonlinearSolver); + +namespace Moose::MFEM +{ +InputParameters +NewtonNonlinearSolver::validParams() +{ + InputParameters params = NonlinearSolverBase::validParams(); + params.addClassDescription("MFEM native nonlinear solver using Newton's method."); + return params; +} + +NewtonNonlinearSolver::NewtonNonlinearSolver(const InputParameters & parameters) + : NonlinearSolverBase(parameters) +{ + constructSolver(); +} + +void +NewtonNonlinearSolver::constructSolver() +{ + auto solver = std::make_unique(getMFEMProblem().getComm()); + solver->iterative_mode = getParam("use_initial_guess"); + solver->SetRelTol(getParam("rel_tol")); + solver->SetAbsTol(getParam("abs_tol")); + solver->SetMaxIter(getParam("max_its")); + solver->SetPrintLevel(getParam("print_level")); + _solver = std::move(solver); +} + +void +NewtonNonlinearSolver::SetOperator(const mfem::Operator & op) +{ + static_cast(getSolver()).SetOperator(op); +} + +void +NewtonNonlinearSolver::SetLinearSolver(mfem::Solver & solver) +{ + static_cast(getSolver()).SetSolver(solver); +} + +void +NewtonNonlinearSolver::Mult(const mfem::Vector & rhs, mfem::Vector & x) +{ + getSolver().Mult(rhs, x); +} +} // namespace Moose::MFEM +#endif diff --git a/framework/src/mfem/solvers/MFEMNonlinearSolverBase.C b/framework/src/mfem/solvers/MFEMNonlinearSolverBase.C new file mode 100644 index 000000000000..a0412b154c48 --- /dev/null +++ b/framework/src/mfem/solvers/MFEMNonlinearSolverBase.C @@ -0,0 +1,38 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#include "MFEMNonlinearSolverBase.h" + +namespace Moose::MFEM +{ +InputParameters +NonlinearSolverBase::validParams() +{ + InputParameters params = SolverBase::validParams(); + params.addClassDescription("Base class for defining nonlinear MFEM solver strategies for Moose."); + params.addParam("max_its", 1, "Maximum nonlinear iterations."); + params.addParam("abs_tol", 1.0e-50, "Absolute nonlinear tolerance."); + params.addParam("rel_tol", 1.0e-8, "Relative nonlinear tolerance."); + params.addParam("print_level", 1, "Solver verbosity."); + params.addParam("use_initial_guess", + true, + "Whether to preserve the current MFEM solution vector as the initial " + "guess for the nonlinear solver."); + return params; +} + +NonlinearSolverBase::NonlinearSolverBase(const InputParameters & parameters) + : SolverBase(parameters) +{ +} +} // namespace Moose::MFEM + +#endif diff --git a/framework/src/mfem/solvers/MFEMOperatorJacobiSmoother.C b/framework/src/mfem/solvers/MFEMOperatorJacobiSmoother.C index 073fd70b28bc..1900069a716c 100644 --- a/framework/src/mfem/solvers/MFEMOperatorJacobiSmoother.C +++ b/framework/src/mfem/solvers/MFEMOperatorJacobiSmoother.C @@ -12,31 +12,33 @@ #include "MFEMOperatorJacobiSmoother.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMOperatorJacobiSmoother); +registerMooseMFEMObject("MooseApp", OperatorJacobiSmoother); +namespace Moose::MFEM +{ InputParameters -MFEMOperatorJacobiSmoother::validParams() +OperatorJacobiSmoother::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("MFEM solver for performing Jacobi smoothing of the equation system."); return params; } -MFEMOperatorJacobiSmoother::MFEMOperatorJacobiSmoother(const InputParameters & parameters) - : MFEMSolverBase(parameters) +OperatorJacobiSmoother::OperatorJacobiSmoother(const InputParameters & parameters) + : LinearSolverBase(parameters) { constructSolver(); } void -MFEMOperatorJacobiSmoother::constructSolver() +OperatorJacobiSmoother::constructSolver() { _solver = std::make_unique(); } void -MFEMOperatorJacobiSmoother::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) +OperatorJacobiSmoother::updateSolver(mfem::ParBilinearForm & a, mfem::Array & tdofs) { if (_lor) { @@ -45,4 +47,5 @@ MFEMOperatorJacobiSmoother::updateSolver(mfem::ParBilinearForm & a, mfem::Array< } } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMPetscNonlinearSolver.C b/framework/src/mfem/solvers/MFEMPetscNonlinearSolver.C new file mode 100644 index 000000000000..d7a67c0fc26d --- /dev/null +++ b/framework/src/mfem/solvers/MFEMPetscNonlinearSolver.C @@ -0,0 +1,100 @@ +//* This file is part of the MOOSE framework +//* https://mooseframework.inl.gov +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#ifdef MOOSE_MFEM_ENABLED + +#include "MFEMPetscNonlinearSolver.h" +#include "MooseError.h" +#include "PetscSupport.h" +#include "MFEMProblem.h" + +#ifdef MFEM_USE_PETSC + +registerMooseMFEMObject("MooseApp", PetscNonlinearSolver); + +namespace Moose::MFEM +{ +InputParameters +PetscNonlinearSolver::validParams() +{ + InputParameters params = NonlinearSolverBase::validParams(); + params.addClassDescription("MFEM PETSc-backed nonlinear solver using SNES."); + params.addParam( + "petsc_options", Moose::PetscSupport::getCommonPetscFlags(), "Singleton PETSc options"); + params.addParam("petsc_options_iname", + Moose::PetscSupport::getCommonPetscKeys(), + "Names of PETSc name/value pairs"); + params.addParam>( + "petsc_options_value", + "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\")"); + params.addParam( + "petsc_options_prefix", "", "PETSc options prefix used for this nonlinear solver."); + return params; +} + +PetscNonlinearSolver::PetscNonlinearSolver(const InputParameters & parameters) + : NonlinearSolverBase(parameters) +{ + constructSolver(); +} + +void +PetscNonlinearSolver::constructSolver() +{ + const auto & prefix = getParam("petsc_options_prefix"); + const auto normalized_prefix = !prefix.empty() && prefix.back() != '_' ? prefix + "_" : prefix; + + Moose::PetscSupport::PetscOptions petsc_options; + Moose::PetscSupport::addPetscFlagsToPetscOptions( + getParam("petsc_options"), normalized_prefix, *this, petsc_options); + Moose::PetscSupport::addPetscPairsToPetscOptions( + getParam("petsc_options_iname", "petsc_options_value"), + getMFEMProblem().mesh().dimension(), + normalized_prefix, + *this, + petsc_options); + + for (const auto & flag : petsc_options.flags) + Moose::PetscSupport::setSinglePetscOption(flag.rawName().c_str()); + for (const auto & option : petsc_options.pairs) + Moose::PetscSupport::setSinglePetscOption(option.first, option.second); + + auto solver = + std::make_unique(getMFEMProblem().getComm(), normalized_prefix); + solver->iterative_mode = getParam("use_initial_guess"); + solver->SetRelTol(getParam("rel_tol")); + solver->SetAbsTol(getParam("abs_tol")); + solver->SetMaxIter(getParam("max_its")); + solver->SetPrintLevel(getParam("print_level")); + solver->SetJacobianType(mfem::Operator::PETSC_MATAIJ); + _solver = std::move(solver); +} + +void +PetscNonlinearSolver::SetOperator(const mfem::Operator & op) +{ + static_cast(getSolver()).SetOperator(op); +} + +void +PetscNonlinearSolver::SetLinearSolver(mfem::Solver &) +{ + mooseError("Moose::MFEM::PetscNonlinearSolver does not support an external MFEM linear solver. " + "Configure PETSc KSP/PC behavior through PETSc options instead."); +} + +void +PetscNonlinearSolver::Mult(const mfem::Vector & rhs, mfem::Vector & x) +{ + getSolver().Mult(rhs, x); +} +#endif + +} // namespace Moose::MFEM +#endif diff --git a/framework/src/mfem/solvers/MFEMSolverBase.C b/framework/src/mfem/solvers/MFEMSolverBase.C index dfb1ed6c7009..93c5a0e21b62 100644 --- a/framework/src/mfem/solvers/MFEMSolverBase.C +++ b/framework/src/mfem/solvers/MFEMSolverBase.C @@ -12,80 +12,19 @@ #include "MFEMSolverBase.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMSolverBase::validParams() +SolverBase::validParams() { - InputParameters params = MFEMObject::validParams(); + InputParameters params = Object::validParams(); params.addClassDescription("Base class for defining mfem::Solver derived classes for Moose."); - params.registerBase("MFEMSolverBase"); - params.registerSystemAttributeName("MFEMSolverBase"); - params.addParam("low_order_refined", false, "Set usage of Low-Order Refined solver."); - + params.registerBase("Moose::MFEM::SolverBase"); + params.registerSystemAttributeName("Moose::MFEM::SolverBase"); return params; } -MFEMSolverBase::MFEMSolverBase(const InputParameters & parameters) - : MFEMObject(parameters), - _lor{getParam("low_order_refined")}, - _solver{nullptr}, - _preconditioner{nullptr} -{ -} - -template -void -MFEMSolverBase::setPreconditioner(T & solver) -{ - if (isParamSetByUser("preconditioner")) - { - if (!_preconditioner) - _preconditioner = - &const_cast(getMFEMProblem().getMFEMObject( - "MFEMSolverBase", getParam("preconditioner"))); - - auto & mfem_pre = _preconditioner->getSolver(); - if constexpr (std::is_base_of_v) - if (auto * const hypre_pre = dynamic_cast(&mfem_pre)) - solver.SetPreconditioner(*hypre_pre); - else - mooseError("hypre solver preconditioners must themselves be hypre solvers"); - else - solver.SetPreconditioner(mfem_pre); - } -} - -template void MFEMSolverBase::setPreconditioner(mfem::CGSolver &); -template void MFEMSolverBase::setPreconditioner(mfem::GMRESSolver &); -template void MFEMSolverBase::setPreconditioner(mfem::HypreFGMRES &); -template void MFEMSolverBase::setPreconditioner(mfem::HypreGMRES &); -template void MFEMSolverBase::setPreconditioner(mfem::HyprePCG &); - -template void MFEMSolverBase::setPreconditioner(mfem::patched::HypreGMRES &); -template void MFEMSolverBase::setPreconditioner(mfem::patched::HyprePCG &); - -void -MFEMSolverBase::checkSpectralEquivalence(mfem::ParBilinearForm & blf) const -{ - if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) - { - if (fec->GetBasisType() != mfem::BasisType::GaussLobatto) - mooseError("Low-Order-Refined solver requires the FESpace basis to be GaussLobatto " - "for H1 elements."); - } - else if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) - { - if (fec->GetClosedBasisType() != mfem::BasisType::GaussLobatto || - fec->GetOpenBasisType() != mfem::BasisType::IntegratedGLL) - mooseError("Low-Order-Refined solver requires the FESpace closed-basis to be GaussLobatto " - "and the open-basis to be IntegratedGLL for ND elements."); - } - else if (auto fec = dynamic_cast(blf.FESpace()->FEColl())) - { - if (fec->GetClosedBasisType() != mfem::BasisType::GaussLobatto || - fec->GetOpenBasisType() != mfem::BasisType::IntegratedGLL) - mooseError("Low-Order-Refined solver requires the FESpace closed-basis to be GaussLobatto " - "and the open-basis to be IntegratedGLL for RT elements."); - } -} +SolverBase::SolverBase(const InputParameters & parameters) : Object(parameters), _solver{nullptr} {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/solvers/MFEMSuperLU.C b/framework/src/mfem/solvers/MFEMSuperLU.C index a07414cf431f..39afceea75ca 100644 --- a/framework/src/mfem/solvers/MFEMSuperLU.C +++ b/framework/src/mfem/solvers/MFEMSuperLU.C @@ -12,36 +12,39 @@ #include "MFEMSuperLU.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMSuperLU); +registerMooseMFEMObject("MooseApp", SuperLU); +namespace Moose::MFEM +{ InputParameters -MFEMSuperLU::validParams() +SuperLU::validParams() { - InputParameters params = MFEMSolverBase::validParams(); + InputParameters params = LinearSolverBase::validParams(); params.addClassDescription("MFEM solver for performing direct solves of sparse systems in " "parallel using the SuperLU_DIST library."); return params; } -MFEMSuperLU::MFEMSuperLU(const InputParameters & parameters) : MFEMSolverBase(parameters) +SuperLU::SuperLU(const InputParameters & parameters) : LinearSolverBase(parameters) { constructSolver(); } void -MFEMSuperLU::constructSolver() +SuperLU::constructSolver() { - auto solver = std::make_unique(getMFEMProblem().getComm()); + auto solver = std::make_unique(getMFEMProblem().getComm()); solver->SetDeviceOffload(mfem::Device::IsAvailable()); _solver = std::move(solver); } void -MFEMSuperLU::updateSolver(mfem::ParBilinearForm &, mfem::Array &) +SuperLU::updateSolver(mfem::ParBilinearForm &, mfem::Array &) { if (_lor) mooseError("SuperLU solver does not support LOR solve"); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/submeshes/MFEMBoundarySubMesh.C b/framework/src/mfem/submeshes/MFEMBoundarySubMesh.C index 9b4f6861dbe6..476d05cb660c 100644 --- a/framework/src/mfem/submeshes/MFEMBoundarySubMesh.C +++ b/framework/src/mfem/submeshes/MFEMBoundarySubMesh.C @@ -12,28 +12,30 @@ #include "MFEMBoundarySubMesh.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMBoundarySubMesh); +registerMooseMFEMObject("MooseApp", BoundarySubMesh); +namespace Moose::MFEM +{ InputParameters -MFEMBoundarySubMesh::validParams() +BoundarySubMesh::validParams() { - InputParameters params = MFEMSubMesh::validParams(); - params += MFEMBoundaryRestrictable::validParams(); + InputParameters params = SubMesh::validParams(); + params += BoundaryRestrictable::validParams(); - params.addClassDescription("Class to construct an MFEMSubMesh formed from the subspace of the " - "parent mesh restricted to the set of user-specified boundaries."); + params.addClassDescription( + "Class to construct an Moose::MFEM::SubMesh formed from the subspace of the " + "parent mesh restricted to the set of user-specified boundaries."); params.addParam("submesh_boundary", "Name to assign submesh boundary."); return params; } -MFEMBoundarySubMesh::MFEMBoundarySubMesh(const InputParameters & parameters) - : MFEMSubMesh(parameters), - MFEMBoundaryRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()) +BoundarySubMesh::BoundarySubMesh(const InputParameters & parameters) + : SubMesh(parameters), BoundaryRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()) { } void -MFEMBoundarySubMesh::buildSubMesh() +BoundarySubMesh::buildSubMesh() { _submesh = std::make_shared( mfem::ParSubMesh::CreateFromBoundary(getMesh(), getBoundaryAttributes())); @@ -45,4 +47,5 @@ MFEMBoundarySubMesh::buildSubMesh() mfem::Array({getMesh().bdr_attributes.Max() + 1})); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/submeshes/MFEMCutTransitionSubMesh.C b/framework/src/mfem/submeshes/MFEMCutTransitionSubMesh.C index 46b98fc43925..bc1de41ba5f9 100644 --- a/framework/src/mfem/submeshes/MFEMCutTransitionSubMesh.C +++ b/framework/src/mfem/submeshes/MFEMCutTransitionSubMesh.C @@ -12,15 +12,18 @@ #include "MFEMCutTransitionSubMesh.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMCutTransitionSubMesh); +registerMooseMFEMObject("MooseApp", CutTransitionSubMesh); +namespace Moose::MFEM +{ InputParameters -MFEMCutTransitionSubMesh::validParams() +CutTransitionSubMesh::validParams() { - InputParameters params = MFEMSubMesh::validParams(); - params += MFEMBlockRestrictable::validParams(); + InputParameters params = SubMesh::validParams(); + params += BlockRestrictable::validParams(); params.addClassDescription( - "Class to construct an MFEMSubMesh formed from the set of elements that have least one " + "Class to construct an Moose::MFEM::SubMesh formed from the set of elements that have least " + "one " "vertex on the specified cut plane, that lie on one side of the plane, " "and that are restricted to the set of user-specified subdomains."); params.addRequiredParam("cut_boundary", @@ -39,9 +42,9 @@ MFEMCutTransitionSubMesh::validParams() return params; } -MFEMCutTransitionSubMesh::MFEMCutTransitionSubMesh(const InputParameters & parameters) - : MFEMSubMesh(parameters), - MFEMBlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), +CutTransitionSubMesh::CutTransitionSubMesh(const InputParameters & parameters) + : SubMesh(parameters), + BlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()), _cut_boundary(getParam("cut_boundary")), _cut_submesh(std::make_shared(mfem::ParSubMesh::CreateFromBoundary( getMesh(), getMesh().bdr_attribute_sets.GetAttributeSet(_cut_boundary)))), @@ -53,7 +56,7 @@ MFEMCutTransitionSubMesh::MFEMCutTransitionSubMesh(const InputParameters & param } void -MFEMCutTransitionSubMesh::buildSubMesh() +CutTransitionSubMesh::buildSubMesh() { labelMesh(const_cast(getMesh())); _submesh = std::make_shared(mfem::ParSubMesh::CreateFromDomain( @@ -67,7 +70,7 @@ MFEMCutTransitionSubMesh::buildSubMesh() } void -MFEMCutTransitionSubMesh::labelMesh(mfem::ParMesh & parent_mesh) +CutTransitionSubMesh::labelMesh(mfem::ParMesh & parent_mesh) { int mpi_comm_rank = getMFEMProblem().getProblemData().myid; int mpi_comm_size = getMFEMProblem().getProblemData().num_procs; @@ -161,10 +164,10 @@ MFEMCutTransitionSubMesh::labelMesh(mfem::ParMesh & parent_mesh) } mfem::Vector -MFEMCutTransitionSubMesh::findFaceNormal(const mfem::ParMesh & mesh, const int & face) +CutTransitionSubMesh::findFaceNormal(const mfem::ParMesh & mesh, const int & face) { if (mesh.SpaceDimension() != 3) - mooseError("MFEMCutTransitionSubMesh only works in 3-dimensional meshes!"); + mooseError("Moose::MFEM::CutTransitionSubMesh only works in 3-dimensional meshes!"); mfem::Vector normal; mfem::Array face_verts; std::vector v; @@ -188,9 +191,9 @@ MFEMCutTransitionSubMesh::findFaceNormal(const mfem::ParMesh & mesh, const int & } bool -MFEMCutTransitionSubMesh::isPositiveSideOfCut(const int & el, - const int & el_vertex_on_cut, - mfem::ParMesh & parent_mesh) +CutTransitionSubMesh::isPositiveSideOfCut(const int & el, + const int & el_vertex_on_cut, + mfem::ParMesh & parent_mesh) { const int sdim = parent_mesh.SpaceDimension(); mfem::Vector el_center(3); @@ -203,8 +206,7 @@ MFEMCutTransitionSubMesh::isPositiveSideOfCut(const int & el, } void -MFEMCutTransitionSubMesh::setAttributes(mfem::ParMesh & parent_mesh, - mfem::Array & transition_els) +CutTransitionSubMesh::setAttributes(mfem::ParMesh & parent_mesh, mfem::Array & transition_els) { // Generate a set of local new attributes for transition region elements const int old_max_attr = parent_mesh.attributes.Max(); @@ -251,9 +253,9 @@ MFEMCutTransitionSubMesh::setAttributes(mfem::ParMesh & parent_mesh, } bool -MFEMCutTransitionSubMesh::isInDomain(const int & element, - const mfem::Array & subdomains, - const mfem::ParMesh & mesh) +CutTransitionSubMesh::isInDomain(const int & element, + const mfem::Array & subdomains, + const mfem::ParMesh & mesh) { // element<0 for ghost elements if (element < 0) @@ -265,4 +267,5 @@ MFEMCutTransitionSubMesh::isInDomain(const int & element, return false; } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/submeshes/MFEMDomainSubMesh.C b/framework/src/mfem/submeshes/MFEMDomainSubMesh.C index 8b1fb2612286..5f9d601d5403 100644 --- a/framework/src/mfem/submeshes/MFEMDomainSubMesh.C +++ b/framework/src/mfem/submeshes/MFEMDomainSubMesh.C @@ -12,27 +12,29 @@ #include "MFEMDomainSubMesh.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMDomainSubMesh); +registerMooseMFEMObject("MooseApp", DomainSubMesh); +namespace Moose::MFEM +{ InputParameters -MFEMDomainSubMesh::validParams() +DomainSubMesh::validParams() { - InputParameters params = MFEMSubMesh::validParams(); - params += MFEMBlockRestrictable::validParams(); - params.addClassDescription("Class to construct an MFEMSubMesh formed from the subspace of the " - "parent mesh restricted to the set of user-specified subdomains."); + InputParameters params = SubMesh::validParams(); + params += BlockRestrictable::validParams(); + params.addClassDescription( + "Class to construct an Moose::MFEM::SubMesh formed from the subspace of the " + "parent mesh restricted to the set of user-specified subdomains."); params.addParam("submesh_boundary", "Name to assign submesh boundary."); return params; } -MFEMDomainSubMesh::MFEMDomainSubMesh(const InputParameters & parameters) - : MFEMSubMesh(parameters), - MFEMBlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()) +DomainSubMesh::DomainSubMesh(const InputParameters & parameters) + : SubMesh(parameters), BlockRestrictable(parameters, getMFEMProblem().mesh().getMFEMParMesh()) { } void -MFEMDomainSubMesh::buildSubMesh() +DomainSubMesh::buildSubMesh() { _submesh = std::make_shared( mfem::ParSubMesh::CreateFromDomain(getMesh(), getSubdomainAttributes())); @@ -45,4 +47,5 @@ MFEMDomainSubMesh::buildSubMesh() mfem::Array({getMesh().bdr_attributes.Max() + 1})); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/submeshes/MFEMSubMesh.C b/framework/src/mfem/submeshes/MFEMSubMesh.C index f050f2c9bb36..5c5485a4745f 100644 --- a/framework/src/mfem/submeshes/MFEMSubMesh.C +++ b/framework/src/mfem/submeshes/MFEMSubMesh.C @@ -12,15 +12,18 @@ #include "MFEMSubMesh.h" #include "MFEMProblem.h" +namespace Moose::MFEM +{ InputParameters -MFEMSubMesh::validParams() +SubMesh::validParams() { - InputParameters params = MFEMObject::validParams(); - params.registerBase("MFEMSubMesh"); - params.registerSystemAttributeName("MFEMSubMesh"); + InputParameters params = Object::validParams(); + params.registerBase("Moose::MFEM::SubMesh"); + params.registerSystemAttributeName("Moose::MFEM::SubMesh"); return params; } -MFEMSubMesh::MFEMSubMesh(const InputParameters & parameters) : MFEMObject(parameters) {} +SubMesh::SubMesh(const InputParameters & parameters) : Object(parameters) {} +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/transfers/MFEMSubMeshTransfer.C b/framework/src/mfem/transfers/MFEMSubMeshTransfer.C index ba91140c8b1b..713884f012f4 100644 --- a/framework/src/mfem/transfers/MFEMSubMeshTransfer.C +++ b/framework/src/mfem/transfers/MFEMSubMeshTransfer.C @@ -12,17 +12,20 @@ #include "MFEMSubMeshTransfer.h" #include "MFEMProblem.h" -registerMooseObject("MooseApp", MFEMSubMeshTransfer); +registerMooseMFEMObject("MooseApp", SubMeshTransfer); +namespace Moose::MFEM +{ InputParameters -MFEMSubMeshTransfer::validParams() +SubMeshTransfer::validParams() { - InputParameters params = MFEMExecutedObject::validParams(); - params.registerBase("MFEMSubMeshTransfer"); - params.addClassDescription("Class to transfer MFEM variable data to or from a restricted copy of " - "the variable defined on " - " a subspace of an MFEMMesh, represented as an MFEMSubMesh."); - MFEMExecutedObject::addRequiredDependencyParam( + InputParameters params = ExecutedObject::validParams(); + params.registerBase("Moose::MFEM::SubMeshTransfer"); + params.addClassDescription( + "Class to transfer MFEM variable data to or from a restricted copy of " + "the variable defined on " + " a subspace of an Moose::MFEM::Mesh, represented as an Moose::MFEM::SubMesh."); + ExecutedObject::addRequiredDependencyParam( params, "from_variable", "MFEM variable to transfer data from. Can be defined on either the parent mesh or a " @@ -33,8 +36,8 @@ MFEMSubMeshTransfer::validParams() return params; } -MFEMSubMeshTransfer::MFEMSubMeshTransfer(const InputParameters & parameters) - : MFEMExecutedObject(parameters), +SubMeshTransfer::SubMeshTransfer(const InputParameters & parameters) + : ExecutedObject(parameters), _source_var_name(getParam("from_variable")), _source_var(*getMFEMProblem().getGridFunction(_source_var_name)), _result_var_name(getParam("to_variable")), @@ -43,15 +46,16 @@ MFEMSubMeshTransfer::MFEMSubMeshTransfer(const InputParameters & parameters) } std::optional -MFEMSubMeshTransfer::suppliedVariableName() const +SubMeshTransfer::suppliedVariableName() const { return _result_var_name; } void -MFEMSubMeshTransfer::execute() +SubMeshTransfer::execute() { mfem::ParSubMesh::Transfer(_source_var, _result_var); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/transfers/MultiAppMFEMCopyTransfer.C b/framework/src/mfem/transfers/MultiAppMFEMCopyTransfer.C index 23d578f4317d..0896c9ef39a4 100644 --- a/framework/src/mfem/transfers/MultiAppMFEMCopyTransfer.C +++ b/framework/src/mfem/transfers/MultiAppMFEMCopyTransfer.C @@ -37,37 +37,39 @@ MultiAppMFEMCopyTransfer::MultiAppMFEMCopyTransfer(InputParameters const & param { auto bad_problem = [this]() { - mooseError(type(), - " only works with MFEMProblem based applications. Check that all your inputs " - "involved in this transfer are MFEMProblem based"); + mooseError( + type(), + " only works with Moose::MFEM::Problem based applications. Check that all your inputs " + "involved in this transfer are Moose::MFEM::Problem based"); }; if (hasToMultiApp()) { - if (!dynamic_cast(&getToMultiApp()->problemBase())) + if (!dynamic_cast(&getToMultiApp()->problemBase())) bad_problem(); for (const auto i : make_range(getToMultiApp()->numGlobalApps())) if (getToMultiApp()->hasLocalApp(i) && - !dynamic_cast(&getToMultiApp()->appProblemBase(i))) + !dynamic_cast(&getToMultiApp()->appProblemBase(i))) bad_problem(); } if (hasFromMultiApp()) { - if (!dynamic_cast(&getFromMultiApp()->problemBase())) + if (!dynamic_cast(&getFromMultiApp()->problemBase())) bad_problem(); for (const auto i : make_range(getFromMultiApp()->numGlobalApps())) if (getFromMultiApp()->hasLocalApp(i) && - !dynamic_cast(&getFromMultiApp()->appProblemBase(i))) + !dynamic_cast(&getFromMultiApp()->appProblemBase(i))) bad_problem(); } } void -MultiAppMFEMCopyTransfer::transfer(MFEMProblem & to_problem, MFEMProblem & from_problem) +MultiAppMFEMCopyTransfer::transfer(Moose::MFEM::Problem & to_problem, + Moose::MFEM::Problem & from_problem) { if (numToVar() != numFromVar()) mooseError("Number of variables transferred must be same in both systems."); - auto getGF = [&](MFEMProblem & problem, const std::string & name) -> mfem::Vector & + auto getGF = [&](Moose::MFEM::Problem & problem, const std::string & name) -> mfem::Vector & { if (problem.getProblemData().gridfunctions.Has(name)) return *problem.getGridFunction(name); @@ -98,8 +100,8 @@ MultiAppMFEMCopyTransfer::execute() { if (getToMultiApp()->hasLocalApp(i)) { - transfer(static_cast(getToMultiApp()->appProblemBase(i)), - static_cast(getToMultiApp()->problemBase())); + transfer(static_cast(getToMultiApp()->appProblemBase(i)), + static_cast(getToMultiApp()->problemBase())); } } } @@ -109,8 +111,8 @@ MultiAppMFEMCopyTransfer::execute() { if (getFromMultiApp()->hasLocalApp(i)) { - transfer(static_cast(getFromMultiApp()->problemBase()), - static_cast(getFromMultiApp()->appProblemBase(i))); + transfer(static_cast(getFromMultiApp()->problemBase()), + static_cast(getFromMultiApp()->appProblemBase(i))); } } } @@ -121,8 +123,8 @@ MultiAppMFEMCopyTransfer::execute() { if (getFromMultiApp()->hasLocalApp(i) && getToMultiApp()->hasLocalApp(i)) { - transfer(static_cast(getToMultiApp()->appProblemBase(i)), - static_cast(getFromMultiApp()->appProblemBase(i))); + transfer(static_cast(getToMultiApp()->appProblemBase(i)), + static_cast(getFromMultiApp()->appProblemBase(i))); ++transfers_done; } } diff --git a/framework/src/mfem/variables/MFEMComplexVariable.C b/framework/src/mfem/variables/MFEMComplexVariable.C index 4fbbc0a0fbc8..1033b5a5a6fe 100644 --- a/framework/src/mfem/variables/MFEMComplexVariable.C +++ b/framework/src/mfem/variables/MFEMComplexVariable.C @@ -5,14 +5,16 @@ #include "MFEMProblem.h" #include "MFEMFESpace.h" -registerMooseObject("MooseApp", MFEMComplexVariable); +registerMooseMFEMObject("MooseApp", ComplexVariable); +namespace Moose::MFEM +{ InputParameters -MFEMComplexVariable::validParams() +ComplexVariable::validParams() { - InputParameters params = MFEMObject::validParams(); - params.addRequiredParam("fespace", - "The finite element space this variable is defined on."); + InputParameters params = Object::validParams(); + params.addRequiredParam( + "fespace", "The finite element space this variable is defined on."); params += MooseVariableBase::validParams(); params.addClassDescription( "Class for adding complex MFEM variables to the problem (`mfem::ParComplexGridFunction`s)."); @@ -22,19 +24,20 @@ MFEMComplexVariable::validParams() return params; } -MFEMComplexVariable::MFEMComplexVariable(const InputParameters & parameters) - : MFEMObject(parameters), - _fespace(getMFEMProblem().getMFEMObject("MFEMFESpace", - getParam("fespace"))), +ComplexVariable::ComplexVariable(const InputParameters & parameters) + : Object(parameters), + _fespace(getMFEMProblem().getMFEMObject( + "Moose::MFEM::FESpace", getParam("fespace"))), _cmplx_gridfunction(buildComplexGridFunction()) { *_cmplx_gridfunction = 0.0; } const std::shared_ptr -MFEMComplexVariable::buildComplexGridFunction() +ComplexVariable::buildComplexGridFunction() { return std::make_shared(_fespace.getFESpace().get()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/variables/MFEMVariable.C b/framework/src/mfem/variables/MFEMVariable.C index 4ae3a5c49308..67cca9b9e900 100644 --- a/framework/src/mfem/variables/MFEMVariable.C +++ b/framework/src/mfem/variables/MFEMVariable.C @@ -13,15 +13,17 @@ #include "MFEMProblem.h" #include "MooseVariableBase.h" -registerMooseObject("MooseApp", MFEMVariable); +registerMooseMFEMObject("MooseApp", Variable); +namespace Moose::MFEM +{ InputParameters -MFEMVariable::validParams() +Variable::validParams() { - InputParameters params = MFEMObject::validParams(); + InputParameters params = Object::validParams(); // Create user-facing 'boundary' input for restricting inheriting object to boundaries. - params.addRequiredParam("fespace", - "The finite element space this variable is defined on."); + params.addRequiredParam( + "fespace", "The finite element space this variable is defined on."); // Require moose variable parameters (not used!) params += MooseVariableBase::validParams(); params.addClassDescription( @@ -34,10 +36,10 @@ MFEMVariable::validParams() return params; } -MFEMVariable::MFEMVariable(const InputParameters & parameters) - : MFEMObject(parameters), - _fespace(getMFEMProblem().getMFEMObject("MFEMFESpace", - getParam("fespace"))), +Variable::Variable(const InputParameters & parameters) + : Object(parameters), + _fespace(getMFEMProblem().getMFEMObject( + "Moose::MFEM::FESpace", getParam("fespace"))), _gridfunction(buildGridFunction()), _time_derivative_name( isParamValid("time_derivative") @@ -50,9 +52,10 @@ MFEMVariable::MFEMVariable(const InputParameters & parameters) } const std::shared_ptr -MFEMVariable::buildGridFunction() +Variable::buildGridFunction() { return std::make_shared(_fespace.getFESpace().get()); } +} // namespace Moose::MFEM #endif diff --git a/framework/src/mfem/vectorpostprocessors/MFEMLineValueSampler.C b/framework/src/mfem/vectorpostprocessors/MFEMLineValueSampler.C index d758e1c67e66..0fa34622ec1e 100644 --- a/framework/src/mfem/vectorpostprocessors/MFEMLineValueSampler.C +++ b/framework/src/mfem/vectorpostprocessors/MFEMLineValueSampler.C @@ -17,7 +17,7 @@ #include -registerMooseObject("MooseApp", MFEMLineValueSampler); +registerMooseMFEMObject("MooseApp", LineValueSampler); namespace { @@ -26,8 +26,8 @@ generateLinePoints(const Point & start_point, const Point & end_point, unsigned { if (num_points < 2) { - mooseError("In MFEMLineValueSampler: line must have at least 2 points," - "for single points use MFEMPointValueSampler."); + mooseError("In Moose::MFEM::LineValueSampler: line must have at least 2 points," + "for single points use Moose::MFEM::PointValueSampler."); } // initialize and populate vector with linearly-spaced points along line @@ -44,10 +44,12 @@ generateLinePoints(const Point & start_point, const Point & end_point, unsigned } } +namespace Moose::MFEM +{ InputParameters -MFEMLineValueSampler::validParams() +LineValueSampler::validParams() { - InputParameters params = MFEMValueSamplerBase::validParams(); + InputParameters params = ValueSamplerBase::validParams(); params.addClassDescription("Sample an MFEM variable along a specified line."); @@ -61,14 +63,15 @@ MFEMLineValueSampler::validParams() return params; } -MFEMLineValueSampler::MFEMLineValueSampler(const InputParameters & parameters) - : MFEMValueSamplerBase(parameters, - // can't call getParam as that requires initialized base class - // so calling parameters.get directly - generateLinePoints(parameters.get("start_point"), - parameters.get("end_point"), - parameters.get("num_points"))) +LineValueSampler::LineValueSampler(const InputParameters & parameters) + : ValueSamplerBase(parameters, + // can't call getParam as that requires initialized base class + // so calling parameters.get directly + generateLinePoints(parameters.get("start_point"), + parameters.get("end_point"), + parameters.get("num_points"))) { } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/vectorpostprocessors/MFEMPointValueSampler.C b/framework/src/mfem/vectorpostprocessors/MFEMPointValueSampler.C index 1e66b3cf4dde..a4e2c991be09 100644 --- a/framework/src/mfem/vectorpostprocessors/MFEMPointValueSampler.C +++ b/framework/src/mfem/vectorpostprocessors/MFEMPointValueSampler.C @@ -11,12 +11,14 @@ #include "MFEMPointValueSampler.h" -registerMooseObject("MooseApp", MFEMPointValueSampler); +registerMooseMFEMObject("MooseApp", PointValueSampler); +namespace Moose::MFEM +{ InputParameters -MFEMPointValueSampler::validParams() +PointValueSampler::validParams() { - InputParameters params = MFEMValueSamplerBase::validParams(); + InputParameters params = ValueSamplerBase::validParams(); params.addClassDescription("Sample an MFEM variable at specific points."); params.addRequiredParam>( @@ -25,9 +27,10 @@ MFEMPointValueSampler::validParams() return params; } -MFEMPointValueSampler::MFEMPointValueSampler(const InputParameters & parameters) - : MFEMValueSamplerBase(parameters, parameters.get>("points")) +PointValueSampler::PointValueSampler(const InputParameters & parameters) + : ValueSamplerBase(parameters, parameters.get>("points")) { } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/vectorpostprocessors/MFEMValueSamplerBase.C b/framework/src/mfem/vectorpostprocessors/MFEMValueSamplerBase.C index 814949fb1285..07bfbf0aef40 100644 --- a/framework/src/mfem/vectorpostprocessors/MFEMValueSamplerBase.C +++ b/framework/src/mfem/vectorpostprocessors/MFEMValueSamplerBase.C @@ -73,12 +73,14 @@ MFEMVectorToPostprocessorPoints( } } +namespace Moose::MFEM +{ InputParameters -MFEMValueSamplerBase::validParams() +ValueSamplerBase::validParams() { - InputParameters params = MFEMVectorPostprocessor::validParams(); + InputParameters params = VectorPostprocessor::validParams(); - MFEMExecutedObject::addRequiredDependencyParam( + ExecutedObject::addRequiredDependencyParam( params, "variable", "The names of the variables that this VectorPostprocessor operates on"); MooseEnum ordering("NODES VDIM", "VDIM", false); params.addParam( @@ -87,9 +89,9 @@ MFEMValueSamplerBase::validParams() return params; } -MFEMValueSamplerBase::MFEMValueSamplerBase(const InputParameters & parameters, - const std::vector & points) - : MFEMVectorPostprocessor(parameters), +ValueSamplerBase::ValueSamplerBase(const InputParameters & parameters, + const std::vector & points) + : VectorPostprocessor(parameters), _var_name(getParam("variable")), _var(*getMFEMProblem().getGridFunction(_var_name)), _mesh(const_cast(getMFEMProblem().getMFEMVariableMesh(_var_name))), @@ -100,7 +102,7 @@ MFEMValueSamplerBase::MFEMValueSamplerBase(const InputParameters & parameters, _interp_vals(points.size()) { if (getMFEMProblem().mesh().shouldDisplace()) - mooseError("MFEMValueSamplerBase does not yet support problems with displacement."); + mooseError("Moose::MFEM::ValueSamplerBase does not yet support problems with displacement."); // set up points vector _mesh.EnsureNodes(); @@ -113,7 +115,7 @@ MFEMValueSamplerBase::MFEMValueSamplerBase(const InputParameters & parameters, { if (point_codes[i] > 1) { - mooseError("MFEMValueSamplerBase could not find point at ", points[i], "."); + mooseError("Moose::MFEM::ValueSamplerBase could not find point at ", points[i], "."); } } @@ -139,13 +141,13 @@ MFEMValueSamplerBase::MFEMValueSamplerBase(const InputParameters & parameters, } void -MFEMValueSamplerBase::execute() +ValueSamplerBase::execute() { _finder.Interpolate(_var, _interp_vals); } void -MFEMValueSamplerBase::finalize() +ValueSamplerBase::finalize() { _interp_vals.HostReadWrite(); _points.HostReadWrite(); @@ -165,4 +167,5 @@ MFEMValueSamplerBase::finalize() } } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/mfem/vectorpostprocessors/MFEMVectorPostprocessor.C b/framework/src/mfem/vectorpostprocessors/MFEMVectorPostprocessor.C index 0565b82ece20..ee0e8bd627cb 100644 --- a/framework/src/mfem/vectorpostprocessors/MFEMVectorPostprocessor.C +++ b/framework/src/mfem/vectorpostprocessors/MFEMVectorPostprocessor.C @@ -11,24 +11,27 @@ #include "MFEMVectorPostprocessor.h" +namespace Moose::MFEM +{ InputParameters -MFEMVectorPostprocessor::validParams() +VectorPostprocessor::validParams() { - InputParameters params = MFEMExecutedObject::validParams(); - params += VectorPostprocessor::validParams(); - params.registerSystemAttributeName("MFEMExecutedObject"); + InputParameters params = ExecutedObject::validParams(); + params += ::VectorPostprocessor::validParams(); + params.registerSystemAttributeName("Moose::MFEM::ExecutedObject"); return params; } -MFEMVectorPostprocessor::MFEMVectorPostprocessor(const InputParameters & parameters) - : MFEMExecutedObject(parameters), VectorPostprocessor(this) +VectorPostprocessor::VectorPostprocessor(const InputParameters & parameters) + : ExecutedObject(parameters), ::VectorPostprocessor(this) { } std::optional -MFEMVectorPostprocessor::suppliedVectorPostprocessorName() const +VectorPostprocessor::suppliedVectorPostprocessorName() const { return name(); } +} // namespace Moose::MFEM #endif // MOOSE_MFEM_ENABLED diff --git a/framework/src/parser/ParameterRegistration.C b/framework/src/parser/ParameterRegistration.C index 3b09f98cb5ee..0222b5b23f88 100644 --- a/framework/src/parser/ParameterRegistration.C +++ b/framework/src/parser/ParameterRegistration.C @@ -106,11 +106,11 @@ registerParameter(ConvergenceName); registerParameter(LinearSystemName); registerParameter(SolverSystemName); #ifdef MOOSE_MFEM_ENABLED -registerParameter(MFEMScalarCoefficientName); -registerParameter(MFEMVectorCoefficientName); -registerParameter(MFEMMatrixCoefficientName); -registerParameter(MFEMFESpaceName); -registerParameter(MFEMSolverName); +registerParameter(Moose::MFEM::ScalarCoefficientName); +registerParameter(Moose::MFEM::VectorCoefficientName); +registerParameter(Moose::MFEM::MatrixCoefficientName); +registerParameter(Moose::MFEM::FESpaceName); +registerParameter(Moose::MFEM::SolverName); #endif /*******************************************************************************/ diff --git a/framework/src/utils/MooseTypes.C b/framework/src/utils/MooseTypes.C index e39f013a3a1b..969e30029660 100644 --- a/framework/src/utils/MooseTypes.C +++ b/framework/src/utils/MooseTypes.C @@ -86,9 +86,35 @@ DerivativeStringToJSON(LinearSystemName); DerivativeStringToJSON(SolverSystemName); DerivativeStringToJSON(CLIArgString); #ifdef MOOSE_MFEM_ENABLED -DerivativeStringToJSON(MFEMScalarCoefficientName); -DerivativeStringToJSON(MFEMVectorCoefficientName); -DerivativeStringToJSON(MFEMMatrixCoefficientName); -DerivativeStringToJSON(MFEMFESpaceName); -DerivativeStringToJSON(MFEMSolverName); +namespace nlohmann +{ +void +adl_serializer::to_json( + json & j, const Moose::MFEM::ScalarCoefficientName & v) +{ + j = static_cast(v); +} +void +adl_serializer::to_json( + json & j, const Moose::MFEM::VectorCoefficientName & v) +{ + j = static_cast(v); +} +void +adl_serializer::to_json( + json & j, const Moose::MFEM::MatrixCoefficientName & v) +{ + j = static_cast(v); +} +void +adl_serializer::to_json(json & j, const Moose::MFEM::FESpaceName & v) +{ + j = static_cast(v); +} +void +adl_serializer::to_json(json & j, const Moose::MFEM::SolverName & v) +{ + j = static_cast(v); +} +} #endif diff --git a/modules/contact/test/tests/avoid-aligned-node-exception/tests b/modules/contact/test/tests/avoid-aligned-node-exception/tests index 295e74c6c3ae..94c68237abc8 100644 --- a/modules/contact/test/tests/avoid-aligned-node-exception/tests +++ b/modules/contact/test/tests/avoid-aligned-node-exception/tests @@ -10,5 +10,6 @@ capabilities = 'method!=dbg' mesh_mode = 'replicated' abs_zero = 1e-8 + rel_err = 1e-5 [] [] diff --git a/test/tests/mfem/auxkernels/projection.i b/test/tests/mfem/auxkernels/projection.i index bd819cff58ec..b1a86b5d5744 100644 --- a/test/tests/mfem/auxkernels/projection.i +++ b/test/tests/mfem/auxkernels/projection.i @@ -103,10 +103,12 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-16 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-16 + [] [] [Executioner] diff --git a/test/tests/mfem/auxkernels/tests b/test/tests/mfem/auxkernels/tests index 2952157c53b0..0a82f5d4e55b 100644 --- a/test/tests/mfem/auxkernels/tests +++ b/test/tests/mfem/auxkernels/tests @@ -36,7 +36,7 @@ cli_args = 'FESpaces/inactive="" ' 'AuxVariables/inactive="" ' 'AuxKernels/inactive="" ' - 'Solver/l_tol=1e-15 ' + 'Solvers/main/l_tol=1e-15 ' 'Outputs/ParaViewDataCollection/file_base=OutputData/InnerProduct' xmldiff = 'OutputData/InnerProduct/Run0/Run0.pvd OutputData/InnerProduct/Run0/Cycle000001/proc000000.vtu' diff --git a/test/tests/mfem/complex/complex.i b/test/tests/mfem/complex/complex.i index 97617dcb24fa..015c7def8f68 100644 --- a/test/tests/mfem/complex/complex.i +++ b/test/tests/mfem/complex/complex.i @@ -90,8 +90,10 @@ kappa_i = -7.86151377757423297509831172647 [] [] -[Solver] - type = MFEMSuperLU +[Solvers] + [main] + type = MFEMSuperLU + [] [] [Executioner] diff --git a/test/tests/mfem/complex/complex_waveguide.i b/test/tests/mfem/complex/complex_waveguide.i index 7286a21d98ae..b9126ea33136 100644 --- a/test/tests/mfem/complex/complex_waveguide.i +++ b/test/tests/mfem/complex/complex_waveguide.i @@ -124,8 +124,10 @@ elec_cond_air = 1e-323 [] [] -[Solver] - type = MFEMMUMPS +[Solvers] + [main] + type = MFEMMUMPS + [] [] [Executioner] diff --git a/test/tests/mfem/functions/parsed_function_source.i b/test/tests/mfem/functions/parsed_function_source.i index 05cb7bca796c..eb5dad563f79 100644 --- a/test/tests/mfem/functions/parsed_function_source.i +++ b/test/tests/mfem/functions/parsed_function_source.i @@ -88,10 +88,12 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-16 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-16 + [] [] [Executioner] diff --git a/test/tests/mfem/ics/transient_scalar_ic.i b/test/tests/mfem/ics/transient_scalar_ic.i index c8fb6d78bbdb..f13062e60986 100644 --- a/test/tests/mfem/ics/transient_scalar_ic.i +++ b/test/tests/mfem/ics/transient_scalar_ic.i @@ -89,11 +89,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/curlcurl.i b/test/tests/mfem/kernels/curlcurl.i index 338be5438819..b911a408d9be 100644 --- a/test/tests/mfem/kernels/curlcurl.i +++ b/test/tests/mfem/kernels/curlcurl.i @@ -120,10 +120,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = ams - l_tol = 1e-12 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = ams + l_tol = 1e-12 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/darcy.i b/test/tests/mfem/kernels/darcy.i index bc9082bb51c4..0443b156a088 100644 --- a/test/tests/mfem/kernels/darcy.i +++ b/test/tests/mfem/kernels/darcy.i @@ -77,8 +77,10 @@ [] [] -[Solver] - type = MFEMMUMPS +[Solvers] + [main] + type = MFEMMUMPS + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/diffusion.i b/test/tests/mfem/kernels/diffusion.i index f6812f16b199..1b6f0d53aaaa 100644 --- a/test/tests/mfem/kernels/diffusion.i +++ b/test/tests/mfem/kernels/diffusion.i @@ -74,11 +74,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/diffusion_amr.i b/test/tests/mfem/kernels/diffusion_amr.i index c04afbb29742..a0a0fd39133e 100644 --- a/test/tests/mfem/kernels/diffusion_amr.i +++ b/test/tests/mfem/kernels/diffusion_amr.i @@ -101,10 +101,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/graddiv.i b/test/tests/mfem/kernels/graddiv.i index 7722e09e4b50..ce93ce6e6084 100644 --- a/test/tests/mfem/kernels/graddiv.i +++ b/test/tests/mfem/kernels/graddiv.i @@ -103,12 +103,14 @@ [] [] -[Solver] - type = MFEMCGSolver - preconditioner = ADS - l_tol = 1e-16 - l_max_its = 1000 - print_level = 2 +[Solvers] + [main] + type = MFEMCGSolver + preconditioner = ADS + l_tol = 1e-16 + l_max_its = 1000 + print_level = 2 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/gravity.i b/test/tests/mfem/kernels/gravity.i index da00dc85cbe2..4ed8c7f64a18 100644 --- a/test/tests/mfem/kernels/gravity.i +++ b/test/tests/mfem/kernels/gravity.i @@ -86,13 +86,15 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_max_its = 100 - l_tol = 1e-4 - l_abs_tol = 0.0 - print_level = 2 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_max_its = 100 + l_tol = 1e-4 + l_abs_tol = 0.0 + print_level = 2 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/heattransfer.i b/test/tests/mfem/kernels/heattransfer.i index 6fc34c746d1c..5a1395ab931e 100644 --- a/test/tests/mfem/kernels/heattransfer.i +++ b/test/tests/mfem/kernels/heattransfer.i @@ -82,11 +82,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/irrotational.i b/test/tests/mfem/kernels/irrotational.i index 90c8f710c88a..cba34a0e7310 100644 --- a/test/tests/mfem/kernels/irrotational.i +++ b/test/tests/mfem/kernels/irrotational.i @@ -93,11 +93,13 @@ centre_y = 0.1 [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/linearelasticity.i b/test/tests/mfem/kernels/linearelasticity.i index 9dc669936041..e401cb08b4e6 100644 --- a/test/tests/mfem/kernels/linearelasticity.i +++ b/test/tests/mfem/kernels/linearelasticity.i @@ -74,13 +74,15 @@ [] [] -[Solver] - type = MFEMHyprePCG - #preconditioner = boomeramg - l_max_its = 5000 - l_tol = 1e-8 - l_abs_tol = 0.0 - print_level = 2 +[Solvers] + [main] + type = MFEMHyprePCG + #preconditioner = boomeramg + l_max_its = 5000 + l_tol = 1e-8 + l_abs_tol = 0.0 + print_level = 2 + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/mixed_heattransfer.i b/test/tests/mfem/kernels/mixed_heattransfer.i index e2c9e6782941..d4f4b57d1723 100644 --- a/test/tests/mfem/kernels/mixed_heattransfer.i +++ b/test/tests/mfem/kernels/mixed_heattransfer.i @@ -80,8 +80,10 @@ [] [] -[Solver] - type = MFEMSuperLU +[Solvers] + [main] + type = MFEMSuperLU + [] [] [Executioner] diff --git a/test/tests/mfem/kernels/nl_heatconduction.i b/test/tests/mfem/kernels/nl_heatconduction.i index f50e4ba08cb9..6c534d05060f 100644 --- a/test/tests/mfem/kernels/nl_heatconduction.i +++ b/test/tests/mfem/kernels/nl_heatconduction.i @@ -68,6 +68,20 @@ alpha = 1e-2 [] [] +[Solvers] + [nl] + type = MFEMNewtonNonlinearSolver + max_its = 30 + abs_tol = 1.0e-5 + rel_tol = 1.0e-5 + print_level = 1 + [] + [main] + type = MFEMMUMPS + print_level = 0 + [] +[] + [Kernels] [nl_diffusion] type = MFEMNLDiffusionKernel @@ -86,11 +100,6 @@ alpha = 1e-2 [] [] -[Solver] - type = MFEMMUMPS - print_level = 0 -[] - [Executioner] type = MFEMTransient device = cpu @@ -98,11 +107,6 @@ alpha = 1e-2 dt = 1e-2 start_time = 0.0 end_time = 0.5 - - nl_max_its = 30 - nl_abs_tol = 1.0e-5 - nl_rel_tol = 1.0e-5 - print_level = 1 [] [VectorPostprocessors] diff --git a/test/tests/mfem/kernels/nl_heattransfer.i b/test/tests/mfem/kernels/nl_heattransfer.i index c63ba11e8332..e8bcf192f957 100644 --- a/test/tests/mfem/kernels/nl_heattransfer.i +++ b/test/tests/mfem/kernels/nl_heattransfer.i @@ -49,6 +49,26 @@ symbol_names = 'temperature' symbol_values = 'temperature' [] + [dT_inf_dT] + type = MFEMParsedFunction + expression = '1' + symbol_names = 'temperature' + symbol_values = 'temperature' + [] +[] + +[Solvers] + [nl] + type = MFEMNewtonNonlinearSolver + max_its = 150 + abs_tol = 1e-12 + rel_tol = 1.0e-8 + print_level = 1 + [] + [linear] + type = MFEMMUMPS + print_level = 0 + [] [] [Kernels] @@ -69,6 +89,7 @@ variable = temperature boundary = 'right' T_infinity = T_inf + d_T_infinity_dT_coefficient = dT_inf_dT heat_transfer_coefficient = htc d_heat_transfer_dT_coefficient = dhtc_dT [] @@ -93,21 +114,12 @@ [] [] -[Solver] - type = MFEMMUMPS - print_level = 0 -[] - [Executioner] type = MFEMTransient device = cpu assembly_level = legacy dt = 1 num_steps = 3 - nl_max_its = 150 - - nl_abs_tol = 1e-12 - print_level = 1 [] [Outputs] diff --git a/test/tests/mfem/kernels/nldiffusion.i b/test/tests/mfem/kernels/nldiffusion.i index 157488c68d2a..5a3e9c7f2942 100644 --- a/test/tests/mfem/kernels/nldiffusion.i +++ b/test/tests/mfem/kernels/nldiffusion.i @@ -38,6 +38,23 @@ [] [] +[Solvers] + [newton] + type = MFEMNewtonNonlinearSolver + max_its = 100 + abs_tol = 1.0e-10 + rel_tol = 1.0e-9 + print_level = 1 + [] + [linear] + type = MFEMHypreGMRES + preconditioner = boomeramg + print_level = 1 + l_tol = 1e-16 + l_max_its = 1000 + [] +[] + [BCs] [top] type = MFEMScalarDirichletBC @@ -78,21 +95,9 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - print_level = 1 - l_tol = 1e-16 - l_max_its = 1000 -[] - [Executioner] type = MFEMSteady device = cpu - nl_max_its = 100 - nl_abs_tol = 1.0e-10 - nl_rel_tol = 1.0e-9 - print_level = 1 [] [Outputs] diff --git a/test/tests/mfem/kernels/tests b/test/tests/mfem/kernels/tests index faa1005619d4..0c4479464df6 100644 --- a/test/tests/mfem/kernels/tests +++ b/test/tests/mfem/kernels/tests @@ -55,7 +55,7 @@ input = diffusion.i xmldiff = 'OutputData/Diffusion/Run0/Run0.pvd ' 'OutputData/Diffusion/Run0/Cycle000001/proc000000.vtu' - cli_args = 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + cli_args = 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Executioner/assembly_level=partial' requirement = 'The system shall have the ability to solve a diffusion problem with partial assembly using MFEM.' capabilities = 'mfem' @@ -68,7 +68,7 @@ input = diffusion.i xmldiff = 'OutputData/Diffusion/Run0/Run0.pvd ' 'OutputData/Diffusion/Run0/Cycle000001/proc000000.vtu' - cli_args = 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + cli_args = 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Executioner/device=ceed-cpu ' 'Executioner/assembly_level=none' compute_devices = 'ceed-cpu' @@ -114,7 +114,7 @@ cli_args = 'BCs/active="bottom top_dirichlet" ' 'Executioner/dt=0.25 Executioner/end_time=1.0 ' 'Outputs/ParaViewDataCollection/file_base=OutputData/HeatConduction ' - 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Executioner/assembly_level=element' requirement = 'The system shall have the ability to solve a transient heat conduction problem with element assembly using MFEM.' capabilities = 'mfem' @@ -133,7 +133,7 @@ cli_args = 'BCs/active="bottom top_dirichlet" ' 'Executioner/dt=0.25 Executioner/end_time=1.0 ' 'Outputs/ParaViewDataCollection/file_base=OutputData/HeatConduction ' - 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Executioner/assembly_level=none ' 'Executioner/device=ceed-cpu' compute_devices = 'ceed-cpu' @@ -162,7 +162,7 @@ xmldiff = 'OutputData/MixedHeatTransfer/Run0/Run0.pvd OutputData/MixedHeatTransfer/Run0/Cycle000003/proc000000.vtu' requirement = 'The system shall have the ability to solve a transient heat conduction problem solved using the mixed form of the heat equation using MFEM.' - capabilities = 'mfem' + capabilities = 'mfem & platform=linux' compute_devices = 'cpu cuda' max_parallel = 1 # schemadiff with multiple ranks recover = false @@ -278,5 +278,6 @@ compute_devices = 'cpu' recover = false restep = false + rel_err = 5e-4 [] [] diff --git a/test/tests/mfem/lor/tests b/test/tests/mfem/lor/tests index caed669ae68f..8bc04383e91f 100644 --- a/test/tests/mfem/lor/tests +++ b/test/tests/mfem/lor/tests @@ -10,7 +10,7 @@ cli_args = 'FESpaces/HCurlFESpace/fec_order=THIRD ' 'FESpaces/HCurlFESpace/closed_basis=GaussLobatto ' 'FESpaces/HCurlFESpace/open_basis=IntegratedGLL ' - 'Solver/type=MFEMGMRESSolver Solver/l_tol=1e-14 ' + 'Solvers/main/type=MFEMGMRESSolver Solvers/main/l_tol=1e-14 ' 'Preconditioner/ams/low_order_refined=true ' 'Outputs/ParaViewDataCollection/file_base=OutputData/CurlCurlLOR' requirement = 'The system shall have the ability to solve a LOR definite Maxwell problem with Nedelec elements of the first kind using MFEM.' @@ -29,7 +29,7 @@ xmldiff = 'OutputData/DiffusionLOR/Run0/Run0.pvd ' 'OutputData/DiffusionLOR/Run0/Cycle000001/proc000000.vtu' cli_args = 'FESpaces/H1FESpace/fec_order=SECOND ' - 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Preconditioner/jacobi/low_order_refined=true ' 'Outputs/ParaViewDataCollection/file_base=OutputData/DiffusionLOR' requirement = 'The system shall have the ability to solve a diffusion problem with Low-Order-Refined preconditioning set up from MOOSE and produce the same result as a native MFEM run.' @@ -66,7 +66,7 @@ cli_args = 'BCs/active="bottom top_dirichlet" ' 'Executioner/dt=0.25 Executioner/end_time=1.0 ' 'FESpaces/H1FESpace/fec_order=SECOND ' - 'Solver/type=MFEMCGSolver Solver/preconditioner=jacobi ' + 'Solvers/main/type=MFEMCGSolver Solvers/main/preconditioner=jacobi ' 'Preconditioner/jacobi/low_order_refined=true ' 'Outputs/ParaViewDataCollection/file_base=OutputData/HeatConductionLOR' requirement = 'The system shall have the ability to solve a transient heat conduction problem with Low-Order-Refined preconditioning set up from MOOSE and produce the same result as a native MFEM run.' diff --git a/test/tests/mfem/multiapps/dt_from_parent.i b/test/tests/mfem/multiapps/dt_from_parent.i index 1b1f0b0cdc3d..23c5633c9650 100644 --- a/test/tests/mfem/multiapps/dt_from_parent.i +++ b/test/tests/mfem/multiapps/dt_from_parent.i @@ -48,17 +48,29 @@ [] [] +[Functions] + [exact_solution] + type = ParsedFunction + # Exact solution for u_t - u_xx = 0 on x in [0,1] with u(0,t)=0 and u(1,t)=1. + # Write u(x,t) = x + w(x,t), so w has homogeneous Dirichlet data, then expand + # w in a sine series. This expression keeps the first five terms of that series. + expression = 'x + 2*(-sin(pi*x)*exp(-pi^2*t) + sin(2*pi*x)*exp(-4*pi^2*t)/2 - sin(3*pi*x)*exp(-9*pi^2*t)/3 + sin(4*pi*x)*exp(-16*pi^2*t)/4 - sin(5*pi*x)*exp(-25*pi^2*t)/5)/pi' + [] +[] + [Preconditioner] [boomeramg] type = MFEMHypreBoomerAMG [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] @@ -68,11 +80,24 @@ dt = 0.2 [] +[Postprocessors] + [dt] + type = TimestepSize + execute_on = TIMESTEP_END + [] + [error] + type = MFEML2Error + variable = u + function = exact_solution + execute_on = TIMESTEP_END + [] +[] + [Outputs] - [ParaViewDataCollection] - type = MFEMParaViewDataCollection - file_base = OutputData/dt_from_parent - vtk_format = ASCII + [CSV] + type = CSV + execute_on = TIMESTEP_END + file_base = dt_from_parent [] [] diff --git a/test/tests/mfem/multiapps/dt_from_parent_sub.i b/test/tests/mfem/multiapps/dt_from_parent_sub.i index c135631076d0..c1bf43d2a259 100644 --- a/test/tests/mfem/multiapps/dt_from_parent_sub.i +++ b/test/tests/mfem/multiapps/dt_from_parent_sub.i @@ -48,17 +48,29 @@ [] [] +[Functions] + [exact_solution] + type = ParsedFunction + # Exact solution for u_t - u_xx = 0 on x in [0,1] with u(0,t)=0 and u(1,t)=1. + # Write u(x,t) = x + w(x,t), so w has homogeneous Dirichlet data, then expand + # w in a sine series. This expression keeps the first five terms of that series. + expression = 'x + 2*(-sin(pi*x)*exp(-pi^2*t) + sin(2*pi*x)*exp(-4*pi^2*t)/2 - sin(3*pi*x)*exp(-9*pi^2*t)/3 + sin(4*pi*x)*exp(-16*pi^2*t)/4 - sin(5*pi*x)*exp(-25*pi^2*t)/5)/pi' + [] +[] + [Preconditioner] [boomeramg] type = MFEMHypreBoomerAMG [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] @@ -67,10 +79,23 @@ dt = 1 # This will be constrained by the parent solve [] +[Postprocessors] + [dt] + type = TimestepSize + execute_on = TIMESTEP_END + [] + [error] + type = MFEML2Error + variable = u + function = exact_solution + execute_on = TIMESTEP_END + [] +[] + [Outputs] - [ParaViewDataCollection] - type = MFEMParaViewDataCollection - file_base = OutputData/dt_from_parent_sub - vtk_format = ASCII + [CSV] + type = CSV + execute_on = TIMESTEP_END + file_base = dt_from_parent_sub [] [] diff --git a/test/tests/mfem/multiapps/full_solve_parent.i b/test/tests/mfem/multiapps/full_solve_parent.i index e3492f39a361..9af4fa42f734 100644 --- a/test/tests/mfem/multiapps/full_solve_parent.i +++ b/test/tests/mfem/multiapps/full_solve_parent.i @@ -49,6 +49,16 @@ [] [] +[Functions] + [exact_solution] + type = ParsedFunction + # Exact solution for u_t - u_xx = 0 on x in [0,1] with u(0,t)=0 and u(1,t)=1. + # Write u(x,t) = x + w(x,t), so w has homogeneous Dirichlet data, then expand + # w in a sine series. This expression keeps the first five terms of that series. + expression = 'x + 2*(-sin(pi*x)*exp(-pi^2*t) + sin(2*pi*x)*exp(-4*pi^2*t)/2 - sin(3*pi*x)*exp(-9*pi^2*t)/3 + sin(4*pi*x)*exp(-16*pi^2*t)/4 - sin(5*pi*x)*exp(-25*pi^2*t)/5)/pi' + [] +[] + [Preconditioner] [boomeramg] type = MFEMHypreBoomerAMG @@ -56,12 +66,14 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 - print_level = 0 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + print_level = 0 + [] [] [Executioner] @@ -71,11 +83,24 @@ dt = 0.1 [] +[Postprocessors] + [dt] + type = TimestepSize + execute_on = TIMESTEP_END + [] + [error] + type = MFEML2Error + variable = u + function = exact_solution + execute_on = TIMESTEP_END + [] +[] + [Outputs] - [ParaViewDataCollection] - type = MFEMParaViewDataCollection - file_base = OutputData/full_solve_parent - vtk_format = ASCII + [CSV] + type = CSV + execute_on = TIMESTEP_END + file_base = full_solve_parent [] [] diff --git a/test/tests/mfem/multiapps/full_solve_sub.i b/test/tests/mfem/multiapps/full_solve_sub.i index 942c81ebf04b..c0fccb514e02 100644 --- a/test/tests/mfem/multiapps/full_solve_sub.i +++ b/test/tests/mfem/multiapps/full_solve_sub.i @@ -28,9 +28,10 @@ type = MFEMDiffusionKernel variable = u [] - [td] - type = MFEMTimeDerivativeMassKernel + [source] + type = MFEMDomainLFKernel variable = u + coefficient = forcing [] [] @@ -39,13 +40,38 @@ type = MFEMScalarDirichletBC variable = u boundary = left - coefficient = 0 + coefficient = exact_solution [] [right] type = MFEMScalarDirichletBC variable = u boundary = right - coefficient = 1 + coefficient = exact_solution + [] + [top] + type = MFEMScalarDirichletBC + variable = u + boundary = top + coefficient = exact_solution + [] + [bottom] + type = MFEMScalarDirichletBC + variable = u + boundary = bottom + coefficient = exact_solution + [] +[] + +[Functions] + [exact_solution] + type = ParsedFunction + # Chosen exact solution for the steady Poisson problem, u(x,y) = x^2 + y^2. + expression = 'x*x + y*y' + [] + [forcing] + type = ParsedFunction + # For -Delta u = f, this exact solution gives f = -(2 + 2) = -4. + expression = '-4' [] [] @@ -56,24 +82,33 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 - print_level = 0 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + print_level = 0 + [] [] [Executioner] - type = MFEMTransient - num_steps = 2 - dt = 0.01 + type = MFEMSteady +[] + +[Postprocessors] + [error] + type = MFEML2Error + variable = u + function = exact_solution + execute_on = TIMESTEP_END + [] [] [Outputs] - [ParaViewDataCollection] - type = MFEMParaViewDataCollection - file_base = OutputData/full_solve_sub - vtk_format = ASCII + [CSV] + type = CSV + execute_on = TIMESTEP_END + file_base = full_solve_sub [] [] diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/proc000000.vtu deleted file mode 100644 index 9176149da3ee..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000000/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/proc000000.vtu deleted file mode 100644 index 58afa8f591c5..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000001/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 - - -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/proc000000.vtu deleted file mode 100644 index c85c07549694..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000002/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 - - -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/proc000000.vtu deleted file mode 100644 index 59dffb672a93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000003/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 - - -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/proc000000.vtu deleted file mode 100644 index 13e2fd36777f..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000004/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 - - -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/proc000000.vtu deleted file mode 100644 index c8e4f31e5d1e..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000005/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 - - -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/proc000000.vtu deleted file mode 100644 index d441c7f97348..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000006/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 - - -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/proc000000.vtu deleted file mode 100644 index 99fd94d8f130..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000007/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 - - -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/proc000000.vtu deleted file mode 100644 index aeec21c36afe..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000008/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 - - -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/proc000000.vtu deleted file mode 100644 index 87d1000e5a65..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000009/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 - - -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/proc000000.vtu deleted file mode 100644 index 6e1718c02605..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Cycle000010/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 -0 -3.45337291e-05 -0 -3.45337291e-05 -3.45337291e-05 -6.56875942e-05 -3.45337291e-05 -6.56875942e-05 -6.56875942e-05 -9.04123708e-05 -6.56875942e-05 -9.04123708e-05 -9.04123708e-05 -0.000106287827 -9.04123708e-05 -0.000106287827 -0.000106287827 -0.000111759629 -0.000106287827 -0.000111759629 -0.000111759629 -0.000106291622 -0.000111759629 -0.000106291622 -0.000106291622 -9.04185123e-05 -0.000106291622 -9.04185123e-05 -9.04185123e-05 -6.56937357e-05 -9.04185123e-05 -6.56937357e-05 -6.56937357e-05 -3.45375248e-05 -6.56937357e-05 -3.45375248e-05 -3.45375248e-05 -0 -3.45375248e-05 -0 - - -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 -0 -0.0999965295 -0 -0.0999965295 -0.0999965295 -0.199993399 -0.0999965295 -0.199993399 -0.199993399 -0.299990914 -0.199993399 -0.299990914 -0.299990914 -0.399989319 -0.299990914 -0.399989319 -0.399989319 -0.499988769 -0.399989319 -0.499988769 -0.499988769 -0.599989319 -0.499988769 -0.599989319 -0.599989319 -0.699990914 -0.599989319 -0.699990914 -0.699990914 -0.799993399 -0.699990914 -0.799993399 -0.799993399 -0.899996529 -0.799993399 -0.899996529 -0.899996529 -1 -0.899996529 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Run0.pvd b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Run0.pvd deleted file mode 100644 index 404f068a138c..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent/Run0/Run0.pvd +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/proc000000.vtu deleted file mode 100644 index 9176149da3ee..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000000/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/proc000000.vtu deleted file mode 100644 index 58afa8f591c5..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000001/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 -0 -0.243118642 -0 -0.243118642 -0.243118642 -0.498495367 -0.243118642 -0.498495367 -0.498495367 -0.779006312 -0.498495367 -0.779006312 -0.779006312 -1.09879489 -0.779006312 -1.09879489 -1.09879489 -1.47398488 -1.09879489 -1.47398488 -1.47398488 -1.92349345 -1.47398488 -1.92349345 -1.92349345 -2.46998487 -1.92349345 -2.46998487 -2.46998487 -3.14101335 -2.46998487 -3.14101335 -3.14101335 -3.97041225 -3.14101335 -3.97041225 -3.97041225 -5 -3.97041225 -5 - - -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 -0 -0.0486237284 -0 -0.0486237284 -0.0486237284 -0.0996990734 -0.0486237284 -0.0996990734 -0.0996990734 -0.155801262 -0.0996990734 -0.155801262 -0.155801262 -0.219758977 -0.155801262 -0.219758977 -0.219758977 -0.294796977 -0.219758977 -0.294796977 -0.294796977 -0.384698689 -0.294796977 -0.384698689 -0.384698689 -0.493996974 -0.384698689 -0.493996974 -0.493996974 -0.62820267 -0.493996974 -0.62820267 -0.62820267 -0.79408245 -0.62820267 -0.79408245 -0.79408245 -1 -0.79408245 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/proc000000.vtu deleted file mode 100644 index c85c07549694..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000002/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 -0 -0.155684655 -0 -0.155684655 -0.155684655 -0.306857865 -0.155684655 -0.306857865 -0.306857865 -0.448157468 -0.306857865 -0.448157468 -0.448157468 -0.572445553 -0.448157468 -0.572445553 -0.572445553 -0.669729457 -0.572445553 -0.669729457 -0.669729457 -0.725838142 -0.669729457 -0.725838142 -0.725838142 -0.720745863 -0.725838142 -0.720745863 -0.720745863 -0.626410129 -0.720745863 -0.626410129 -0.626410129 -0.403956835 -0.626410129 -0.403956835 -0.403956835 -0 -0.403956835 -0 - - -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 -0 -0.0797606595 -0 -0.0797606595 -0.0797606595 -0.161070646 -0.0797606595 -0.161070646 -0.161070646 -0.245432756 -0.161070646 -0.245432756 -0.245432756 -0.334248088 -0.245432756 -0.334248088 -0.334248088 -0.428742868 -0.334248088 -0.428742868 -0.428742868 -0.529866318 -0.428742868 -0.529866318 -0.529866318 -0.638146147 -0.529866318 -0.638146147 -0.638146147 -0.753484696 -0.638146147 -0.753484696 -0.753484696 -0.874873817 -0.753484696 -0.874873817 -0.874873817 -1 -0.874873817 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/proc000000.vtu deleted file mode 100644 index 59dffb672a93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000003/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 -0 -0.0652633318 -0 -0.0652633318 -0.0652633318 -0.126005516 -0.0652633318 -0.126005516 -0.126005516 -0.177712067 -0.126005516 -0.177712067 -0.177712067 -0.215925669 -0.177712067 -0.215925669 -0.215925669 -0.236390404 -0.215925669 -0.236390404 -0.236390404 -0.235352121 -0.236390404 -0.235352121 -0.235352121 -0.210097745 -0.235352121 -0.210097745 -0.210097745 -0.15984635 -0.210097745 -0.15984635 -0.15984635 -0.0871473489 -0.15984635 -0.0871473489 -0.0871473489 -0 -0.0871473489 -0 - - -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 -0 -0.0928133258 -0 -0.0928133258 -0.0928133258 -0.18627175 -0.0928133258 -0.18627175 -0.18627175 -0.280975169 -0.18627175 -0.280975169 -0.280975169 -0.377433222 -0.280975169 -0.377433222 -0.377433222 -0.476020949 -0.377433222 -0.476020949 -0.476020949 -0.576936742 -0.476020949 -0.576936742 -0.576936742 -0.680165696 -0.576936742 -0.680165696 -0.680165696 -0.785453966 -0.680165696 -0.785453966 -0.785453966 -0.892303286 -0.785453966 -0.892303286 -0.892303286 -1 -0.892303286 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/proc000000.vtu deleted file mode 100644 index 13e2fd36777f..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000004/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 -0 -0.0236609973 -0 -0.0236609973 -0.0236609973 -0.0452623907 -0.0236609973 -0.0452623907 -0.0452623907 -0.0628686318 -0.0452623907 -0.0628686318 -0.0628686318 -0.0747978337 -0.0628686318 -0.0747978337 -0.0747978337 -0.0797604967 -0.0747978337 -0.0797604967 -0.0797604967 -0.077006551 -0.0797604967 -0.077006551 -0.077006551 -0.0664722916 -0.077006551 -0.0664722916 -0.0664722916 -0.0489064717 -0.0664722916 -0.0489064717 -0.0489064717 -0.0259356798 -0.0489064717 -0.0259356798 -0.0259356798 -0 -0.0259356798 -0 - - -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 -0 -0.0975455253 -0 -0.0975455253 -0.0975455253 -0.195324228 -0.0975455253 -0.195324228 -0.195324228 -0.293548896 -0.195324228 -0.293548896 -0.293548896 -0.392392788 -0.293548896 -0.392392788 -0.392392788 -0.491973048 -0.392392788 -0.491973048 -0.491973048 -0.592338052 -0.491973048 -0.592338052 -0.592338052 -0.693460154 -0.592338052 -0.693460154 -0.693460154 -0.79523526 -0.693460154 -0.79523526 -0.79523526 -0.897490422 -0.79523526 -0.897490422 -0.897490422 -1 -0.897490422 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/proc000000.vtu deleted file mode 100644 index c8e4f31e5d1e..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000005/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 -0 -0.00813873861 -0 -0.00813873861 -0.00813873861 -0.0155121499 -0.00813873861 -0.0155121499 -0.0155121499 -0.0214191218 -0.0155121499 -0.0214191218 -0.0214191218 -0.0252839087 -0.0214191218 -0.0252839087 -0.0252839087 -0.0267107374 -0.0252839087 -0.0267107374 -0.0267107374 -0.0255276339 -0.0267107374 -0.0255276339 -0.0255276339 -0.0218143355 -0.0255276339 -0.0218143355 -0.0218143355 -0.0159084641 -0.0218143355 -0.0159084641 -0.0159084641 -0.00838424763 -0.0159084641 -0.00838424763 -0.00838424763 -0 -0.00838424763 -0 - - -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 -0 -0.099173273 -0 -0.099173273 -0.099173273 -0.198426658 -0.099173273 -0.198426658 -0.198426658 -0.29783272 -0.198426658 -0.29783272 -0.29783272 -0.39744957 -0.29783272 -0.39744957 -0.39744957 -0.497315196 -0.39744957 -0.497315196 -0.497315196 -0.597443579 -0.497315196 -0.597443579 -0.597443579 -0.697823021 -0.597443579 -0.697823021 -0.697823021 -0.798416953 -0.697823021 -0.798416953 -0.798416953 -0.899167272 -0.798416953 -0.899167272 -0.899167272 -1 -0.899167272 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/proc000000.vtu deleted file mode 100644 index d441c7f97348..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000006/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 -0 -0.00274794443 -0 -0.00274794443 -0.00274794443 -0.00523051542 -0.00274794443 -0.00523051542 -0.00523051542 -0.0072070077 -0.00523051542 -0.0072070077 -0.0072070077 -0.00848408402 -0.0072070077 -0.00848408402 -0.00848408402 -0.0089345974 -0.00848408402 -0.0089345974 -0.0089345974 -0.00851076701 -0.0089345974 -0.00851076701 -0.00851076701 -0.00725020547 -0.00851076701 -0.00725020547 -0.00725020547 -0.00527374304 -0.00725020547 -0.00527374304 -0.00527374304 -0.00277467572 -0.00527374304 -0.00277467572 -0.00277467572 -0 -0.00277467572 -0 - - -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 -0 -0.0997228619 -0 -0.0997228619 -0.0997228619 -0.199472761 -0.0997228619 -0.199472761 -0.199472761 -0.299274122 -0.199472761 -0.299274122 -0.299274122 -0.399146387 -0.299274122 -0.399146387 -0.399146387 -0.499102115 -0.399146387 -0.499102115 -0.499102115 -0.599145732 -0.499102115 -0.599145732 -0.599145732 -0.699273062 -0.599145732 -0.699273062 -0.699273062 -0.799471702 -0.699273062 -0.799471702 -0.799471702 -0.899722207 -0.799471702 -0.899722207 -0.899722207 -1 -0.899722207 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/proc000000.vtu deleted file mode 100644 index 99fd94d8f130..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000007/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 -0 -0.000921916419 -0 -0.000921916419 -0.000921916419 -0.00175399423 -0.000921916419 -0.00175399423 -0.00175399423 -0.00241503802 -0.00175399423 -0.00241503802 -0.00241503802 -0.00284034733 -0.00241503802 -0.00284034733 -0.00284034733 -0.0029880444 -0.00284034733 -0.0029880444 -0.0029880444 -0.0028432627 -0.0029880444 -0.0028432627 -0.0028432627 -0.00241975583 -0.0028432627 -0.00241975583 -0.00241975583 -0.00175871285 -0.00241975583 -0.00175871285 -0.00175871285 -0.000924833094 -0.00175871285 -0.000924833094 -0.000924833094 -0 -0.000924833094 -0 - - -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 -0 -0.0999072452 -0 -0.0999072452 -0.0999072452 -0.19982356 -0.0999072452 -0.19982356 -0.19982356 -0.299757129 -0.19982356 -0.299757129 -0.299757129 -0.399714456 -0.299757129 -0.399714456 -0.399714456 -0.499699724 -0.399714456 -0.499699724 -0.499699724 -0.599714385 -0.499699724 -0.599714385 -0.599714385 -0.699757014 -0.599714385 -0.699757014 -0.699757014 -0.799823444 -0.699757014 -0.799823444 -0.799823444 -0.899907174 -0.799823444 -0.899907174 -0.899907174 -1 -0.899907174 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/proc000000.vtu deleted file mode 100644 index aeec21c36afe..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000008/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 -0 -0.000308636479 -0 -0.000308636479 -0.000308636479 -0.000587106227 -0.000308636479 -0.000587106227 -0.000587106227 -0.000808178547 -0.000587106227 -0.000808178547 -0.000808178547 -0.000950213704 -0.000808178547 -0.000950213704 -0.000950213704 -0.000999280882 -0.000950213704 -0.000999280882 -0.000999280882 -0.000950532074 -0.000999280882 -0.000950532074 -0.000950532074 -0.000808693697 -0.000950532074 -0.000808693697 -0.000808693697 -0.0005876214 -0.000808693697 -0.0005876214 -0.0005876214 -0.000308954884 -0.0005876214 -0.000308954884 -0.000308954884 -0 -0.000308954884 -0 - - -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 -0 -0.0999689725 -0 -0.0999689725 -0.0999689725 -0.199940981 -0.0999689725 -0.199940981 -0.199940981 -0.299918765 -0.199940981 -0.299918765 -0.299918765 -0.399904499 -0.299918765 -0.399904499 -0.399904499 -0.49989958 -0.399904499 -0.49989958 -0.49989958 -0.599904491 -0.49989958 -0.599904491 -0.599904491 -0.699918752 -0.599904491 -0.699918752 -0.699918752 -0.799940968 -0.699918752 -0.799940968 -0.799940968 -0.899968965 -0.799940968 -0.899968965 -0.899968965 -1 -0.899968965 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/proc000000.vtu deleted file mode 100644 index 87d1000e5a65..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Cycle000009/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 -0 -0.000103251374 -0 -0.000103251374 -0.000103251374 -0.000196400699 -0.000103251374 -0.000196400699 -0.000196400699 -0.000270332917 -0.000196400699 -0.000270332917 -0.000270332917 -0.000317811046 -0.000270332917 -0.000317811046 -0.000317811046 -0.00033418457 -0.000317811046 -0.00033418457 -0.00033418457 -0.000317845809 -0.00033418457 -0.000317845809 -0.000317845809 -0.000270389165 -0.000317845809 -0.000270389165 -0.000270389165 -0.000196456948 -0.000270389165 -0.000196456948 -0.000196456948 -0.000103286138 -0.000196456948 -0.000103286138 -0.000103286138 -0 -0.000103286138 -0 - - -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 -0 -0.0999896227 -0 -0.0999896227 -0.0999896227 -0.199980261 -0.0999896227 -0.199980261 -0.199980261 -0.299972832 -0.199980261 -0.299972832 -0.299972832 -0.399968061 -0.299972832 -0.399968061 -0.399968061 -0.499966417 -0.399968061 -0.499966417 -0.499966417 -0.59996806 -0.499966417 -0.59996806 -0.59996806 -0.69997283 -0.59996806 -0.69997283 -0.69997283 -0.79998026 -0.69997283 -0.79998026 -0.79998026 -0.899989622 -0.79998026 -0.899989622 -0.899989622 -1 -0.899989622 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Run0.pvd b/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Run0.pvd deleted file mode 100644 index 55c932967763..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/dt_from_parent_sub/Run0/Run0.pvd +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/proc000000.vtu deleted file mode 100644 index 9176149da3ee..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000000/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/proc000000.vtu deleted file mode 100644 index eac0a55b0f54..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000001/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 -0 -0.270235536 -0 -0.270235536 -0.270235536 -0.567952652 -0.270235536 -0.567952652 -0.567952652 -0.923427665 -0.567952652 -0.923427665 -0.923427665 -1.37281058 -0.923427665 -1.37281058 -1.37281058 -1.96180134 -1.37281058 -1.96180134 -1.96180134 -2.75029733 -1.96180134 -2.75029733 -2.75029733 -3.81848457 -2.75029733 -3.81848457 -3.81848457 -5.27499227 -3.81848457 -5.27499227 -5.27499227 -7.26793987 -5.27499227 -7.26793987 -7.26793987 -10 -7.26793987 -10 - - -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 -0 -0.0270235536 -0 -0.0270235536 -0.0270235536 -0.0567952652 -0.0270235536 -0.0567952652 -0.0567952652 -0.0923427665 -0.0567952652 -0.0923427665 -0.0923427665 -0.137281058 -0.0923427665 -0.137281058 -0.137281058 -0.196180134 -0.137281058 -0.196180134 -0.196180134 -0.275029733 -0.196180134 -0.275029733 -0.275029733 -0.381848457 -0.275029733 -0.381848457 -0.381848457 -0.527499227 -0.381848457 -0.527499227 -0.527499227 -0.726793987 -0.527499227 -0.726793987 -0.726793987 -1 -0.726793987 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/proc000000.vtu deleted file mode 100644 index 027f6860ae33..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Cycle000002/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 -0 -0.293420483 -0 -0.293420483 -0.293420483 -0.588732967 -0.293420483 -0.588732967 -0.588732967 -0.885179756 -0.588732967 -0.885179756 -0.885179756 -1.17614527 -0.885179756 -1.17614527 -1.17614527 -1.44474468 -1.17614527 -1.44474468 -1.44474468 -1.65738062 -1.44474468 -1.65738062 -1.65738062 -1.75413196 -1.65738062 -1.75413196 -1.75413196 -1.63436743 -1.75413196 -1.63436743 -1.63436743 -1.13527766 -1.63436743 -1.13527766 -1.13527766 -0 -1.13527766 -0 - - -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 -0 -0.0563656019 -0 -0.0563656019 -0.0563656019 -0.115668562 -0.0563656019 -0.115668562 -0.115668562 -0.180860742 -0.115668562 -0.180860742 -0.180860742 -0.254895584 -0.180860742 -0.254895584 -0.254895584 -0.340654603 -0.254895584 -0.340654603 -0.340654603 -0.440767795 -0.340654603 -0.440767795 -0.440767795 -0.557261653 -0.440767795 -0.557261653 -0.557261653 -0.69093597 -0.557261653 -0.69093597 -0.69093597 -0.840321753 -0.69093597 -0.840321753 -0.840321753 -1 -0.840321753 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Run0.pvd b/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Run0.pvd deleted file mode 100644 index 9601610b97f3..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_parent/Run0/Run0.pvd +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/proc000000.vtu deleted file mode 100644 index 9176149da3ee..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000000/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/proc000000.vtu deleted file mode 100644 index a52e5ac49158..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000001/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 -0 -0.00709036207 -0 -0.00709036207 -0.00709036207 -0.0226891586 -0.00709036207 -0.0226891586 -0.0226891586 -0.0655149455 -0.0226891586 -0.0655149455 -0.0655149455 -0.186958667 -0.0655149455 -0.186958667 -0.186958667 -0.532752789 -0.186958667 -0.532752789 -0.532752789 -1.51785026 -0.532752789 -1.51785026 -1.51785026 -4.32436804 -1.51785026 -4.32436804 -4.32436804 -12.3201275 -4.32436804 -12.3201275 -12.3201275 -35.1000398 -12.3201275 -35.1000398 -35.1000398 -100 -35.1000398 -100 - - -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 -0 -7.09036207e-05 -0 -7.09036207e-05 -7.09036207e-05 -0.000226891586 -7.09036207e-05 -0.000226891586 -0.000226891586 -0.000655149455 -0.000226891586 -0.000655149455 -0.000655149455 -0.00186958667 -0.000655149455 -0.00186958667 -0.00186958667 -0.00532752789 -0.00186958667 -0.00532752789 -0.00532752789 -0.0151785026 -0.00532752789 -0.0151785026 -0.0151785026 -0.0432436804 -0.0151785026 -0.0432436804 -0.0432436804 -0.123201275 -0.0432436804 -0.123201275 -0.123201275 -0.351000398 -0.123201275 -0.351000398 -0.351000398 -1 -0.351000398 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/proc000000.vtu deleted file mode 100644 index 179228add8f9..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000002/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 - - -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/proc000000.vtu deleted file mode 100644 index 179228add8f9..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000003/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 -0 -0.0356372376 -0 -0.0356372376 -0.0356372376 -0.103829039 -0.0356372376 -0.103829039 -0.103829039 -0.263943298 -0.103829039 -0.263943298 -0.263943298 -0.646447994 -0.263943298 -0.646447994 -0.646447994 -1.5354698 -0.646447994 -1.5354698 -1.5354698 -3.49989135 -1.5354698 -3.49989135 -3.49989135 -7.47847816 -3.49989135 -7.47847816 -7.47847816 -14.2041488 -7.47847816 -14.2041488 -14.2041488 -20.2338144 -14.2041488 -20.2338144 -20.2338144 -0 -20.2338144 -0 - - -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 -0 -0.000427275996 -0 -0.000427275996 -0.000427275996 -0.00126518197 -0.000427275996 -0.00126518197 -0.00126518197 -0.00329458244 -0.00126518197 -0.00329458244 -0.00329458244 -0.00833406661 -0.00329458244 -0.00833406661 -0.00833406661 -0.0206822259 -0.00833406661 -0.0206822259 -0.0206822259 -0.0501774161 -0.0206822259 -0.0501774161 -0.0501774161 -0.118028462 -0.0501774161 -0.118028462 -0.118028462 -0.265242762 -0.118028462 -0.265242762 -0.265242762 -0.553338543 -0.265242762 -0.553338543 -0.553338543 -1 -0.553338543 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/proc000000.vtu deleted file mode 100644 index 5149d30beea6..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000004/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 -0 -0.0948348176 -0 -0.0948348176 -0.0948348176 -0.254195818 -0.0948348176 -0.254195818 -0.254195818 -0.575612463 -0.254195818 -0.575612463 -0.575612463 -1.22655402 -0.575612463 -1.22655402 -1.22655402 -2.47231938 -1.22655402 -2.47231938 -2.47231938 -4.62722429 -2.47231938 -4.62722429 -4.62722429 -7.73209567 -4.62722429 -7.73209567 -7.73209567 -10.5918913 -7.73209567 -10.5918913 -10.5918913 -9.25617893 -10.5918913 -9.25617893 -9.25617893 -0 -9.25617893 -0 - - -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 -0 -0.00137562417 -0 -0.00137562417 -0.00137562417 -0.00380714016 -0.00137562417 -0.00380714016 -0.00380714016 -0.00905070707 -0.00380714016 -0.00905070707 -0.00905070707 -0.0205996068 -0.00905070707 -0.0205996068 -0.0205996068 -0.0454054197 -0.0205996068 -0.0454054197 -0.0454054197 -0.096449659 -0.0454054197 -0.096449659 -0.096449659 -0.195349419 -0.096449659 -0.195349419 -0.195349419 -0.371161675 -0.195349419 -0.371161675 -0.371161675 -0.645900332 -0.371161675 -0.645900332 -0.645900332 -1 -0.645900332 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/data.pvtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/data.pvtu deleted file mode 100644 index 7dff92f71c93..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/data.pvtu +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/proc000000.vtu b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/proc000000.vtu deleted file mode 100644 index cd94a76e0aa3..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Cycle000005/proc000000.vtu +++ /dev/null @@ -1,1628 +0,0 @@ - - - - - -0 0 0 -0.1 0 0 -0 0.1 0 -0.1 0.1 0 -0.1 0 0 -0.2 0 0 -0.1 0.1 0 -0.2 0.1 0 -0.2 0 0 -0.3 0 0 -0.2 0.1 0 -0.3 0.1 0 -0.3 0 0 -0.4 0 0 -0.3 0.1 0 -0.4 0.1 0 -0.4 0 0 -0.5 0 0 -0.4 0.1 0 -0.5 0.1 0 -0.5 0 0 -0.6 0 0 -0.5 0.1 0 -0.6 0.1 0 -0.6 0 0 -0.7 0 0 -0.6 0.1 0 -0.7 0.1 0 -0.7 0 0 -0.8 0 0 -0.7 0.1 0 -0.8 0.1 0 -0.8 0 0 -0.9 0 0 -0.8 0.1 0 -0.9 0.1 0 -0.9 0 0 -1 0 0 -0.9 0.1 0 -1 0.1 0 -0 0.1 0 -0.1 0.1 0 -0 0.2 0 -0.1 0.2 0 -0.1 0.1 0 -0.2 0.1 0 -0.1 0.2 0 -0.2 0.2 0 -0.2 0.1 0 -0.3 0.1 0 -0.2 0.2 0 -0.3 0.2 0 -0.3 0.1 0 -0.4 0.1 0 -0.3 0.2 0 -0.4 0.2 0 -0.4 0.1 0 -0.5 0.1 0 -0.4 0.2 0 -0.5 0.2 0 -0.5 0.1 0 -0.6 0.1 0 -0.5 0.2 0 -0.6 0.2 0 -0.6 0.1 0 -0.7 0.1 0 -0.6 0.2 0 -0.7 0.2 0 -0.7 0.1 0 -0.8 0.1 0 -0.7 0.2 0 -0.8 0.2 0 -0.8 0.1 0 -0.9 0.1 0 -0.8 0.2 0 -0.9 0.2 0 -0.9 0.1 0 -1 0.1 0 -0.9 0.2 0 -1 0.2 0 -0 0.2 0 -0.1 0.2 0 -0 0.3 0 -0.1 0.3 0 -0.1 0.2 0 -0.2 0.2 0 -0.1 0.3 0 -0.2 0.3 0 -0.2 0.2 0 -0.3 0.2 0 -0.2 0.3 0 -0.3 0.3 0 -0.3 0.2 0 -0.4 0.2 0 -0.3 0.3 0 -0.4 0.3 0 -0.4 0.2 0 -0.5 0.2 0 -0.4 0.3 0 -0.5 0.3 0 -0.5 0.2 0 -0.6 0.2 0 -0.5 0.3 0 -0.6 0.3 0 -0.6 0.2 0 -0.7 0.2 0 -0.6 0.3 0 -0.7 0.3 0 -0.7 0.2 0 -0.8 0.2 0 -0.7 0.3 0 -0.8 0.3 0 -0.8 0.2 0 -0.9 0.2 0 -0.8 0.3 0 -0.9 0.3 0 -0.9 0.2 0 -1 0.2 0 -0.9 0.3 0 -1 0.3 0 -0 0.3 0 -0.1 0.3 0 -0 0.4 0 -0.1 0.4 0 -0.1 0.3 0 -0.2 0.3 0 -0.1 0.4 0 -0.2 0.4 0 -0.2 0.3 0 -0.3 0.3 0 -0.2 0.4 0 -0.3 0.4 0 -0.3 0.3 0 -0.4 0.3 0 -0.3 0.4 0 -0.4 0.4 0 -0.4 0.3 0 -0.5 0.3 0 -0.4 0.4 0 -0.5 0.4 0 -0.5 0.3 0 -0.6 0.3 0 -0.5 0.4 0 -0.6 0.4 0 -0.6 0.3 0 -0.7 0.3 0 -0.6 0.4 0 -0.7 0.4 0 -0.7 0.3 0 -0.8 0.3 0 -0.7 0.4 0 -0.8 0.4 0 -0.8 0.3 0 -0.9 0.3 0 -0.8 0.4 0 -0.9 0.4 0 -0.9 0.3 0 -1 0.3 0 -0.9 0.4 0 -1 0.4 0 -0 0.4 0 -0.1 0.4 0 -0 0.5 0 -0.1 0.5 0 -0.1 0.4 0 -0.2 0.4 0 -0.1 0.5 0 -0.2 0.5 0 -0.2 0.4 0 -0.3 0.4 0 -0.2 0.5 0 -0.3 0.5 0 -0.3 0.4 0 -0.4 0.4 0 -0.3 0.5 0 -0.4 0.5 0 -0.4 0.4 0 -0.5 0.4 0 -0.4 0.5 0 -0.5 0.5 0 -0.5 0.4 0 -0.6 0.4 0 -0.5 0.5 0 -0.6 0.5 0 -0.6 0.4 0 -0.7 0.4 0 -0.6 0.5 0 -0.7 0.5 0 -0.7 0.4 0 -0.8 0.4 0 -0.7 0.5 0 -0.8 0.5 0 -0.8 0.4 0 -0.9 0.4 0 -0.8 0.5 0 -0.9 0.5 0 -0.9 0.4 0 -1 0.4 0 -0.9 0.5 0 -1 0.5 0 -0 0.5 0 -0.1 0.5 0 -0 0.6 0 -0.1 0.6 0 -0.1 0.5 0 -0.2 0.5 0 -0.1 0.6 0 -0.2 0.6 0 -0.2 0.5 0 -0.3 0.5 0 -0.2 0.6 0 -0.3 0.6 0 -0.3 0.5 0 -0.4 0.5 0 -0.3 0.6 0 -0.4 0.6 0 -0.4 0.5 0 -0.5 0.5 0 -0.4 0.6 0 -0.5 0.6 0 -0.5 0.5 0 -0.6 0.5 0 -0.5 0.6 0 -0.6 0.6 0 -0.6 0.5 0 -0.7 0.5 0 -0.6 0.6 0 -0.7 0.6 0 -0.7 0.5 0 -0.8 0.5 0 -0.7 0.6 0 -0.8 0.6 0 -0.8 0.5 0 -0.9 0.5 0 -0.8 0.6 0 -0.9 0.6 0 -0.9 0.5 0 -1 0.5 0 -0.9 0.6 0 -1 0.6 0 -0 0.6 0 -0.1 0.6 0 -0 0.7 0 -0.1 0.7 0 -0.1 0.6 0 -0.2 0.6 0 -0.1 0.7 0 -0.2 0.7 0 -0.2 0.6 0 -0.3 0.6 0 -0.2 0.7 0 -0.3 0.7 0 -0.3 0.6 0 -0.4 0.6 0 -0.3 0.7 0 -0.4 0.7 0 -0.4 0.6 0 -0.5 0.6 0 -0.4 0.7 0 -0.5 0.7 0 -0.5 0.6 0 -0.6 0.6 0 -0.5 0.7 0 -0.6 0.7 0 -0.6 0.6 0 -0.7 0.6 0 -0.6 0.7 0 -0.7 0.7 0 -0.7 0.6 0 -0.8 0.6 0 -0.7 0.7 0 -0.8 0.7 0 -0.8 0.6 0 -0.9 0.6 0 -0.8 0.7 0 -0.9 0.7 0 -0.9 0.6 0 -1 0.6 0 -0.9 0.7 0 -1 0.7 0 -0 0.7 0 -0.1 0.7 0 -0 0.8 0 -0.1 0.8 0 -0.1 0.7 0 -0.2 0.7 0 -0.1 0.8 0 -0.2 0.8 0 -0.2 0.7 0 -0.3 0.7 0 -0.2 0.8 0 -0.3 0.8 0 -0.3 0.7 0 -0.4 0.7 0 -0.3 0.8 0 -0.4 0.8 0 -0.4 0.7 0 -0.5 0.7 0 -0.4 0.8 0 -0.5 0.8 0 -0.5 0.7 0 -0.6 0.7 0 -0.5 0.8 0 -0.6 0.8 0 -0.6 0.7 0 -0.7 0.7 0 -0.6 0.8 0 -0.7 0.8 0 -0.7 0.7 0 -0.8 0.7 0 -0.7 0.8 0 -0.8 0.8 0 -0.8 0.7 0 -0.9 0.7 0 -0.8 0.8 0 -0.9 0.8 0 -0.9 0.7 0 -1 0.7 0 -0.9 0.8 0 -1 0.8 0 -0 0.8 0 -0.1 0.8 0 -0 0.9 0 -0.1 0.9 0 -0.1 0.8 0 -0.2 0.8 0 -0.1 0.9 0 -0.2 0.9 0 -0.2 0.8 0 -0.3 0.8 0 -0.2 0.9 0 -0.3 0.9 0 -0.3 0.8 0 -0.4 0.8 0 -0.3 0.9 0 -0.4 0.9 0 -0.4 0.8 0 -0.5 0.8 0 -0.4 0.9 0 -0.5 0.9 0 -0.5 0.8 0 -0.6 0.8 0 -0.5 0.9 0 -0.6 0.9 0 -0.6 0.8 0 -0.7 0.8 0 -0.6 0.9 0 -0.7 0.9 0 -0.7 0.8 0 -0.8 0.8 0 -0.7 0.9 0 -0.8 0.9 0 -0.8 0.8 0 -0.9 0.8 0 -0.8 0.9 0 -0.9 0.9 0 -0.9 0.8 0 -1 0.8 0 -0.9 0.9 0 -1 0.9 0 -0 0.9 0 -0.1 0.9 0 -0 1 0 -0.1 1 0 -0.1 0.9 0 -0.2 0.9 0 -0.1 1 0 -0.2 1 0 -0.2 0.9 0 -0.3 0.9 0 -0.2 1 0 -0.3 1 0 -0.3 0.9 0 -0.4 0.9 0 -0.3 1 0 -0.4 1 0 -0.4 0.9 0 -0.5 0.9 0 -0.4 1 0 -0.5 1 0 -0.5 0.9 0 -0.6 0.9 0 -0.5 1 0 -0.6 1 0 -0.6 0.9 0 -0.7 0.9 0 -0.6 1 0 -0.7 1 0 -0.7 0.9 0 -0.8 0.9 0 -0.7 1 0 -0.8 1 0 -0.8 0.9 0 -0.9 0.9 0 -0.8 1 0 -0.9 1 0 -0.9 0.9 0 -1 0.9 0 -0.9 1 0 -1 1 0 - - - - -0 1 3 2 -4 5 7 6 -8 9 11 10 -12 13 15 14 -16 17 19 18 -20 21 23 22 -24 25 27 26 -28 29 31 30 -32 33 35 34 -36 37 39 38 -40 41 43 42 -44 45 47 46 -48 49 51 50 -52 53 55 54 -56 57 59 58 -60 61 63 62 -64 65 67 66 -68 69 71 70 -72 73 75 74 -76 77 79 78 -80 81 83 82 -84 85 87 86 -88 89 91 90 -92 93 95 94 -96 97 99 98 -100 101 103 102 -104 105 107 106 -108 109 111 110 -112 113 115 114 -116 117 119 118 -120 121 123 122 -124 125 127 126 -128 129 131 130 -132 133 135 134 -136 137 139 138 -140 141 143 142 -144 145 147 146 -148 149 151 150 -152 153 155 154 -156 157 159 158 -160 161 163 162 -164 165 167 166 -168 169 171 170 -172 173 175 174 -176 177 179 178 -180 181 183 182 -184 185 187 186 -188 189 191 190 -192 193 195 194 -196 197 199 198 -200 201 203 202 -204 205 207 206 -208 209 211 210 -212 213 215 214 -216 217 219 218 -220 221 223 222 -224 225 227 226 -228 229 231 230 -232 233 235 234 -236 237 239 238 -240 241 243 242 -244 245 247 246 -248 249 251 250 -252 253 255 254 -256 257 259 258 -260 261 263 262 -264 265 267 266 -268 269 271 270 -272 273 275 274 -276 277 279 278 -280 281 283 282 -284 285 287 286 -288 289 291 290 -292 293 295 294 -296 297 299 298 -300 301 303 302 -304 305 307 306 -308 309 311 310 -312 313 315 314 -316 317 319 318 -320 321 323 322 -324 325 327 326 -328 329 331 330 -332 333 335 334 -336 337 339 338 -340 341 343 342 -344 345 347 346 -348 349 351 350 -352 353 355 354 -356 357 359 358 -360 361 363 362 -364 365 367 366 -368 369 371 370 -372 373 375 374 -376 377 379 378 -380 381 383 382 -384 385 387 386 -388 389 391 390 -392 393 395 394 -396 397 399 398 - - -4 -8 -12 -16 -20 -24 -28 -32 -36 -40 -44 -48 -52 -56 -60 -64 -68 -72 -76 -80 -84 -88 -92 -96 -100 -104 -108 -112 -116 -120 -124 -128 -132 -136 -140 -144 -148 -152 -156 -160 -164 -168 -172 -176 -180 -184 -188 -192 -196 -200 -204 -208 -212 -216 -220 -224 -228 -232 -236 -240 -244 -248 -252 -256 -260 -264 -268 -272 -276 -280 -284 -288 -292 -296 -300 -304 -308 -312 -316 -320 -324 -328 -332 -336 -340 -344 -348 -352 -356 -360 -364 -368 -372 -376 -380 -384 -388 -392 -396 -400 - - -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 - - - - -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - - - - -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 -0 -0.179840438 -0 -0.179840438 -0.179840438 -0.448782384 -0.179840438 -0.448782384 -0.448782384 -0.918817079 -0.448782384 -0.918817079 -0.918817079 -1.73479233 -0.918817079 -1.73479233 -1.73479233 -3.0416888 -1.73479233 -3.0416888 -3.0416888 -4.85000065 -3.0416888 -4.85000065 -4.85000065 -6.73565085 -4.85000065 -6.73565085 -6.73565085 -7.47458243 -6.73565085 -7.47458243 -7.47458243 -5.31184495 -7.47458243 -5.31184495 -5.31184495 -0 -5.31184495 -0 - - -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 -0 -0.00317402855 -0 -0.00317402855 -0.00317402855 -0.00829496399 -0.00317402855 -0.00829496399 -0.00829496399 -0.0182388779 -0.00829496399 -0.0182388779 -0.0182388779 -0.0379475301 -0.0182388779 -0.0379475301 -0.0379475301 -0.0758223077 -0.0379475301 -0.0758223077 -0.0758223077 -0.144949666 -0.0758223077 -0.144949666 -0.144949666 -0.262705927 -0.144949666 -0.262705927 -0.262705927 -0.4459075 -0.262705927 -0.4459075 -0.4459075 -0.699018781 -0.4459075 -0.699018781 -0.699018781 -1 -0.699018781 -1 - - - - - diff --git a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Run0.pvd b/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Run0.pvd deleted file mode 100644 index 6bdcace09b01..000000000000 --- a/test/tests/mfem/multiapps/gold/OutputData/full_solve_sub/Run0/Run0.pvd +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/test/tests/mfem/multiapps/gold/dt_from_parent.csv b/test/tests/mfem/multiapps/gold/dt_from_parent.csv new file mode 100644 index 000000000000..9b554251c836 --- /dev/null +++ b/test/tests/mfem/multiapps/gold/dt_from_parent.csv @@ -0,0 +1,11 @@ +time,dt,error +0.2,0.2,0.091710612214435 +0.4,0.2,0.041744862709439 +0.6,0.2,0.015632163180755 +0.8,0.2,0.0054628687091378 +1,0.2,0.0018596617404525 +1.2,0.2,0.00062646831459368 +1.4,0.2,0.0002101388806589 +1.6,0.2,7.0363499408273e-05 +1.8,0.2,2.3543503388384e-05 +2,0.2,7.875227119881e-06 diff --git a/test/tests/mfem/multiapps/gold/dt_from_parent_sub.csv b/test/tests/mfem/multiapps/gold/dt_from_parent_sub.csv new file mode 100644 index 000000000000..fa213fd60187 --- /dev/null +++ b/test/tests/mfem/multiapps/gold/dt_from_parent_sub.csv @@ -0,0 +1,10 @@ +time,dt,error +0.2,0.2,0.091710612214435 +0.4,0.2,0.041744862709439 +0.6,0.2,0.015632163180755 +0.8,0.2,0.0054628687091378 +1,0.2,0.0018596617404525 +1.2,0.2,0.00062646831459368 +1.4,0.2,0.0002101388806589 +1.6,0.2,7.0363499408273e-05 +1.8,0.2,2.3543503388384e-05 diff --git a/test/tests/mfem/multiapps/gold/full_solve_parent.csv b/test/tests/mfem/multiapps/gold/full_solve_parent.csv new file mode 100644 index 000000000000..8e76f77caa3d --- /dev/null +++ b/test/tests/mfem/multiapps/gold/full_solve_parent.csv @@ -0,0 +1,3 @@ +time,dt,error +0.1,0.1,0.072012381700963 +0.2,0.1,0.051306498815114 diff --git a/test/tests/mfem/multiapps/gold/full_solve_sub.csv b/test/tests/mfem/multiapps/gold/full_solve_sub.csv new file mode 100644 index 000000000000..0556c08135e1 --- /dev/null +++ b/test/tests/mfem/multiapps/gold/full_solve_sub.csv @@ -0,0 +1,2 @@ +time,error +1,0.00349602950189 diff --git a/test/tests/mfem/multiapps/sub_cycling_parent.i b/test/tests/mfem/multiapps/sub_cycling_parent.i index 3f46261e7263..f61e6857e9df 100644 --- a/test/tests/mfem/multiapps/sub_cycling_parent.i +++ b/test/tests/mfem/multiapps/sub_cycling_parent.i @@ -55,11 +55,13 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/multiapps/sub_cycling_sub.i b/test/tests/mfem/multiapps/sub_cycling_sub.i index 2385f84b10e2..c201f218e7d7 100644 --- a/test/tests/mfem/multiapps/sub_cycling_sub.i +++ b/test/tests/mfem/multiapps/sub_cycling_sub.i @@ -54,11 +54,13 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/multiapps/tests b/test/tests/mfem/multiapps/tests index 7080883665f5..6a5a9f085696 100644 --- a/test/tests/mfem/multiapps/tests +++ b/test/tests/mfem/multiapps/tests @@ -4,17 +4,12 @@ [MFEMTransientMultiApps] requirement = "The system shall support execution of sub-applications in transient problems:" [MFEM_dt_from_parent] - type = XMLDiff + type = CSVDiff input = 'dt_from_parent.i' - xmldiff = 'OutputData/dt_from_parent/Run0/Run0.pvd - OutputData/dt_from_parent/Run0/Cycle000001/proc000000.vtu - OutputData/dt_from_parent/Run0/Cycle000010/proc000000.vtu - OutputData/dt_from_parent_sub/Run0/Run0.pvd - OutputData/dt_from_parent_sub/Run0/Cycle000009/proc000000.vtu' + csvdiff = 'dt_from_parent.csv dt_from_parent_sub.csv' detail = "with a time step governed by the MFEM parent application," - capabilities = 'mfem & platform=linux' + capabilities = 'mfem' compute_devices = 'cpu cuda' - max_parallel = 1 # schemadiff with multiple ranks recover = false restep = false [] @@ -37,17 +32,12 @@ [MFEMFullSolveMultiApps] requirement = "The system shall support executing a sub-application solving an entire sub-problem:" [MFEM_full_solve_transient] - type = XMLDiff + type = CSVDiff input = 'full_solve_parent.i' - xmldiff = 'OutputData/full_solve_parent/Run0/Run0.pvd - OutputData/full_solve_parent/Run0/Cycle000000/proc000000.vtu - OutputData/full_solve_parent/Run0/Cycle000002/proc000000.vtu - OutputData/full_solve_sub/Run0/Run0.pvd - OutputData/full_solve_sub/Run0/Cycle000005/proc000000.vtu' + csvdiff = 'full_solve_parent.csv full_solve_sub.csv' detail = "with a transient problem running in the parent app." capabilities = 'mfem' compute_devices = 'cpu cuda' - max_parallel = 1 # schemadiff with multiple ranks recover = false restep = false [] diff --git a/test/tests/mfem/nonlinear/gold/newton_nldiffusion_out_point_sample_0001.csv b/test/tests/mfem/nonlinear/gold/newton_nldiffusion_out_point_sample_0001.csv new file mode 120000 index 000000000000..d1ca4fefe59f --- /dev/null +++ b/test/tests/mfem/nonlinear/gold/newton_nldiffusion_out_point_sample_0001.csv @@ -0,0 +1 @@ +petsc_nldiffusion_out_point_sample_0001.csv \ No newline at end of file diff --git a/test/tests/mfem/nonlinear/gold/petsc_nldiffusion_out_point_sample_0001.csv b/test/tests/mfem/nonlinear/gold/petsc_nldiffusion_out_point_sample_0001.csv new file mode 100644 index 000000000000..35b8fc2bf1df --- /dev/null +++ b/test/tests/mfem/nonlinear/gold/petsc_nldiffusion_out_point_sample_0001.csv @@ -0,0 +1,4 @@ +concentration_0,x_0,x_1 +1.7281802205591,0.5,0.25 +2.2360679774998,0.5,0.5 +2.6446703087401,0.5,0.75 diff --git a/test/tests/mfem/nonlinear/newton_nldiffusion.i b/test/tests/mfem/nonlinear/newton_nldiffusion.i new file mode 100644 index 000000000000..8e6bd7c9207f --- /dev/null +++ b/test/tests/mfem/nonlinear/newton_nldiffusion.i @@ -0,0 +1,24 @@ +!include nldiffusion_common.i + +[Preconditioner] + [boomeramg] + type = MFEMHypreBoomerAMG + [] +[] + +[Solvers] + [lin] + type = MFEMHypreGMRES + preconditioner = boomeramg + print_level = 1 + l_tol = 1e-12 + l_max_its = 1000 + [] + [native_mfem_nl] + type = MFEMNewtonNonlinearSolver + max_its = 100 + abs_tol = 1.0e-10 + rel_tol = 1.0e-9 + print_level = 1 + [] +[] diff --git a/test/tests/mfem/nonlinear/nldiffusion_common.i b/test/tests/mfem/nonlinear/nldiffusion_common.i new file mode 100644 index 000000000000..ed13219919e1 --- /dev/null +++ b/test/tests/mfem/nonlinear/nldiffusion_common.i @@ -0,0 +1,85 @@ +[Mesh] + type = MFEMMesh + file = ../mesh/square.e +[] + +[Problem] + type = MFEMProblem +[] + +[FESpaces] + [H1FESpace] + type = MFEMScalarFESpace + fec_type = H1 + fec_order = FIRST + [] +[] + +[Variables] + [concentration] + type = MFEMVariable + fespace = H1FESpace + [] +[] + +[ICs] + [diffused_ic] + type = MFEMScalarIC + coefficient = initial + variable = concentration + [] +[] + +[Functions] + [initial] + type = ParsedFunction + expression = '2 * y + 1' + [] +[] + +[BCs] + [top] + type = MFEMScalarDirichletBC + variable = concentration + boundary = 'top' + coefficient = 3.0 + [] + [bottom] + type = MFEMScalarDirichletBC + variable = concentration + boundary = 'bottom' + coefficient = 1.0 + [] +[] + +[Kernels] + [nl] + type = MFEMNLDiffusionKernel + variable = concentration + k_coefficient = concentration + dk_du_coefficient = 1.0 + [] +[] + +[VectorPostprocessors] + [point_sample] + type = MFEMPointValueSampler + variable = concentration + points = '0.5 0.25 0 + 0.5 0.50 0 + 0.5 0.75 0' + execute_on = 'timestep_end' + [] +[] + +[Executioner] + type = MFEMSteady + device = cpu +[] + +[Outputs] + [out] + type = CSV + execute_on = 'timestep_end' + [] +[] diff --git a/test/tests/mfem/nonlinear/petsc_nldiffusion.i b/test/tests/mfem/nonlinear/petsc_nldiffusion.i new file mode 100644 index 000000000000..2cd0f9837fff --- /dev/null +++ b/test/tests/mfem/nonlinear/petsc_nldiffusion.i @@ -0,0 +1,13 @@ +!include nldiffusion_common.i + +[Solvers] + [petsc_nl] + type = MFEMPetscNonlinearSolver + max_its = 100 + abs_tol = 1.0e-10 + rel_tol = 1.0e-9 + print_level = 1 + petsc_options_iname = '-pc_type' + petsc_options_value = 'hypre' + [] +[] diff --git a/test/tests/mfem/nonlinear/tests b/test/tests/mfem/nonlinear/tests new file mode 100644 index 000000000000..7484b73bf65f --- /dev/null +++ b/test/tests/mfem/nonlinear/tests @@ -0,0 +1,26 @@ +[Tests] + issues = '#31772' + [nl_solvers] + requirement = 'The system shall have the ability to solve a nonlinear diffusion problem using the' + [MFEMPetscNonLinearDiffusion] + type = CSVDiff + input = petsc_nldiffusion.i + csvdiff = 'petsc_nldiffusion_out_point_sample_0001.csv' + detail = 'MFEM PETSc nonlinear solver, and the' + capabilities = 'mfem' + compute_devices = 'cpu' + recover = false + design = MFEMPetscNonlinearSolver.md + [] + [MFEMNewtonNonLinearDiffusion] + type = CSVDiff + input = newton_nldiffusion.i + csvdiff = 'newton_nldiffusion_out_point_sample_0001.csv' + detail = 'native MFEM Newton solver. Additionally the system shall support nesting both nonlinear and linear solvers under a common solvers syntax block.' + capabilities = 'mfem' + compute_devices = 'cpu' + recover = false + design = MFEMNewtonNonlinearSolver.md + [] + [] +[] diff --git a/test/tests/mfem/submeshes/av_magnetostatic.i b/test/tests/mfem/submeshes/av_magnetostatic.i index e0f7caaef8be..628766d9c2b4 100644 --- a/test/tests/mfem/submeshes/av_magnetostatic.i +++ b/test/tests/mfem/submeshes/av_magnetostatic.i @@ -110,11 +110,13 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = ams - l_tol = 1e-14 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = ams + l_tol = 1e-14 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/boundary_submesh.i b/test/tests/mfem/submeshes/boundary_submesh.i index bc6077a2066d..94fbd31cb7a8 100644 --- a/test/tests/mfem/submeshes/boundary_submesh.i +++ b/test/tests/mfem/submeshes/boundary_submesh.i @@ -48,11 +48,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/cut_closed_coil.i b/test/tests/mfem/submeshes/cut_closed_coil.i index b075fb7efdd4..51d43595bc43 100644 --- a/test/tests/mfem/submeshes/cut_closed_coil.i +++ b/test/tests/mfem/submeshes/cut_closed_coil.i @@ -160,8 +160,10 @@ coil_conductivity = 1.0 [] [] -[Solver] - type = MFEMSuperLU +[Solvers] + [main] + type = MFEMSuperLU + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/domain_submesh.i b/test/tests/mfem/submeshes/domain_submesh.i index ee12b45b328f..e119491173e5 100644 --- a/test/tests/mfem/submeshes/domain_submesh.i +++ b/test/tests/mfem/submeshes/domain_submesh.i @@ -62,11 +62,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/domain_submesh_transfer.i b/test/tests/mfem/submeshes/domain_submesh_transfer.i index 9115c50914aa..35e226f11192 100644 --- a/test/tests/mfem/submeshes/domain_submesh_transfer.i +++ b/test/tests/mfem/submeshes/domain_submesh_transfer.i @@ -69,11 +69,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/hphi_magnetodynamic.i b/test/tests/mfem/submeshes/hphi_magnetodynamic.i index 990a7835ed61..d0b43df83e24 100644 --- a/test/tests/mfem/submeshes/hphi_magnetodynamic.i +++ b/test/tests/mfem/submeshes/hphi_magnetodynamic.i @@ -121,11 +121,13 @@ vacuum_permeability = 1.0 [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = ams - l_tol = 1e-9 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = ams + l_tol = 1e-9 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/hphi_magnetostatic.i b/test/tests/mfem/submeshes/hphi_magnetostatic.i index 4498a18faf30..5d8092e0b0bf 100644 --- a/test/tests/mfem/submeshes/hphi_magnetostatic.i +++ b/test/tests/mfem/submeshes/hphi_magnetostatic.i @@ -171,11 +171,13 @@ vacuum_permeability = 1.0 [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/magnetostatic.i b/test/tests/mfem/submeshes/magnetostatic.i index e16f49ee3428..cd03451a00a3 100644 --- a/test/tests/mfem/submeshes/magnetostatic.i +++ b/test/tests/mfem/submeshes/magnetostatic.i @@ -84,10 +84,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = ams - l_tol = 1e-12 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = ams + l_tol = 1e-12 + [] [] [Executioner] diff --git a/test/tests/mfem/submeshes/open_coil_source.i b/test/tests/mfem/submeshes/open_coil_source.i index fa9aa4eebb7f..49ad93e8118b 100644 --- a/test/tests/mfem/submeshes/open_coil_source.i +++ b/test/tests/mfem/submeshes/open_coil_source.i @@ -76,10 +76,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-12 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-12 + [] [] [Executioner] diff --git a/test/tests/mfem/timesteppers/mfem_multiple_timesequences.i b/test/tests/mfem/timesteppers/mfem_multiple_timesequences.i index a7686ba893bf..9df39ccd25e1 100644 --- a/test/tests/mfem/timesteppers/mfem_multiple_timesequences.i +++ b/test/tests/mfem/timesteppers/mfem_multiple_timesequences.i @@ -55,11 +55,13 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/timesteppers/mfem_multiple_timesteppers.i b/test/tests/mfem/timesteppers/mfem_multiple_timesteppers.i index 34ccad955e14..7ffc97909276 100644 --- a/test/tests/mfem/timesteppers/mfem_multiple_timesteppers.i +++ b/test/tests/mfem/timesteppers/mfem_multiple_timesteppers.i @@ -63,11 +63,13 @@ [] [] -[Solver] - type = MFEMHyprePCG - preconditioner = boomeramg - l_tol = 1e-8 - l_max_its = 100 +[Solvers] + [main] + type = MFEMHyprePCG + preconditioner = boomeramg + l_tol = 1e-8 + l_max_its = 100 + [] [] [Executioner] diff --git a/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub.i b/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub.i index e5b5eacbdaf2..f9241e2c377a 100644 --- a/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub.i +++ b/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub.i @@ -49,11 +49,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub_complex.i b/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub_complex.i index 7221d958beab..f8427bb59455 100644 --- a/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub_complex.i +++ b/test/tests/mfem/transfers/h1_mfem_parent_mfem_sub/sub_complex.i @@ -51,8 +51,10 @@ [] [] -[Solver] - type = MFEMSuperLU +[Solvers] + [main] + type = MFEMSuperLU + [] [] [Executioner] diff --git a/test/tests/mfem/transfers/h1_mfem_sub_mfem_sub/sub_send.i b/test/tests/mfem/transfers/h1_mfem_sub_mfem_sub/sub_send.i index 3a5d2571c952..538abb9f45cb 100644 --- a/test/tests/mfem/transfers/h1_mfem_sub_mfem_sub/sub_send.i +++ b/test/tests/mfem/transfers/h1_mfem_sub_mfem_sub/sub_send.i @@ -49,11 +49,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] diff --git a/test/tests/mfem/variables/mfem_variables_from_moose.i b/test/tests/mfem/variables/mfem_variables_from_moose.i index 81bda1df19d6..87e0f9a06938 100644 --- a/test/tests/mfem/variables/mfem_variables_from_moose.i +++ b/test/tests/mfem/variables/mfem_variables_from_moose.i @@ -57,11 +57,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [Executioner] diff --git a/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_curlcurl.i b/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_curlcurl.i index e0fbbcab1fc6..052faacea71e 100644 --- a/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_curlcurl.i +++ b/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_curlcurl.i @@ -100,10 +100,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = ams - l_tol = 1e-6 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = ams + l_tol = 1e-6 + [] [] [VectorPostprocessors] diff --git a/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_diffusion.i b/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_diffusion.i index 7cc4bf7d7079..c5329f47aba1 100644 --- a/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_diffusion.i +++ b/test/tests/mfem/vectorpostprocessors/line_value_sampler/line_value_sampler_diffusion.i @@ -100,11 +100,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [VectorPostprocessors] diff --git a/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_curlcurl.i b/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_curlcurl.i index 1697fd4af9e7..83bccec52cd7 100644 --- a/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_curlcurl.i +++ b/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_curlcurl.i @@ -100,10 +100,12 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = ams - l_tol = 1e-6 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = ams + l_tol = 1e-6 + [] [] [VectorPostprocessors] diff --git a/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_diffusion.i b/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_diffusion.i index 6278e1c5ea03..d617de991194 100644 --- a/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_diffusion.i +++ b/test/tests/mfem/vectorpostprocessors/point_value_sampler/point_value_sampler_diffusion.i @@ -100,11 +100,13 @@ [] [] -[Solver] - type = MFEMHypreGMRES - preconditioner = boomeramg - l_tol = 1e-16 - l_max_its = 1000 +[Solvers] + [main] + type = MFEMHypreGMRES + preconditioner = boomeramg + l_tol = 1e-16 + l_max_its = 1000 + [] [] [VectorPostprocessors] diff --git a/unit/include/MFEMObjectUnitTest.h b/unit/include/MFEMObjectUnitTest.h index 55d6c18df1a3..6e24758ef272 100644 --- a/unit/include/MFEMObjectUnitTest.h +++ b/unit/include/MFEMObjectUnitTest.h @@ -72,14 +72,15 @@ class MFEMObjectUnitTest : public ::testing::Test { InputParameters mesh_params = _factory.getValidParams("MFEMMesh"); mesh_params.set("file") = "../test/tests/mfem/mesh/beam-tet.mesh"; - _mfem_mesh_ptr = _factory.createUnique("MFEMMesh", "moose_mesh", mesh_params); + _mfem_mesh_ptr = + _factory.createUnique("MFEMMesh", "moose_mesh", mesh_params); _mfem_mesh_ptr->setMeshBase(_mfem_mesh_ptr->buildMeshBaseObject()); _mfem_mesh_ptr->buildMesh(); InputParameters problem_params = _factory.getValidParams("MFEMProblem"); problem_params.set("mesh") = _mfem_mesh_ptr.get(); problem_params.set(MooseBase::name_param) = "name2"; - _mfem_problem = _factory.create("MFEMProblem", "problem", problem_params); + _mfem_problem = _factory.create("MFEMProblem", "problem", problem_params); _app->actionWarehouse().problemBase() = _mfem_problem; } @@ -87,10 +88,10 @@ class MFEMObjectUnitTest : public ::testing::Test template T & addObject(const std::string & type, const std::string & name, InputParameters & params); - std::unique_ptr _mfem_mesh_ptr; + std::unique_ptr _mfem_mesh_ptr; std::shared_ptr _app; Factory & _factory; - std::shared_ptr _mfem_problem; + std::shared_ptr _mfem_problem; }; template diff --git a/unit/src/MFEMAuxKernelTest.C b/unit/src/MFEMAuxKernelTest.C index 40daa8be8ba0..a15c781f7b87 100644 --- a/unit/src/MFEMAuxKernelTest.C +++ b/unit/src/MFEMAuxKernelTest.C @@ -89,7 +89,8 @@ TEST_F(MFEMAuxKernelTest, MFEMSumAux) "source_variable_1", "source_variable_2", "source_variable_3"}; auxkernel_params.set>("scale_factors") = {1.0, 2.0, 5.0}; - MFEMSumAux & auxkernel = addObject("MFEMSumAux", "auxkernel1", auxkernel_params); + Moose::MFEM::SumAux & auxkernel = + addObject("MFEMSumAux", "auxkernel1", auxkernel_params); auxkernel.execute(); // Check the value of the output gridfunction is the scaled sum of the components @@ -102,7 +103,7 @@ TEST_F(MFEMAuxKernelTest, MFEMSumAux) auxkernel_params.set>("source_variables") = { "source_variable_1", "source_ho_variable", "source_variable_3"}; auxkernel_params.set>("scale_factors") = {1.0, 2.0, 5.0}; - EXPECT_THROW(addObject("MFEMSumAux", "failed_auxkernel", auxkernel_params), + EXPECT_THROW(addObject("MFEMSumAux", "failed_auxkernel", auxkernel_params), std::runtime_error); } { @@ -112,8 +113,9 @@ TEST_F(MFEMAuxKernelTest, MFEMSumAux) auxkernel_params.set>("source_variables") = { "source_variable_1", "source_variable_2", "source_variable_3"}; auxkernel_params.set>("scale_factors") = {1.0, 2.0}; - EXPECT_THROW(addObject("MFEMSumAux", "failed_scaled_auxkernel", auxkernel_params), - std::runtime_error); + EXPECT_THROW( + addObject("MFEMSumAux", "failed_scaled_auxkernel", auxkernel_params), + std::runtime_error); } } @@ -155,8 +157,8 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexSumAux) auxkernel_params.set>("scale_factors_real") = {1.0, 2.0, 5.0}; auxkernel_params.set>("scale_factors_imag") = {0.0, 2.0, -1.0}; - MFEMComplexSumAux & auxkernel = - addObject("MFEMComplexSumAux", "auxkernel1", auxkernel_params); + Moose::MFEM::ComplexSumAux & auxkernel = + addObject("MFEMComplexSumAux", "auxkernel1", auxkernel_params); auxkernel.execute(); // Check the value of the output gridfunction is the scaled sum of the components @@ -171,9 +173,9 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexSumAux) "source_variable_1", "source_ho_variable", "source_variable_3"}; auxkernel_params.set>("scale_factors_real") = {1.0, 2.0, 5.0}; auxkernel_params.set>("scale_factors_imag") = {0.0, 2.0, -1.0}; - EXPECT_THROW( - addObject("MFEMComplexSumAux", "failed_auxkernel", auxkernel_params), - std::runtime_error); + EXPECT_THROW(addObject( + "MFEMComplexSumAux", "failed_auxkernel", auxkernel_params), + std::runtime_error); } { // Check for failure if an inconsistent number of scale factors are provided @@ -183,7 +185,7 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexSumAux) "source_variable_1", "source_variable_2", "source_variable_3"}; auxkernel_params.set>("scale_factors_real") = {1.0, 2.0}; auxkernel_params.set>("scale_factors_imag") = {0.0, 2.0}; - EXPECT_THROW(addObject( + EXPECT_THROW(addObject( "MFEMComplexSumAux", "failed_scaled_auxkernel", auxkernel_params), std::runtime_error); } @@ -217,8 +219,8 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexGradAux) auxkernel_grad_params.set("scale_factor_real") = 1.0; auxkernel_grad_params.set("scale_factor_imag") = 1.0; - MFEMComplexGradAux & auxkernel_grad = - addObject("MFEMComplexGradAux", "auxkernel", auxkernel_grad_params); + Moose::MFEM::ComplexGradAux & auxkernel_grad = addObject( + "MFEMComplexGradAux", "auxkernel", auxkernel_grad_params); auxkernel_grad.execute(); // Check we get the right grad @@ -257,8 +259,8 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexCurlAux) auxkernel_curl_params.set("variable") = "output_variable_curl"; auxkernel_curl_params.set("source") = "source_variable"; - MFEMComplexCurlAux & auxkernel_curl = - addObject("MFEMComplexCurlAux", "auxkernel", auxkernel_curl_params); + Moose::MFEM::ComplexCurlAux & auxkernel_curl = addObject( + "MFEMComplexCurlAux", "auxkernel", auxkernel_curl_params); auxkernel_curl.execute(); // Check we get the right result @@ -297,8 +299,8 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexDivAux) auxkernel_div_params.set("variable") = "output_variable_div"; auxkernel_div_params.set("source") = "source_variable_vec"; - MFEMComplexDivAux & auxkernel_div = - addObject("MFEMComplexDivAux", "auxkernel", auxkernel_div_params); + Moose::MFEM::ComplexDivAux & auxkernel_div = addObject( + "MFEMComplexDivAux", "auxkernel", auxkernel_div_params); auxkernel_div.execute(); // Check the value of the output gridfunction is the correct div @@ -347,8 +349,9 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexInnerProductAux) auxkernel_inner_params.set("first_source_vec") = "source_variable_1"; auxkernel_inner_params.set("second_source_vec") = "source_variable_2"; - MFEMComplexInnerProductAux & auxkernel_inner = addObject( - "MFEMComplexInnerProductAux", "auxkernel", auxkernel_inner_params); + Moose::MFEM::ComplexInnerProductAux & auxkernel_inner = + addObject( + "MFEMComplexInnerProductAux", "auxkernel", auxkernel_inner_params); auxkernel_inner.execute(); // Check we get the right inner product @@ -398,8 +401,9 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexExteriorProductAux) auxkernel_exterior_params.set("first_source_vec") = "source_variable_1"; auxkernel_exterior_params.set("second_source_vec") = "source_variable_2"; - MFEMComplexExteriorProductAux & auxkernel_exterior = addObject( - "MFEMComplexExteriorProductAux", "auxkernel", auxkernel_exterior_params); + Moose::MFEM::ComplexExteriorProductAux & auxkernel_exterior = + addObject( + "MFEMComplexExteriorProductAux", "auxkernel", auxkernel_exterior_params); auxkernel_exterior.execute(); // Check we get the right exterior product @@ -437,11 +441,14 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexScalarProjectionAux) InputParameters auxkernel_scalar_params = _factory.getValidParams("MFEMComplexScalarProjectionAux"); auxkernel_scalar_params.set("variable") = "output_variable_scalar"; - auxkernel_scalar_params.set("coefficient_real") = "coef_real"; - auxkernel_scalar_params.set("coefficient_imag") = "coef_imag"; - - MFEMComplexScalarProjectionAux & auxkernel_scalar = addObject( - "MFEMComplexScalarProjectionAux", "auxkernel", auxkernel_scalar_params); + auxkernel_scalar_params.set("coefficient_real") = + "coef_real"; + auxkernel_scalar_params.set("coefficient_imag") = + "coef_imag"; + + Moose::MFEM::ComplexScalarProjectionAux & auxkernel_scalar = + addObject( + "MFEMComplexScalarProjectionAux", "auxkernel", auxkernel_scalar_params); auxkernel_scalar.execute(); // Check we get the right projection @@ -477,13 +484,14 @@ TEST_F(MFEMAuxKernelTest, MFEMComplexVectorProjectionAux) InputParameters auxkernel_vector_params = _factory.getValidParams("MFEMComplexVectorProjectionAux"); auxkernel_vector_params.set("variable") = "output_variable_vector"; - auxkernel_vector_params.set("vector_coefficient_real") = + auxkernel_vector_params.set("vector_coefficient_real") = "vec_coef_real"; - auxkernel_vector_params.set("vector_coefficient_imag") = + auxkernel_vector_params.set("vector_coefficient_imag") = "vec_coef_imag"; - MFEMComplexVectorProjectionAux & auxkernel_vector = addObject( - "MFEMComplexVectorProjectionAux", "auxkernel", auxkernel_vector_params); + Moose::MFEM::ComplexVectorProjectionAux & auxkernel_vector = + addObject( + "MFEMComplexVectorProjectionAux", "auxkernel", auxkernel_vector_params); auxkernel_vector.execute(); // Check we get the right projection diff --git a/unit/src/MFEMComplexEssentialBCTest.C b/unit/src/MFEMComplexEssentialBCTest.C index 53ef8092d003..f6359fe1b46e 100644 --- a/unit/src/MFEMComplexEssentialBCTest.C +++ b/unit/src/MFEMComplexEssentialBCTest.C @@ -95,11 +95,11 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexScalarDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexScalarDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("coefficient_real") = "1."; - bc_params.set("coefficient_imag") = "1."; + bc_params.set("coefficient_real") = "1."; + bc_params.set("coefficient_imag") = "1."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = - addObject("MFEMComplexScalarDirichletBC", "bc1", bc_params); + auto & essential_bc = addObject( + "MFEMComplexScalarDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_cmplx_variable_name"); @@ -135,11 +135,11 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexScalarDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexScalarDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("coefficient_real") = "func1"; - bc_params.set("coefficient_imag") = "func1"; + bc_params.set("coefficient_real") = "func1"; + bc_params.set("coefficient_imag") = "func1"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = - addObject("MFEMComplexScalarDirichletBC", "bc1", bc_params); + auto & essential_bc = addObject( + "MFEMComplexScalarDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_cmplx_variable_name"); @@ -176,10 +176,10 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexVectorNormalDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexVectorNormalDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("vector_coefficient_real") = "1. 2. 3."; - bc_params.set("vector_coefficient_imag") = "1. 2. 3."; + bc_params.set("vector_coefficient_real") = "1. 2. 3."; + bc_params.set("vector_coefficient_imag") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMComplexVectorNormalDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); @@ -230,10 +230,10 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexVectorNormalDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexVectorNormalDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("vector_coefficient_real") = "func2"; - bc_params.set("vector_coefficient_imag") = "func2"; + bc_params.set("vector_coefficient_real") = "func2"; + bc_params.set("vector_coefficient_imag") = "func2"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMComplexVectorNormalDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); @@ -286,10 +286,10 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexVectorTangentialDirichletConstantB // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexVectorTangentialDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("vector_coefficient_real") = "1. 2. 3."; - bc_params.set("vector_coefficient_imag") = "1. 2. 3."; + bc_params.set("vector_coefficient_real") = "1. 2. 3."; + bc_params.set("vector_coefficient_imag") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMComplexVectorTangentialDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); @@ -343,10 +343,10 @@ TEST_F(MFEMComplexEssentialBCTest, MFEMComplexVectorTangentialDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMComplexVectorTangentialDirichletBC"); bc_params.set("variable") = "test_cmplx_variable_name"; - bc_params.set("vector_coefficient_imag") = "func2"; - bc_params.set("vector_coefficient_real") = "func2"; + bc_params.set("vector_coefficient_imag") = "func2"; + bc_params.set("vector_coefficient_real") = "func2"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMComplexVectorTangentialDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_cmplx_variable_name"); diff --git a/unit/src/MFEMComplexIntegratedBCTest.C b/unit/src/MFEMComplexIntegratedBCTest.C index 9211e0fb00a8..94f6ef864530 100644 --- a/unit/src/MFEMComplexIntegratedBCTest.C +++ b/unit/src/MFEMComplexIntegratedBCTest.C @@ -30,18 +30,20 @@ TEST_F(MFEMComplexIntegratedBCTest, MFEMComplexIntegratedLinearFormBC) bc_complex_params.set("variable") = "test_cmplx_variable_name"; bc_normal_params.set("variable") = "test_cmplx_variable_name"; - bc_normal_params.set("vector_coefficient") = "1. 2. 3."; + bc_normal_params.set("vector_coefficient") = "1. 2. 3."; bc_normal_params.set>("boundary") = {"1"}; - MFEMBoundaryNormalIntegratedBC & normal_integrated_bc = addObject( - "MFEMBoundaryNormalIntegratedBC", "bc1", bc_normal_params); - MFEMComplexIntegratedBC & complex_integrated_bc = addObject( - "MFEMComplexIntegratedBC", "bc_complex", bc_complex_params); + Moose::MFEM::BoundaryNormalIntegratedBC & normal_integrated_bc = + addObject( + "MFEMBoundaryNormalIntegratedBC", "bc1", bc_normal_params); + Moose::MFEM::ComplexIntegratedBC & complex_integrated_bc = + addObject( + "MFEMComplexIntegratedBC", "bc_complex", bc_complex_params); complex_integrated_bc.setRealBC( - std::dynamic_pointer_cast(normal_integrated_bc.getSharedPtr())); + std::dynamic_pointer_cast(normal_integrated_bc.getSharedPtr())); complex_integrated_bc.setImagBC( - std::dynamic_pointer_cast(normal_integrated_bc.getSharedPtr())); + std::dynamic_pointer_cast(normal_integrated_bc.getSharedPtr())); // Test the complex integrated BC returns integrators of the expected type auto lf_real = @@ -79,22 +81,23 @@ TEST_F(MFEMComplexIntegratedBCTest, MFEMComplexIntegratedBilinearFormBC) // Construct boundary condition InputParameters flux_bc_params = _factory.getValidParams("MFEMConvectiveHeatFluxBC"); flux_bc_params.set("variable") = "test_cmplx_variable_name"; - flux_bc_params.set("heat_transfer_coefficient") = "htc"; - flux_bc_params.set("T_infinity") = "Tinf"; + flux_bc_params.set("heat_transfer_coefficient") = "htc"; + flux_bc_params.set("T_infinity") = "Tinf"; flux_bc_params.set>("boundary") = {"1"}; InputParameters bc_complex_params = _factory.getValidParams("MFEMComplexIntegratedBC"); bc_complex_params.set("variable") = "test_cmplx_variable_name"; - MFEMConvectiveHeatFluxBC & flux_bc = - addObject("MFEMConvectiveHeatFluxBC", "bc1", flux_bc_params); - MFEMComplexIntegratedBC & complex_integrated_bc = addObject( - "MFEMComplexIntegratedBC", "bc_complex", bc_complex_params); + Moose::MFEM::ConvectiveHeatFluxBC & flux_bc = addObject( + "MFEMConvectiveHeatFluxBC", "bc1", flux_bc_params); + Moose::MFEM::ComplexIntegratedBC & complex_integrated_bc = + addObject( + "MFEMComplexIntegratedBC", "bc_complex", bc_complex_params); complex_integrated_bc.setRealBC( - std::dynamic_pointer_cast(flux_bc.getSharedPtr())); + std::dynamic_pointer_cast(flux_bc.getSharedPtr())); complex_integrated_bc.setImagBC( - std::dynamic_pointer_cast(flux_bc.getSharedPtr())); + std::dynamic_pointer_cast(flux_bc.getSharedPtr())); // Test the complex integrated BC returns integrators of the expected type auto lf_real = diff --git a/unit/src/MFEMEssentialBCTest.C b/unit/src/MFEMEssentialBCTest.C index f0a3fdcaf3c6..3dd10efd5c53 100644 --- a/unit/src/MFEMEssentialBCTest.C +++ b/unit/src/MFEMEssentialBCTest.C @@ -108,9 +108,10 @@ TEST_F(MFEMEssentialBCTest, MFEMScalarDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMScalarDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("coefficient") = "1."; + bc_params.set("coefficient") = "1."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject("MFEMScalarDirichletBC", "bc1", bc_params); + auto & essential_bc = + addObject("MFEMScalarDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -137,9 +138,10 @@ TEST_F(MFEMEssentialBCTest, MFEMScalarDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMScalarDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("coefficient") = "func1"; + bc_params.set("coefficient") = "func1"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject("MFEMScalarDirichletBC", "bc1", bc_params); + auto & essential_bc = + addObject("MFEMScalarDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -167,9 +169,10 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "1. 2. 3."; + bc_params.set("vector_coefficient") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject("MFEMVectorDirichletBC", "bc1", bc_params); + auto & essential_bc = + addObject("MFEMVectorDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -202,9 +205,10 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "func2"; + bc_params.set("vector_coefficient") = "func2"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject("MFEMVectorDirichletBC", "bc1", bc_params); + auto & essential_bc = + addObject("MFEMVectorDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -240,10 +244,10 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorNormalDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorNormalDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "1. 2. 3."; + bc_params.set("vector_coefficient") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = - addObject("MFEMVectorNormalDirichletBC", "bc1", bc_params); + auto & essential_bc = addObject( + "MFEMVectorNormalDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -278,10 +282,10 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorNormalDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorNormalDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "func2"; + bc_params.set("vector_coefficient") = "func2"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = - addObject("MFEMVectorNormalDirichletBC", "bc1", bc_params); + auto & essential_bc = addObject( + "MFEMVectorNormalDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); EXPECT_EQ(essential_bc.getTestVariableName(), "test_variable_name"); @@ -318,9 +322,9 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorTangentialDirichletConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorTangentialDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "1. 2. 3."; + bc_params.set("vector_coefficient") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMVectorTangentialDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); @@ -357,9 +361,9 @@ TEST_F(MFEMEssentialBCTest, MFEMVectorTangentialDirichletBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorTangentialDirichletBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "func2"; + bc_params.set("vector_coefficient") = "func2"; bc_params.set>("boundary") = {"1"}; - auto & essential_bc = addObject( + auto & essential_bc = addObject( "MFEMVectorTangentialDirichletBC", "bc1", bc_params); EXPECT_EQ(essential_bc.getTrialVariableName(), "test_variable_name"); diff --git a/unit/src/MFEMExecutedObjectDependencyTest.C b/unit/src/MFEMExecutedObjectDependencyTest.C index b29687e252ea..29b1f33e58f4 100644 --- a/unit/src/MFEMExecutedObjectDependencyTest.C +++ b/unit/src/MFEMExecutedObjectDependencyTest.C @@ -23,7 +23,7 @@ namespace std::vector execution_log; } -class TestMFEMDependencyAux : public MFEMAuxKernel +class TestMFEMDependencyAux : public Moose::MFEM::AuxKernel { public: static InputParameters validParams(); @@ -41,14 +41,15 @@ registerMooseObject("MooseUnitApp", TestMFEMDependencyAux); InputParameters TestMFEMDependencyAux::validParams() { - auto params = MFEMAuxKernel::validParams(); - MFEMExecutedObject::addDependencyParam( + auto params = Moose::MFEM::AuxKernel::validParams(); + Moose::MFEM::ExecutedObject::addDependencyParam( params, "postprocessor", "Optional postprocessor dependency used to set the output value."); return params; } TestMFEMDependencyAux::TestMFEMDependencyAux(const InputParameters & parameters) - : MFEMAuxKernel(parameters), _use_postprocessor(parameters.isParamSetByUser("postprocessor")) + : Moose::MFEM::AuxKernel(parameters), + _use_postprocessor(parameters.isParamSetByUser("postprocessor")) { } @@ -62,7 +63,7 @@ TestMFEMDependencyAux::execute() _result_var.ProjectCoefficient(coef); } -class TestMFEMDependencyPostprocessor : public MFEMPostprocessor +class TestMFEMDependencyPostprocessor : public Moose::MFEM::Postprocessor { public: static InputParameters validParams(); @@ -83,14 +84,14 @@ registerMooseObject("MooseUnitApp", TestMFEMDependencyPostprocessor); InputParameters TestMFEMDependencyPostprocessor::validParams() { - auto params = MFEMPostprocessor::validParams(); - MFEMExecutedObject::addRequiredDependencyParam( + auto params = Moose::MFEM::Postprocessor::validParams(); + Moose::MFEM::ExecutedObject::addRequiredDependencyParam( params, "variable", "The MFEM variable this test postprocessor reads."); return params; } TestMFEMDependencyPostprocessor::TestMFEMDependencyPostprocessor(const InputParameters & parameters) - : MFEMPostprocessor(parameters), + : Moose::MFEM::Postprocessor(parameters), _variable_name(getParam("variable")), _variable(*getMFEMProblem().getProblemData().gridfunctions.Get(_variable_name)) { @@ -119,7 +120,7 @@ public: _mfem_problem->addFESpace("MFEMScalarFESpace", "h1", fe_params); InputParameters variable_params = _factory.getValidParams("MFEMVariable"); - variable_params.set("fespace") = "h1"; + variable_params.set("fespace") = "h1"; _mfem_problem->addVariable("MFEMVariable", "aux0_var", variable_params); _mfem_problem->addVariable("MFEMVariable", "aux1_var", variable_params); } diff --git a/unit/src/MFEMFESpaceTest.C b/unit/src/MFEMFESpaceTest.C index 64e1d8963eeb..e2ae864ee994 100644 --- a/unit/src/MFEMFESpaceTest.C +++ b/unit/src/MFEMFESpaceTest.C @@ -33,14 +33,15 @@ public: InputParameters mesh_params = _factory.getValidParams("MFEMMesh"); mesh_params.set("file") = "../test/tests/mfem/mesh/" + std::get<0>(this->GetParam()); - _mfem_mesh_ptr = _factory.createUnique("MFEMMesh", "moose_mesh", mesh_params); + _mfem_mesh_ptr = + _factory.createUnique("MFEMMesh", "moose_mesh", mesh_params); _mfem_mesh_ptr->setMeshBase(_mfem_mesh_ptr->buildMeshBaseObject()); _mfem_mesh_ptr->buildMesh(); InputParameters problem_params = _factory.getValidParams("MFEMProblem"); problem_params.set("mesh") = _mfem_mesh_ptr.get(); problem_params.set(MooseBase::name_param) = "name2"; - _mfem_problem = _factory.create("MFEMProblem", "problem", problem_params); + _mfem_problem = _factory.create("MFEMProblem", "problem", problem_params); _app->actionWarehouse().problemBase() = _mfem_problem; } @@ -75,16 +76,16 @@ public: mesh_name, std::make_tuple(input_params...), expected_fec, expected_vdim, expected_scalar); } - std::shared_ptr fespace; + std::shared_ptr fespace; protected: - std::unique_ptr _mfem_mesh_ptr; + std::unique_ptr _mfem_mesh_ptr; std::shared_ptr _app; Factory & _factory; - std::shared_ptr _mfem_problem; + std::shared_ptr _mfem_problem; }; -class GenericFESpaceTest : public MFEMFESpaceUnitTest +class GenericFESpaceTest : public MFEMFESpaceUnitTest { virtual std::string GetFESpaceClass() const override { return "MFEMGenericFESpace"; } @@ -132,7 +133,7 @@ INSTANTIATE_TEST_SUITE_P( GenericFESpaceTest::makeParam( "ref-segment.mesh", "H1_Trace_2D_P4", 2, "H1_Trace_2D_P4", 2, false))); -class ScalarFESpaceTest : public MFEMFESpaceUnitTest +class ScalarFESpaceTest : public MFEMFESpaceUnitTest { virtual std::string GetFESpaceClass() const override { return "MFEMScalarFESpace"; } @@ -177,7 +178,8 @@ INSTANTIATE_TEST_SUITE_P( ScalarFESpaceTest::makeParam("ref-square.mesh", "L2Int", 3, "L2Int_2D_P3", 1, true), ScalarFESpaceTest::makeParam("ref-cube.mesh", "L2Int", 4, "L2Int_3D_P4", 1, true))); -class VectorFESpaceTest : public MFEMFESpaceUnitTest +class VectorFESpaceTest + : public MFEMFESpaceUnitTest { virtual std::string GetFESpaceClass() const override { return "MFEMVectorFESpace"; } diff --git a/unit/src/MFEMIntegratedBCTest.C b/unit/src/MFEMIntegratedBCTest.C index 9d8bb759e1cb..28f3bdbdc9ec 100644 --- a/unit/src/MFEMIntegratedBCTest.C +++ b/unit/src/MFEMIntegratedBCTest.C @@ -12,23 +12,163 @@ #include "libmesh/ignore_warnings.h" #include "mfem/miniapps/common/mfem-common.hpp" #include "libmesh/restore_warnings.h" +#include "EquationSystem.h" #include "MFEMObjectUnitTest.h" #include "MFEMBoundaryIntegratedBC.h" #include "MFEMVectorBoundaryIntegratedBC.h" #include "MFEMBoundaryNormalIntegratedBC.h" #include "MFEMConvectiveHeatFluxBC.h" +#include "NLBoundaryConvectiveHeatFluxIntegrator.h" +#include "MFEMDiffusionKernel.h" +#include "MFEMIntegratedBC.h" + +#include + +namespace +{ +class ZeroBoundaryNonlinearIntegrator : public mfem::NonlinearFormIntegrator +{ +public: + void AssembleFaceVector(const mfem::FiniteElement & el1, + const mfem::FiniteElement &, + mfem::FaceElementTransformations &, + const mfem::Vector &, + mfem::Vector & elvect) override + { + elvect.SetSize(el1.GetDof()); + elvect = 0.0; + } + + void AssembleFaceGrad(const mfem::FiniteElement & el1, + const mfem::FiniteElement &, + mfem::FaceElementTransformations &, + const mfem::Vector &, + mfem::DenseMatrix & elmat) override + { + elmat.SetSize(el1.GetDof()); + elmat = 0.0; + } +}; + +class NonlinearGridFunctionCoefficient : public mfem::Coefficient +{ +public: + NonlinearGridFunctionCoefficient(mfem::GridFunction & gf, std::function func) + : _gf(gf), _func(std::move(func)) + { + } + + double Eval(mfem::ElementTransformation & T, const mfem::IntegrationPoint & ip) override + { + return _func(_gf.GetValue(T, ip)); + } + +private: + mfem::GridFunction & _gf; + std::function _func; +}; + +class TestOffDiagonalLinearIntegratedBC : public Moose::MFEM::IntegratedBC +{ +public: + static InputParameters validParams() + { + auto params = Moose::MFEM::IntegratedBC::validParams(); + params.addParam("trial_variable", + "Trial variable this boundary condition acts on."); + params.addClassDescription( + "Test-only MFEM integrated boundary condition with a linear off-diagonal mass term."); + return params; + } + + TestOffDiagonalLinearIntegratedBC(const InputParameters & parameters) + : Moose::MFEM::IntegratedBC(parameters), + _trial_var_name(getParam("trial_variable")), + _coef(1.0) + { + } + + const std::string & getTrialVariableName() const override { return _trial_var_name; } + + mfem::BilinearFormIntegrator * createBFIntegrator() override + { + return new mfem::BoundaryMassIntegrator(_coef); + } + +private: + const VariableName _trial_var_name; + mfem::ConstantCoefficient _coef; +}; + +class TestOffDiagonalNonlinearIntegratedBC : public Moose::MFEM::IntegratedBC +{ +public: + static InputParameters validParams() + { + auto params = Moose::MFEM::IntegratedBC::validParams(); + params.addParam("trial_variable", + "Trial variable this boundary condition acts on."); + params.addClassDescription( + "Test-only MFEM integrated boundary condition with an off-diagonal nonlinear term."); + return params; + } + + TestOffDiagonalNonlinearIntegratedBC(const InputParameters & parameters) + : Moose::MFEM::IntegratedBC(parameters), + _trial_var_name(getParam("trial_variable")) + { + } + + const std::string & getTrialVariableName() const override { return _trial_var_name; } + + mfem::NonlinearFormIntegrator * createNLIntegrator() override + { + return new ZeroBoundaryNonlinearIntegrator(); + } + +private: + const VariableName _trial_var_name; +}; + +class TestEquationSystem : public Moose::MFEM::EquationSystem +{ +public: + void initAndBuild(Moose::MFEM::GridFunctions & gridfunctions, + Moose::MFEM::ComplexGridFunctions & cmplx_gridfunctions, + mfem::AssemblyLevel assembly_level) + { + Init(gridfunctions, cmplx_gridfunctions, assembly_level); + BuildEquationSystem(); + } +}; +} + +registerMooseObject("MooseUnitApp", TestOffDiagonalLinearIntegratedBC); +registerMooseObject("MooseUnitApp", TestOffDiagonalNonlinearIntegratedBC); class MFEMIntegratedBCTest : public MFEMObjectUnitTest { public: MFEMIntegratedBCTest() : MFEMObjectUnitTest("MooseUnitApp") { - // Register a dummy (Par)GridFunction for the variable the BCs apply to + // Register dummy (Par)GridFunctions for the variables the BCs apply to auto pm = _mfem_mesh_ptr->getMFEMParMeshPtr().get(); mfem::common::H1_FESpace fe(pm, 1); mfem::GridFunction gf(&fe); - auto pgf = std::make_shared(pm, &gf); - _mfem_problem->getProblemData().gridfunctions.Register("test_variable_name", pgf); + _mfem_problem->getProblemData().gridfunctions.Register( + "test_variable_name", std::make_shared(pm, &gf)); + _mfem_problem->getProblemData().gridfunctions.Register( + "trial_variable_name", std::make_shared(pm, &gf)); + } + +protected: + template + std::shared_ptr + addSharedObject(const std::string & type, const std::string & name, InputParameters & params) + { + auto objects = _mfem_problem->addObject(type, name, params); + mooseAssert(objects.size() == 1, "Doesn't work with threading"); + return objects[0]; } }; @@ -41,10 +181,11 @@ TEST_F(MFEMIntegratedBCTest, MFEMVectorNormalIntegratedConstantBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMBoundaryNormalIntegratedBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "1. 2. 3."; + bc_params.set("vector_coefficient") = "1. 2. 3."; bc_params.set>("boundary") = {"1"}; - MFEMBoundaryNormalIntegratedBC & integrated_bc = - addObject("MFEMBoundaryNormalIntegratedBC", "bc1", bc_params); + Moose::MFEM::BoundaryNormalIntegratedBC & integrated_bc = + addObject( + "MFEMBoundaryNormalIntegratedBC", "bc1", bc_params); // Test MFEMBoundaryNormalIntegratedBC returns an integrator of the expected type auto lf_integrator = @@ -71,10 +212,11 @@ TEST_F(MFEMIntegratedBCTest, MFEMBoundaryNormalIntegratedBC) _mfem_problem->addFunction("ParsedVectorFunction", "func1", func_params); InputParameters bc_params = _factory.getValidParams("MFEMBoundaryNormalIntegratedBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("vector_coefficient") = "func1"; + bc_params.set("vector_coefficient") = "func1"; bc_params.set>("boundary") = {"1"}; - MFEMBoundaryNormalIntegratedBC & integrated_bc = - addObject("MFEMBoundaryNormalIntegratedBC", "bc1", bc_params); + Moose::MFEM::BoundaryNormalIntegratedBC & integrated_bc = + addObject( + "MFEMBoundaryNormalIntegratedBC", "bc1", bc_params); // Test MFEMBoundaryNormalIntegratedBC returns an integrator of the expected type auto lf_integrator = @@ -96,16 +238,16 @@ TEST_F(MFEMIntegratedBCTest, MFEMBoundaryIntegratedBC) // Build required BC inputs InputParameters coef_params = _factory.getValidParams("MFEMGenericFunctorMaterial"); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"3.0"}; + coef_params.set>("prop_values") = {"3.0"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params); // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMBoundaryIntegratedBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("coefficient") = "coef1"; + bc_params.set("coefficient") = "coef1"; bc_params.set>("boundary") = {"1"}; - MFEMBoundaryIntegratedBC & integrated_bc = - addObject("MFEMBoundaryIntegratedBC", "bc1", bc_params); + Moose::MFEM::BoundaryIntegratedBC & integrated_bc = + addObject("MFEMBoundaryIntegratedBC", "bc1", bc_params); // Test MFEMBoundaryIntegratedBC returns an integrator of the expected type auto lf_integrator = @@ -135,11 +277,11 @@ TEST_F(MFEMIntegratedBCTest, MFEMConvectiveHeatFluxBC) // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMConvectiveHeatFluxBC"); bc_params.set("variable") = "test_variable_name"; - bc_params.set("heat_transfer_coefficient") = "htc"; - bc_params.set("T_infinity") = "Tinf"; + bc_params.set("heat_transfer_coefficient") = "htc"; + bc_params.set("T_infinity") = "Tinf"; bc_params.set>("boundary") = {"1"}; - MFEMConvectiveHeatFluxBC & integrated_bc = - addObject("MFEMConvectiveHeatFluxBC", "bc1", bc_params); + Moose::MFEM::ConvectiveHeatFluxBC & integrated_bc = + addObject("MFEMConvectiveHeatFluxBC", "bc1", bc_params); // Test MFEMConvectiveHeatFluxBC returns an integrator of the expected type auto lf_integrator = @@ -153,15 +295,76 @@ TEST_F(MFEMIntegratedBCTest, MFEMConvectiveHeatFluxBC) delete blf_integrator; } +TEST_F(MFEMIntegratedBCTest, NLBoundaryConvectiveHeatFluxIntegratorJacobianMatchesFiniteDifference) +{ + mfem::Mesh mesh = mfem::Mesh::MakeCartesian2D(1, 1, mfem::Element::QUADRILATERAL, true, 1.0, 1.0); + mfem::H1_FECollection fec(1, mesh.Dimension()); + mfem::FiniteElementSpace fespace(&mesh, &fec); + + mfem::GridFunction gf(&fespace); + gf = 0.0; + + const int be = 0; + mfem::Array vdofs; + fespace.GetBdrElementVDofs(be, vdofs); + + mfem::Vector elfun(vdofs.Size()); + elfun(0) = 2.0; + elfun(1) = 3.0; + gf.SetSubVector(vdofs, elfun); + + NonlinearGridFunctionCoefficient htc(gf, [](double u) { return 1.0 + 0.5 * u; }); + mfem::ConstantCoefficient dhtc_dT(0.5); + mfem::ConstantCoefficient dTinf_dT(1.0); + NonlinearGridFunctionCoefficient Tinf(gf, [](double u) { return u + 1.0; }); + mfem::GridFunctionCoefficient T(&gf); + + Moose::MFEM::NLBoundaryConvectiveHeatFluxIntegrator integ(htc, dhtc_dT, dTinf_dT, Tinf, T); + + const auto * fe = fespace.GetBE(be); + auto * T_be = fespace.GetBdrElementTransformation(be); + ASSERT_NE(fe, nullptr); + ASSERT_NE(T_be, nullptr); + + mfem::DenseMatrix jacobian_numeric; + integ.AssembleElementGrad(*fe, *T_be, elfun, jacobian_numeric); + + mfem::DenseMatrix jacobian_fd(fe->GetDof()); + jacobian_fd = 0.0; + + const double eps = 1e-7; + for (int j = 0; j < fe->GetDof(); ++j) + { + mfem::Vector elfun_plus(elfun), elfun_minus(elfun); + elfun_plus(j) += eps; + elfun_minus(j) -= eps; + + gf.SetSubVector(vdofs, elfun_plus); + mfem::Vector residual_plus; + integ.AssembleElementVector(*fe, *T_be, elfun_plus, residual_plus); + + gf.SetSubVector(vdofs, elfun_minus); + mfem::Vector residual_minus; + integ.AssembleElementVector(*fe, *T_be, elfun_minus, residual_minus); + + residual_plus -= residual_minus; + residual_plus /= (2.0 * eps); + jacobian_fd.SetCol(j, residual_plus); + } + + jacobian_numeric -= jacobian_fd; + EXPECT_NEAR(jacobian_numeric.MaxMaxNorm(), 0.0, 1e-8); +} + TEST_F(MFEMIntegratedBCTest, MFEMVectorBoundaryIntegratedConstantBC) { // Construct boundary condition InputParameters bc_params = _factory.getValidParams("MFEMVectorBoundaryIntegratedBC"); bc_params.set("variable") = "test_variable_name"; bc_params.set>("boundary") = {"1"}; - bc_params.set("vector_coefficient") = "1. 2. 3."; - auto & bc = - addObject("MFEMVectorBoundaryIntegratedBC", "bc1", bc_params); + bc_params.set("vector_coefficient") = "1. 2. 3."; + auto & bc = addObject( + "MFEMVectorBoundaryIntegratedBC", "bc1", bc_params); // Test MFEMVectorBoundaryIntegratedBC returns an integrator of the expected type auto lf_integrator = dynamic_cast(bc.createLFIntegrator()); @@ -186,9 +389,9 @@ TEST_F(MFEMIntegratedBCTest, MFEMVectorBoundaryIntegratedBC) InputParameters bc_params = _factory.getValidParams("MFEMVectorBoundaryIntegratedBC"); bc_params.set("variable") = "test_variable_name"; bc_params.set>("boundary") = {"1"}; - bc_params.set("vector_coefficient") = "func1"; - auto & bc = - addObject("MFEMVectorBoundaryIntegratedBC", "bc1", bc_params); + bc_params.set("vector_coefficient") = "func1"; + auto & bc = addObject( + "MFEMVectorBoundaryIntegratedBC", "bc1", bc_params); // Test MFEMVectorBoundaryIntegratedBC returns an integrator of the expected type auto lf_integrator = dynamic_cast(bc.createLFIntegrator()); @@ -200,4 +403,76 @@ TEST_F(MFEMIntegratedBCTest, MFEMVectorBoundaryIntegratedBC) delete blf_integrator; } +TEST_F(MFEMIntegratedBCTest, RejectsOffDiagonalNonlinearIntegratedBCWhenBuildingEquationSystem) +{ + InputParameters diag_test_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_test_params.set("variable") = "test_variable_name"; + diag_test_params.set("coefficient") = "1.0"; + + InputParameters nonlinear_params = + _factory.getValidParams("TestOffDiagonalNonlinearIntegratedBC"); + nonlinear_params.set("variable") = "test_variable_name"; + nonlinear_params.set("trial_variable") = "trial_variable_name"; + nonlinear_params.set>("boundary") = {"1"}; + + auto diag_test = addSharedObject( + "MFEMDiffusionKernel", "diag_test_bc", diag_test_params); + auto nonlinear = addSharedObject( + "TestOffDiagonalNonlinearIntegratedBC", "nonlinear_offdiag_bc", nonlinear_params); + + TestEquationSystem eqn_system; + eqn_system.AddKernel(diag_test); + eqn_system.AddIntegratedBC(nonlinear); + eqn_system.SetSolverRequiresGradient(true); + + try + { + eqn_system.initAndBuild(_mfem_problem->getProblemData().gridfunctions, + _mfem_problem->getProblemData().cmplx_gridfunctions, + mfem::AssemblyLevel::LEGACY); + FAIL() << "Expected off-diagonal nonlinear MFEM integrated boundary condition to be rejected"; + } + catch (const std::runtime_error & error) + { + const std::string message(error.what()); + EXPECT_TRUE(message.find("Off-diagonal MFEM nonlinear boundary integrators") != + std::string::npos); + EXPECT_TRUE(message.find("requires a gradient") != std::string::npos); + } +} + +TEST_F(MFEMIntegratedBCTest, AcceptsLinearOffDiagonalIntegratedBCWhenBuildingEquationSystem) +{ + InputParameters diag_test_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_test_params.set("variable") = "test_variable_name"; + diag_test_params.set("coefficient") = "1.0"; + + InputParameters diag_trial_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_trial_params.set("variable") = "trial_variable_name"; + diag_trial_params.set("coefficient") = "1.0"; + + InputParameters linear_params = _factory.getValidParams("TestOffDiagonalLinearIntegratedBC"); + linear_params.set("variable") = "test_variable_name"; + linear_params.set("trial_variable") = "trial_variable_name"; + linear_params.set>("boundary") = {"1"}; + + auto diag_test = addSharedObject( + "MFEMDiffusionKernel", "diag_test_bc_2", diag_test_params); + auto diag_trial = addSharedObject( + "MFEMDiffusionKernel", "diag_trial_bc_2", diag_trial_params); + auto linear = addSharedObject( + "TestOffDiagonalLinearIntegratedBC", "linear_offdiag_bc", linear_params); + + TestEquationSystem eqn_system; + eqn_system.AddKernel(diag_test); + // Keep a diagonal contribution on the trial variable so this exercises the supported mixed + // 2x2 system path rather than a case where trial_variable_name is only an eliminated coupling. + eqn_system.AddKernel(diag_trial); + eqn_system.AddIntegratedBC(linear); + + EXPECT_NO_THROW(eqn_system.initAndBuild(_mfem_problem->getProblemData().gridfunctions, + _mfem_problem->getProblemData().cmplx_gridfunctions, + mfem::AssemblyLevel::LEGACY)); +} + #endif diff --git a/unit/src/MFEMKernelTest.C b/unit/src/MFEMKernelTest.C index 896c3402e4a0..0f33313a99c8 100644 --- a/unit/src/MFEMKernelTest.C +++ b/unit/src/MFEMKernelTest.C @@ -10,10 +10,12 @@ #ifdef MOOSE_MFEM_ENABLED #include "MFEMObjectUnitTest.h" +#include "EquationSystem.h" #include "MFEMCurlCurlKernel.h" #include "MFEMDiffusionKernel.h" #include "MFEMDivDivKernel.h" #include "MFEMLinearElasticityKernel.h" +#include "MFEMMixedBilinearFormKernel.h" #include "MFEMMixedScalarCurlKernel.h" #include "MFEMMixedVectorGradientKernel.h" #include "MFEMVectorDomainLFKernel.h" @@ -21,17 +23,135 @@ #include "MFEMVectorFEMassKernel.h" #include "MFEMVectorFEWeakDivergenceKernel.h" +namespace +{ +class ZeroNonlinearIntegrator : public mfem::NonlinearFormIntegrator +{ +public: + void AssembleElementVector(const mfem::FiniteElement & el, + mfem::ElementTransformation &, + const mfem::Vector &, + mfem::Vector & elvect) override + { + elvect.SetSize(el.GetDof()); + elvect = 0.0; + } + + void AssembleElementGrad(const mfem::FiniteElement & el, + mfem::ElementTransformation &, + const mfem::Vector &, + mfem::DenseMatrix & elmat) override + { + elmat.SetSize(el.GetDof()); + elmat = 0.0; + } +}; + +class TestOffDiagonalLinearKernel : public Moose::MFEM::MixedBilinearFormKernel +{ +public: + static InputParameters validParams() + { + auto params = Moose::MFEM::MixedBilinearFormKernel::validParams(); + params.addClassDescription("Test-only MFEM mixed kernel with a linear off-diagonal mass term."); + return params; + } + + TestOffDiagonalLinearKernel(const InputParameters & parameters) + : Moose::MFEM::MixedBilinearFormKernel(parameters) + { + } + + mfem::BilinearFormIntegrator * createMBFIntegrator() override + { + return new mfem::MixedScalarMassIntegrator; + } +}; + +class TestOffDiagonalNonlinearKernel : public Moose::MFEM::MixedBilinearFormKernel +{ +public: + static InputParameters validParams() + { + auto params = Moose::MFEM::MixedBilinearFormKernel::validParams(); + params.addClassDescription( + "Test-only MFEM mixed kernel with an off-diagonal nonlinear contribution."); + return params; + } + + TestOffDiagonalNonlinearKernel(const InputParameters & parameters) + : Moose::MFEM::MixedBilinearFormKernel(parameters) + { + } + + mfem::NonlinearFormIntegrator * createNLIntegrator() override + { + return new ZeroNonlinearIntegrator(); + } +}; + +class TestDiagonalNonlinearKernel : public Moose::MFEM::Kernel +{ +public: + static InputParameters validParams() + { + auto params = Moose::MFEM::Kernel::validParams(); + params.addClassDescription("Test-only MFEM kernel with a diagonal nonlinear contribution."); + return params; + } + + TestDiagonalNonlinearKernel(const InputParameters & parameters) : Moose::MFEM::Kernel(parameters) + { + } + + mfem::NonlinearFormIntegrator * createNLIntegrator() override + { + return new ZeroNonlinearIntegrator(); + } +}; + +class TestEquationSystem : public Moose::MFEM::EquationSystem +{ +public: + void initAndBuild(Moose::MFEM::GridFunctions & gridfunctions, + Moose::MFEM::ComplexGridFunctions & cmplx_gridfunctions, + mfem::AssemblyLevel assembly_level) + { + Init(gridfunctions, cmplx_gridfunctions, assembly_level); + BuildEquationSystem(); + } + + void setAssemblyLevel(mfem::AssemblyLevel assembly_level) { _assembly_level = assembly_level; } +}; +} + +registerMooseObject("MooseUnitApp", TestOffDiagonalLinearKernel); +registerMooseObject("MooseUnitApp", TestOffDiagonalNonlinearKernel); +registerMooseObject("MooseUnitApp", TestDiagonalNonlinearKernel); + class MFEMKernelTest : public MFEMObjectUnitTest { public: MFEMKernelTest() : MFEMObjectUnitTest("MooseUnitApp") { - // Register a dummy (Par)GridFunction for kernels to apply to + // Register dummy (Par)GridFunctions for kernels to apply to auto pm = _mfem_mesh_ptr->getMFEMParMeshPtr().get(); mfem::common::H1_FESpace fe(pm, 1); mfem::GridFunction gf(&fe); - auto pgf = std::make_shared(pm, &gf); - _mfem_problem->getProblemData().gridfunctions.Register("test_variable_name", pgf); + _mfem_problem->getProblemData().gridfunctions.Register( + "test_variable_name", std::make_shared(pm, &gf)); + _mfem_problem->getProblemData().gridfunctions.Register( + "trial_variable_name", std::make_shared(pm, &gf)); + } + +protected: + template + std::shared_ptr + addSharedObject(const std::string & type, const std::string & name, InputParameters & params) + { + auto objects = _mfem_problem->addObject(type, name, params); + mooseAssert(objects.size() == 1, "Doesn't work with threading"); + return objects[0]; } }; @@ -43,9 +163,9 @@ TEST_F(MFEMKernelTest, MFEMCurlCurlKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMCurlCurlKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; - MFEMCurlCurlKernel & kernel = - addObject("MFEMCurlCurlKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + Moose::MFEM::CurlCurlKernel & kernel = + addObject("MFEMCurlCurlKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createBFIntegrator()); @@ -61,10 +181,10 @@ TEST_F(MFEMKernelTest, MFEMDiffusionKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMDiffusionKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; + kernel_params.set("coefficient") = "2.0"; kernel_params.set>("block") = {"2"}; - MFEMDiffusionKernel & kernel = - addObject("MFEMDiffusionKernel", "kernel1", kernel_params); + Moose::MFEM::DiffusionKernel & kernel = + addObject("MFEMDiffusionKernel", "kernel1", kernel_params); // Test MFEMKernel marker array has been constructed as expected ASSERT_EQ(kernel.getSubdomainMarkers(), mfem::Array({0, 1})); // Test MFEMKernel returns an integrator of the expected type @@ -81,8 +201,9 @@ TEST_F(MFEMKernelTest, MFEMDivDivKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMDivDivKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; - auto & kernel = addObject("MFEMDivDivKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + auto & kernel = + addObject("MFEMDivDivKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createBFIntegrator()); @@ -98,10 +219,10 @@ TEST_F(MFEMKernelTest, MFEMLinearElasticityKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMLinearElasticityKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("lambda") = "2.0"; - kernel_params.set("mu") = "3.0"; - MFEMLinearElasticityKernel & kernel = - addObject("MFEMLinearElasticityKernel", "kernel1", kernel_params); + kernel_params.set("lambda") = "2.0"; + kernel_params.set("mu") = "3.0"; + Moose::MFEM::LinearElasticityKernel & kernel = addObject( + "MFEMLinearElasticityKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createBFIntegrator()); @@ -117,9 +238,10 @@ TEST_F(MFEMKernelTest, MFEMMixedVectorGradientKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMMixedVectorGradientKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; - MFEMMixedVectorGradientKernel & kernel = addObject( - "MFEMMixedVectorGradientKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + Moose::MFEM::MixedVectorGradientKernel & kernel = + addObject( + "MFEMMixedVectorGradientKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = @@ -138,11 +260,11 @@ TEST_F(MFEMKernelTest, MFEMVectorDomainLFKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMVectorDomainLFKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("vector_coefficient") = + kernel_params.set("vector_coefficient") = std::to_string(expected1[0]) + " " + std::to_string(expected1[1]) + " " + std::to_string(expected1[2]); - MFEMVectorDomainLFKernel & kernel = - addObject("MFEMVectorDomainLFKernel", "kernel1", kernel_params); + Moose::MFEM::VectorDomainLFKernel & kernel = addObject( + "MFEMVectorDomainLFKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createLFIntegrator()); @@ -158,9 +280,9 @@ TEST_F(MFEMKernelTest, MFEMVectorFEDomainLFKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMVectorFEDomainLFKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("vector_coefficient") = "1. 2. 3."; - MFEMVectorFEDomainLFKernel & kernel = - addObject("MFEMVectorFEDomainLFKernel", "kernel1", kernel_params); + kernel_params.set("vector_coefficient") = "1. 2. 3."; + Moose::MFEM::VectorFEDomainLFKernel & kernel = addObject( + "MFEMVectorFEDomainLFKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createLFIntegrator()); @@ -176,9 +298,9 @@ TEST_F(MFEMKernelTest, MFEMVectorFEMassKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMVectorFEMassKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; - MFEMVectorFEMassKernel & kernel = - addObject("MFEMVectorFEMassKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + Moose::MFEM::VectorFEMassKernel & kernel = addObject( + "MFEMVectorFEMassKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = dynamic_cast(kernel.createBFIntegrator()); @@ -195,9 +317,10 @@ TEST_F(MFEMKernelTest, MFEMVectorFEWeakDivergenceKernel) // Construct kernel InputParameters kernel_params = _factory.getValidParams("MFEMVectorFEWeakDivergenceKernel"); kernel_params.set("variable") = "test_variable_name"; - kernel_params.set("coefficient") = "2.0"; - MFEMVectorFEWeakDivergenceKernel & kernel = addObject( - "MFEMVectorFEWeakDivergenceKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + Moose::MFEM::VectorFEWeakDivergenceKernel & kernel = + addObject( + "MFEMVectorFEWeakDivergenceKernel", "kernel1", kernel_params); // Test MFEMKernel returns an integrator of the expected type auto integrator = @@ -215,9 +338,9 @@ TEST_F(MFEMKernelTest, MFEMMixedScalarCurlKernel) InputParameters kernel_params = _factory.getValidParams("MFEMMixedScalarCurlKernel"); kernel_params.set("variable") = "test_variable_name"; kernel_params.set("trial_variable") = "trial_variable_name"; - kernel_params.set("coefficient") = "2.0"; - MFEMMixedScalarCurlKernel & kernel = - addObject("MFEMMixedScalarCurlKernel", "kernel1", kernel_params); + kernel_params.set("coefficient") = "2.0"; + Moose::MFEM::MixedScalarCurlKernel & kernel = addObject( + "MFEMMixedScalarCurlKernel", "kernel1", kernel_params); // Test the trial variable name is different from the test variable name const std::string trial_name = kernel.getTrialVariableName(); @@ -230,4 +353,115 @@ TEST_F(MFEMKernelTest, MFEMMixedScalarCurlKernel) delete integrator; } +TEST_F(MFEMKernelTest, RejectsOffDiagonalNonlinearKernelWhenBuildingEquationSystem) +{ + InputParameters diag_test_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_test_params.set("variable") = "test_variable_name"; + diag_test_params.set("coefficient") = "1.0"; + + InputParameters nonlinear_params = _factory.getValidParams("TestOffDiagonalNonlinearKernel"); + nonlinear_params.set("variable") = "test_variable_name"; + nonlinear_params.set("trial_variable") = "trial_variable_name"; + + auto diag_test = addSharedObject( + "MFEMDiffusionKernel", "diag_test", diag_test_params); + auto nonlinear = addSharedObject( + "TestOffDiagonalNonlinearKernel", "nonlinear_offdiag", nonlinear_params); + + TestEquationSystem eqn_system; + eqn_system.AddKernel(diag_test); + eqn_system.AddKernel(nonlinear); + eqn_system.SetSolverRequiresGradient(true); + + try + { + eqn_system.initAndBuild(_mfem_problem->getProblemData().gridfunctions, + _mfem_problem->getProblemData().cmplx_gridfunctions, + mfem::AssemblyLevel::LEGACY); + FAIL() << "Expected off-diagonal nonlinear MFEM kernel to be rejected"; + } + catch (const std::runtime_error & error) + { + const std::string message(error.what()); + EXPECT_TRUE(message.find("off-diagonal MFEM nonlinear domain integrators") != + std::string::npos); + EXPECT_TRUE(message.find("requires a gradient") != std::string::npos); + } +} + +TEST_F(MFEMKernelTest, AcceptsLinearOffDiagonalKernelWhenBuildingEquationSystem) +{ + InputParameters diag_test_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_test_params.set("variable") = "test_variable_name"; + diag_test_params.set("coefficient") = "1.0"; + + InputParameters diag_trial_params = _factory.getValidParams("MFEMDiffusionKernel"); + diag_trial_params.set("variable") = "trial_variable_name"; + diag_trial_params.set("coefficient") = "1.0"; + + InputParameters linear_params = _factory.getValidParams("TestOffDiagonalLinearKernel"); + linear_params.set("variable") = "test_variable_name"; + linear_params.set("trial_variable") = "trial_variable_name"; + + auto diag_test = addSharedObject( + "MFEMDiffusionKernel", "diag_test_2", diag_test_params); + auto diag_trial = addSharedObject( + "MFEMDiffusionKernel", "diag_trial_2", diag_trial_params); + auto linear = addSharedObject( + "TestOffDiagonalLinearKernel", "linear_offdiag", linear_params); + + TestEquationSystem eqn_system; + eqn_system.AddKernel(diag_test); + // Keep a diagonal contribution on the trial variable so this exercises the supported mixed + // 2x2 system path rather than a case where trial_variable_name is only an eliminated coupling. + eqn_system.AddKernel(diag_trial); + eqn_system.AddKernel(linear); + + EXPECT_NO_THROW(eqn_system.initAndBuild(_mfem_problem->getProblemData().gridfunctions, + _mfem_problem->getProblemData().cmplx_gridfunctions, + mfem::AssemblyLevel::LEGACY)); +} + +TEST_F(MFEMKernelTest, RejectsGetGradientForModernAssemblyWhenGradientIsRequired) +{ + InputParameters linear_params = _factory.getValidParams("MFEMDiffusionKernel"); + linear_params.set("variable") = "test_variable_name"; + linear_params.set("coefficient") = "1.0"; + + InputParameters nonlinear_params = _factory.getValidParams("TestDiagonalNonlinearKernel"); + nonlinear_params.set("variable") = "test_variable_name"; + + auto linear = addSharedObject( + "MFEMDiffusionKernel", "diag_linear", linear_params); + auto nonlinear = addSharedObject( + "TestDiagonalNonlinearKernel", "diag_nonlinear", nonlinear_params); + + TestEquationSystem eqn_system; + eqn_system.AddKernel(linear); + eqn_system.AddKernel(nonlinear); + eqn_system.SetSolverRequiresGradient(true); + eqn_system.initAndBuild(_mfem_problem->getProblemData().gridfunctions, + _mfem_problem->getProblemData().cmplx_gridfunctions, + mfem::AssemblyLevel::LEGACY); + eqn_system.setAssemblyLevel(mfem::AssemblyLevel::FULL); + + // The GetGradient() guard fires before the vector argument is accessed, so a + // default-constructed (empty) vector is sufficient to reach it. Skipping + // AssembleSystem avoids putting _h_blocks and _linear_operator into the + // mixed-level state that caused teardown failures in earlier iterations of + // this test, allowing eqn_system to be stack-allocated and destroyed normally. + const mfem::Vector dummy; + try + { + eqn_system.GetGradient(dummy); + FAIL() << "Expected GetGradient to reject modern assembly when a gradient is required"; + } + catch (const std::runtime_error & error) + { + const std::string message(error.what()); + EXPECT_TRUE(message.find("require GetGradient()") != std::string::npos); + EXPECT_TRUE(message.find("require legacy assembly") != std::string::npos); + } +} + #endif diff --git a/unit/src/MFEMMaterialTest.C b/unit/src/MFEMMaterialTest.C index 12ba93689d0c..fe960982455a 100644 --- a/unit/src/MFEMMaterialTest.C +++ b/unit/src/MFEMMaterialTest.C @@ -94,7 +94,7 @@ TEST_F(MFEMFunctorScalarMaterialTest, MFEMGenericFunctorMaterial) { InputParameters coef_params = _factory.getValidParams("MFEMGenericFunctorMaterial"); coef_params.set>("prop_names") = {"coef1", "coef2", "coef3"}; - coef_params.set>("prop_values") = { + coef_params.set>("prop_values") = { "func1", "func2", "1.0"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params); @@ -133,13 +133,14 @@ TEST_F(MFEMFunctorScalarMaterialTest, MFEMGenericFunctorMaterial_PW) { InputParameters coef_params1 = _factory.getValidParams("MFEMGenericFunctorMaterial"); coef_params1.set>("prop_names") = {"coef1", "coef2", "coef3"}; - coef_params1.set>("prop_values") = { + coef_params1.set>("prop_values") = { "func1", "func2", "1."}; coef_params1.set>("block") = {"1"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params1); InputParameters coef_params2 = _factory.getValidParams("MFEMGenericFunctorMaterial"); coef_params2.set>("prop_names") = {"coef1", "coef3"}; - coef_params2.set>("prop_values") = {"func2", "4."}; + coef_params2.set>("prop_values") = {"func2", + "4."}; coef_params2.set>("block") = {"2"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material2", coef_params2); @@ -191,17 +192,17 @@ TEST_F(MFEMFunctorScalarMaterialTest, MFEMGenericFunctorMaterial_Exception) { InputParameters coef_params = _factory.getValidParams("MFEMGenericFunctorMaterial"); coef_params.set>("prop_names") = {"coef1", "coef2"}; - coef_params.set>("prop_values") = {"func1"}; + coef_params.set>("prop_values") = {"func1"}; EXPECT_THROW( _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"func1", "76"}; + coef_params.set>("prop_values") = {"func1", "76"}; EXPECT_THROW( _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"func3"}; + coef_params.set>("prop_values") = {"func3"}; EXPECT_THROW( _mfem_problem->addFunctorMaterial("MFEMGenericFunctorMaterial", "material1", coef_params), std::runtime_error); @@ -215,7 +216,7 @@ TEST_F(MFEMFunctorVectorMaterialTest, MFEMGenericFunctorVectorMaterial) InputParameters coef_params = _factory.getValidParams("MFEMGenericFunctorVectorMaterial"); coef_params.set>("prop_names") = { "coef1", "coef2", "constant1", "constant2"}; - coef_params.set>("prop_values") = { + coef_params.set>("prop_values") = { "func1", "func2", "{0.", "1.", "2.}", "{1.5}"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorVectorMaterial", "material1", coef_params); mfem::Vector a({0., 1., 2.}), b({1.5, 2.5, 3.5}), c({0., 0., 0.}), d({0.5, 1., 1.5}), e({1.5}); @@ -267,13 +268,13 @@ TEST_F(MFEMFunctorVectorMaterialTest, MFEMGenericFunctorVectorMaterial_PW) InputParameters coef_params1 = _factory.getValidParams("MFEMGenericFunctorVectorMaterial"); coef_params1.set>("prop_names") = { "coef1", "coef2", "constant1", "constant2"}; - coef_params1.set>("prop_values") = { + coef_params1.set>("prop_values") = { "func1", "func2", "{0.", "1.", "2.}", "{0.5", "1.", "1.5}"}; coef_params1.set>("block") = {"1"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorVectorMaterial", "material1", coef_params1); InputParameters coef_params2 = _factory.getValidParams("MFEMGenericFunctorVectorMaterial"); coef_params2.set>("prop_names") = {"coef1", "constant1"}; - coef_params2.set>("prop_values") = { + coef_params2.set>("prop_values") = { "func2", "{1.5", "2.5", "3.5}"}; coef_params2.set>("block") = {"2"}; _mfem_problem->addFunctorMaterial("MFEMGenericFunctorVectorMaterial", "material2", coef_params2); @@ -343,27 +344,28 @@ TEST_F(MFEMFunctorVectorMaterialTest, MFEMGenericFunctorVectorMaterial_Exception { InputParameters coef_params = _factory.getValidParams("MFEMGenericFunctorVectorMaterial"); coef_params.set>("prop_names") = {"coef1", "coef2"}; - coef_params.set>("prop_values") = {"func1"}; + coef_params.set>("prop_values") = {"func1"}; EXPECT_THROW(_mfem_problem->addFunctorMaterial( "MFEMGenericFunctorVectorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"func1", "45."}; + coef_params.set>("prop_values") = {"func1", + "45."}; EXPECT_THROW(_mfem_problem->addFunctorMaterial( "MFEMGenericFunctorVectorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"func3"}; + coef_params.set>("prop_values") = {"func3"}; EXPECT_THROW(_mfem_problem->addFunctorMaterial( "MFEMGenericFunctorVectorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = {"{123", "234"}; + coef_params.set>("prop_values") = {"{123", "234"}; EXPECT_THROW(_mfem_problem->addFunctorMaterial( "MFEMGenericFunctorVectorMaterial", "material1", coef_params), std::runtime_error); coef_params.set>("prop_names") = {"coef1"}; - coef_params.set>("prop_values") = { + coef_params.set>("prop_values") = { "{123", "{234", "345}}"}; EXPECT_THROW(_mfem_problem->addFunctorMaterial( "MFEMGenericFunctorVectorMaterial", "material1", coef_params), diff --git a/unit/src/MFEMMeshTest.C b/unit/src/MFEMMeshTest.C index 107b22be5c52..ad3d5377e6ce 100644 --- a/unit/src/MFEMMeshTest.C +++ b/unit/src/MFEMMeshTest.C @@ -22,7 +22,7 @@ protected: std::shared_ptr _app; Factory * _factory; std::string _mesh_type; - std::shared_ptr _mfem_mesh_ptr; + std::shared_ptr _mfem_mesh_ptr; }; /** @@ -47,7 +47,7 @@ MFEMMeshTest::buildMFEMMesh(MeshFileName filename, int serial_ref, int parallel_ params.set("file") = filename; params.set("serial_refine") = serial_ref; params.set("parallel_refine") = parallel_ref; - _mfem_mesh_ptr = _factory->create(_mesh_type, "moose_mesh", params); + _mfem_mesh_ptr = _factory->create(_mesh_type, "moose_mesh", params); _app->actionWarehouse().mesh() = _mfem_mesh_ptr; _mfem_mesh_ptr->setMeshBase(_mfem_mesh_ptr->buildMeshBaseObject()); _mfem_mesh_ptr->buildMesh(); diff --git a/unit/src/MFEMPostprocessorTest.C b/unit/src/MFEMPostprocessorTest.C index 1f9434ae30fb..9b952d98de52 100644 --- a/unit/src/MFEMPostprocessorTest.C +++ b/unit/src/MFEMPostprocessorTest.C @@ -36,11 +36,11 @@ public: NDFE_params.set("fec_type") = "ND"; _mfem_problem->addFESpace("MFEMVectorFESpace", "ND_vector", NDFE_params); InputParameters scalar_params = _factory.getValidParams("MFEMVariable"); - scalar_params.set("fespace") = "H1_scalar"; + scalar_params.set("fespace") = "H1_scalar"; _mfem_problem->addVariable("MFEMVariable", "scalar_var", scalar_params); _scalar_var = _mfem_problem->getProblemData().gridfunctions.Get("scalar_var"); InputParameters vector_params = _factory.getValidParams("MFEMVariable"); - vector_params.set("fespace") = "ND_vector"; + vector_params.set("fespace") = "ND_vector"; _mfem_problem->addVariable("MFEMVariable", "vector_var", vector_params); _vector_var = _mfem_problem->getProblemData().gridfunctions.Get("vector_var"); } @@ -52,9 +52,9 @@ public: TEST_F(MFEMPostprocessorTest, MFEML2Error) { InputParameters pp_params = _factory.getValidParams("MFEML2Error"); - pp_params.set("function") = "scalar_ones"; + pp_params.set("function") = "scalar_ones"; pp_params.set("variable") = "scalar_var"; - auto & l2_pp = addObject("MFEML2Error", "ppl2", pp_params); + auto & l2_pp = addObject("MFEML2Error", "ppl2", pp_params); mfem::ConstantCoefficient twos(2.); _scalar_var->ProjectCoefficient(twos); @@ -71,7 +71,7 @@ TEST_F(MFEMPostprocessorTest, MFEML2Error) TEST_F(MFEMPostprocessorTest, MFEML2ErrorCoefficient) { InputParameters pp_params = _factory.getValidParams("MFEML2Error"); - pp_params.set("function") = "scalar_ones"; + pp_params.set("function") = "scalar_ones"; pp_params.set("variable") = "scalar_var"; _mfem_problem->addPostprocessor("MFEML2Error", "ppl2", pp_params); auto & l2_pp = _mfem_problem->getPostprocessorObjectByName("ppl2"); @@ -108,9 +108,9 @@ TEST_F(MFEMPostprocessorTest, MFEML2ErrorCoefficient) TEST_F(MFEMPostprocessorTest, MFEMVectorL2Error) { InputParameters pp_params = _factory.getValidParams("MFEMVectorL2Error"); - pp_params.set("function") = "vector_ones"; + pp_params.set("function") = "vector_ones"; pp_params.set("variable") = "vector_var"; - auto & l2_pp = addObject("MFEMVectorL2Error", "ppl2", pp_params); + auto & l2_pp = addObject("MFEMVectorL2Error", "ppl2", pp_params); mfem::VectorConstantCoefficient twos(mfem::Vector({2., 2., 2.})); _vector_var->ProjectCoefficient(twos); diff --git a/unit/src/MFEMSolverTest.C b/unit/src/MFEMSolverTest.C index f73c772cf1fa..263663e86be3 100644 --- a/unit/src/MFEMSolverTest.C +++ b/unit/src/MFEMSolverTest.C @@ -69,7 +69,7 @@ public: * Based on mfem/tests/unit/linalg/test_direct_solvers.cpp. */ template - void testDiffusionSolve(MFEMSolverBase & solver, mfem::real_t tol) + void testDiffusionSolve(Moose::MFEM::LinearSolverBase & solver, mfem::real_t tol) { mfem::ParMesh pmesh = makeMesh(); int order = 3; @@ -127,7 +127,8 @@ TEST_F(MFEMSolverTest, MFEMHypreGMRES) solver_params.set("l_abs_tol") = 1e-5; // Construct kernel - MFEMHypreGMRES & solver = addObject("MFEMHypreGMRES", "solver1", solver_params); + Moose::MFEM::HypreGMRES & solver = + addObject("MFEMHypreGMRES", "solver1", solver_params); testDiffusionSolve(solver, 1e-5); } @@ -141,8 +142,8 @@ TEST_F(MFEMSolverTest, MFEMHypreFGMRES) InputParameters solver_params = _factory.getValidParams("MFEMHypreFGMRES"); solver_params.set("l_tol") = 1e-7; // HypreFGMRES cannot set absolute tolerance // Construct kernel - MFEMHypreFGMRES & solver = - addObject("MFEMHypreFGMRES", "solver1", solver_params); + Moose::MFEM::HypreFGMRES & solver = + addObject("MFEMHypreFGMRES", "solver1", solver_params); testDiffusionSolve(solver, 1e-5); } @@ -158,7 +159,8 @@ TEST_F(MFEMSolverTest, MFEMHyprePCG) solver_params.set("l_abs_tol") = 1e-5; // Construct kernel - MFEMHyprePCG & solver = addObject("MFEMHyprePCG", "solver1", solver_params); + Moose::MFEM::HyprePCG & solver = + addObject("MFEMHyprePCG", "solver1", solver_params); testDiffusionSolve(solver, 1e-5); } @@ -175,8 +177,8 @@ TEST_F(MFEMSolverTest, MFEMGMRESSolver) solver_params.set("l_abs_tol") = 1e-5; // Construct kernel - MFEMGMRESSolver & solver = - addObject("MFEMGMRESSolver", "solver1", solver_params); + Moose::MFEM::GMRESSolver & solver = + addObject("MFEMGMRESSolver", "solver1", solver_params); testDiffusionSolve(solver, 1e-5); } @@ -189,7 +191,8 @@ TEST_F(MFEMSolverTest, MFEMCGSolver) solver_params.set("l_abs_tol") = 1e-5; // Construct kernel - MFEMCGSolver & solver = addObject("MFEMCGSolver", "solver1", solver_params); + Moose::MFEM::CGSolver & solver = + addObject("MFEMCGSolver", "solver1", solver_params); testDiffusionSolve(solver, 1e-5); } @@ -204,8 +207,8 @@ TEST_F(MFEMSolverTest, MFEMHypreBoomerAMG) solver_params.set("l_tol") = 1e-7; // HypreBoomerAMG cannot set absolute tolerance // Construct solver - MFEMHypreBoomerAMG & solver = - addObject("MFEMHypreBoomerAMG", "solver1", solver_params); + Moose::MFEM::HypreBoomerAMG & solver = + addObject("MFEMHypreBoomerAMG", "solver1", solver_params); // Test MFEMSolver returns an solver of the expected type auto solver_downcast = dynamic_cast(&solver.getSolver()); @@ -227,14 +230,15 @@ TEST_F(MFEMSolverTest, MFEMHypreADS) fespace_params.set("fec_type") = "RT"; // Construct fespace - addObject("MFEMVectorFESpace", "HDivFESpace", fespace_params); + addObject("MFEMVectorFESpace", "HDivFESpace", fespace_params); // Build required solver inputs InputParameters solver_params = _factory.getValidParams("MFEMHypreADS"); - solver_params.set("fespace") = "HDivFESpace"; + solver_params.set("fespace") = "HDivFESpace"; // Construct solver - MFEMHypreADS & solver = addObject("MFEMHypreADS", "solver1", solver_params); + Moose::MFEM::HypreADS & solver = + addObject("MFEMHypreADS", "solver1", solver_params); // Test MFEMSolver returns a solver of the expected type auto solver_downcast = dynamic_cast(&solver.getSolver()); @@ -253,14 +257,15 @@ TEST_F(MFEMSolverTest, MFEMHypreAMS) fespace_params.set("fec_type") = "ND"; // Construct fespace - addObject("MFEMVectorFESpace", "HCurlFESpace", fespace_params); + addObject("MFEMVectorFESpace", "HCurlFESpace", fespace_params); // Build required solver inputs InputParameters solver_params = _factory.getValidParams("MFEMHypreAMS"); - solver_params.set("fespace") = "HCurlFESpace"; + solver_params.set("fespace") = "HCurlFESpace"; // Construct solver - MFEMHypreAMS & solver = addObject("MFEMHypreAMS", "solver1", solver_params); + Moose::MFEM::HypreAMS & solver = + addObject("MFEMHypreAMS", "solver1", solver_params); // Test MFEMSolver returns an solver of the expected type auto solver_downcast = dynamic_cast(&solver.getSolver()); @@ -276,7 +281,8 @@ TEST_F(MFEMSolverTest, MFEMSuperLU) InputParameters solver_params = _factory.getValidParams("MFEMSuperLU"); // Construct kernel - MFEMSuperLU & solver = addObject("MFEMSuperLU", "solver1", solver_params); + Moose::MFEM::SuperLU & solver = + addObject("MFEMSuperLU", "solver1", solver_params); testDiffusionSolve(solver, 1e-12); } @@ -290,7 +296,8 @@ TEST_F(MFEMSolverTest, MFEMMUMPS) InputParameters solver_params = _factory.getValidParams("MFEMMUMPS"); // Construct solver - MFEMMUMPS & solver = addObject("MFEMMUMPS", "solver1", solver_params); + Moose::MFEM::MUMPS & solver = + addObject("MFEMMUMPS", "solver1", solver_params); testDiffusionSolve(solver, 1e-12); } @@ -306,7 +313,8 @@ TEST_F(MFEMSolverTest, MFEMHypreGMRESLOR) solver_params.set("l_tol") = 1e-7; // Construct kernel - MFEMHypreGMRES & solver = addObject("MFEMHypreGMRES", "solver1", solver_params); + Moose::MFEM::HypreGMRES & solver = + addObject("MFEMHypreGMRES", "solver1", solver_params); testDiffusionSolve>(solver, 1e-5); } @@ -322,8 +330,8 @@ TEST_F(MFEMSolverTest, MFEMHypreFGMRESLOR) solver_params.set("l_tol") = 1e-7; // Construct kernel - MFEMHypreFGMRES & solver = - addObject("MFEMHypreFGMRES", "solver1", solver_params); + Moose::MFEM::HypreFGMRES & solver = + addObject("MFEMHypreFGMRES", "solver1", solver_params); testDiffusionSolve>(solver, 1e-5); } @@ -339,7 +347,8 @@ TEST_F(MFEMSolverTest, MFEMHyprePCGLOR) solver_params.set("l_tol") = 1e-7; // Construct kernel - MFEMHyprePCG & solver = addObject("MFEMHyprePCG", "solver1", solver_params); + Moose::MFEM::HyprePCG & solver = + addObject("MFEMHyprePCG", "solver1", solver_params); testDiffusionSolve>(solver, 1e-5); } @@ -356,8 +365,8 @@ TEST_F(MFEMSolverTest, MFEMGMRESSolverLOR) solver_params.set("l_tol") = 1e-7; // Construct kernel - MFEMGMRESSolver & solver = - addObject("MFEMGMRESSolver", "solver1", solver_params); + Moose::MFEM::GMRESSolver & solver = + addObject("MFEMGMRESSolver", "solver1", solver_params); testDiffusionSolve>(solver, 1e-5); } @@ -370,7 +379,8 @@ TEST_F(MFEMSolverTest, MFEMCGSolverLOR) solver_params.set("l_tol") = 1e-7; // Construct kernel - MFEMCGSolver & solver = addObject("MFEMCGSolver", "solver1", solver_params); + Moose::MFEM::CGSolver & solver = + addObject("MFEMCGSolver", "solver1", solver_params); testDiffusionSolve>(solver, 1e-5); } @@ -382,8 +392,8 @@ TEST_F(MFEMSolverTest, MFEMHypreBoomerAMGLOR) solver_params.set("low_order_refined") = true; // Construct kernel - MFEMHypreBoomerAMG & solver = - addObject("MFEMHypreBoomerAMG", "solver1", solver_params); + Moose::MFEM::HypreBoomerAMG & solver = + addObject("MFEMHypreBoomerAMG", "solver1", solver_params); mfem::ParMesh pmesh = makeMesh(); mfem::ParFiniteElementSpace fespace(&pmesh, new mfem::H1_FECollection(3, 3)); diff --git a/unit/src/TestNLDiffusionIntegrator.C b/unit/src/TestNLDiffusionIntegrator.C index 903885416be2..9b5bb7f1a5ba 100644 --- a/unit/src/TestNLDiffusionIntegrator.C +++ b/unit/src/TestNLDiffusionIntegrator.C @@ -1,6 +1,7 @@ #ifdef MOOSE_MFEM_ENABLED #include "gtest/gtest.h" +#include "NLDiffusionIntegrator.h" #include "libmesh/ignore_warnings.h" #include "mfem.hpp" #include "libmesh/restore_warnings.h" @@ -81,6 +82,83 @@ public: } }; +TEST(CheckData, NLDiffusionIntegratorJacobianMatchesAnalyticLinearization) +{ + mfem::Mesh mesh = mfem::Mesh::MakeCartesian2D(1, 1, mfem::Element::TRIANGLE, true, 1.0, 1.0); + mfem::H1_FECollection fec(1, mesh.Dimension()); + mfem::FiniteElementSpace fespace(&mesh, &fec); + + ASSERT_EQ(fespace.GetNE(), 2); + + mfem::GridFunction gf(&fespace); + gf = 0.0; + + mfem::Array vdofs; + fespace.GetElementVDofs(0, vdofs); + + mfem::Vector elfun(vdofs.Size()); + elfun(0) = 1.0; + elfun(1) = 1.5; + elfun(2) = 2.0; + gf.SetSubVector(vdofs, elfun); + + NonlinearGridFunctionCoefficient k_coeff(gf, [](double u) { return u * u; }); + NonlinearGridFunctionCoefficient dk_du_coeff(gf, [](double u) { return 2.0 * u; }); + + const auto & ir = mfem::IntRules.Get(fespace.GetFE(0)->GetGeomType(), 2); + + Moose::MFEM::NLDiffusionIntegrator integ(k_coeff, dk_du_coeff, &gf, &ir); + + const auto & el = *fespace.GetFE(0); + auto & T = *mesh.GetElementTransformation(0); + + mfem::DenseMatrix jacobian_numeric; + integ.AssembleElementGrad(el, T, elfun, jacobian_numeric); + + mfem::DenseMatrix jacobian_expected(el.GetDof()); + jacobian_expected = 0.0; + + mfem::Vector shape(el.GetDof()); + mfem::DenseMatrix dshape(el.GetDof(), mesh.Dimension()); + mfem::Vector grad_u(mesh.Dimension()); + + for (int qp = 0; qp < ir.GetNPoints(); ++qp) + { + const auto & ip = ir.IntPoint(qp); + T.SetIntPoint(&ip); + + el.CalcShape(ip, shape); + el.CalcPhysDShape(T, dshape); + + dshape.MultTranspose(elfun, grad_u); + + const double u = elfun * shape; + const double weight = ip.weight * T.Weight(); + const double k = u * u; + const double dk_du = 2.0 * u; + + for (int i = 0; i < el.GetDof(); ++i) + { + double grad_u_dot_grad_test = 0.0; + for (int d = 0; d < mesh.Dimension(); ++d) + grad_u_dot_grad_test += grad_u(d) * dshape(i, d); + + for (int j = 0; j < el.GetDof(); ++j) + { + double grad_trial_dot_grad_test = 0.0; + for (int d = 0; d < mesh.Dimension(); ++d) + grad_trial_dot_grad_test += dshape(j, d) * dshape(i, d); + + jacobian_expected(i, j) += + weight * (k * grad_trial_dot_grad_test + dk_du * shape(j) * grad_u_dot_grad_test); + } + } + } + + jacobian_numeric -= jacobian_expected; + EXPECT_NEAR(jacobian_numeric.MaxMaxNorm(), 0.0, 1e-12); +} + TEST(CheckData, NLDiffusionTest) {