Belos  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > > Class Template Reference

Specialization of MultiVecTraits for Belos::MultiVec. More...

#include <BelosMultiVec.hpp>

Static Public Member Functions

Creation methods
static Teuchos::RCP< MultiVec
< ScalarType > > 
Clone (const MultiVec< ScalarType > &mv, const int numvecs)
 Create a new empty MultiVec containing numvecs columns. More...
 
static Teuchos::RCP< MultiVec
< ScalarType > > 
CloneCopy (const MultiVec< ScalarType > &mv)
 
static Teuchos::RCP< MultiVec
< ScalarType > > 
CloneCopy (const MultiVec< ScalarType > &mv, const std::vector< int > &index)
 
static Teuchos::RCP< MultiVec
< ScalarType > > 
CloneViewNonConst (MultiVec< ScalarType > &mv, const std::vector< int > &index)
 
static Teuchos::RCP< MultiVec
< ScalarType > > 
CloneViewNonConst (MultiVec< ScalarType > &mv, const Teuchos::Range1D &index)
 
static Teuchos::RCP< const
MultiVec< ScalarType > > 
CloneView (const MultiVec< ScalarType > &mv, const std::vector< int > &index)
 
static Teuchos::RCP< const
MultiVec< ScalarType > > 
CloneView (const MultiVec< ScalarType > &mv, const Teuchos::Range1D &index)
 
static ptrdiff_t GetGlobalLength (const MultiVec< ScalarType > &mv)
 
static int GetNumberVecs (const MultiVec< ScalarType > &mv)
 
static void MvTimesMatAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, const Teuchos::SerialDenseMatrix< int, ScalarType > &B, ScalarType beta, MultiVec< ScalarType > &mv)
 
static void MvAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, ScalarType beta, const MultiVec< ScalarType > &B, MultiVec< ScalarType > &mv)
 
static void MvScale (MultiVec< ScalarType > &mv, const ScalarType alpha)
 
static void MvScale (MultiVec< ScalarType > &mv, const std::vector< ScalarType > &alpha)
 
static void MvTransMv (const ScalarType alpha, const MultiVec< ScalarType > &A, const MultiVec< ScalarType > &mv, Teuchos::SerialDenseMatrix< int, ScalarType > &B)
 
static void MvDot (const MultiVec< ScalarType > &mv, const MultiVec< ScalarType > &A, std::vector< ScalarType > &b)
 
static void MvNorm (const MultiVec< ScalarType > &mv, std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > &normvec, NormType type=TwoNorm)
 
static void SetBlock (const MultiVec< ScalarType > &A, const std::vector< int > &index, MultiVec< ScalarType > &mv)
 
static void Assign (const MultiVec< ScalarType > &A, MultiVec< ScalarType > &mv)
 
static void MvRandom (MultiVec< ScalarType > &mv)
 
static void MvInit (MultiVec< ScalarType > &mv, ScalarType alpha=Teuchos::ScalarTraits< ScalarType >::zero())
 
static void MvPrint (const MultiVec< ScalarType > &mv, std::ostream &os)
 

Detailed Description

template<class ScalarType>
class Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >

Specialization of MultiVecTraits for Belos::MultiVec.

Belos interfaces to every multivector implementation through a specialization of MultiVecTraits. Thus, we provide a specialization of MultiVecTraits for the MultiVec run-time polymorphic interface above.

Template Parameters
ScalarTypeThe type of entries in the multivector; the template parameter of MultiVec.

Definition at line 364 of file BelosMultiVec.hpp.

Member Function Documentation

template<class ScalarType >
static Teuchos::RCP<MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::Clone ( const MultiVec< ScalarType > &  mv,
const int  numvecs 
)
inlinestatic

Create a new empty MultiVec containing numvecs columns.

Returns
Reference-counted pointer to the new MultiVec.

Definition at line 372 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneCopy ( const MultiVec< ScalarType > &  mv)
inlinestatic

Definition at line 376 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneCopy ( const MultiVec< ScalarType > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 379 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneViewNonConst ( MultiVec< ScalarType > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 383 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneViewNonConst ( MultiVec< ScalarType > &  mv,
const Teuchos::Range1D index 
)
inlinestatic

Definition at line 389 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<const MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneView ( const MultiVec< ScalarType > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 403 of file BelosMultiVec.hpp.

template<class ScalarType >
static Teuchos::RCP<const MultiVec<ScalarType> > Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::CloneView ( const MultiVec< ScalarType > &  mv,
const Teuchos::Range1D index 
)
inlinestatic

Definition at line 408 of file BelosMultiVec.hpp.

template<class ScalarType >
static ptrdiff_t Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::GetGlobalLength ( const MultiVec< ScalarType > &  mv)
inlinestatic

Definition at line 421 of file BelosMultiVec.hpp.

template<class ScalarType >
static int Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::GetNumberVecs ( const MultiVec< ScalarType > &  mv)
inlinestatic

Definition at line 424 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvTimesMatAddMv ( ScalarType  alpha,
const MultiVec< ScalarType > &  A,
const Teuchos::SerialDenseMatrix< int, ScalarType > &  B,
ScalarType  beta,
MultiVec< ScalarType > &  mv 
)
inlinestatic

Definition at line 427 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvAddMv ( ScalarType  alpha,
const MultiVec< ScalarType > &  A,
ScalarType  beta,
const MultiVec< ScalarType > &  B,
MultiVec< ScalarType > &  mv 
)
inlinestatic

Definition at line 432 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvScale ( MultiVec< ScalarType > &  mv,
const ScalarType  alpha 
)
inlinestatic

Definition at line 435 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvScale ( MultiVec< ScalarType > &  mv,
const std::vector< ScalarType > &  alpha 
)
inlinestatic

Definition at line 438 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvTransMv ( const ScalarType  alpha,
const MultiVec< ScalarType > &  A,
const MultiVec< ScalarType > &  mv,
Teuchos::SerialDenseMatrix< int, ScalarType > &  B 
)
inlinestatic

Definition at line 441 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvDot ( const MultiVec< ScalarType > &  mv,
const MultiVec< ScalarType > &  A,
std::vector< ScalarType > &  b 
)
inlinestatic

Definition at line 444 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvNorm ( const MultiVec< ScalarType > &  mv,
std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > &  normvec,
NormType  type = TwoNorm 
)
inlinestatic

Definition at line 447 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::SetBlock ( const MultiVec< ScalarType > &  A,
const std::vector< int > &  index,
MultiVec< ScalarType > &  mv 
)
inlinestatic

Definition at line 450 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::Assign ( const MultiVec< ScalarType > &  A,
MultiVec< ScalarType > &  mv 
)
inlinestatic

Definition at line 454 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvRandom ( MultiVec< ScalarType > &  mv)
inlinestatic

Definition at line 478 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvInit ( MultiVec< ScalarType > &  mv,
ScalarType  alpha = Teuchos::ScalarTraits<ScalarType>::zero() 
)
inlinestatic

Definition at line 481 of file BelosMultiVec.hpp.

template<class ScalarType >
static void Belos::MultiVecTraits< ScalarType, MultiVec< ScalarType > >::MvPrint ( const MultiVec< ScalarType > &  mv,
std::ostream &  os 
)
inlinestatic

Definition at line 484 of file BelosMultiVec.hpp.


The documentation for this class was generated from the following file:

Generated on Wed Apr 24 2024 09:25:59 for Belos by doxygen 1.8.5