pauli

This submodule implements elements of SU(2), i.e., the identity and the Pauli matrices and their multiplication rules.

enum Pauli(*values)

Bases: CustomIndex

Valid values are as follows:

id_ = <Pauli.id_: 1>
t1 = <Pauli.t1: 2>
t2 = <Pauli.t2: 3>
t3 = <Pauli.t3: 4>
class SU2(tau: Pauli, factor: int | Fraction | Complex = 1)

Bases: Multiplicative

Implements the hermitian 2x2 matrices (1, pauli_{1,2,3}).

Parameters:
  • tau (Pauli) – Identifier of the chosen pauli matrix / identity.

  • factor (int|Fraction|Complex, optional) – Overall factor, defaults to 1.

charge()

Implements conventional charge conjugation.

Returns:

A copy of itself transformed accordingly.

Return type:

Block

classmethod variants()

Yields a generator over all declared (generalised) indices thus amounting to all the allowed index combinations.

=> May be adapted for non-trivial cases!

Returns:

Iterator over all possible variants of the particular implementation of Block.

Return type:

Iterator[Block]