Small bug in Matrix::gemm

Dear all

When calling the advanced gemm in the matrix class, there is no check to see if there are any elements in each symmetry. This caused a segmentation fault when I called the routine in a minimal basis. Presumably when Matrix::gemm calls C_DGEMM with non existent pointers. Adding if(m[h] && n[h] && k[h]) seemed to fix the problem.

On a somewhat related note. Is there any way to flush the outfile print?

best regards

Thats very odd that all gemm calls but one have that protection. Can you make a PR with the required change? We would usually write that as:

    if (!k[h] || !m[h] || !n[h]) continue;

This is just the standard convection to skip the loop rather than go further into nesting with the if statement. Either way works for me!

I added the line and made a PR. Not done that before, so hope I did it correctly.

All the other gemms call a basic gemm that contains the test, except the C1 advanced gemm. Maybe it too should have a test?