pytenet.opchain.OpChain

class pytenet.opchain.OpChain(oids: Sequence[int], qnums: Sequence[int], coeff: float, istart: int)[source]

Symbolic operator chain coeff op_i x op_{i+1} x … x op_{i+n-1}, with op_i acting on lattice site i.

A single bond quantum number is interleaved between each op_i and op_{i+1}; set all quantum numbers to zero to effectively disable them.

__init__(oids: Sequence[int], qnums: Sequence[int], coeff: float, istart: int)[source]

Create an operator chain.

Parameters:
  • oids – list of local op_i operator IDs

  • qnums – interleaved bond quantum numbers, including a leading and trailing quantum number

  • coeff – coefficient (scalar factor)

  • istart – first lattice site the operator chain acts on

Methods

__init__(oids, qnums, coeff, istart)

Create an operator chain.

padded(length, oid_identity)

Construct a new OpChain with identities padded on the left and right.

to_matrix(opmap)

Represent the logical operation of the operator chain as a matrix.

Attributes

length

Length of operator chain.