disentangler

  • full name: tenpy.algorithms.disentangler

  • parent module: tenpy.algorithms

  • type: module

Classes

Inheritance diagram of tenpy.algorithms.disentangler

BackwardDisentangler(parent)

Disentangle with backward time evolution.

CompositeDisentangler(disentanglers)

Concatenate multiple disentanglers.

DiagonalizeDisentangler(parent)

Disentangle by diagonalizing the two-site density matrix in the auxiliary space.

Disentangler(parent)

Prototype for a disentangler.

GradientDescentDisentangler(parent)

Gradient-descent optimization, similar to RenyiDisentangler.

LastDisentangler(parent)

Disentangle using the same unitary that was used the last time at that bond.

MinDisentangler(disentanglers, parent)

Chose the disentangler giving the smallest entropy.

NoiseDisentangler(parent)

Disentangle with tunable noise, i.e. with random unitary close to identity.

NormDisentangler(parent)

Disentangle with the unitary that maximizes overlap with the truncated U|theta>.

RenyiDisentangler(parent)

Iteratively find U which minimized the second Renyi entropy.

Functions

get_disentangler(method, parent)

Parse the parameter method and construct a Disentangler instance.

Module description

Disentanglers.

The Disentanglers can be used to obtain a unitary reducing the entanglement between left and right while only acting on a subspace of the left and right Hilbert space.

For now, this is written for disentangling purifications; could be generalized to allow more legs.

tenpy.algorithms.disentangler.disentanglers_atom_parse_dict = {'None': <class 'tenpy.algorithms.disentangler.Disentangler'>, 'backwards': <class 'tenpy.algorithms.disentangler.BackwardDisentangler'>, 'diag': <class 'tenpy.algorithms.disentangler.DiagonalizeDisentangler'>, 'graddesc': <class 'tenpy.algorithms.disentangler.GradientDescentDisentangler'>, 'last': <class 'tenpy.algorithms.disentangler.LastDisentangler'>, 'noise': <class 'tenpy.algorithms.disentangler.NoiseDisentangler'>, 'norm': <class 'tenpy.algorithms.disentangler.NormDisentangler'>, 'renyi': <class 'tenpy.algorithms.disentangler.RenyiDisentangler'>}

Dictionary to translate the ‘disentangle’ TEBD parameter into a Disentangler.

If you define your own disentanglers, you can dynamically append them to this dictionary. CompositeDisentangler and MinDisentangler separate: they have non-default constructor and special syntax.