#include <triqs/hilbert_space/space_partition.hpp>


std::pair<matrix_element_map_t, matrix_element_map_t> merge_subspaces (space_partition::operator_t const & Cd,
space_partition::operator_t const & C,
bool store_matrix_elements = true)

Perform Phase II of the automatic partition algorithm

Merge some of the invariant subspaces together, to ensure that a given operator Cd and its Hermitian conjugate C generate only one-to-one connections between the subspaces.


  • Cd Subject operator Cd, normally a creation operator
  • C Conjugate of Cd, normally an annihilation operator
  • store_matrix_elements Should we store the non-vanishing matrix elements of Cd?


Non-vanishing matrix elements of Cd and C, if store_matrix_elements = true