[v1.0.4] - 2024-10-02
Release Notes
We have changed the license from GPL v3 to the less restrictive Apache v2 license, see issue #462 for details.
Several new features, changes and bugfixes, as listed in detail below.
Changelog
Added
MPS classmethod
project_onto_charge_sector()added. This makes it possible to project a product state (with entries given by a list or ndarray) onto a givencharge_sector(similar tofrom_infiniteT_canonical()for aPurificationMPS).Added
QRBasedVariationalApplyMPO.Implement
sample_measurements()forPurificationMPS.Implement
sample_measurements()forPurificationMPS.Added explicit documentation of default model coupling parameters, see issue #443.
Allow None value in
Sweep.chi_listwhich is to be replaced bytrunc_params['chi_max']at class initialization.
Changed
The following functions, which are used both by
QRBasedTEBDEngineand by the newQRBasedVariationalApplyMPOhave been moved fromtenpy.algorithms.tebdtotenpy.linalg.truncation, have been changed substantially in parameters, behavior and return values; The old_qr_based_decomposition, which is renamed totenpy.algorithms.truncation.decompose_theta_qr_based(), as well as the private helper functions_qr_tebd_cbe_Y0and_eig_based_svd.Handle SIGINT signal during simulation runs to continue until next algorithm checkpoint, save and then exit “gracefully” by raising KeyboardInterrupt. See
handle_abort_signal().Go back to original directory after finishing a simulation (end of context manager) such that relative ‘directory’ options work as expected when repeatedly running simulations
move tenpy.algorithms.truncation module to tenpy.linalg.truncation.
Fixed
MPO methods
dagger(),is_hermitian(), and__add__()now respect the:~tenpy.networks.mpo.MPO.explicit_plus_hcflag.The classmethod
from_infiniteT_canonical()can now deal with two independent charges in the charge_sector, i.e. as in theSpinHalfFermionSite.When saving simulation results, convert list from update_stats and sweep_stats into numpy arrays. This can significantly reduce saving time and the size of the resulting hdf5 file - we have seen the size go down from 30MB to 700kB, when no psi and environment were saved!
TwoSiteTDVPwasn’t using the start_trunc_err option.Fix issue #459 that TDVP and VUMPS shouldn’t have both lanczos_params and lanczos_options. Deprecated the name lanczos_options (which was the one actually used) for more consistency with other algorithm engines.