TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
Loading...
Searching...
No Matches
functions.hpp
#include "./atom_diag.hpp"
#include <vector>

Detailed Description

Free functions that compute thermodynamic averages and act with operators on a solved diagonalization problem.

Definition in file functions.hpp.

Go to the source code of this file.

Functions

template<bool Complex>
atom_diag< Complex >::full_hilbert_space_state_t triqs::atom_diag::act (typename atom_diag< Complex >::many_body_op_t const &op, typename atom_diag< Complex >::full_hilbert_space_state_t const &st, atom_diag< Complex > const &atom)
 Act with a many-body operator on a state vector, \( |\psi'\rangle = \hat O\, |\psi\rangle \).
template<bool Complex>
atom_diag< Complex >::block_matrix_t triqs::atom_diag::atomic_density_matrix (atom_diag< Complex > const &atom, double beta)
 Compute the atomic density matrix at inverse temperature \( \beta \).
template<bool Complex>
double triqs::atom_diag::partition_function (atom_diag< Complex > const &atom, double beta)
 Compute the atomic partition function at inverse temperature \( \beta \).
template<bool Complex>
std::vector< std::vector< quantum_number_t > > triqs::atom_diag::quantum_number_eigenvalues (typename atom_diag< Complex >::many_body_op_t const &op, atom_diag< Complex > const &atom)
 Tabulate the eigenvalues \( q_{B,i} = \langle B,i\,|\,\hat Q\,|\,B,i\rangle \) of a quantum-number operator \( \hat Q \) over all eigenstates of the Hamiltonian.
template<bool Complex>
std::vector< std::vector< quantum_number_t > > triqs::atom_diag::quantum_number_eigenvalues_checked (typename atom_diag< Complex >::many_body_op_t const &op, atom_diag< Complex > const &atom)
 Tabulate the eigenvalues \( q_{B,i} \) of a quantum-number operator \( \hat Q \), also checking that the operator is diagonal in the eigenbasis.
template<bool Complex>
atom_diag< Complex >::scalar_t triqs::atom_diag::trace_rho_op (typename atom_diag< Complex >::block_matrix_t const &density_matrix, typename atom_diag< Complex >::many_body_op_t const &op, atom_diag< Complex > const &atom)
 Compute the trace of a many-body operator weighted by a block-diagonal density matrix.