Anasazi::BlockKrylovSchur< ScalarType, MV, OP > Class Template Reference

This class implements the Restarted Block Krylov Schur Method, an iterative method for solving eigenvalue problems. More...

#include <AnasaziBlockKrylovSchur.hpp>

Inheritance diagram for Anasazi::BlockKrylovSchur< ScalarType, MV, OP >:

[legend]
Collaboration diagram for Anasazi::BlockKrylovSchur< ScalarType, MV, OP >:
[legend]
List of all members.

Public Member Functions

Constructor/Destructor.
 BlockKrylovSchur (const Teuchos::RefCountPtr< Eigenproblem< ScalarType, MV, OP > > &problem, const Teuchos::RefCountPtr< SortManager< ScalarType, MV, OP > > &sm, const Teuchos::RefCountPtr< OutputManager< ScalarType > > &om, Teuchos::ParameterList &pl)
 Anasazi::BlockKrylovSchur constructor.
virtual ~BlockKrylovSchur ()
 Anasazi::BlockKrylovSchur destructor.
Solver application methods.
ReturnType solve ()
 This method uses iterate to compute approximate solutions to the original problem. It may return without converging if it has taken the maximum number of iterations or numerical breakdown is observed.
Solver status methods.
Teuchos::RefCountPtr< const
std::vector< ScalarType > > 
GetRitzValues () const
 This method returns the computed Ritz values.
Teuchos::RefCountPtr< const
std::vector< ScalarType > > 
GetRitzResiduals () const
 This method returns the Ritz residuals for the computed eigenpairs.
int GetNumIters () const
 Get the current iteration count.
int GetNumRestarts () const
 Get the current restart count of the iteration method.
int GetBlockSize () const
 Get the blocksize to be used by the iterative solver in solving this eigenproblem.
int GetKrylovFactLength () const
 Get the total length of the Krylov-Schur factorization.
Eigenproblem< ScalarType,
MV, OP > & 
GetEigenproblem () const
 Get a constant reference to the current linear problem, which may include a current solution.
Output methods.
void currentStatus ()
 This method requests that the solver print out its current status to screen.

Detailed Description

template<class ScalarType, class MV, class OP>
class Anasazi::BlockKrylovSchur< ScalarType, MV, OP >

This class implements the Restarted Block Krylov Schur Method, an iterative method for solving eigenvalue problems.

This method is a block version of the method presented by G.W. Stewart in "A Krylov-Schur Algorithm for Large Eigenproblems", SIAM J. Matrix Anal. Appl., Vol 28, No. 8, pp. 601-614.

Author:
Rich Lehoucq, Heidi Thornquist


Member Function Documentation

template<class ScalarType, class MV, class OP>
int Anasazi::BlockKrylovSchur< ScalarType, MV, OP >::GetKrylovFactLength  )  const [inline]
 

Get the total length of the Krylov-Schur factorization.

This number will be the product of the length and the blocksize given by the user.

template<class ScalarType, class MV, class OP>
int Anasazi::BlockKrylovSchur< ScalarType, MV, OP >::GetNumRestarts  )  const [inline, virtual]
 

Get the current restart count of the iteration method.

Some eigensolvers can perform restarts (i.e.Arnoldi) to reduce memory and orthogonalization costs. For other eigensolvers that don't perform restarts (i.e. LOBPCG), this is not a valid stopping criteria.

Implements Anasazi::Eigensolver< ScalarType, MV, OP >.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:41:36 2008 for Anasazi by doxygen 1.3.9.1