MueLu  Version of the Day
Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > > Class Template Reference

Template specialization of Belos::MultiVecTraits class using the Xpetra::MultiVector class. This interface will ensure that any Xpetra::MultiVector will be accepted by the Belos templated solvers. More...

#include <BelosXpetraAdapterMultiVector.hpp>

Static Public Member Functions

static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > Clone (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const int numvecs)
 
static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneCopy (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneCopy (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const std::vector< int > &index)
 
static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneCopy (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const Teuchos::Range1D &index)
 
static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneViewNonConst (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const std::vector< int > &index)
 
static RCP< Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneViewNonConst (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const Teuchos::Range1D &index)
 
static RCP< const Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneView (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const std::vector< int > &index)
 
static RCP< const Xpetra::MultiVector< Scalar, LO, GO, Node > > CloneView (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const Teuchos::Range1D &index)
 
static ptrdiff_t GetGlobalLength (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static int GetNumberVecs (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static bool HasConstantStride (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void MvTimesMatAddMv (Scalar alpha, const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, const Teuchos::SerialDenseMatrix< int, Scalar > &B, Scalar beta, Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void MvAddMv (Scalar alpha, const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, Scalar beta, const Xpetra::MultiVector< Scalar, LO, GO, Node > &B, Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void MvScale (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, Scalar alpha)
 
static void MvScale (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, const std::vector< Scalar > &alphas)
 
static void MvTransMv (Scalar alpha, const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, const Xpetra::MultiVector< Scalar, LO, GO, Node > &B, Teuchos::SerialDenseMatrix< int, Scalar > &C)
 
static void MvDot (const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, const Xpetra::MultiVector< Scalar, LO, GO, Node > &B, std::vector< Scalar > &dots)
 
static void MvNorm (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, std::vector< typename Teuchos::ScalarTraits< Scalar >::magnitudeType > &normvec, NormType type=TwoNorm)
 
static void SetBlock (const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, const std::vector< int > &index, Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void SetBlock (const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, const Teuchos::Range1D &index, Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void Assign (const Xpetra::MultiVector< Scalar, LO, GO, Node > &A, Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void MvRandom (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv)
 
static void MvInit (Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, Scalar alpha=Teuchos::ScalarTraits< Scalar >::zero())
 
static void MvPrint (const Xpetra::MultiVector< Scalar, LO, GO, Node > &mv, std::ostream &os)
 

Detailed Description

template<class Scalar, class LO, class GO, class Node>
class Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >

Template specialization of Belos::MultiVecTraits class using the Xpetra::MultiVector class. This interface will ensure that any Xpetra::MultiVector will be accepted by the Belos templated solvers.

Definition at line 90 of file BelosXpetraAdapterMultiVector.hpp.

Member Function Documentation

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::Clone ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const int  numvecs 
)
inlinestatic

Definition at line 105 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneCopy ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv)
inlinestatic

Definition at line 117 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneCopy ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 129 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneCopy ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const Teuchos::Range1D &  index 
)
inlinestatic

Definition at line 142 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneViewNonConst ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 155 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneViewNonConst ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const Teuchos::Range1D &  index 
)
inlinestatic

Definition at line 168 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<const Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneView ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const std::vector< int > &  index 
)
inlinestatic

Definition at line 181 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static RCP<const Xpetra::MultiVector<Scalar,LO,GO,Node> > Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::CloneView ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const Teuchos::Range1D &  index 
)
inlinestatic

Definition at line 197 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static ptrdiff_t Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::GetGlobalLength ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv)
inlinestatic

Definition at line 213 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static int Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::GetNumberVecs ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv)
inlinestatic

Definition at line 225 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static bool Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::HasConstantStride ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv)
inlinestatic

Definition at line 237 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvTimesMatAddMv ( Scalar  alpha,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
const Teuchos::SerialDenseMatrix< int, Scalar > &  B,
Scalar  beta,
Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv 
)
inlinestatic

Definition at line 249 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvAddMv ( Scalar  alpha,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
Scalar  beta,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  B,
Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv 
)
inlinestatic

Definition at line 273 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvScale ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
Scalar  alpha 
)
inlinestatic

Definition at line 288 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvScale ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
const std::vector< Scalar > &  alphas 
)
inlinestatic

Definition at line 302 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvTransMv ( Scalar  alpha,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  B,
Teuchos::SerialDenseMatrix< int, Scalar > &  C 
)
inlinestatic

Definition at line 316 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvDot ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
const Xpetra::MultiVector< Scalar, LO, GO, Node > &  B,
std::vector< Scalar > &  dots 
)
inlinestatic

Definition at line 334 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvNorm ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
std::vector< typename Teuchos::ScalarTraits< Scalar >::magnitudeType > &  normvec,
NormType  type = TwoNorm 
)
inlinestatic

Definition at line 348 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::SetBlock ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
const std::vector< int > &  index,
Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv 
)
inlinestatic

Definition at line 362 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::SetBlock ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
const Teuchos::Range1D &  index,
Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv 
)
inlinestatic

Definition at line 377 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::Assign ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  A,
Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv 
)
inlinestatic

Definition at line 394 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvRandom ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv)
inlinestatic

Definition at line 409 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvInit ( Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
Scalar  alpha = Teuchos::ScalarTraits<Scalar>::zero() 
)
inlinestatic

Definition at line 423 of file BelosXpetraAdapterMultiVector.hpp.

template<class Scalar , class LO , class GO , class Node >
static void Belos::MultiVecTraits< Scalar, Xpetra::MultiVector< Scalar, LO, GO, Node > >::MvPrint ( const Xpetra::MultiVector< Scalar, LO, GO, Node > &  mv,
std::ostream &  os 
)
inlinestatic

Definition at line 437 of file BelosXpetraAdapterMultiVector.hpp.


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