the last block column
419 IT * blocknnz =
new IT[A.nbr];
420 for(IT i=0; i<A.nbr; ++i)
422 blocknnz[i] = A.top[i][j] - A.top[i][j-1];
424 sum[j-1] = std::accumulate(blocknnz, blocknnz + (A.nbr-1), 0);
427 float colave = std::accumulate(sum.begin(), sum.end(), 0.0) /
static_cast<float>(A.nbc-1);
428 vector<float>::iterator colmax = std::max_element(sum.begin(), sum.end());
429 return (*colmax) / colave;
void bicsb_gespmv(const BiCsb< NT, IT > &A, const RHS *__restrict x, LHS *__restrict y)
void csbsym_gespmv(const CsbSym< NT, IT > &A, const NT *__restrict x, NT *__restrict y)
unsigned prescan(unsigned *a, MTYPE *const M, int n)