14#ifndef ANASAZI_ORTHOMANAGER_HPP 
   15#define ANASAZI_ORTHOMANAGER_HPP 
   33#include "Teuchos_ScalarTraits.hpp" 
   34#include "Teuchos_RCP.hpp" 
   35#include "Teuchos_SerialDenseMatrix.hpp" 
   36#include "Teuchos_Array.hpp" 
   54  template <
class ScalarType, 
class MV>
 
   82    virtual void innerProd( 
const MV &X, 
const MV &Y, Teuchos::SerialDenseMatrix<int,ScalarType>& Z ) 
const = 0;
 
   97    virtual void norm( 
const MV& X, std::vector< 
typename Teuchos::ScalarTraits<ScalarType>::magnitudeType > &normvec ) 
const = 0;
 
  141          Teuchos::Array<Teuchos::RCP<const MV> > Q,
 
  142          Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C 
 
  143              = Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix<int,ScalarType> >(Teuchos::null))
 
  190        Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B = Teuchos::null) 
const = 0;
 
  260          Teuchos::Array<Teuchos::RCP<const MV> > Q,
 
  261          Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C 
 
  262              = Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix<int,ScalarType> >(Teuchos::null)),
 
  263          Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B = Teuchos::null
 
  276    virtual typename Teuchos::ScalarTraits< ScalarType >::magnitudeType 
orthonormError(
const MV &X) 
const = 0;
 
  283    virtual typename Teuchos::ScalarTraits<ScalarType>::magnitudeType 
orthogError(
const MV &X1, 
const MV &X2) 
const = 0;
 
 
Anasazi header file which uses auto-configuration information to include necessary C++ headers.
 
Types and exceptions used within Anasazi solvers and interfaces.
 
An exception class parent to all Anasazi exceptions.
 
Exception thrown to signal error in an orthogonalization manager method.
 
Anasazi's templated virtual class for providing routines for orthogonalization and orthonormalization...
 
virtual void norm(const MV &X, std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > &normvec) const =0
Provides the norm induced by innerProd().
 
virtual int normalize(MV &X, Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > B=Teuchos::null) const =0
This method takes a multivector X and attempts to compute a basis for . This basis is orthonormal wit...
 
virtual int projectAndNormalize(MV &X, Teuchos::Array< Teuchos::RCP< const MV > > Q, Teuchos::Array< Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > > C=Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > >(Teuchos::null)), Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > B=Teuchos::null) const =0
Given a set of bases Q[i] and a multivector X, this method computes an orthonormal basis for .
 
virtual void innerProd(const MV &X, const MV &Y, Teuchos::SerialDenseMatrix< int, ScalarType > &Z) const =0
Provides the inner product defining the orthogonality concepts.
 
virtual void project(MV &X, Teuchos::Array< Teuchos::RCP< const MV > > Q, Teuchos::Array< Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > > C=Teuchos::tuple(Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > >(Teuchos::null))) const =0
Given a list of mutually orthogonal and internally orthonormal bases Q, this method projects a multiv...
 
virtual Teuchos::ScalarTraits< ScalarType >::magnitudeType orthogError(const MV &X1, const MV &X2) const =0
This method computes the error in orthogonality of two multivectors.
 
virtual ~OrthoManager()
Destructor.
 
OrthoManager()
Default constructor.
 
virtual Teuchos::ScalarTraits< ScalarType >::magnitudeType orthonormError(const MV &X) const =0
This method computes the error in orthonormality of a multivector.
 
Namespace Anasazi contains the classes, structs, enums and utilities used by the Anasazi package.