Skip to content

Latest commit

 

History

History
274 lines (241 loc) · 16.9 KB

CHANGELOG.rst

File metadata and controls

274 lines (241 loc) · 16.9 KB

CHANGELOG

All notable changes to the project will be documented in this file. The project adheres semantic versioning

[Unreleased]

Backwards incompatible changes

Changed

Added

Fixed

[0.4.0] - 2019-04-28

Backwards incompatible changes

Added

Changed

Fixed

  • :issue:`22`: Serious bug in :func:`tenpy.linalg.np_conserved.inner`: if do_conj=True is used with non-zero qtotal, it returned 0. instead of non-zero values.
  • avoid error in :meth:`tenpy.networks.mps.MPS.apply_local_op`
  • Don't carry around total charge when using DMRG with a mixer
  • Corrected couplings of the FermionicHubbardChain
  • :issue:`2`: memory leak in cython parts when using intelpython/anaconda
  • :issue:`4`: incompatible data types.
  • :issue:`6`: the CouplingModel generated wrong Couplings in some cases
  • :issue:`19`: Convergence of energy was slow for infinite systems with N_sweeps_check=1
  • more reasonable traceback in case of wrong labels
  • wrong dtype of npc.Array when adding/subtracting/... arrays of different data types
  • could get wrong H_bond for completely decoupled chains.
  • SVD could return outer indices with different axes
  • :meth:`tenpy.networks.mps.MPS.overlap` works now for MPS with different total charge (e.g. after psi.apply_local_op(i, 'Sp')).
  • skip existing graph edges in MPOGraph.add() when building up terms without the strength part.

Removed

[0.3.0] - 2018-02-19

This is the first version published on github.

Added

  • Cython modules for np_conserved and charges, which can optionally be compiled for speed-ups
  • tools.optimization for dynamical optimization
  • Various models.
  • More predefined lattice sites.
  • Example toy-codes.
  • Network contractor for general networks

Changed

  • Switch to python3

Removed

  • Python 2 support.

[0.2.0] - 2017-02-24

  • Compatible with python2 and python3 (using the 2to3 tool).
  • Development version.
  • Includes TEBD and DMRG.

Changes compared to previous TeNPy

This library is based on a previous (closed source) version developed mainly by Frank Pollmann, Michael P. Zaletel and Roger S. K. Mong. While allmost all files are completely rewritten and not backwards compatible, the overall structure is similar. In the following, we list only the most important changes.

Global Changes

  • syntax style based on PEP8. Use $>yapf -r -i ./ to ensure consitent formatting over the whole project. Special comments # yapf: disable and # yapf: enable can be used for manual formatting of some regions in code.

  • Following PEP8, we distinguish between 'private' functions, indicated by names starting with an underscore and to be used only within the library, and the public API. The puplic API should be backwards-compatible with different releases, while private functions might change at any time.

  • all modules are in the folder tenpy to avoid name conflicts with other libraries.

  • withing the library, relative imports are used, e.g., from ..tools.math import (toiterable, tonparray) Exception: the files in tests/ and examples/ run as __main__ and can't use relative imports

    Files outside of the library (and in tests/, examples/) should use absolute imports, e.g. import tenpy.algorithms.tebd

  • renamed tenpy/mps/ to tenpy/networks, since it containes various tensor networks.

  • added :class:`~tenpy.networks.site.Site` describing the local physical sites by providing the physical LegCharge and onsite operators.

np_conserved

TEBD

  • Introduced TruncationError for easy handling of total truncation error.
  • some truncation parameters are renamed and may have a different meaning, e.g. svd_max -> svd_min has no 'log' in the definition.

DMRG

  • separate Lanczos module in tenpy/linalg/. Strangely, the old version orthoganalized against the complex conjugates of orthogonal_to (contrary to it's doc string!) (and thus calculated 'theta_o' as bra, not ket).
  • cleaned up, provide prototypes for DMRG engine and mixer.

Tools