sparse_dot_topn_for_blocks is a slight variation of sparse_dot_topn which provides a fast way to perform sparse matrix multiplication followed by top-n selection and sorting in each row.
It has the same interface as sparse_dot_topn but additionally allows an array to be passed whose elements will each be incremented with the maximum number of nonzero elements of each row of the result matrix with values above the given lower bound. This is suitable for block-matrix multiplication. That's all!