CMR  1.3.0
Public Attributes | List of all members
CMR_DBLMAT Struct Reference

Row-wise representation of sparse double matrix. More...

#include <matrix.h>

Public Attributes

size_t numRows
 Number of rows. More...
 
size_t numColumns
 Number of columns. More...
 
size_t numNonzeros
 Number of and memory allocated for nonzeros. More...
 
size_t * rowSlice
 Array mapping each row to the index of its first entry. More...
 
size_t * entryColumns
 Array mapping each entry to its column. More...
 
double * entryValues
 Array mapping each entry to its value. More...
 

Detailed Description

Row-wise representation of sparse double matrix.

The nonzeros of the matrix are stored in the arrays entryColumns and entryValues, each of length numNonzeros. The nonzeros of row r are stored at positions \( p \in \{a, a+1, \dotsc, b-2, b-1 \}\), where \( a := \) rowSlice[r] and \( b := \) rowSlice[r+1]. In particular, the length of the rowSlice array is numRows + 1. The column is entryColumns[ \( p \)] while the actual matrix entry is entryValues[ \( p \)].

The nonzeros of each row must be sorted by column in ascending order. Moreover, no duplicates are allowed and all stored entries must indeed be nonzero.

Member Data Documentation

◆ entryColumns

size_t* CMR_DBLMAT::entryColumns

Array mapping each entry to its column.

◆ entryValues

double* CMR_DBLMAT::entryValues

Array mapping each entry to its value.

◆ numColumns

size_t CMR_DBLMAT::numColumns

Number of columns.

◆ numNonzeros

size_t CMR_DBLMAT::numNonzeros

Number of and memory allocated for nonzeros.

◆ numRows

size_t CMR_DBLMAT::numRows

Number of rows.

◆ rowSlice

size_t* CMR_DBLMAT::rowSlice

Array mapping each row to the index of its first entry.


The documentation for this struct was generated from the following file: