transformtoLR

◼ transformtoLR[bz, map] transforms the basis bz to a basis with well defined parity. map is the list of the operators so that the left-right symmetric lattice sites correspond to symmetric  position with respect to the middle of this list.
◼ lrmap[map]  returns the transformation rule of operator that correspond to the left-right mapping list map.

◼ transformtoLR may be applied to any type of basis: (Q, (Subscript[S, z])),  (Q, S),  (I, S),  even in the presence of the phonons.

◼ Operators in list map must be written in the stripped form (with the creation and spin indexes).

◼ List map may contain sublists. In this case, a correspondence is made with a related sublist that lies at symmetric position with respect to the middle of the list.

◼ See also: qsbasis, qszbasis, lrmap, transformtoPH.

Further examples

Load sneg and declare some quantities.

<< sneg`sneg`;
snegfermionoperators[c];

Check definition of lrmap

lrmap[{}]
lrmap[{c[1]}]
lrmap[{c[l], c[r]}]
lrmap[{c[l], c[0], c[r]}]
lrmap[{{c[l1], c[l2]}, {c[r1], c[r2]}}]
lrmap[{{c[l1], c[l2]}, 
        c[0], {c[r1], c[r2]}}]
lrmap[{{c[l1], c[l2]}, c[l3], c[r3], {c[r1], c[r2]}}]

Two lattice sites

bz = qsbasis[{c[1], c[2]}];
MatrixForm[bz]
bzlr = transformtoLR[bz, {c[1], c[2]}];
MatrixForm[bzlr]

Three lattice sites

bz = qsbasis[{c[1], c[2], c[3]}];
MatrixForm[bz]
bzlr = 
        transformtoLRvc[bz, {c[1], c[2], c[3]}, 
          vacuum[]];
MatrixForm[bzlr]