The mp-show-operator
command displays a representation of an MPO.
Synopsis
mp-show-operator [options] -f|-p|-t Operator
The Operator
must be of the form lattice:expression
. Because the toolkit uses a slightly different expression parser depending on the nature of the MPO, it is necessary to explicitly label whether the operator is a FiniteMPO (-f
), a ProductMPO (-p
) or a TriangularMPO (-t
).
Options
--help
show help message
-f
, --finite
the following Operator is of FiniteMPO form
-p
, --product
the following Operator is of ProductMPO form
-t
, --triangular
the following Operator is of TriangularMPO form
--coarsegrain
experimental: only for finite operators, coarsegrain the operator to a single matrix and then finegrain it back to an MPO
--unityepsilon
=n
Set the epsilon value for testing matrix elements for unity
-v
, --verbose
Increase the level of verbose output. This displays the full matrix elements.
Description
An MPO can be regarded as a {$D \times D$} matrix of local operators. This can be a bit cumbersome to try to represent, so the mp-show-operator
tool doesn't show the full matrix elements (unless you use -v
option), but simply a representation of the {$D \times D$} matrix with one character per matrix element, which indicates the kind of local operator. This character is:
Label | Purpose |
(blank) | zero |
I | identity operator |
i | proportional to the identity operator |
U | a unitary operator |
s | a scalar operator (quantum number label is the identity rep) |
v | a vector operator (non-scalar quantum number) |
x | a mixture of different quantum numbers (a reducible rep) |
Examples
- Heisenberg model with {$U(1)$} symmetry
$ spinchain-u1 -o lattice
$ mp-show-operator -t lattice:H_J1
Triangular Operator lat:H_J1
TriangularMPO has 1 sites
Site 0 dimension 5 x 5
[Isvv ]
[ s]
[ v]
[ v]
[ I]
The dimension of the MPO is 5, representing the identity, Hamiltonian, and {$S^+$}, {$S^-$} and {$S^z$} operators. The s
entry labels a scalar -- this must be the {$S^z$} operator as this is the true scalar under {$U(1)$}. The {$S^+$} and {$S^-$} operators change the quantum number so are labelled as v
. Hence we can deduce the actual matrix elements:
{$ \left( \begin{array}{ccccc} I & S^z & S^+ & S^- & 0 \\ & 0 & 0 & 0 & S^z \\& & 0 & 0 & S^- \\& & & 0 & S^+ \\ & & & & I \\ \end{array} \right) $}
where {$S^\alpha = \sigma^\alpha/2$} are the {$2\times 2$} Pauli spin matrices.
- Heisenberg model with {$SU(2)$}. This replaces the three components of the spin operator with a single tensor operator that transforms as an {$SU(2)$} vector.
$ spinchain-su2 -o lattice
$ mp-show-operator -t lattice:H_J1
Triangular Operator lattice:H_J1
TriangularMPO has 1 sites
Site 0 dimension 3 x 3
[Iv ]
[ v]
[ I]
The matrix elements are:
{$ \left( \begin{array}{ccc} I & \vec{S} & 0 \\ & 0 & \vec{S} \\ & & I \\ \end{array} \right) $}
- Reducible operators. It is rather unusual to have an MPO that contains an
x
term. This represents a reducible local operator; that is an operator that transforms as a sum of different quantum number sectors. This never happens with abelian quantum numbers, since for abelian quantum numbers the tensor product of two irreducible operators is uniquely defined and results in a single well-defined quantum number. But this isn't true for non-abelian quantum numbers, for example for the spin vector operator {$\vec{S}$} there are three different kinds of product that one can do, the dot product {$\vec{S} \cdot \vec{S}$}, that produces a scalar (quantum number 0), the cross product {$\vec{S} \times \vec{S}$} that produces another vector (quantum number 1), and the outer product {$\vec{S} \otimes \vec{S}$} that produces a tensor (quantum number 2). By combining these operations, we can produce MPO's containing reducible operators. Consider the dot product and triple product acting on 3 sites,
{$\vec{S}_1 \cdot \vec{S}_3$}
and
{$\vec{S}_1 \cdot \vec{S}_2 \times \vec{S}_3$}
These are both products of local operators, and representable as {$1\times 1$} MPO's. But interestingly, the sum of these operators is also a {$1\times 1$} MPO. The reason is that we can write the sum also as a product of local operators, schematically
{$ \vec{S} \otimes (I + \vec{S}) \otimes \vec{S} $}
where the operator acting on the middle site, {$I + \vec{S}$}, is a reducible operator, since it is the sum of a scalar (the identity, quantum number 0) and a vector (the spin, quantum number 1). The result is a {$1 \times 1$} MPO with an x
,
$ spinchain-su2 -o lattice
$ mp-show-operator -f lattice:"inner(S(0),S(2)) + inner(S(0), cross(S(1),S(2)))"
Finite Operator lattice:inner(S(0),S(2)) + inner(S(0), cross(S(1),S(2)))
FiniteMPO has 3 sites
Site 0 dimension 1 x 1
[v]
Site 1 dimension 1 x 1
[x]
Site 2 dimension 1 x 1
[v]