Release Notes

The default (stable) git branch was renamed from master to main.

Big new feature: simulation classes and console script tenpy-run to allow running a simulation. See /intro/simulation for details.

Big Change in verbosity: switch to using Python’s default logging mechanism! This implies that by default you don’t get any output besides error messages and warning any more, at least not in pre-Simulation setups. See Logging and terminal output on how to get the output back, and what to change in your code.


Backwards incompatible changes

  • Drop official support for Python 3.5.

  • tenpy.linalg.np_conserved.from_ndarray(): raise ValueError instead of just a warning in case of the wrong non-zero blocks. This behaviour can be switched back with the new argument raise_wrong_sector.

  • Argument v0 of tenpy.networks.mps.MPS.TransferMatrix.eigenvectors() is renamed to v0_npc; v0 now serves for non-np_conserved guess.

  • Default parameters for lattice initialization in the following classes changed. In particular, the bc_MPS parameter now defaults to ‘finite’.

  • Renamed tenpy.algorithms.tebd.Engine to tenpy.algorithms.tebd.TEBDEngine and tenpy.algorithms.tdvp.Engine to tenpy.algorithms.tdvp.TDVPEngine to have unique algorithm class-names.

  • When running, no longer print stuff by default. Instead, we use Python’s logging mechanism. To enable printing again, you need to configure the logging to print on “INFO” level (which is the default when running from command line)

    As part of this big change in the way verbosity is handled, there were many minor changes: - rename Config.print_if_verbose to log() - deprecate the verbose class argument of the Config - deprecate the verbose class attribute of all classes (if they had it). - change argument names of params().