Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
csr_rep< T, sequential >

Detailed Description

template<class T>
class rheolef::csr_rep< T, sequential >

Definition at line 84 of file csr.h.

+ Inheritance diagram for csr_rep< T, sequential >:

Public Types

typedef std::vector< T >::size_type size_type
 
typedef T element_type
 
typedef sequential memory_type
 
typedef std::pair< size_type, Tpair_type
 
typedef vector_of_iterator< pair_type >::iterator iterator
 
typedef vector_of_iterator< pair_type >::const_iterator const_iterator
 
typedef vector_of_iterator< pair_type >::difference_type difference_type
 
typedef vector_of_iterator< pair_type >::value_type data_iterator
 
typedef vector_of_iterator< pair_type >::const_value_type const_data_iterator
 
- Public Types inherited from vector_of_iterator< std::pair< std::vector< T >::size_type, T > >
typedef std::vector< std::pair< std::vector< T >::size_type, T > * > V
 
typedef std::vector< const std::pair< std::vector< T >::size_type, T > * > CONST_V
 
typedef std::pair< std::vector< T >::size_type, T > * value_type
 
typedef const std::pair< std::vector< T >::size_type, T > * const_value_type
 
typedef value_typeiterator
 
typedef const_value_type *const const_iterator
 
typedef value_typereference
 
typedef const value_typeconst_reference
 
typedef V::size_type size_type
 
typedef V::difference_type difference_type
 

Public Member Functions

 csr_rep (size_type loc_nrow1=0, size_type loc_ncol1=0, size_type loc_nnz1=0)
 
void resize (size_type loc_nrow1=0, size_type loc_ncol1=0, size_type loc_nnz1=0)
 
 csr_rep (const distributor &row_ownership, const distributor &col_ownership, size_type nnz1=0)
 
void resize (const distributor &row_ownership, const distributor &col_ownership, size_type nnz1=0)
 
 csr_rep (const csr_rep< T, sequential > &a)
 
template<class A >
void build_from_asr (const asr< T, sequential, A > &a)
 
template<class A >
 csr_rep (const asr< T, sequential, A > &a)
 
template<class A >
void build_from_diag (const disarray_rep< T, sequential, A > &d)
 
const distributorrow_ownership () const
 
const distributorcol_ownership () const
 
const_iterator begin () const
 
const_iterator end () const
 
iterator begin ()
 
iterator end ()
 
size_type nrow () const
 
size_type ncol () const
 
size_type nnz () const
 
size_type dis_nrow () const
 
size_type dis_ncol () const
 
size_type dis_nnz () const
 
T max_abs () const
 
bool is_symmetric () const
 
void set_symmetry (bool is_symm) const
 
void set_symmetry_by_check (const T &tol=std::numeric_limits< T >::epsilon()) const
 
bool is_definite_positive () const
 
void set_definite_positive (bool is_defpos) const
 
size_type pattern_dimension () const
 
void set_pattern_dimension (size_type dim) const
 
size_type row_first_index () const
 
size_type row_last_index () const
 
size_type col_first_index () const
 
size_type col_last_index () const
 
idiststreamget (idiststream &)
 
odiststreamput (odiststream &, size_type istart=0) const
 
odiststreamput_matrix_market (odiststream &, size_type istart=0) const
 
odiststreamput_sparse_matlab (odiststream &, size_type istart=0) const
 
void dump (const std::string &name, size_type istart=0) const
 
void mult (const vec< T, sequential > &x, vec< T, sequential > &y) const
 
void trans_mult (const vec< T, sequential > &x, vec< T, sequential > &y) const
 
csr_rep< T, sequential > & operator*= (const T &lambda)
 
template<class BinaryOp >
void assign_add (const csr_rep< T, sequential > &a, const csr_rep< T, sequential > &b, BinaryOp binop)
 
void build_transpose (csr_rep< T, sequential > &b) const
 
void assign_mult (const csr_rep< T, sequential > &a, const csr_rep< T, sequential > &b)
 
size_type ext_nnz () const
 
size_type dis_ext_nnz () const
 
const_iterator ext_begin () const
 
const_iterator ext_end () const
 
size_type jext2dis_j (size_type jext) const
 
- Public Member Functions inherited from vector_of_iterator< std::pair< std::vector< T >::size_type, T > >
 vector_of_iterator (size_type n=0, const value_type &value=value_type())
 
size_type size () const
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator end () const
 
iterator end ()
 
const_reference operator[] (size_type i) const
 
reference operator[] (size_type i)
 

Public Attributes

distributor _row_ownership
 
distributor _col_ownership
 
