TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
Loading...
Searching...
No Matches
Operators

Detailed Description

Tools to construct and manipulate second-quantized many-body operators.

The Operators module provides a symbolic algebra for second-quantized many-body operators acting on the fermionic Fock space introduced in Hilbert space.

The central type is triqs::operators::many_body_operator (with the real- and complex-valued aliases triqs::operators::many_body_operator_real and triqs::operators::many_body_operator_complex). A many-body operator \( \hat{O} = \sum_i a_i \hat{m}_i \) is a linear combination of monomials \( \hat{m}_i \) (see triqs::operators::monomial_t), where each monomial is an ordered product of canonical creation/annihilation operators (see triqs::operators::canonical_ops_t). The operators form an algebra over the field of real/complex scalars, with an additional addition operation between operators and scalars.

Operators are not constructed directly but assembled from the factory functions triqs::operators::c (annihilation), triqs::operators::c_dag (creation) and triqs::operators::n (number), combined with the usual +, - and * arithmetic.

Helper functions include dagger (Hermitian conjugation), triqs::operators::real / triqs::operators::imag (real/imaginary parts of the coefficients), transform (apply a callable to each coefficient) and triqs::operators::is_op_hermitian.

The module is split into two parts:

Topics

 Many-body operators
 The many-body operator algebra in second quantization.
 Operator utilities
 Helpers to extract coefficient tensors and maps from many-body operators.