Anasazi  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Namespaces
AnasaziMultiVec.hpp File Reference

Interface for multivectors used by Anasazi' linear solvers. More...

#include "AnasaziConfigDefs.hpp"
#include "AnasaziMultiVecTraits.hpp"

Go to the source code of this file.

Classes

class  Anasazi::MultiVec< ScalarType >
 Interface for multivectors used by Anasazi's linear solvers. More...
 
class  Anasazi::details::MultiVecTsqrAdapter< ScalarType >
 TSQR adapter for MultiVec. More...
 
class  Anasazi::MultiVecTraits< ScalarType, MultiVec< ScalarType > >
 Specialization of MultiVecTraits for Belos::MultiVec. More...
 

Namespaces

 Anasazi
 Namespace Anasazi contains the classes, structs, enums and utilities used by the Anasazi package.
 

Detailed Description

Interface for multivectors used by Anasazi' linear solvers.

We provide two options for letting Anasazi' linear solvers use arbitrary multivector types. One is via compile-time polymorphism, by specializing Anasazi::MultiVecTraits. The other is via run-time polymorphism, by implementing Anasazi::MultiVec (the interface defined in this header file). Anasazi ultimately only uses Anasazi::MultiVecTraits (it uses Anasazi::MultiVec via a specialization of Anasazi::MultiVecTraits for Anasazi::MultiVec), so the preferred way to tell Anasazi how to use your multivector class is via an Anasazi:: MultiVecTraits specialization. However, some users find a run-time polymorphic interface useful, so we provide it as a service to them.

Definition in file AnasaziMultiVec.hpp.