std::vector< std::pair< typename std::vector< T >::size_type, T > > _data
 
bool _is_symmetric
 
bool _is_definite_positive
 
size_type _pattern_dimension
 

Member Typedef Documentation

◆ size_type

template<class T >
typedef std::vector<T>::size_type size_type

Definition at line 86 of file csr.h.

◆ element_type

template<class T >
typedef T element_type

Definition at line 87 of file csr.h.

◆ memory_type

template<class T >
typedef sequential memory_type

Definition at line 88 of file csr.h.

◆ pair_type

template<class T >
typedef std::pair<size_type,T> pair_type

Definition at line 89 of file csr.h.

◆ iterator

template<class T >
typedef vector_of_iterator<pair_type>::iterator iterator

Definition at line 90 of file csr.h.

◆ const_iterator

template<class T >
typedef vector_of_iterator<pair_type>::const_iterator const_iterator

Definition at line 91 of file csr.h.

◆ difference_type

template<class T >
typedef vector_of_iterator<pair_type>::difference_type difference_type

Definition at line 92 of file csr.h.

◆ data_iterator

Definition at line 93 of file csr.h.

◆ const_data_iterator

Definition at line 94 of file csr.h.

Constructor & Destructor Documentation

◆ csr_rep() [1/4]

template<class T >
csr_rep ( size_type  loc_nrow1 = 0,
size_type  loc_ncol1 = 0,
size_type  loc_nnz1 = 0 
)

Definition at line 57 of file csr_seq.cc.

◆ csr_rep() [2/4]

template<class T >
csr_rep ( const distributor row_ownership,
const distributor col_ownership,
size_type  nnz1 = 0 
)

Definition at line 35 of file csr_seq.cc.

◆ csr_rep() [3/4]

template<class T >
csr_rep ( const csr_rep< T, sequential > &  a)

Definition at line 79 of file csr_seq.cc.

◆ csr_rep() [4/4]

template<class T >
template<class A >
csr_rep ( const asr< T, sequential, A > &  a)
explicit

Definition at line 160 of file csr.h.

Member Function Documentation

◆ resize() [1/2]

template<class T >
void resize ( size_type  loc_nrow1 = 0,
size_type  loc_ncol1 = 0,
size_type  loc_nnz1 = 0 
)

Definition at line 69 of file csr_seq.cc.

◆ resize() [2/2]

template<class T >
void resize ( const distributor row_ownership,
const distributor col_ownership,
size_type  nnz1 = 0 
)

Definition at line 47 of file csr_seq.cc.

◆ build_from_asr()

template<class T >
template<class A >
void build_from_asr ( const asr< T, sequential, A > &  a)

Definition at line 99 of file csr_seq.cc.

◆ build_from_diag()

template<class T >
template<class A >
void build_from_diag ( const disarray_rep< T, sequential, A > &  d)

Definition at line 30 of file csr.cc.

◆ row_ownership()

template<class T >
const distributor & row_ownership ( ) const

Definition at line 105 of file csr.h.

◆ col_ownership()

template<class T >
const distributor & col_ownership ( ) const

Definition at line 106 of file csr.h.

◆ begin() [1/2]

template<class T >
const_iterator begin ( ) const

Definition at line 107 of file csr.h.

◆ end() [1/2]

template<class T >
const_iterator end ( ) const

Definition at line 108 of file csr.h.

◆ begin() [2/2]

template<class T >
iterator begin ( )

Definition at line 109 of file csr.h.

◆ end() [2/2]

template<class T >
iterator end ( )

Definition at line 110 of file csr.h.

◆ nrow()

template<class T >
size_type nrow ( ) const

Definition at line 111 of file csr.h.

◆ ncol()

template<class T >
size_type ncol ( ) const

Definition at line 112 of file csr.h.

◆ nnz()

template<class T >
size_type nnz ( ) const

Definition at line 113 of file csr.h.

◆ dis_nrow()

template<class T >
size_type dis_nrow ( ) const

Definition at line 114 of file csr.h.

◆ dis_ncol()

template<class T >
size_type dis_ncol ( ) const

Definition at line 115 of file csr.h.

◆ dis_nnz()

template<class T >
size_type dis_nnz ( ) const

Definition at line 116 of file csr.h.

◆ max_abs()

template<class T >
T max_abs ( ) const

Definition at line 714 of file csr.h.

◆ is_symmetric()

template<class T >
bool is_symmetric ( ) const

Definition at line 118 of file csr.h.

◆ set_symmetry()

template<class T >
void set_symmetry ( bool  is_symm) const

