DOLFIN
DOLFIN C++ interface
Loading...
Searching...
No Matches
dolfin::EigenKrylovSolver Class Reference

#include <EigenKrylovSolver.h>

Inheritance diagram for dolfin::EigenKrylovSolver:
Collaboration diagram for dolfin::EigenKrylovSolver:

Public Member Functions

 EigenKrylovSolver (std::string method="default", std::string preconditioner="default")
 ~EigenKrylovSolver ()
 Destructor.
void set_operator (std::shared_ptr< const GenericLinearOperator > A)
 Set operator (matrix).
void set_operator (std::shared_ptr< const EigenMatrix > A)
 Set operator (matrix).
void set_operators (std::shared_ptr< const GenericLinearOperator > A, std::shared_ptr< const GenericLinearOperator > P)
 Set operator (matrix) and preconditioner matrix.
void set_operators (std::shared_ptr< const EigenMatrix > A, std::shared_ptr< const EigenMatrix > P)
 Set operator (matrix) and preconditioner matrix.
std::shared_ptr< const EigenMatrixget_operator () const
 Get operator (matrix).
std::size_t solve (GenericVector &x, const GenericVector &b)
 Solve linear system Ax = b and return number of iterations.
std::size_t solve (EigenVector &x, const EigenVector &b)
 Solve linear system Ax = b and return number of iterations.
std::size_t solve (const GenericLinearOperator &A, GenericVector &x, const GenericVector &b)
 Solve linear system Ax = b and return number of iterations.
std::size_t solve (const EigenMatrix &A, EigenVector &x, const EigenVector &b)
 Solve linear system Ax = b and return number of iterations.
std::string str (bool verbose) const
 Return informal string representation (pretty-print).
std::string parameter_type () const
 Return parameter type: "krylov_solver" or "lu_solver".
Public Member Functions inherited from dolfin::GenericLinearSolver
virtual void update_parameters (const Parameters &parameters)
 Update solver parameters (useful for LinearSolver wrapper).
Public Member Functions inherited from dolfin::Variable
 Variable ()
 Create unnamed variable.
 Variable (const std::string name, const std::string label)
 Create variable with given name and label.
 Variable (const Variable &variable)
 Copy constructor.
virtual ~Variable ()
 Destructor.
const Variableoperator= (const Variable &variable)
 Assignment operator.
void rename (const std::string name, const std::string label)
 Rename variable.
std::string name () const
 Return name.
std::string label () const
 Return label (description).
std::size_t id () const

Static Public Member Functions

static std::map< std::string, std::string > methods ()
 Return a list of available solver methods.
static std::map< std::string, std::string > preconditioners ()
 Return a list of available preconditioners.
static Parameters default_parameters ()
 Default parameter values.

Additional Inherited Members

Public Attributes inherited from dolfin::Variable
Parameters parameters
 Parameters.
Static Protected Member Functions inherited from dolfin::GenericLinearSolver
static const GenericMatrixrequire_matrix (const GenericLinearOperator &A)
static std::shared_ptr< const GenericMatrixrequire_matrix (std::shared_ptr< const GenericLinearOperator > A)

Detailed Description

This class implements Krylov methods for linear systems of the form Ax = b. It is a wrapper for the Krylov solvers of Eigen.

Constructor & Destructor Documentation

◆ EigenKrylovSolver()

EigenKrylovSolver::EigenKrylovSolver ( std::string method = "default",
std::string preconditioner = "default" )

Create Krylov solver for a particular method and names preconditioner

Member Function Documentation

◆ parameter_type()

std::string dolfin::EigenKrylovSolver::parameter_type ( ) const
inlinevirtual

Return parameter type: "krylov_solver" or "lu_solver".

Reimplemented from dolfin::GenericLinearSolver.

◆ set_operator()

void EigenKrylovSolver::set_operator ( std::shared_ptr< const GenericLinearOperator > A)
virtual

Set operator (matrix).

Implements dolfin::GenericLinearSolver.

◆ set_operators()

void EigenKrylovSolver::set_operators ( std::shared_ptr< const GenericLinearOperator > A,
std::shared_ptr< const GenericLinearOperator > P )
virtual

Set operator (matrix) and preconditioner matrix.

Reimplemented from dolfin::GenericLinearSolver.

◆ solve() [1/2]

std::size_t EigenKrylovSolver::solve ( const GenericLinearOperator & A,
GenericVector & x,
const GenericVector & b )
virtual

Solve linear system Ax = b and return number of iterations.

Reimplemented from dolfin::GenericLinearSolver.

◆ solve() [2/2]

std::size_t EigenKrylovSolver::solve ( GenericVector & x,
const GenericVector & b )
virtual

Solve linear system Ax = b and return number of iterations.

Implements dolfin::GenericLinearSolver.

◆ str()

std::string EigenKrylovSolver::str ( bool verbose) const
virtual

Return informal string representation (pretty-print).

Reimplemented from dolfin::Variable.


The documentation for this class was generated from the following files: