Class documentation of Concepts

Loading...
Searching...
No Matches
concepts::AnasaziMV< ScalarT > Class Template Reference
Inheritance diagram for concepts::AnasaziMV< ScalarT >:

Public Types

typedef Vector< ScalarTVectorT
 

Public Member Functions

 AnasaziMV (int dim=0, int nvecs=0, bool allocate=true)
 
virtual AnasaziMV< ScalarT > * Clone (const int numvecs) const
 Creates a new empty Anasazi::MultiVec containing numvecs columns.
 
virtual AnasaziMV< ScalarT > * CloneCopy () const
 Creates a new Anasazi::MultiVec and copies contents of *this into the new vector (deep copy).
 
virtual AnasaziMV< ScalarT > * CloneCopy (const std::vector< int > &index) const
 Creates a new Anasazi::MultiVec and copies the selected contents of *this into the new vector (deep copy). The copied vectors from *this are indicated by the index.size() indices in index.
 
virtual AnasaziMV< ScalarT > * CloneView (const std::vector< int > &index)
 Creates a new Anasazi::MultiVec that shares the selected contents of *this. The index of the numvecs vectors shallow copied from *this are indicated by the indices given in index.
 
Attribute methods
int GetVecLength () const
 Obtain the vector length of *this.
 
virtual int GetNumberVecs () const
 Obtain the number of vectors in *this.
 
Update methods
virtual void MvTimesMatAddMv (ScalarT alpha, const Anasazi::MultiVec< ScalarT > &A, const Teuchos::SerialDenseMatrix< int, ScalarT > &B, ScalarT beta)
 Update *this with alpha * A * B + beta * (*this).
 
virtual void MvAddMv (ScalarT alpha, const Anasazi::MultiVec< ScalarT > &A, ScalarT beta, const Anasazi::MultiVec< ScalarT > &B)
 Replace *this with alpha * A + beta * B.
 
virtual void MvTransMv (ScalarT alpha, const Anasazi::MultiVec< ScalarT > &A, Teuchos::SerialDenseMatrix< int, ScalarT > &B) const
 Compute a dense matrix B through the matrix-matrix multiply alpha * A^T * (*this).
 
virtual void MvDot (const Anasazi::MultiVec< ScalarT > &A, std::vector< ScalarT > &b) const
 Compute a vector b where the components are the individual dot-products, i.e.b[i] = A[i]^H*this[i] where A[i] is the i-th column of A.
 
Norm method
virtual void MvNorm (std::vector< typename Teuchos::ScalarTraits< ScalarT >::magnitudeType > &normvec) const
 Compute the 2-norm of each individual vector of *this.
Upon return, normvec[i] holds the 2-norm of the i-th vector of *this.
 
Initialization methods
virtual void SetBlock (const Anasazi::MultiVec< ScalarT > &A, const std::vector< int > &index)
 Copy the vectors in A to a set of vectors in *this. The numvecs vectors in A are copied to a subset of vectors in *this indicated by the indices given in index.
 
virtual void MvScale (ScalarT alpha)
 Scale each element of the vectors in *this with alpha.
 
virtual void MvScale (const std::vector< ScalarT > &alpha)
 Scale each element of the i-th vector in *this with alpha[i].
 
virtual void MvRandom ()
 Fill the vectors in *this with random numbers.
 
virtual void MvInit (ScalarT alpha)
 Replace each element of the vectors in *this with alpha.
 

Static Public Attributes

static const bool NO_ALLOCATE = false
 

Print method

virtual void MvPrint (std::ostream &os) const
 Print *this multivector to the os output stream.
 
VectorTgetVec (int i)
 
const VectorTgetVec (int i) const
 

Detailed Description

template<class ScalarT>
class concepts::AnasaziMV< ScalarT >

Definition at line 51 of file anasaziHelper.hh.

Member Typedef Documentation

◆ VectorT

Definition at line 54 of file anasaziHelper.hh.

Member Function Documentation

◆ Clone()

template<class ScalarT >
virtual AnasaziMV< ScalarT > * concepts::AnasaziMV< ScalarT >::Clone ( const int  numvecs) const
virtual

Creates a new empty Anasazi::MultiVec containing numvecs columns.

Returns
Pointer to the new multivector

◆ CloneCopy() [1/2]

template<class ScalarT >
virtual AnasaziMV< ScalarT > * concepts::AnasaziMV< ScalarT >::CloneCopy ( ) const
virtual

Creates a new Anasazi::MultiVec and copies contents of *this into the new vector (deep copy).

Returns
Pointer to the new multivector

◆ CloneCopy() [2/2]

template<class ScalarT >
virtual AnasaziMV< ScalarT > * concepts::AnasaziMV< ScalarT >::CloneCopy ( const std::vector< int > &  index) const
virtual

Creates a new Anasazi::MultiVec and copies the selected contents of *this into the new vector (deep copy). The copied vectors from *this are indicated by the index.size() indices in index.

Returns
Pointer to the new multivector

◆ CloneView()

template<class ScalarT >
virtual AnasaziMV< ScalarT > * concepts::AnasaziMV< ScalarT >::CloneView ( const std::vector< int > &  index)
virtual

Creates a new Anasazi::MultiVec that shares the selected contents of *this. The index of the numvecs vectors shallow copied from *this are indicated by the indices given in index.

Returns
Pointer to the new multivector

◆ GetNumberVecs()

template<class ScalarT >
virtual int concepts::AnasaziMV< ScalarT >::GetNumberVecs ( ) const
inlinevirtual

Obtain the number of vectors in *this.

Definition at line 99 of file anasaziHelper.hh.

◆ getVec() [1/2]

template<class ScalarT >
VectorT * concepts::AnasaziMV< ScalarT >::getVec ( int  i)
inline

Definition at line 181 of file anasaziHelper.hh.

◆ getVec() [2/2]

template<class ScalarT >
const VectorT * concepts::AnasaziMV< ScalarT >::getVec ( int  i) const
inline

Definition at line 186 of file anasaziHelper.hh.

◆ GetVecLength()

template<class ScalarT >
int concepts::AnasaziMV< ScalarT >::GetVecLength ( ) const
inline

Obtain the vector length of *this.

Definition at line 96 of file anasaziHelper.hh.

Member Data Documentation

◆ NO_ALLOCATE

template<class ScalarT >
const bool concepts::AnasaziMV< ScalarT >::NO_ALLOCATE = false
static

Definition at line 53 of file anasaziHelper.hh.


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