|
Xpetra Version of the Day
|
#include <Xpetra_EpetraIntMultiVector.hpp>
Private Types | |
| typedef int | Scalar |
| typedef int | LocalOrdinal |
| typedef long long | GlobalOrdinal |
| typedef EpetraNode | Node |
Overridden from Teuchos::Describable | |
| RCP< Epetra_IntMultiVector > | vec_ |
| The Epetra_IntMultiVector which this class wraps. | |
| std::string | description () const |
| Return a simple one-line description of this object. | |
| void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const |
| Print the object with some verbosity level to an FancyOStream object. | |
| RCP< Epetra_IntMultiVector > | getEpetra_IntMultiVector () const |
| const RCP< const Comm< int > > | getComm () const |
| Teuchos::RCP< const Map< int, GlobalOrdinal, Node > > | getMap () const |
| The Map describing the parallel distribution of this object. | |
| void | doImport (const DistObject< int, int, GlobalOrdinal, Node > &source, const Import< int, GlobalOrdinal, Node > &importer, CombineMode CM) |
| void | doExport (const DistObject< int, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< int, GlobalOrdinal, Node > &importer, CombineMode CM) |
| void | doImport (const DistObject< int, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< int, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| void | doExport (const DistObject< int, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< int, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| void | replaceMap (const RCP< const Map< int, GlobalOrdinal, Node > > &map) |
| virtual void | assign (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &rhs) |
| Implementation of the assignment operator (operator=); does a deep copy. | |
Constructor/Destructor Methods | |
| EpetraIntMultiVectorT (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &map, size_t NumVectors, bool zeroOut=true) | |
| Sets all vector entries to zero. | |
| EpetraIntMultiVectorT (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &source) | |
| MultiVector copy constructor. | |
| EpetraIntMultiVectorT (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &, const Teuchos::ArrayView< const Teuchos::ArrayView< const Scalar > > &, size_t) | |
| Set multi-vector values from array of pointers using Teuchos memory management classes. (copy). | |
| ~EpetraIntMultiVectorT () | |
| Destructor. | |
Post-construction modification routines | |
| void | putScalar (const int &value) |
| Initialize all values in a multi-vector with specified value. | |
| void | randomize (bool=true) |
| Set multi-vector values to random numbers. | |
| void | randomize (const Scalar &minVal, const Scalar &maxVal, bool bUseXpetraImplementation=true) |
| Set multi-vector values to random numbers. | |
| void | setSeed (unsigned int) |
| Set seed for Random function. | |
| void | replaceGlobalValue (GlobalOrdinal globalRow, size_t vectorIndex, const Scalar &value) |
| Replace value, using global (row) index. | |
| void | sumIntoGlobalValue (GlobalOrdinal globalRow, size_t vectorIndex, const Scalar &value) |
| Add value to existing value, using global (row) index. | |
| void | replaceLocalValue (LocalOrdinal myRow, size_t vectorIndex, const Scalar &value) |
| Replace value, using local (row) index. | |
| void | sumIntoLocalValue (LocalOrdinal myRow, size_t vectorIndex, const Scalar &value) |
| Add value to existing value, using local (row) index. | |
Data Copy and View get methods | |
| Teuchos::RCP< const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | getVector (size_t) const |
| Return a Vector which is a const view of column j. | |
| Teuchos::RCP< Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | getVectorNonConst (size_t) |
| Return a Vector which is a nonconst view of column j. | |
| Teuchos::ArrayRCP< const int > | getData (size_t j) const |
| Teuchos::ArrayRCP< int > | getDataNonConst (size_t j) |
Mathematical methods | |
| void | dot (const MultiVector< int, int, GlobalOrdinal, Node > &, const Teuchos::ArrayView< int > &) const |
| Computes dot product of each corresponding pair of vectors, dots[i] = this[i].dot(A[i]) | |
| void | abs (const MultiVector< int, int, GlobalOrdinal, Node > &) |
| Puts element-wise absolute values of input Multi-vector in target: A = abs(this) | |
| void | reciprocal (const MultiVector< int, int, GlobalOrdinal, Node > &) |
| Puts element-wise reciprocal values of input Multi-vector in target, this(i,j) = 1/A(i,j). | |
| void | scale (const int &) |
| Scale the current values of a multi-vector, this = alpha*this. | |
| void | scale (Teuchos::ArrayView< const int >) |
| Scale the current values of a multi-vector, this[j] = alpha[j]*this[j]. | |
| void | update (const int &, const MultiVector< int, int, GlobalOrdinal, Node > &, const int &) |
| Update multi-vector values with scaled values of A, this = beta*this + alpha*A. | |
| void | update (const int &, const MultiVector< int, int, GlobalOrdinal, Node > &, const int &, const MultiVector< int, int, GlobalOrdinal, Node > &, const int &) |
| Update multi-vector with scaled values of A and B, this = gamma*this + alpha*A + beta*B. | |
| void | norm1 (const Teuchos::ArrayView< Teuchos::ScalarTraits< int >::magnitudeType > &) const |
| Compute 1-norm of each vector in multi-vector. | |
| void | norm2 (const Teuchos::ArrayView< Teuchos::ScalarTraits< int >::magnitudeType > &) const |
| Compute 2-norm of each vector in multi-vector. | |
| void | normInf (const Teuchos::ArrayView< Teuchos::ScalarTraits< int >::magnitudeType > &) const |
| Compute Inf-norm of each vector in multi-vector. | |
| void | meanValue (const Teuchos::ArrayView< int > &) const |
| Compute mean (average) value of each vector in multi-vector. | |
| void | maxValue (const Teuchos::ArrayView< int > &) const |
| Compute max value of each vector in multi-vector. | |
| void | multiply (Teuchos::ETransp, Teuchos::ETransp, const int &, const MultiVector< int, int, GlobalOrdinal, Node > &, const MultiVector< int, int, GlobalOrdinal, Node > &, const int &) |
| Matrix-Matrix multiplication, this = beta*this + alpha*op(A)*op(B). | |
| void | elementWiseMultiply (int, const Vector< int, int, GlobalOrdinal, Node > &, const MultiVector< int, int, GlobalOrdinal, Node > &, int) |
| Element-wise multiply of a Vector A with a EpetraMultiVector B. | |
Attribute access functions | |
| size_t | getNumVectors () const |
| Returns the number of vectors in the multi-vector. | |
| size_t | getLocalLength () const |
| Returns the local vector length on the calling processor of vectors in the multi-vector. | |
| global_size_t | getGlobalLength () const |
| Returns the global vector length of vectors in the multi-vector. | |
| bool | isSameSize (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &vec) const |
| Checks to see if the local length, number of vectors and size of Scalar type match. | |
Additional Inherited Members | |
Public Types inherited from Xpetra::MultiVector< int, int, long long, EpetraNode > | |
| typedef int | scalar_type |
| typedef int | local_ordinal_type |
| typedef long long | global_ordinal_type |
| typedef EpetraNode | node_type |
| using | impl_scalar_type = typename Kokkos::ArithTraits< int >::val_type |
| using | dual_view_type = Kokkos::DualView< impl_scalar_type **, Kokkos::LayoutStride, typename node_type::device_type, Kokkos::MemoryUnmanaged > |
| using | dual_view_type_const = Kokkos::DualView< const impl_scalar_type **, Kokkos::LayoutStride, typename node_type::device_type, Kokkos::MemoryUnmanaged > |
| using | host_execution_space = typename dual_view_type::host_mirror_space |
| using | dev_execution_space = typename dual_view_type::t_dev::execution_space |
Public Member Functions inherited from Xpetra::MultiVector< int, int, long long, EpetraNode > | |
| virtual void | Xpetra_randomize () |
| Set multi-vector values to random numbers. XPetra implementation. | |
| virtual void | Xpetra_randomize (const int &minVal, const int &maxVal) |
| Set multi-vector values to random numbers. XPetra implementation. | |
| virtual dual_view_type::t_host_const_um | getLocalViewHost (Access::ReadOnlyStruct) const |
| virtual dual_view_type::t_host_um | getLocalViewHost (Access::OverwriteAllStruct) const |
| virtual dual_view_type::t_host_um | getLocalViewHost (Access::ReadWriteStruct) const |
| virtual dual_view_type::t_dev_const_um | getLocalViewDevice (Access::ReadOnlyStruct) const |
| virtual dual_view_type::t_dev_um | getLocalViewDevice (Access::OverwriteAllStruct) const |
| virtual dual_view_type::t_dev_um | getLocalViewDevice (Access::ReadWriteStruct) const |
| virtual | ~MultiVector () |
| Destructor. | |
| MultiVector< int, int, long long, EpetraNode > & | operator= (const MultiVector< int, int, long long, EpetraNode > &rhs) |
| Assignment operator: Does a deep copy. | |
Public Member Functions inherited from Xpetra::DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > | |
| virtual | ~DistObject () |
| Destructor. | |
| virtual void | doImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)=0 |
| Import data into this object using an Import object ("forward mode"). | |
| virtual void | beginImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
| Import data into this object using an Import object ("forward mode"). | |
| virtual void | endImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
| Import data into this object using an Import object ("forward mode"). | |
| virtual void | doExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)=0 |
| Export data into this object using an Export object ("forward mode"). | |
| virtual void | beginExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| Export data into this object using an Export object ("forward mode"). | |
| virtual void | endExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| Export data into this object using an Export object ("forward mode"). | |
| virtual void | doImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)=0 |
| Import data into this object using an Export object ("reverse mode"). | |
| virtual void | beginImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| Import data into this object using an Export object ("reverse mode"). | |
| virtual void | endImport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
| Import data into this object using an Export object ("reverse mode"). | |
| virtual void | doExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)=0 |
| Export data into this object using an Import object ("reverse mode"). | |
| virtual void | beginExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
| Export data into this object using an Import object ("reverse mode"). | |
| virtual void | endExport (const DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
| Export data into this object using an Import object ("reverse mode"). | |
Public Member Functions inherited from Teuchos::Describable | |
| void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
| virtual | ~Describable () |
| DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
| std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
| void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
| virtual | ~Describable () |
Public Member Functions inherited from Teuchos::LabeledObject | |
| LabeledObject () | |
| virtual | ~LabeledObject () |
| virtual void | setObjectLabel (const std::string &objectLabel) |
| virtual std::string | getObjectLabel () const |
Static Public Attributes inherited from Teuchos::Describable | |
| static const EVerbosityLevel | verbLevel_default |
Protected Member Functions inherited from Xpetra::MultiVector< int, int, long long, EpetraNode > | |
Definition at line 782 of file Xpetra_EpetraIntMultiVector.hpp.
|
private |
Definition at line 784 of file Xpetra_EpetraIntMultiVector.hpp.
|
private |
Definition at line 785 of file Xpetra_EpetraIntMultiVector.hpp.
|
private |
Definition at line 786 of file Xpetra_EpetraIntMultiVector.hpp.
|
private |
Definition at line 787 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Sets all vector entries to zero.
Definition at line 794 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
MultiVector copy constructor.
Definition at line 799 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Set multi-vector values from array of pointers using Teuchos memory management classes. (copy).
Definition at line 804 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Destructor.
Definition at line 810 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Initialize all values in a multi-vector with specified value.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 818 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Set multi-vector values to random numbers.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 825 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Set multi-vector values to random numbers.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 831 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Set seed for Random function.
Note: this method does not exist in Tpetra interface. Added for MueLu.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 838 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Return a Vector which is a const view of column j.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 849 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Return a Vector which is a nonconst view of column j.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 854 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Const Local vector access function. View of the local values in a particular vector of this multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 860 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Local vector access function. View of the local values in a particular vector of this multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 873 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Computes dot product of each corresponding pair of vectors, dots[i] = this[i].dot(A[i])
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 889 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Puts element-wise absolute values of input Multi-vector in target: A = abs(this)
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 898 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Puts element-wise reciprocal values of input Multi-vector in target, this(i,j) = 1/A(i,j).
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 905 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Scale the current values of a multi-vector, this = alpha*this.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 912 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Scale the current values of a multi-vector, this[j] = alpha[j]*this[j].
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 918 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Update multi-vector values with scaled values of A, this = beta*this + alpha*A.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 924 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Update multi-vector with scaled values of A and B, this = gamma*this + alpha*A + beta*B.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 932 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Compute 1-norm of each vector in multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 941 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Compute 2-norm of each vector in multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 947 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Compute Inf-norm of each vector in multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 953 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Compute mean (average) value of each vector in multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 959 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Compute max value of each vector in multi-vector.
Definition at line 965 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Matrix-Matrix multiplication, this = beta*this + alpha*op(A)*op(B).
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 971 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Element-wise multiply of a Vector A with a EpetraMultiVector B.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 977 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Replace value, using global (row) index.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 988 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Add value to existing value, using global (row) index.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 993 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Replace value, using local (row) index.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 998 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Add value to existing value, using local (row) index.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1003 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Returns the number of vectors in the multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1013 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Returns the local vector length on the calling processor of vectors in the multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1018 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Returns the global vector length of vectors in the multi-vector.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1021 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Checks to see if the local length, number of vectors and size of Scalar type match.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1024 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Return a simple one-line description of this object.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1036 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Print the object with some verbosity level to an FancyOStream object.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1048 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1067 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1069 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
The Map describing the parallel distribution of this object.
Implements Xpetra::DistObject< Packet, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 1074 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1079 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1091 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1103 of file Xpetra_EpetraIntMultiVector.hpp.
|
inline |
Definition at line 1115 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlinevirtual |
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1127 of file Xpetra_EpetraIntMultiVector.hpp.
|
inlineprotectedvirtual |
Implementation of the assignment operator (operator=); does a deep copy.
Implements Xpetra::MultiVector< int, int, long long, EpetraNode >.
Definition at line 1146 of file Xpetra_EpetraIntMultiVector.hpp.
|
private |
The Epetra_IntMultiVector which this class wraps.
Definition at line 1182 of file Xpetra_EpetraIntMultiVector.hpp.