Anasazi
Version of the Day
|
Specialization of MultiVecTraits for Belos::MultiVec. More...
#include <AnasaziMultiVec.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) |
Creates a new Anasazi::MultiVec and copies contents of mv into the new vector (deep copy). More... | |
static Teuchos::RCP< MultiVec < ScalarType > > | CloneCopy (const MultiVec< ScalarType > &mv, const std::vector< int > &index) |
Creates a new Anasazi::MultiVec and copies the selected contents of mv into the new vector (deep copy). More... | |
static Teuchos::RCP< MultiVec < ScalarType > > | CloneViewNonConst (MultiVec< ScalarType > &mv, const std::vector< int > &index) |
Creates a new Anasazi::MultiVec that shares the selected contents of mv (shallow copy). More... | |
static Teuchos::RCP< const MultiVec< ScalarType > > | CloneView (const MultiVec< ScalarType > &mv, const std::vector< int > &index) |
Creates a new const Anasazi::MultiVec that shares the selected contents of mv (shallow copy). More... | |
Attribute methods | |
static ptrdiff_t | GetGlobalLength (const MultiVec< ScalarType > &mv) |
Obtain the vector length of mv . More... | |
static int | GetNumberVecs (const MultiVec< ScalarType > &mv) |
Obtain the number of vectors in mv . More... | |
Update methods | |
static void | MvTimesMatAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, const Teuchos::SerialDenseMatrix< int, ScalarType > &B, ScalarType beta, MultiVec< ScalarType > &mv) |
Update mv with . More... | |
static void | MvAddMv (ScalarType alpha, const MultiVec< ScalarType > &A, ScalarType beta, const MultiVec< ScalarType > &B, MultiVec< ScalarType > &mv) |
Replace mv with . More... | |
static void | MvTransMv (ScalarType alpha, const MultiVec< ScalarType > &A, const MultiVec< ScalarType > &mv, Teuchos::SerialDenseMatrix< int, ScalarType > &B) |
Compute a dense matrix B through the matrix-matrix multiply . More... | |
static void | MvDot (const MultiVec< ScalarType > &mv, const MultiVec< ScalarType > &A, std::vector< ScalarType > &b) |
Compute a vector b where the components are the individual dot-products of the i-th columns of A and mv , i.e. . More... | |
static void | MvScale (MultiVec< ScalarType > &mv, ScalarType alpha) |
Scale each element of the vectors in *this with alpha . More... | |
static void | MvScale (MultiVec< ScalarType > &mv, const std::vector< ScalarType > &alpha) |
Scale each element of the i-th vector in *this with alpha [i]. More... | |
Norm method | |
static void | MvNorm (const MultiVec< ScalarType > &mv, std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > &normvec) |
Compute the 2-norm of each individual vector of mv . Upon return, normvec [i] holds the value of , the i-th column of mv . More... | |
Initialization methods | |
static void | SetBlock (const MultiVec< ScalarType > &A, const std::vector< int > &index, MultiVec< ScalarType > &mv) |
Copy the vectors in A to a set of vectors in mv indicated by the indices given in index . More... | |
static void | MvRandom (MultiVec< ScalarType > &mv) |
Replace the vectors in mv with random vectors. More... | |
static void | MvInit (MultiVec< ScalarType > &mv, ScalarType alpha=Teuchos::ScalarTraits< ScalarType >::zero()) |
Replace each element of the vectors in mv with alpha . More... | |
Print method | |
static void | MvPrint (const MultiVec< ScalarType > &mv, std::ostream &os) |
Print the mv multi-vector to the os output stream. More... | |
Specialization of MultiVecTraits for Belos::MultiVec.
Anasazi 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.
ScalarType | The type of entries in the multivector; the template parameter of MultiVec. |
Definition at line 329 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Create a new empty MultiVec
containing numvecs
columns.
MultiVec
. Definition at line 337 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Creates a new Anasazi::MultiVec
and copies contents of mv
into the new vector (deep copy).
Anasazi::MultiVec
. Definition at line 345 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Creates a new Anasazi::MultiVec
and copies the selected contents of mv
into the new vector (deep copy).
The copied vectors from mv
are indicated by the index.size()
indices in index
.
Anasazi::MultiVec
. Definition at line 353 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Creates a new Anasazi::MultiVec
that shares the selected contents of mv
(shallow copy).
The index of the numvecs
vectors shallow copied from mv
are indicated by the indices given in index
.
Anasazi::MultiVec
. Definition at line 361 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Creates a new const Anasazi::MultiVec
that shares the selected contents of mv
(shallow copy).
The index of the numvecs
vectors shallow copied from mv
are indicated by the indices given in index
.
Anasazi::MultiVec
. Definition at line 369 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Obtain the vector length of mv
.
Definition at line 378 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Obtain the number of vectors in mv
.
Definition at line 382 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Update mv
with .
Definition at line 392 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Replace mv
with .
Definition at line 399 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Compute a dense matrix B
through the matrix-matrix multiply .
Definition at line 404 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Compute a vector b
where the components are the individual dot-products of the i-th
columns of A
and mv
, i.e. .
Definition at line 417 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Scale each element of the vectors in *this
with alpha
.
Definition at line 429 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Scale each element of the i-th
vector in *this
with alpha
[i].
Definition at line 433 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Compute the 2-norm of each individual vector of mv
. Upon return, normvec
[i] holds the value of , the i-th
column of mv
.
Definition at line 443 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Copy the vectors in A
to a set of vectors in mv
indicated by the indices given in index
.
The numvecs
vectors in A
are copied to a subset of vectors in mv
indicated by the indices given in index
, i.e. mv[index[i]] = A[i]
.
Definition at line 454 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Replace the vectors in mv
with random vectors.
Definition at line 459 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Replace each element of the vectors in mv
with alpha
.
Definition at line 464 of file AnasaziMultiVec.hpp.
|
inlinestatic |
Print the mv
multi-vector to the os
output stream.
Definition at line 472 of file AnasaziMultiVec.hpp.