RTOp Package Browser (Single Doxygen Collection) Version of the Day
Public Member Functions | Private Attributes
RTOpPack::ConstSubMultiVectorView< Scalar > Class Template Reference

Class for a non-changeable sub-multi-vector (submatrix). More...

#include <RTOpPack_Types.hpp>

Inheritance diagram for RTOpPack::ConstSubMultiVectorView< Scalar >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 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()).
ConstSubVectorView< Scalar > col (const Ordinal j) const
 Return a ConstSubVectorView view of the jth sub-column (Preconditions: values()!=NULL && (0<=j<numSubCols()).

Private Attributes

Ordinal globalOffset_
Ordinal subDim_
Ordinal colOffset_
Ordinal numSubCols_
ArrayRCP< const Scalar > values_
Ordinal leadingDim_

Detailed Description

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 343 of file RTOpPack_Types.hpp.


Constructor & Destructor Documentation

template<class Scalar>
RTOpPack::ConstSubMultiVectorView< Scalar >::ConstSubMultiVectorView ( ) [inline]

Definition at line 346 of file RTOpPack_Types.hpp.

template<class Scalar>
RTOpPack::ConstSubMultiVectorView< Scalar >::ConstSubMultiVectorView ( Ordinal  globalOffset_in,
Ordinal  subDim_in,
Ordinal  colOffset_in,
Ordinal  numSubCols_in,
const ArrayRCP< const Scalar > &  values_in,
Ordinal  leadingDim_in 
) [inline]

Definition at line 351 of file RTOpPack_Types.hpp.

template<class Scalar>
RTOpPack::ConstSubMultiVectorView< Scalar >::ConstSubMultiVectorView ( const ConstSubMultiVectorView< Scalar > &  smv) [inline]

Definition at line 363 of file RTOpPack_Types.hpp.


Member Function Documentation

template<class Scalar>
void RTOpPack::ConstSubMultiVectorView< Scalar >::initialize ( Ordinal  globalOffset_in,
Ordinal  subDim_in,
Ordinal  colOffset_in,
Ordinal  numSubCols_in,
const ArrayRCP< const Scalar > &  values_in,
Ordinal  leadingDim_in 
) [inline]

Definition at line 369 of file RTOpPack_Types.hpp.

template<class Scalar>
void RTOpPack::ConstSubMultiVectorView< Scalar >::uninitialize ( ) [inline]

Definition at line 398 of file RTOpPack_Types.hpp.

template<class Scalar>
void RTOpPack::ConstSubMultiVectorView< Scalar >::setGlobalOffset ( Ordinal  globalOffset_in) [inline]

Definition at line 404 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::globalOffset ( ) const [inline]

Definition at line 412 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::subDim ( ) const [inline]

Definition at line 414 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::colOffset ( ) const [inline]

Definition at line 416 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::numSubCols ( ) const [inline]

Definition at line 418 of file RTOpPack_Types.hpp.

template<class Scalar>
const ArrayRCP<const Scalar> RTOpPack::ConstSubMultiVectorView< Scalar >::values ( ) const [inline]

Reimplemented in RTOpPack::SubMultiVectorView< Scalar >.

Definition at line 420 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::leadingDim ( ) const [inline]

Definition at line 422 of file RTOpPack_Types.hpp.

template<class Scalar>
const Scalar& RTOpPack::ConstSubMultiVectorView< Scalar >::operator() ( Ordinal  i,
Ordinal  j 
) const [inline]

Zero-based indexing (Preconditions: values()!=NULL && (0<=i<subDim()) && (0<=j< numSubCols()).

Reimplemented in RTOpPack::SubMultiVectorView< Scalar >.

Definition at line 426 of file RTOpPack_Types.hpp.

template<class Scalar>
ConstSubVectorView<Scalar> RTOpPack::ConstSubMultiVectorView< Scalar >::col ( const Ordinal  j) const [inline]

Return a ConstSubVectorView view of the jth sub-column (Preconditions: values()!=NULL && (0<=j<numSubCols()).

Reimplemented in RTOpPack::SubMultiVectorView< Scalar >.

Definition at line 437 of file RTOpPack_Types.hpp.


Member Data Documentation

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::globalOffset_ [private]

Definition at line 446 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::subDim_ [private]

Definition at line 447 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::colOffset_ [private]

Definition at line 448 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::numSubCols_ [private]

Definition at line 449 of file RTOpPack_Types.hpp.

template<class Scalar>
ArrayRCP<const Scalar> RTOpPack::ConstSubMultiVectorView< Scalar >::values_ [private]

Definition at line 450 of file RTOpPack_Types.hpp.

template<class Scalar>
Ordinal RTOpPack::ConstSubMultiVectorView< Scalar >::leadingDim_ [private]

Definition at line 451 of file RTOpPack_Types.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines