Skip to main contentIBM Quantum Documentation

TEBDEvolver

class TEBDEvolver(*args, dt=0.1, **kwargs)

GitHub

Bases: TEBDEngine, Evolver

A TEBD algorithm for evolving an internal MPO.

As discussed in more detail in tenpy_tebd, this extension of TeNPy’s existing TEBDEngine implementation time-evolves an internal matrix product operator (MPO) rather than the conventional matrix product state (MPS).

More concretely, the internal object is expected to be an MPOState.

Warning

The API of this class is actually much larger than shown here, because it inherits additional methods from the TEBDEngine base class. However, we do not duplicate that API here.

Initialize a TEBDEvolver instance.

Parameters

  • args – any positional arguments will be forwarded to the TEBDEngine constructor.
  • dt (float) – the time step to be used by this time-evolution instance.
  • kwargs – any further keyword arguments will be forwarded to the TEBDEngine constructor.

Attributes

conjugate

Returns whether this time-evolver instance acts on the right-hand side.

evolved_time

Returns the current evolution time.

dt

The time step to be used by this time-evolution instance.


Methods

step

step()

GitHub

Perform a single time step of TEBD.

This essentially calls run_evolution() and forwards the value of dt that was provided upon construction.

Return type

None

update_bond

update_bond(i, U_bond)

GitHub

Update the specified bond.

Overwrites the original (MPS-based) implementation to support an MPO as the shared state.

Parameters

  • i (int) – the bond index.
  • U_bond (Array) – the bond to update.

Returns

The truncation error.

Return type

float

Was this page helpful?
Report a bug or request content on GitHub.