I got Lapack error. I set outer_iters = 5.
When running calculations on some machines, it gives a Lapack error.
ERROR: LoadError: LAPACKException(22)
I got Lapack error. I set outer_iters = 5.
When running calculations on some machines, it gives a Lapack error.
ERROR: LoadError: LAPACKException(22)
I’m not sure we’ll be able to say much, I suspect its related to this issue: Occasional `LAPACKException(22)` in `eigsolve` · Issue #57 · Jutho/KrylovKit.jl · GitHub
If you have a degeneracy, I would suggest adding a symmetry breaking term and slowly turning it off if possible
Thanks
but It doesn’t seem to be that kind of issue. When running the calculation on a different computer, it works without any problems.
There’s no error when setting max_vumps_iters=2
and running the calculation.
Different computers can have different floating point roundoffs, which could change the eigenvalue degeneracy enough to cause the eigensolver to either work or not work.
Thanks!
How can I solve this problem by working around it?
Now solver tolerance is set as follows.
‘solver_tol = (x → x / 100)’
Would it work if I changed this as shown below?
‘solver_tol = (x → x / 10)’
I’m not sure, it seems like the source of the error is a bit mysterious, it might help to change the KrylovKit eigensolver parameters or add symmetry breaking terms as Ryan suggested. I think you’ll just have to experiment with things, feel free to update us if you find a robust fix.
An alternative could be to try a different eigensolver implementation, like GitHub - JuliaLinearAlgebra/Arpack.jl: Julia Wrappers for the arpack-ng Fortran library, but that would require changing the source code of ITensorInfiniteMPS.jl (and it may have the same issue as KrylovKit.jl since I think they both call LAPACK anyway for the core diagonalization).
Thanks!
I will test it
After updating the Julia version to 1.11.1, the error disappeared.
Previously, I was using version 1.8.5.
Interesting, I’m not sure why the Julia version would affect this problem but that’s good to know, thanks for the update.
ITensor Website
·
Twitter @ITensorLib
© 2022 ITensor Collaboration