MFEM v4.7.0
Finite element discretization library
Loading...
Searching...
No Matches
solvers.hpp File Reference

Go to the source code of this file.

Classes

class  mfem::IterativeSolverMonitor
 Abstract base class for an iterative solver monitor. More...
 
class  mfem::IterativeSolver
 Abstract base class for iterative solver. More...
 
struct  mfem::IterativeSolver::PrintLevel
 Settings for the output behavior of the IterativeSolver. More...
 
class  mfem::OperatorJacobiSmoother
 Jacobi smoothing for a given bilinear form (no matrix necessary). More...
 
class  mfem::OperatorChebyshevSmoother
 Chebyshev accelerated smoothing with given vector, no matrix necessary. More...
 
class  mfem::SLISolver
 Stationary linear iteration: x <- x + B (b - A x) More...
 
class  mfem::CGSolver
 Conjugate gradient method. More...
 
class  mfem::GMRESSolver
 GMRES method. More...
 
class  mfem::FGMRESSolver
 FGMRES method. More...
 
class  mfem::BiCGSTABSolver
 BiCGSTAB method. More...
 
class  mfem::MINRESSolver
 MINRES method. More...
 
class  mfem::NewtonSolver
 Newton's method for solving F(x)=b for a given operator F. More...
 
class  mfem::LBFGSSolver
 
class  mfem::OptimizationProblem
 
class  mfem::OptimizationSolver
 Abstract solver for OptimizationProblems. More...
 
class  mfem::SLBQPOptimizer
 
class  mfem::BlockILU
 
class  mfem::ResidualBCMonitor
 Monitor that checks whether the residual is zero at a given set of dofs. More...
 
class  mfem::UMFPackSolver
 Direct sparse solver using UMFPACK. More...
 
class  mfem::KLUSolver
 Direct sparse solver using KLU. More...
 
class  mfem::DirectSubBlockSolver
 Block diagonal solver for A, each block is inverted by direct solver. More...
 
class  mfem::ProductSolver
 
class  mfem::OrthoSolver
 Solver wrapper which orthogonalizes the input and output vector. More...
 
class  mfem::AuxSpaceSmoother
 
class  mfem::NNLSSolver
 

Namespaces

namespace  mfem
 

Functions

void mfem::SLI (const Operator &A, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, real_t RTOLERANCE=1e-12, real_t ATOLERANCE=1e-24)
 Stationary linear iteration. (tolerances are squared)
 
void mfem::SLI (const Operator &A, Solver &B, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, real_t RTOLERANCE=1e-12, real_t ATOLERANCE=1e-24)
 Preconditioned stationary linear iteration. (tolerances are squared)
 
void mfem::CG (const Operator &A, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, real_t RTOLERANCE=1e-12, real_t ATOLERANCE=1e-24)
 Conjugate gradient method. (tolerances are squared)
 
void mfem::PCG (const Operator &A, Solver &B, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, real_t RTOLERANCE=1e-12, real_t ATOLERANCE=1e-24)
 Preconditioned conjugate gradient method. (tolerances are squared)
 
int mfem::GMRES (const Operator &A, Vector &x, const Vector &b, Solver &M, int &max_iter, int m, real_t &tol, real_t atol, int printit)
 GMRES method. (tolerances are squared)
 
void mfem::GMRES (const Operator &A, Solver &B, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, int m=50, real_t rtol=1e-12, real_t atol=1e-24)
 GMRES method. (tolerances are squared)
 
int mfem::BiCGSTAB (const Operator &A, Vector &x, const Vector &b, Solver &M, int &max_iter, real_t &tol, real_t atol, int printit)
 BiCGSTAB method. (tolerances are squared)
 
void mfem::BiCGSTAB (const Operator &A, Solver &B, const Vector &b, Vector &x, int print_iter=0, int max_num_iter=1000, real_t rtol=1e-12, real_t atol=1e-24)
 BiCGSTAB method. (tolerances are squared)
 
void mfem::MINRES (const Operator &A, const Vector &b, Vector &x, int print_it=0, int max_it=1000, real_t rtol=1e-12, real_t atol=1e-24)
 MINRES method without preconditioner. (tolerances are squared)
 
void mfem::MINRES (const Operator &A, Solver &B, const Vector &b, Vector &x, int print_it=0, int max_it=1000, real_t rtol=1e-12, real_t atol=1e-24)
 MINRES method with preconditioner. (tolerances are squared)
 
int mfem::aGMRES (const Operator &A, Vector &x, const Vector &b, const Operator &M, int &max_iter, int m_max, int m_min, int m_step, real_t cf, real_t &tol, real_t &atol, int printit)