Skip to content

[Draft][test] Use a tolerance when comparing jacobian*() with jacobian*Transposed()

In principle I beliefe that we should require that jacobian*().transposed() and jacobian*Transposed() are really identical. However, to my big surprise, I just discovered that this check may fail:

In an optimized build with gcc 13 (-O3 -DNDEBUG -funroll-loops -march=native) the test test-multilineargeometry fails for me in this check. While there are some additional steps (multiply entries by 1), the failure still exists, if we really only transpose the result. In this case we only deal with two FieldMatrix objects whose only difference is that one was transposed twice (once inside and once outside of jacobianInverse().

Merge request reports