|
| ConstSubMultiVectorView () |
|
| ConstSubMultiVectorView (Ordinal globalOffset_in, Ordinal subDim_in, Ordinal colOffset_in, Ordinal numSubCols_in, const ArrayRCP< const Scalar > &values_in, Ordinal leadingDim_in) |
|
| ConstSubMultiVectorView (const ConstSubMultiVectorView< Scalar > &smv) |
|
void | initialize (Ordinal globalOffset_in, Ordinal subDim_in, Ordinal colOffset_in, Ordinal numSubCols_in, const ArrayRCP< const Scalar > &values_in, Ordinal leadingDim_in) |
|
void | uninitialize () |
|
void | setGlobalOffset (Ordinal globalOffset_in) |
|
Ordinal | globalOffset () const |
|
Ordinal | subDim () const |
|
Ordinal | colOffset () const |
|
Ordinal | numSubCols () const |
|
const ArrayRCP< const Scalar > | values () const |
|
Ordinal | leadingDim () const |
|
const Scalar & | operator() (Ordinal i, Ordinal j) const |
| Zero-based indexing (Preconditions: values()!=NULL && (0<=i<subDim()) && (0<=j< numSubCols() ). More...
|
|
ConstSubVectorView< Scalar > | col (const Ordinal j) const |
| Return a ConstSubVectorView view of the jth sub-column (Preconditions: values()!=NULL && (0<=j<numSubCols() ). More...
|
|
template<class Scalar>
class RTOpPack::ConstSubMultiVectorView< Scalar >
Class for a non-changeable sub-multi-vector (submatrix).
For a sub-multi-vector mv
, the corresponding entries in the global multi-vector X(j)
(one based) are as follows:
X(mv.globalOffset()+k1,mv.colOffset()+k2) = mv(k1,k2),
for k1 = 0...mv.subDim()-1, k2 = 0...mv.numSubCols()-1
Unlike vectors, there can only be a unit stride between vector elements in a particular column and there is a Fortran-like leading dimension mv.leadingDim()
that separates corresponding elements in each column sub-vector.
WARNING! the default copy constructor and assignment operators are allowed which results in only pointer copy, not deep copy! You have been warned!
Definition at line 313 of file RTOpPack_Types.hpp.