[ITensorMPS] Expose new KrylovKit.realeigsolve features to dmrg
#1546
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
As of
v0.8KrylovKit supports finding the eigenvectors of real non-symmetric operators with real eigenvalues. This eliminates the need for complex arithmetic. For my problem it produces the same results as the standardhermitian=falsealgorithm.I added an option to specify an early return from the eigensolve. I haven't tested this out but the documentation suggests it could significantly improve performance when the initial guess is very good, which I think could be a common case in later sweeps of DMRG so worth trying out.
I also forwarded the
eigsolve_verbosityon toeigensolve. Previously this argument was ignored.How Has This Been Tested?
It has not.
Checklist:
using JuliaFormatter; format(".")in the base directory of the repository (~/.julia/dev/ITensors) to format your code according to our style guidelines.