NOX Development
Public Member Functions | Protected Types | Protected Attributes
LOCA::Eigensolver::AnasaziStrategy Class Reference

Anasazi eigensolver strategy. More...

#include <LOCA_Eigensolver_AnasaziStrategy.H>

Inheritance diagram for LOCA::Eigensolver::AnasaziStrategy:
Inheritance graph
Collaboration diagram for LOCA::Eigensolver::AnasaziStrategy:
Collaboration graph

List of all members.

Public Member Functions

 AnasaziStrategy (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams)
virtual ~AnasaziStrategy ()
computeEigenvalues (NOX::Abstract::Group &group, Teuchos::RCP< std::vector< double > > &evals_r, Teuchos::RCP< std::vector< double > > &evals_i, Teuchos::RCP< NOX::Abstract::MultiVector > &evecs_r, Teuchos::RCP< NOX::Abstract::MultiVector > &evecs_i)
 Compute eigenvalues/eigenvectors.

Protected Types

typedef NOX::Abstract::MultiVector MV
 Typedef to simplify templating.
 Typedef to simplify templating.

Protected Attributes

Teuchos::RCP< LOCA::GlobalDataglobalData
 Global data.
< LOCA::Parameter::SublistParser
 Parsed parameter list.
< Teuchos::ParameterList
 Eigensolver parameter list.
< Teuchos::ParameterList
 Linear solver parameter list.
int blksz
 The block size.
int nev
 The number of requested eigenvalues.
bool isSymmetric
 Is problem symmetric.

Detailed Description

Anasazi eigensolver strategy.

This class implements an eigensolver strategy using the generic Trilinos eigensolver package Anasazi. In particular, this strategy uses the Anasazi::BlockKrylovSchur solver. Since Anasazi is a generic solver, this strategy will work with any group implementation. This strategy references the following parameters passed through the eigenParams argument to the constructor (this list is passed directly to the Anasazi::BlockKrylovSchulSolMgr solver manager):

Constructor & Destructor Documentation

LOCA::Eigensolver::AnasaziStrategy::AnasaziStrategy ( const Teuchos::RCP< LOCA::GlobalData > &  global_data,
const Teuchos::RCP< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RCP< Teuchos::ParameterList > &  eigenParams 


global_data[in] Global data object
topParams[in] Parsed top-level parameter list. Used to obtain linear-solver parameters and to instantiate sorting strategy.
eigenParams[in] Eigensolver parameters as described above. solver.

References blksz, eigenParams, Teuchos::RCP< T >::get(), isSymmetric, nev, Teuchos::rcp(), solverParams, and topParams.

Member Function Documentation

NOX::Abstract::Group::ReturnType LOCA::Eigensolver::AnasaziStrategy::computeEigenvalues ( NOX::Abstract::Group group,
Teuchos::RCP< std::vector< double > > &  evals_r,
Teuchos::RCP< std::vector< double > > &  evals_i,
Teuchos::RCP< NOX::Abstract::MultiVector > &  evecs_r,
Teuchos::RCP< NOX::Abstract::MultiVector > &  evecs_i 
) [virtual]

Compute eigenvalues/eigenvectors.

The implementation here the sets up and calls the Anasazi BlockKrylovSchur solver for computing eigenvalues.

Implements LOCA::Eigensolver::AbstractStrategy.

References NOX::Abstract::Vector::createMultiVector(), NOX::Abstract::Group::getX(), NOX::Abstract::Group::NotConverged, NOX::Abstract::Group::Ok, Teuchos::rcp(), and NOX::Utils::StepperIteration.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends