Releases: QuantumKitHub/MPSKit.jl
v0.13.8
v0.13.7
v0.13.6
MPSKit v0.13.6
This release brings a combination of new features, improvements, fixes, and internal refactoring to MPSKit.jl. Below is a summary of the most important changes since v0.13.5.
🚀 New Features and Improvements
-
Support for Non-Sorted and Overlapping Indices in
MPOHamiltonianConstructors
You can now constructMPOHamiltonianobjects using terms with non-sorted and/or overlapping indices, which would previously either error or give wrong results.
#322 -
Finite temperature utilites
There is now more extended support for working with finite-temperature systems (Matrix Product Density Operators), in particular for working with tensors with real entries.
#324 -
Objective Printing for IDMRG
IDMRG logging previously reported the total energy (over a number of sites that grows with the iterations), which is now changed to report the current local energy density.
#323
📝 Miscellaneous
- Documentation and formatting updates for improved maintainability.
- Improved test coverage
🔗 Contributors
Many thanks to everyone who contributed code, bug reports, and suggestions to this release!
For a full list of merged pull requests and commits in this release, see the GitHub compare view.
Merged pull requests:
v0.13.5
MPSKit v0.13.5
Merged pull requests:
- [Feature] FiniteMPOHamiltonian compression (#312) (@lkdvos)
- Try to fix README badges (#313) (@kshyatt)
- Bump actions/checkout from 4 to 5 (#314) (@dependabot[bot])
- Update TensorOperations docs link (#316) (@lkdvos)
- Refactor quasiparticle regularization (#318) (@lkdvos)
- Update TensorKit links (#321) (@lkdvos)
v0.13.4
MPSKit v0.13.4
Merged pull requests:
- IDMRG updates (#294) (@lkdvos)
- fix typo in
InfiniteMPOconstructor errormessage (#302) (@VictorVanthilt) - Runic formatter (#303) (@lkdvos)
- Fix translation operator in Ising CFT example (#304) (@leburgel)
- Set up optional color inversion for docs images (#305) (@leburgel)
- Use DMRG2 SVD alg in finite
approximateDMRG2 implementation (#308) (@VictorVanthilt) - CompatHelper: bump compat for KrylovKit to 0.10, (keep existing compat) (#309) (@github-actions[bot])
- [Utility] Be more consistent about what space functions work for what arguments (#310) (@lkdvos)
Closed issues:
v0.13.3
v0.13.2
MPSKit v0.13.2
Merged pull requests:
- Bump julia-actions/julia-format from 3 to 4 (#282) (@dependabot[bot])
- Make
changebondstruncation use relative truncation schemes (#283) (@lkdvos) - Fix
O_xzxin operators manual (#284) (@Yue-Zhengyuan) - Fix_notebook.jl (#286) (@dartsushi)
- Add utility functions for physical and virtual space retrieval (#287) (@lkdvos)
- Fix MPO copy issue of #288 (#289) (@VictorVanthilt)
- Fix scaling dimensions in Ising CFT example (#290) (@dartsushi)
- fix
brailleand add small test (#293) (@VictorVanthilt)
Closed issues:
v0.13.1
MPSKit v0.13.1
Merged pull requests:
v0.13.0
MPSKit v0.13.0
MPSKit v0.13 features a number of breaking changes that should overall improve clarity and performance.
There are two major changes that should be noted:
The derivative operators have seen a major rewrite to unify their calling signatures, and MPOHamiltonian versions now have dedicated structures to more efficiently make use of the particular structure of the MPO.
Overall, we expect this to improve performance, especially for short-range hamiltonians this should be noticeable.
As part of this refactor, we are now more consistently using below, operator, above to allow for different states in the bra and ket layers.
The conventions for the sector keyword we're somewhat counterintuitive, effectively having to input the dual of what would be expected.
This is now changed, and made consistent across the package.
Finally, various small fixes and improvements were made.
Merged pull requests:
- [New] Finite temperature utilities + docs example (#262) (@lkdvos)
- Update mpo.jl (#264) (@dartsushi)
- Refactor VUMPS and VOMPS to avoid boxed variables (#265) (@lkdvos)
- Fix finite temperature example (#266) (@lkdvos)
- Consistent
environmentssignature:below, operator, aboveargument order (#268) (@leburgel) - Refactor derivatives and add
JordanMPOTensor(#270) (@lkdvos) - Change
sectorconvention for excitations (#271) (@lkdvos) - Improve quasiparticle type stability (#272) (@lkdvos)
- Fix
add_physical_chargeforJordanMPOTensor(#273) (@lkdvos) - Add tests for fermionic periodic boundary conditions (#274) (@lkdvos)
- fix typo in
localupdate_stepforVOMPSalgorithm (#275) (@VictorVanthilt) - Refactor derivative names (#276) (@lkdvos)
- Fermionic test no longer assumes
h = permute(h, ((2, 1), (4, 3)))(#277) (@lkdvos) - Fix time dependent integral of TDVP and TDVP2 (#279) (@GiggleLiu)
- Update v0.13.0 (#280) (@lkdvos)
Closed issues:
v0.12.6
MPSKit v0.12.6
- Various stability tweaks and improvements
- Improved support for real and mixed scalartypes, add
complex(state)andcomplex(operator) - Improved support for exponentiating
FiniteMPOHamiltonian - "Expert-mode"
MPOHamiltonianconstructors from vectors of matrices of<:Union{Missing,Number,MPOTensor}
Merged pull requests:
- Allow for non-square / uniform
MPOHamiltonians inmake_time_mpo(..., ::TaylorCluster)(#253) (@VictorVanthilt) - MPO utility and fixes (#256) (@lkdvos)
- Restore "expert-mode" Hamiltonian constructors (#257) (@lkdvos)
- Improve support for mixed
scalartypes (#259) (@lkdvos) - Expand
exact_diagonalizationandFiniteMPSdocstrings (#261) (@leburgel)
Closed issues:
timestep!with Complex hamiltonian and Real state (#83)make_time_mpo(::FiniteMPOHamiltonian)fails when it is not square (#243)- Converting infinite MPS to uniform gauge (#250)
- Manually defining MPOs (#254)
convert(::Type{TensorMap}, H::FiniteMPOHamiltonian)fails (#255)- How to promote the scalartype for a FiniteMPS? (#258)