10 #ifdef MOOSE_MFEM_ENABLED 26 :
Moose::MFEM::NonlinearSolverBase(parameters)
35 solver->iterative_mode = getParam<bool>(
"use_initial_guess");
36 solver->SetRelTol(getParam<mfem::real_t>(
"rel_tol"));
37 solver->SetAbsTol(getParam<mfem::real_t>(
"abs_tol"));
38 solver->SetMaxIter(getParam<unsigned int>(
"max_its"));
39 solver->SetPrintLevel(getParam<unsigned int>(
"print_level"));
MFEMProblem & getMFEMProblem()
Return the owning MFEM problem.
mfem::Solver & GetSolver()
Returns the wrapped MFEM solver.
static InputParameters validParams()
void SetLinearSolver(mfem::Solver &solver) override
Configure the linear solver used inside the nonlinear solve.
MFEMNewtonNonlinearSolver(const InputParameters ¶meters)
void SetSolver(mfem::Solver *solver)
Set the wrapped MFEM solver.
std::unique_ptr< mfem::Solver > _solver
Solver to be used for the problem.
registerMooseObject("MooseApp", MFEMNewtonNonlinearSolver)
MPI_Comm getComm()
Return the MPI communicator associated with this FE problem's mesh.
static InputParameters validParams()
void ConstructSolver() override
Override in derived classes to construct and set the solver options.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
MooseObject wrapper for mfem::NewtonSolver-backed nonlinear solves.