Anasazi
Version of the Day
|
Basic adapter class for Anasazi::MultiVec that uses Thyra::MultiVectorBase<ScalarType>. More...
#include <AnasaziThyraDebugAdapter.hpp>
Public Member Functions | |
Constructors/Destructors | |
ThyraMultiVec (const Teuchos::RCP< Thyra::MultiVectorBase< ScalarType > > &mv) | |
Basic ThyraMultiVec constructor (wraps Thyra::MultiVectorBase<> object). More... | |
ThyraMultiVec (const Teuchos::RCP< Thyra::MultiVectorBase< ScalarType > > &mv, std::vector< Teuchos::RCP< Teuchos::Time > > &timers) | |
Basic ThyraMultiVec constructor (wraps Thyra::MultiVectorBase<> object). More... | |
ThyraMultiVec (const ThyraMultiVec< ScalarType > &mv) | |
Copy constructor. More... | |
virtual | ~ThyraMultiVec () |
Destructor. More... | |
Creation methods | |
MultiVec< ScalarType > * | Clone (const int numvecs) const |
Creates a new empty ThyraMultiVec containing numvecs columns. More... | |
MultiVec< ScalarType > * | CloneCopy () const |
Creates a new ThyraMultiVec and copies contents of *this into the new vector (deep copy). More... | |
MultiVec< ScalarType > * | CloneCopy (const std::vector< int > &index) const |
Creates a new ThyraMultiVec and copies the selected contents of *this into the new vector (deep copy). More... | |
MultiVec< ScalarType > * | CloneViewNonConst (const std::vector< int > &index) |
Creates a new ThyraMultiVec that shares the selected contents of *this . More... | |
const MultiVec< ScalarType > * | CloneView (const std::vector< int > &index) const |
Creates a new ThyraMultiVec that shares the selected contents of *this . More... | |
Attribute methods | |
int | GetNumberVecs () const |
Obtain the vector length of *this. More... | |
ptrdiff_t | GetGlobalLength () const |
Obtain the number of vectors in *this. More... | |
Update methods | |
void | MvTimesMatAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, const Teuchos::SerialDenseMatrix< int, ScalarType > &B, ScalarType beta) |
Update *this with . More... | |
void | MvAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, ScalarType beta, const MultiVec< ScalarType > &B) |
Replace *this with . More... | |
void | MvTransMv (ScalarType alpha, const MultiVec< ScalarType > &A, Teuchos::SerialDenseMatrix< int, ScalarType > &B) const |
Compute a dense matrix B through the matrix-matrix multiply . More... | |
void | MvDot (const MultiVec< ScalarType > &A, std::vector< ScalarType > &b) const |
Compute a vector b where the components are the individual dot-products, i.e. where A [i] is the i-th column of A . More... | |
void | MvScale (ScalarType alpha) |
Scale each element of the vectors in *this with alpha . More... | |
void | MvScale (const std::vector< ScalarType > &alpha) |
Scale each element of the i-th vector in *this with alpha [i]. More... | |
Norm method | |
void | MvNorm (std::vector< typename Teuchos::ScalarTraits< ScalarType >::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 . More... | |
Initialization methods | |
void | SetBlock (const MultiVec< ScalarType > &A, const std::vector< int > &index) |
Copy the vectors in A to a set of vectors in *this . More... | |
void | MvRandom () |
Fill the vectors in *this with random numbers. More... | |
void | MvInit (ScalarType alpha) |
Replace each element of the vectors in *this with alpha . More... | |
Accessor methods | |
{ | |
Teuchos::RCP < Thyra::MultiVectorBase < ScalarType > > | getRCP () |
Return the reference-counted pointer held by this object. More... | |
Teuchos::RCP< const Thyra::MultiVectorBase < ScalarType > > | getRCP () const |
Return the const reference-counted pointer held by this object. More... | |
std::vector< Teuchos::RCP < Teuchos::Time > > | getTimers () const |
Return a std::vector<> of timers held by this object. More... | |
void | copyTimers (const std::vector< Teuchos::RCP< Teuchos::Time > > &timers) |
Copy a std::vector<> of timers into this object. More... | |
Print method | |
void | MvPrint (std::ostream &os) const |
Print *this ThyraMultiVec. More... | |
Public Member Functions inherited from Anasazi::MultiVec< ScalarType > | |
MultiVec () | |
Default constructor. More... | |
virtual | ~MultiVec () |
Destructor (virtual for memory safety of derived classes). More... | |
Basic adapter class for Anasazi::MultiVec that uses Thyra::MultiVectorBase<ScalarType>.
Definition at line 82 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Basic ThyraMultiVec constructor (wraps Thyra::MultiVectorBase<> object).
mv | [in] a reference-counted pointer to a Thyra::MultiVectorBase<> object. |
Definition at line 98 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Basic ThyraMultiVec constructor (wraps Thyra::MultiVectorBase<> object).
mv | [in] a reference-counted pointer to a Thyra::MultiVectorBase<> object. |
timers | [in] a vector containing timers for this wrapper to use. |
Definition at line 122 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Copy constructor.
mv | [in] a ThyraMultiVec object. |
Definition at line 134 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Destructor.
Definition at line 142 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Creates a new empty ThyraMultiVec containing numvecs
columns.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 153 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Creates a new ThyraMultiVec and copies contents of *this
into the new vector (deep copy).
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 164 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Creates a new ThyraMultiVec 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
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 178 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Creates a new ThyraMultiVec 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
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 192 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Creates a new ThyraMultiVec 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
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 206 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Obtain the vector length of *this.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 221 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Obtain the number of vectors in *this.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 224 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Update *this
with .
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 232 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Replace *this
with .
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 243 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Compute a dense matrix B
through the matrix-matrix multiply .
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 254 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Compute a vector b
where the components are the individual dot-products, i.e. where A
[i] is the i-th column of A
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 267 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Scale each element of the vectors in *this
with alpha
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 280 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Scale each element of the i-th
vector in *this
with alpha
[i].
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 284 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
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
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 293 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
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
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 303 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Fill the vectors in *this
with random numbers.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 312 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Replace each element of the vectors in *this
with alpha
.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 316 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Return the reference-counted pointer held by this object.
Definition at line 322 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Return the const reference-counted pointer held by this object.
Definition at line 326 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Return a std::vector<> of timers held by this object.
Definition at line 330 of file AnasaziThyraDebugAdapter.hpp.
|
inline |
Copy a std::vector<> of timers into this object.
Definition at line 350 of file AnasaziThyraDebugAdapter.hpp.
|
inlinevirtual |
Print *this
ThyraMultiVec.
Implements Anasazi::MultiVec< ScalarType >.
Definition at line 371 of file AnasaziThyraDebugAdapter.hpp.