Pass through more settings for environment and gauging sub-algorithms#436
Pass through more settings for environment and gauging sub-algorithms#436leburgel wants to merge 3 commits into
Conversation
Codecov Report❌ Patch coverage is
🚀 New features to boost your workflow:
|
lkdvos
left a comment
There was a problem hiding this comment.
Looks like a great addition, thanks!
I had always wanted to have a better way of dealing with the environment algorithms, but I think the annoying part is the distinction between the linear solver for hamiltonians and the eigensolver for MPOs. There might be a case to be made to replace the NamedTuple arguments with actual KrylovKit algorithms from the start too, although I guess that requires slightly more work?
Co-authored-by: Lukas Devos <ldevos98@gmail.com>
We could put in some algorithm selection logic similar to MatrixAlgebraKit, but I guess this would best be handled in KrylovKit itself instead of handling it here. I don't think working with actual KrylovKit algorithms from the start would be that easy, in particular for the environment alggorithms. These are instantiated when calling e.g. I'm personally fine with the
|
An attempt to add more control over the VUMPS/VOMPS subroutines.
Previously, only the
tolof the environment algorithm was ever actually passed through to the environment solver in the ends, and there was no way to switch the orthogonalization method from the default value (QR-based orthogonalization. Here I tried to address that passing all of the kwargs in theenvironment_algdown to the solver, and adding the orthogonalization algorithm to the gauging algorithm and passing that down accordingly.