Definition at line 119 of file csr.h.

◆ set_symmetry_by_check()

template<class T >
void set_symmetry_by_check ( const T tol = std::numeric_limits<T>::epsilon()) const

Definition at line 387 of file csr_seq.cc.

◆ is_definite_positive()

template<class T >
bool is_definite_positive ( ) const

Definition at line 121 of file csr.h.

◆ set_definite_positive()

template<class T >
void set_definite_positive ( bool  is_defpos) const

Definition at line 122 of file csr.h.

◆ pattern_dimension()

template<class T >
size_type pattern_dimension ( ) const

Definition at line 123 of file csr.h.

◆ set_pattern_dimension()

template<class T >
void set_pattern_dimension ( size_type  dim) const

Definition at line 124 of file csr.h.

◆ row_first_index()

template<class T >
size_type row_first_index ( ) const

Definition at line 125 of file csr.h.

◆ row_last_index()

template<class T >
size_type row_last_index ( ) const

Definition at line 126 of file csr.h.

◆ col_first_index()

template<class T >
size_type col_first_index ( ) const

Definition at line 127 of file csr.h.

◆ col_last_index()

template<class T >
size_type col_last_index ( ) const

Definition at line 128 of file csr.h.

◆ get()

template<class T >
idiststream & get ( idiststream ids)

Definition at line 174 of file csr.h.

◆ put()

template<class T >
odiststream & put ( odiststream ods,
size_type  istart = 0 
) const

Definition at line 153 of file csr_seq.cc.

◆ put_matrix_market()

template<class T >
odiststream & put_matrix_market ( odiststream ods,
size_type  istart = 0 
) const

Definition at line 115 of file csr_seq.cc.

◆ put_sparse_matlab()

template<class T >
odiststream & put_sparse_matlab ( odiststream ods,
size_type  istart = 0 
) const

Definition at line 134 of file csr_seq.cc.

◆ dump()

template<class T >
void dump ( const std::string &  name,
size_type  istart = 0 
) const

Definition at line 163 of file csr_seq.cc.

◆ mult()

template<class T >
void mult ( const vec< T, sequential > &  x,
vec< T, sequential > &  y 
) const

Definition at line 176 of file csr_seq.cc.

◆ trans_mult()

template<class T >
void trans_mult ( const vec< T, sequential > &  x,
vec< T, sequential > &  y 
) const

Definition at line 191 of file csr_seq.cc.

◆ operator*=()

template<class T >
csr_rep< T, sequential > & operator*= ( const T lambda)

Definition at line 208 of file csr_seq.cc.

◆ assign_add()

template<class T >
template<class BinaryOp >
void assign_add ( const csr_rep< T, sequential > &  a,
const csr_rep< T, sequential > &  b,
BinaryOp  binop 
)

Definition at line 222 of file csr_seq.cc.

◆ build_transpose()

template<class T >
void build_transpose ( csr_rep< T, sequential > &  b) const

Definition at line 344 of file csr_seq.cc.

◆ assign_mult()

template<class T >
void assign_mult ( const csr_rep< T, sequential > &  a,
const csr_rep< T, sequential > &  b 
)

Definition at line 471 of file csr_seq.cc.

◆ ext_nnz()

template<class T >
size_type ext_nnz ( ) const

Definition at line 143 of file csr.h.

◆ dis_ext_nnz()

template<class T >
size_type dis_ext_nnz ( ) const

Definition at line 144 of file csr.h.

◆ ext_begin()

template<class T >
const_iterator ext_begin ( ) const

Definition at line 145 of file csr.h.

◆ ext_end()

template<class T >
const_iterator ext_end ( ) const

Definition at line 146 of file csr.h.

◆ jext2dis_j()

template<class T >
size_type jext2dis_j ( size_type  jext) const

Definition at line 147 of file csr.h.

Member Data Documentation

◆ _row_ownership

template<class T >
distributor _row_ownership

Definition at line 150 of file csr.h.

◆ _col_ownership

template<class T >
distributor _col_ownership

Definition at line 151 of file csr.h.

◆ _data

template<class T >
std::vector<std::pair<typename std::vector<T>::size_type,T> > _data

Definition at line 152 of file csr.h.

◆ _is_symmetric

template<class T >
bool _is_symmetric
mutable

Definition at line 153 of file csr.h.

◆ _is_definite_positive

template<class T >
bool _is_definite_positive
mutable

Definition at line 154 of file csr.h.

◆ _pattern_dimension

template<class T >
size_type _pattern_dimension
mutable

Definition at line 155 of file csr.h.


The documentation for this class was generated from the following files: