Serac
0.1
Serac is an implicit thermal strucural mechanics simulation code.
|
This file contains the declaration of an equation solver wrapper. More...
#include <memory>
#include <optional>
#include <variant>
#include "mfem.hpp"
#include "serac/infrastructure/input.hpp"
#include "serac/numerics/solver_config.hpp"
Go to the source code of this file.
Classes | |
class | serac::EquationSolver |
This class manages the objects typically required to solve a nonlinear set of equations arising from discretization of a PDE of the form F(x) = 0. Specifically, it has. More... | |
class | serac::SuperLUSolver |
A wrapper class for using the MFEM SuperLU solver with a HypreParMatrix. More... | |
struct | FromInlet< serac::LinearSolverOptions > |
Prototype the specialization for Inlet parsing. More... | |
struct | FromInlet< serac::NonlinearSolverOptions > |
Prototype the specialization for Inlet parsing. More... | |
struct | FromInlet< serac::EquationSolver > |
Prototype the specialization for Inlet parsing. More... | |
Namespaces | |
serac | |
Accelerator functionality. | |
Functions | |
std::unique_ptr< mfem::NewtonSolver > | serac::buildNonlinearSolver (NonlinearSolverOptions nonlinear_opts={}, MPI_Comm comm=MPI_COMM_WORLD) |
Build a nonlinear solver using the nonlinear option struct. More... | |
std::pair< std::unique_ptr< mfem::Solver >, std::unique_ptr< mfem::Solver > > | serac::buildLinearSolverAndPreconditioner (LinearSolverOptions linear_opts={}, MPI_Comm comm=MPI_COMM_WORLD) |
Build the linear solver and its associated preconditioner given a linear options struct. More... | |
std::unique_ptr< mfem::Solver > | serac::buildPreconditioner (Preconditioner preconditioner, int print_level=0,[[maybe_unused]] MPI_Comm comm=MPI_COMM_WORLD) |
Build a preconditioner from the available options. More... | |
This file contains the declaration of an equation solver wrapper.
Definition in file equation_solver.hpp.