Skip to content

[WIP] Namespace all of MOOSE-MFEM#32783

Draft
lindsayad wants to merge 2 commits intoidaholab:nextfrom
lindsayad:namespace-32782
Draft

[WIP] Namespace all of MOOSE-MFEM#32783
lindsayad wants to merge 2 commits intoidaholab:nextfrom
lindsayad:namespace-32782

Conversation

@lindsayad
Copy link
Copy Markdown
Member

Closes #32782

We create new Solvers syntax such that users may specify both
nonlinear and linear solvers within the same top-level syntax
block. This commit also includes capability for using PETSc
as the nonlinear solver backend
@lindsayad lindsayad changed the title Namespace all of MOOSE-MFEM [WIP] Namespace all of MOOSE-MFEM Apr 18, 2026
Move all MFEM framework classes into the Moose::MFEM namespace (e.g.
MFEMKernel -> Moose::MFEM::Kernel) across headers, sources, and unit
tests. Key changes:

- All class definitions in framework/include/mfem/ and framework/src/mfem/
  are now inside namespace Moose::MFEM with redundant Moose::MFEM::
  qualifications stripped within those blocks
- MFEMProblemData struct namespaced to Moose::MFEM::ProblemData
- MFEMProblemSolve: class Executioner; forward declaration moved outside
  the namespace block
- Moose.C task registration tokens updated to match registerBase values
  (Moose::MFEM::FESpace, Moose::MFEM::SubMesh, etc.)
- Factory name strings (e.g. "MFEMFoo") preserved throughout MFEMProblem.C;
  solverTypeString() returns the factory name via type()
- MFEM string parameter types (ScalarCoefficientName, VectorCoefficientName,
  MatrixCoefficientName, FESpaceName, SolverName) moved to Moose::MFEM
  namespace using new MooseDerivativeStringClassInNamespace macro;
  MooseDerivativeStringClass refactored to share body via
  MOOSE_DERIVATIVE_STRING_CLASS_IMPL helper to avoid duplication
- Unit test C++ type usages updated to Moose::MFEM::Foo; TEST_F test
  name identifiers left unchanged

Closes idaholab#32782

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Namespace all of Moose MFEM

1 participant