For scaling plots on the paper, it would be nice to plot runtimes against the number of nonzero entries in the matrix. For matrixbased applications, we can simply ask the matrix object for this. For matrixfree objects, this is not the case.
One way to deal with that is to assemble the finest matrix on demand in matrixfree applications to get the information. This affects runtime heavily, so we should disable this for timing experiments. Easiest way would be to introduce a new parameter log_nonzero_elements for this purpose.
For scaling plots on the paper, it would be nice to plot runtimes against the number of nonzero entries in the matrix. For matrixbased applications, we can simply ask the matrix object for this. For matrixfree objects, this is not the case.
One way to deal with that is to assemble the finest matrix on demand in matrixfree applications to get the information. This affects runtime heavily, so we should disable this for timing experiments. Easiest way would be to introduce a new parameter
log_nonzero_elements
for this purpose.