|
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 <utility>#include "mpi.h"#include "mfem.hpp"#include "serac/infrastructure/input.hpp"#include "serac/numerics/solver_config.hpp"#include "serac/numerics/petsc_solvers.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::HypreParMatrix > | serac::buildMonolithicMatrix (const mfem::BlockOperator &block_operator) |
| Function for building a monolithic parallel Hypre matrix from a block system of smaller Hypre matrices. More... | |
| std::unique_ptr< mfem::NewtonSolver > | serac::buildNonlinearSolver (const NonlinearSolverOptions &nonlinear_opts, const LinearSolverOptions &linear_opts, mfem::Solver &preconditioner, 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 (LinearSolverOptions linear_opts,[[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.
This file contains the declaration of a trust region subspace solver.
Definition in file equation_solver.hpp.