GradientDescentDisentangler

Inheritance Diagram

Inheritance diagram of tenpy.algorithms.disentangler.GradientDescentDisentangler

Methods

GradientDescentDisentangler.__init__(parent)

GradientDescentDisentangler.iter(theta)

Given theta, find a unitary U towards minimizing the n-th Renyi entropy.

class tenpy.algorithms.disentangler.GradientDescentDisentangler(parent)[source]

Bases: Disentangler

Gradient-descent optimization, similar to RenyiDisentangler.

Options

iter(theta)[source]

Given theta, find a unitary U towards minimizing the n-th Renyi entropy.

This function calculates the gradient \(dS = \partial S(U theta, n) /\partial U\). and then U(t) = exp(-t*dS), where we choose the t from stepsizes which minimizes the entropy of U(t) theta.

When R[i] is the derivative \(\partial S(Y, n)/ \partial Y_i\) of the (n-th Renyi) entropy, dS is given by:

|     .----X--R--Z----.
|     |    |     |    |
|     |    q0    q1   |
|     |               |
|     |    q0*   q1*  |
|     |    |     |    |
|     .----X*-Y--Z*---.
Parameters:

theta (Array) – Two-site wave function to be disentangled

Returns:

  • S (float) – n-th Renyi entropy of new_theta

  • theta (Array) – The disentangled wave function new_U theta.

  • new_U (Array) – Unitary with legs 'q0', 'q1', 'q0*', 'q1*', which was used to disentangle theta.