#include <AnasaziEpetraAdapter.hpp>
Static Public Member Functions | |
Creation methods | |
static Teuchos::RCP < Epetra_MultiVector > | Clone (const Epetra_MultiVector &mv, const int numvecs) |
Creates a new empty Epetra_MultiVector containing numvecs columns. | |
static Teuchos::RCP < Epetra_MultiVector > | CloneCopy (const Epetra_MultiVector &mv) |
Creates a new Epetra_MultiVector and copies contents of mv into the new vector (deep copy). | |
static Teuchos::RCP < Epetra_MultiVector > | CloneCopy (const Epetra_MultiVector &mv, const std::vector< int > &index) |
Creates a new Epetra_MultiVector and copies the selected contents of mv into the new vector (deep copy). | |
static Teuchos::RCP < Epetra_MultiVector > | CloneView (Epetra_MultiVector &mv, const std::vector< int > &index) |
Creates a new Epetra_MultiVector that shares the selected contents of mv (shallow copy). | |
static Teuchos::RCP< const Epetra_MultiVector > | CloneView (const Epetra_MultiVector &mv, const std::vector< int > &index) |
Creates a new const Epetra_MultiVector that shares the selected contents of mv (shallow copy). | |
Attribute methods | |
static int | GetVecLength (const Epetra_MultiVector &mv) |
Obtain the vector length of mv . | |
static int | GetNumberVecs (const Epetra_MultiVector &mv) |
Obtain the number of vectors in mv . | |
Update methods | |
static void | MvTimesMatAddMv (double alpha, const Epetra_MultiVector &A, const Teuchos::SerialDenseMatrix< int, double > &B, double beta, Epetra_MultiVector &mv) |
Update mv with ![]() | |
static void | MvAddMv (double alpha, const Epetra_MultiVector &A, double beta, const Epetra_MultiVector &B, Epetra_MultiVector &mv) |
Replace mv with ![]() | |
static void | MvTransMv (double alpha, const Epetra_MultiVector &A, const Epetra_MultiVector &mv, Teuchos::SerialDenseMatrix< int, double > &B) |
Compute a dense matrix B through the matrix-matrix multiply ![]() | |
static void | MvDot (const Epetra_MultiVector &A, const Epetra_MultiVector &B, std::vector< double > &b) |
Compute a vector b where the components are the individual dot-products of the i-th columns of A and mv , i.e.![]() | |
Norm method | |
static void | MvNorm (const Epetra_MultiVector &mv, std::vector< double > &normvec) |
Compute the 2-norm of each individual vector of mv . Upon return, normvec [i] holds the value of ![]() i-th column of mv . | |
Initialization methods | |
static void | SetBlock (const Epetra_MultiVector &A, const std::vector< int > &index, Epetra_MultiVector &mv) |
Copy the vectors in A to a set of vectors in mv indicated by the indices given in index . | |
static void | MvScale (Epetra_MultiVector &mv, double alpha) |
Scale each element of the vectors in mv with alpha . | |
static void | MvScale (Epetra_MultiVector &mv, const std::vector< double > &alpha) |
Scale each element of the i-th vector in mv with alpha [i]. | |
static void | MvRandom (Epetra_MultiVector &mv) |
Replace the vectors in mv with random vectors. | |
static void | MvInit (Epetra_MultiVector &mv, double alpha=Teuchos::ScalarTraits< double >::zero()) |
Replace each element of the vectors in mv with alpha . | |
Print method | |
static void | MvPrint (const Epetra_MultiVector &mv, std::ostream &os) |
Print the mv multi-vector to the os output stream. |
This interface will ensure that any Epetra_MultiVector will be accepted by the Anasazi templated solvers.
Definition at line 588 of file AnasaziEpetraAdapter.hpp.
static Teuchos::RCP<Epetra_MultiVector> Anasazi::MultiVecTraits< double, Epetra_MultiVector >::Clone | ( | const Epetra_MultiVector & | mv, | |
const int | numvecs | |||
) | [inline, static] |
Creates a new empty Epetra_MultiVector containing numvecs
columns.
Definition at line 599 of file AnasaziEpetraAdapter.hpp.
static Teuchos::RCP<Epetra_MultiVector> Anasazi::MultiVecTraits< double, Epetra_MultiVector >::CloneCopy | ( | const Epetra_MultiVector & | mv, | |
const std::vector< int > & | index | |||
) | [inline, static] |
Creates a new Epetra_MultiVector 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
.
Definition at line 620 of file AnasaziEpetraAdapter.hpp.
static Teuchos::RCP<Epetra_MultiVector> Anasazi::MultiVecTraits< double, Epetra_MultiVector >::CloneCopy | ( | const Epetra_MultiVector & | mv | ) | [inline, static] |
Creates a new Epetra_MultiVector and copies contents of mv
into the new vector (deep copy).
Definition at line 612 of file AnasaziEpetraAdapter.hpp.
static Teuchos::RCP<const Epetra_MultiVector> Anasazi::MultiVecTraits< double, Epetra_MultiVector >::CloneView | ( | const Epetra_MultiVector & | mv, | |
const std::vector< int > & | index | |||
) | [inline, static] |
Creates a new const Epetra_MultiVector 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
.
Definition at line 658 of file AnasaziEpetraAdapter.hpp.
static Teuchos::RCP<Epetra_MultiVector> Anasazi::MultiVecTraits< double, Epetra_MultiVector >::CloneView | ( | Epetra_MultiVector & | mv, | |
const std::vector< int > & | index | |||
) | [inline, static] |
Creates a new Epetra_MultiVector 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
.
Definition at line 639 of file AnasaziEpetraAdapter.hpp.
static int Anasazi::MultiVecTraits< double, Epetra_MultiVector >::GetNumberVecs | ( | const Epetra_MultiVector & | mv | ) | [inline, static] |
static int Anasazi::MultiVecTraits< double, Epetra_MultiVector >::GetVecLength | ( | const Epetra_MultiVector & | mv | ) | [inline, static] |
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvAddMv | ( | double | alpha, | |
const Epetra_MultiVector & | A, | |||
double | beta, | |||
const Epetra_MultiVector & | B, | |||
Epetra_MultiVector & | mv | |||
) | [inline, static] |
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvDot | ( | const Epetra_MultiVector & | A, | |
const Epetra_MultiVector & | B, | |||
std::vector< double > & | b | |||
) | [inline, static] |
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 776 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvInit | ( | Epetra_MultiVector & | mv, | |
double | alpha = Teuchos::ScalarTraits<double>::zero() | |||
) | [inline, static] |
Replace each element of the vectors in mv
with alpha
.
Definition at line 857 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvNorm | ( | const Epetra_MultiVector & | mv, | |
std::vector< double > & | normvec | |||
) | [inline, static] |
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 799 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvPrint | ( | const Epetra_MultiVector & | mv, | |
std::ostream & | os | |||
) | [inline, static] |
Print the mv
multi-vector to the os
output stream.
Definition at line 870 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvRandom | ( | Epetra_MultiVector & | mv | ) | [inline, static] |
Replace the vectors in mv
with random vectors.
Definition at line 849 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvScale | ( | Epetra_MultiVector & | mv, | |
const std::vector< double > & | alpha | |||
) | [inline, static] |
Scale each element of the i-th
vector in mv
with alpha
[i].
Definition at line 833 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvScale | ( | Epetra_MultiVector & | mv, | |
double | alpha | |||
) | [inline, static] |
Scale each element of the vectors in mv
with alpha
.
Definition at line 825 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvTimesMatAddMv | ( | double | alpha, | |
const Epetra_MultiVector & | A, | |||
const Teuchos::SerialDenseMatrix< int, double > & | B, | |||
double | beta, | |||
Epetra_MultiVector & | mv | |||
) | [inline, static] |
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::MvTransMv | ( | double | alpha, | |
const Epetra_MultiVector & | A, | |||
const Epetra_MultiVector & | mv, | |||
Teuchos::SerialDenseMatrix< int, double > & | B | |||
) | [inline, static] |
Compute a dense matrix B
through the matrix-matrix multiply .
Definition at line 761 of file AnasaziEpetraAdapter.hpp.
static void Anasazi::MultiVecTraits< double, Epetra_MultiVector >::SetBlock | ( | const Epetra_MultiVector & | A, | |
const std::vector< int > & | index, | |||
Epetra_MultiVector & | mv | |||
) | [inline, static] |
Copy the vectors in A
to a set of vectors in mv
indicated by the indices given in index
.
Definition at line 815 of file AnasaziEpetraAdapter.hpp.