[0.7.0] - 2020-09-04
Release Notes
The big new feature is the implementation of the W_I
and W_II
method for approximating exponentials of an MPO with an MPO,
and MPS compression / MPO application to an MPS, to allow time evolution with ExpMPOEvolution()
.
Changelog
Backwards incompatible changes
Remove argument leg0 from
build_MPO
.Remove argument leg0 from
from_grids
, instead optionally give all legs as argument.Moved/renamed the module
tenpy.algorithms.mps_sweeps
totenpy.algorithms.mps_common
. The old mps_sweeps still exists for compatibility, but raises a warning upon import.Moved/renamed the module
tenpy.algorithms.purification_tebd
to tenpy.algorithms.purification (for the PurificaitonTEBD and PurificationTEBD2) and tenpy.algorithms.disentangler (for the disentanglers).
Added
VariationalCompression
andVariationalApplyMPO
for variational compressionPurificationApplyMPO
andPurificationTwoSiteU
for variational compression with purifications.Argument insert_all_id for
tenpy.networks.mpo.MPOGraph.from_terms()
andfrom_term_list()
implemented the
IrregularLattice
.extended user guide on lattices, Details on the lattice geometry.
Function to approximate a decaying function by a sum of exponentials.
spatial_inversion()
to perform an explicit spatial inversion of the MPS.
Changed
By default, for an usual MPO define IdL and IdR on all bonds. This can generate “dead ends” in the MPO graph of finite systems, but it is useful for the make_WI/make_WII for MPO-exponentiation.
tenpy.models.lattice.Lattice.plot_basis()
now allows to shade the unit cell and shift the origin of the plotted basis.Don’t use bc_shift in
tenpy.models.lattice.Lattice.plot_couplings()
any more - it lead to confusing figures. Instead, the new keyword wrap=True allows to directly connect all sites. This is done to avoid confusing in combination withplot_bc_identified()
.Error handling of non-zero qtotal for
TransferMatrix
.
Fixed
Removed double counting of chemical potential terms in the
BosonicHaldaneModel
andFermionicHaldaneModel
.Wrong results of
tenpy.networks.mps.MPS.get_total_charge()
withonly_physical_legs=True
.tenpy.models.lattice.Lattice.plot_bc_identified()
had a sign error for the bc_shift.calc_H_MPO_from_bond()
didn’t work for charges with blocks > 1.TEBD: keep qtotal of the B tensors constant
order model parameter was read out but not used in
tenpy.models.model.CouplingMPOModel.init_lattice()
for 1D lattices.