envelope2D<T> [MTL Home] Programmers Guide
  Contents | Index |  Search 


Category:containers Component type:type
Description
This is the TwoDStorage type that implements the envelope matrix storage format. The data structures used are two arrays. The VAL array holds the values in the sparse matrix, and the PTR array points to the diagonal elements in VAL. The OneD segments of VAL are actually dense in the sense that zeros are stored. Each OneD segment starts at the first non-zero element in the row.
  operator()(i,j) { return val[ptr[i] - i + j]; }
  
Use with banded shape. Use with upper not yet supported. deprecated
Example
Definition
Template Parameters

ParameterDescriptionDefault
Tthe element type 
Model of
TwoDStorage
Members
Member Where defined Description
values_t    
values_iterator    
const_values_iterator    
size_type    
difference_type    
ptr_t    
dim_type   A pair type for the dimensions of the container
enum { M = 0, N = 0 }    
storage_loc   This container uses internal storage
dimension   This container is 2D
class vec_ref    
value_type   The 1D container type
reference   Reference to the value type
const_reference   Const reference to the value type
sparsity   This is a sparse container
strideability   This container is not strideable
transpose_type    
class iterator   The iterator type
class const_iterator   The const iterator type
reverse_iterator   The reverse iterator type
const_reverse_iterator   The const reverse iterator type
envelope2D ()   Default constructor
envelope2D (dim_type d)   Constructor from dimension pair
envelope2D (dim_type d, dim_type)   Constructor from dimension abd bandwidth pairs
envelope2D (const envelope2D& x)   Copy Constructor
template <class Array>
void initialize_nzstruct (const Array& a, size_type nnz)
   
iterator begin ()   Return an iterator pointing to the first 1D container
iterator end ()   Return an iterator pointing past the end of the 2D container
const_iterator begin () const   Return a const iterator pointing to the first 1D container
const_iterator end () const   Return a const iterator pointing past the end of the 2D container
reverse_iterator rbegin ()   Return a reverse iterator pointing to the last 1D container
reverse_iterator rend ()   Return a reverse iterator pointing past the start of the 2D container
const_reverse_iterator rbegin () const   Return a const reverse iterator pointing to the last 1D container
const_reverse_iterator rend () const   Return a const reverse iterator pointing past the start of the 2D container
size_type major () const   The dimension of the 2D container
size_type minor () const   The dimension of the 1D container
size_type nnz () const   The number of non-zeros
vec_ref::reference operator() (size_type i, size_type j)   Return a reference to the (i,j) element, where (i,j) is in the 2D coordinate system
const vec_ref::reference operator() (size_type i, size_type j) const   Return a const reference to the (i,j) element, where (i,j) is in the 2D coordinate system
reference operator[] (size_type i)   Return a reference to the ith 1D container
const_reference operator[] (size_type i) const   Return a const reference to the ith 1D container
void print () const    
template <class SubMatrix>
struct partitioned
  blah
New members
Notes
See also

[MTL Home] Copyright © 1998,1999 University of Notre Dame. All Rights Reserved.