Recent Changes - Search:




A triangular operator represents an infinite sum of translations of a finite operator, and polynomials of these functions.


The main method of constructing a triangular operator is via sum_unit. sum_unit(X(0)) represents the infinite sum {$\sum_n X(n)$} where X is an arbitrary finite operator. The cell index is required, but the value is irrelevant, since it sums over all unit cells.

It is possible to construct triangular operators that act on a larger unit cell, via an optional parameter sum_unit(cells=N,X(0)) constructs the infinite sum ...+X(-N)+X(0)+X(N)+X(2*N)+.... Now the cell index for X is important, because it gives an offset within the N unit cells. It is also possible to specify sites=x instead of cells. But the number of sites must anyway be a multiple of the lattice unit cell size.

Finite momentum

It is possible to also construct operators at finite momentum, for example {$X_k = \sum_n e^{-ikn} X(n)$}

This is done with the function sum_k(k, X(0)). For example, sum_k(pi, X(0)) is the operator X at momentum {$\pi$}, which gives, for example, a staggered order paremeter. In this case, sum_k(pi, X(0)) is roughly equivalent to sum_unit(cells=2, X(0)-X(1)), although the MPO representation is different (in the first case, the MPO is 1-cell translationally invariant, in the second case it is 2-cell translationally invariant). sum_k() also allows the optional cells= or sites= parameters.

Kink operators

A kink operator is a generalization of a momentum operator. For example, a string correlation can be written as an ordinary correlation of kink operators. Kink operators are also generated implicitly by fermion operators. sum_kink(K(0), X(0)) represents the operator {$ \sum_i \left( \Pi_{j<i} K_j \right) X_i $}

sum_k(k,X(0)) is equivalent to sum_kink(k*I(0), X(0)).


If A and B are triangular operators, then the following expressions are valid:

  • a*A , where a is a scalar
  • A+B
  • A*B
  • [A,B]
  • A^2
  • A^N, where N is an integer. This is calculated by repeated squaring.
  • inner(A,B) -- equivalent to dot(adjoint(A),B).
  • dot(A,B)
  • conj(A)
  • adjoint(A)
  • cross(A,B) -- only if A and B are {$SU(2)$} spin-1 vector operators.
  • outer(A,B) -- outer product, only useful for non-abelian operators.

Addition of a triangular operator and a scalar is not defined. Nor is addition or multiplication of a triangular operator and a finite or product operator.

Edit - History - Print - Recent Changes - Search
Page last modified on September 14, 2020, at 10:08 AM