Skip to content

many small changes that could break backward compatibility

Compare
Choose a tag to compare
@jewettaij jewettaij released this 28 Nov 06:08
· 21 commits to master since this release
  1. I changed "matrix_alloc" to "matrix_alloc_jpd" everywhere to reduce the chance of future naming collisions.
    (This should not effect most users unless they were explicitly using "#include<matrix_alloc.hpp>", in their code. In that case they will have to change that line to "#include<matrix_alloc_jpd.hpp>". However there is no reason I can think of that most users would want to include this header file in their code, so hopefully this small change won't effect many people.)
  2. Jacobi::Diagonalize() now returns number of iterations (ie. the number of off-diagonal pivots considered, which is always > 0), or 0 when convergence failed. (In the past, it used to return the number of sweeps, where each "sweep" corresponds to n(n-1)/2 iterations.) Now it's much easier to tell if it converged or not, simply by checking whether the return value is 0. (Note: If you were not checking for convergence, then this change to jacobi_pd should not break compatibility with your code.)
  3. This code now runs on 1x1 matrices without crashing.
  4. "include<cassert>" was removed. (I also commented out all of the assert() statements. I left them in the code because I think they improve code readability.)

I don't anticipate making any future modifications which will break backward compatibility.