All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
NetworKit::SolverLamg< Matrix > Class Template Reference

Implements the solve phase of LAMG (Lean Algebraic Multigrid by Livne et al.). More...

#include <SolverLamg.h>

Public Member Functions

 SolverLamg (LevelHierarchy< Matrix > &hierarchy, const Smoother< Matrix > &smoother)
 Constructs a new solver instance for the specified hierarchy. More...
 
 SolverLamg (const SolverLamg< Matrix > &other)=default
 
 SolverLamg (SolverLamg< Matrix > &&other)=default
 
virtual ~SolverLamg ()=default
 
SolverLamgoperator= (SolverLamg< Matrix > &&other)=default
 
SolverLamgoperator= (const SolverLamg< Matrix > &other)=default
 
void solve (Vector &x, const Vector &b, LAMGSolverStatus &status)
 Solves the system A*x = b for the given initial x and right-hand side b. More...
 

Detailed Description

template<class Matrix>
class NetworKit::SolverLamg< Matrix >

Implements the solve phase of LAMG (Lean Algebraic Multigrid by Livne et al.).

Constructor & Destructor Documentation

template<class Matrix>
NetworKit::SolverLamg< Matrix >::SolverLamg ( LevelHierarchy< Matrix > &  hierarchy,
const Smoother< Matrix > &  smoother 
)
inline

Constructs a new solver instance for the specified hierarchy.

The smoother will be used for relaxing and solving the coarser solutions.

Parameters
hierarchyReference to the LevelHierarchy constructed by MultiLevelSetup.
smootherReference to a smoother.
template<class Matrix>
NetworKit::SolverLamg< Matrix >::SolverLamg ( const SolverLamg< Matrix > &  other)
default
template<class Matrix>
NetworKit::SolverLamg< Matrix >::SolverLamg ( SolverLamg< Matrix > &&  other)
default
template<class Matrix>
virtual NetworKit::SolverLamg< Matrix >::~SolverLamg ( )
virtualdefault

Member Function Documentation

template<class Matrix>
SolverLamg& NetworKit::SolverLamg< Matrix >::operator= ( SolverLamg< Matrix > &&  other)
default
template<class Matrix>
SolverLamg& NetworKit::SolverLamg< Matrix >::operator= ( const SolverLamg< Matrix > &  other)
default
template<class Matrix >
void NetworKit::SolverLamg< Matrix >::solve ( Vector x,
const Vector b,
LAMGSolverStatus status 
)

Solves the system A*x = b for the given initial x and right-hand side b.

More parameters can be specified in status and additional output is also stored in status. After the solver finished, the approximate solution is stored in x.

Parameters
x[out]Reference to the initial guess to the solution and the approximation after the solver finished.
bThe right-hand side vector.
statusReference to an LAMGSolverStatus.

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