A class to contain the data and executors for a field and define some basic operations.
Sparse matrix class with compact storage by row (CSR) format.
void computeResidual(const CSRMatrix< scalar, localIdx > &mtx, const Vector< scalar > &b, const Vector< scalar > &x, Vector< scalar > &res)
Vector< scalar > unpackMtxValues(const Vector< Vec3 > &in, const Vector< localIdx > &rowOffs, const Vector< localIdx > &newRowOffs)
Vector< scalar > unpackVecValues(const Vector< Vec3 > &in)
void packVecValues(const Vector< scalar > &in, Vector< Vec3 > &out)
Vector< localIdx > unpackColIdx(const Vector< localIdx > &in, const Vector< localIdx > &unpackedRowOffs, const Vector< localIdx > &packedRowOffs)
Vector< localIdx > unpackRowOffs(const Vector< localIdx > &in)