42 #ifndef COO_MATRIX_WITH_PARTITIONED_VIEW_H
43 #define COO_MATRIX_WITH_PARTITIONED_VIEW_H
45 #include "AbstractLinAlgPack_COOMatrixClass.hpp"
46 #include "AbstractLinAlgPack_COOMatrixPartitionedViewClass.hpp"
48 namespace AbstractLinAlgPack {
95 coom_view_.
bind(coom_view_);
122 coom_.
resize(rows,cols,nz);
138 return coom_.
ivect();
146 return coom_.
jvect();
175 const size_type row_perm[]
176 ,
const size_type col_perm[]
177 ,
const size_type num_row_part
178 ,
const size_type row_part[]
179 ,
const size_type num_col_part
180 ,
const size_type col_part[]
184 ,coom_.
const_jvect(),row_perm,col_perm,num_row_part,row_part,num_col_part,col_part
195 return coom_view_.
partition(row_p, col_p);
200 return coom_view_.
partition(rng_overall_p);
221 #endif // COO_MATRIX_WITH_PARTITIONED_VIEW_H
value_type * val()
Return pointer to raw storage array (length #nz()#) for the values of the non-zero elements...
size_type cols() const
return the number of columns in the total view
const COOMatrix & coom() const
Return a const referece to the COOMatrix.
indice_type * jvect()
Return pointer to raw storage array (length #nz()#) for the column indices of the non-zero elements...
value_type * val()
Return pointer to raw storage array (length #nz()#) for the values of the non-zero elements...
const indice_type * const_jvect() const
partition_type partition(Range1D rng_overall_p)
bool is_initialized() const
Returns true if a view has been initialized.
indice_type * ivect()
Return pointer to raw storage array (length #nz()#) for the row indices of the non-zero elements...
partition_type partition(size_type overall_p)
Return a partition object for a parition given its overall partition number (1-based).
size_type rows() const
return the number of rows of the total view
void resize(size_type rows, size_type cols, size_type nz)
Resize for a rows# by cols# sparse matrix with #nz# elements.
void bind(const COOMatrixPartitionedView &coom_view)
Bind the view of another partitioned matrix.
void initialize(std::istream &istrm)
Initialize from an input stream.
partitioned_view_type::partition_type partition_type
partition_type partition(size_type overall_p)
partitioned_view_type::EPartitionOrder EPartitionOrder
Sparse Coordinate Matrix abstraction storage class.
partition_type partition(size_type row_p, size_type col_p)
size_type cols() const
Returns the number of columns in the column access view.
size_type rows() const
Calls coom_view().rows() if the partitioned view has been initialize and coom().rows() if not...
COOMatrixPartitionedView< indice_type, value_type > partitioned_view_type
COOMatrixWithPartitionedView & operator=(const COOMatrix &m)
Allow assignment to a COOMatrix.
size_type cols() const
Calls coom_view().cols() if the partitioned view has been initialize and coom().cols() if not...
void create_view(size_type rows, size_type cols, size_type nz, value_type val[], const indice_type ivect[], const indice_type jvect[], const size_type inv_row_perm[], const size_type inv_col_perm[], const size_type num_row_part, const size_type row_part[], const size_type num_col_part, const size_type col_part[], const EPartitionOrder partition_order)
Crete a view to a COO matrix.
void create_view(const size_type row_perm[], const size_type col_perm[], const size_type num_row_part, const size_type row_part[], const size_type num_col_part, const size_type col_part[], const EPartitionOrder partition_order)
Crete a view to the COO matrix.
void free()
Free the allocated memory and make uninitialized.
COOMatrixWithPartitionedView & operator=(const COOMatrixWithPartitionedView &m)
Assignment operator.
Aggregation of a COO matrix and a partitioned view of it.
const indice_type * const_ivect() const
Class for a partition or a set of continous partitions in a partitioned COO matrix.
void resize(size_type rows, size_type cols, size_type nz)
Resize for a rows# by cols# sparse matrix with #nz# elements.
indice_type * jvect()
Return pointer to raw storage array (length #nz()#) for the column indices of the non-zero elements...
const partitioned_view_type & coom_view() const
Return a const referece to the COOMatrixPartitionedView object.
void initialize(std::istream &istrm)
Initialize from an input stream.
size_type rows() const
Return the number of rows in the row access view.