sparse matrix systems