46 #ifndef BELOS_ORTHOMANAGER_HPP 47 #define BELOS_ORTHOMANAGER_HPP 65 #include "Teuchos_ScalarTraits.hpp" 66 #include "Teuchos_RCP.hpp" 67 #include "Teuchos_SerialDenseMatrix.hpp" 68 #include "Teuchos_Array.hpp" 84 template <
class ScalarType,
class MV>
107 virtual void innerProd(
const MV &X,
const MV &Y, Teuchos::SerialDenseMatrix<int,ScalarType>& Z )
const = 0;
122 virtual void norm (
const MV& X, std::vector<
typename Teuchos::ScalarTraits<ScalarType>::magnitudeType>& normvec)
const = 0;
160 Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C,
161 Teuchos::ArrayView<Teuchos::RCP<const MV> > Q)
const = 0;
177 virtual int normalize ( MV &X, Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B )
const = 0;
181 projectAndNormalizeImpl (MV &X,
182 Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C,
183 Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B,
184 Teuchos::ArrayView<Teuchos::RCP<const MV> > Q)
const = 0;
244 Teuchos::Array<Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > > C,
245 Teuchos::RCP<Teuchos::SerialDenseMatrix<int,ScalarType> > B,
246 Teuchos::ArrayView<Teuchos::RCP<const MV> > Q)
const 248 return this->projectAndNormalizeImpl (X, C, B, Q);
258 virtual typename Teuchos::ScalarTraits< ScalarType >::magnitudeType
259 orthonormError(
const MV &X)
const = 0;
263 virtual typename Teuchos::ScalarTraits<ScalarType>::magnitudeType
264 orthogError(
const MV &X1,
const MV &X2)
const = 0;
274 virtual void setLabel(
const std::string& label) = 0;
278 virtual const std::string& getLabel()
const = 0;
Collection of types and exceptions used within the Belos solvers.
OrthoError(const std::string &what_arg)
int projectAndNormalize(MV &X, Teuchos::Array< Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > > C, Teuchos::RCP< Teuchos::SerialDenseMatrix< int, ScalarType > > B, Teuchos::ArrayView< Teuchos::RCP< const MV > > Q) const
Project X against the Q[i] and normalize X.
Belos's templated virtual class for providing routines for orthogonalization and orthonormzalition of...
Exception thrown to signal error in an orthogonalization manager method.
BelosError(const std::string &what_arg)
virtual ~OrthoManager()
Destructor.
Parent class to all Belos exceptions.
Belos header file which uses auto-configuration information to include necessary C++ headers...