triqs::gfs::is_gf_hermitian
#include <triqs/gfs.hpp>
Synopsis
template<typename G>bool is_gf_hermitian (G const & g, double tolerance = 1.e-12)
Test if a Green function object fullfills the fundamental property mentioned below up to a fixed tolerance \(\epsilon\) Depending on the mesh and target rank one of the following properties is checked \(G[i\omega] == \frac{1}{2} ( G[i\omega] + conj(G[-i\omega]) )\) \(G[\tau] == \frac{1}{2} ( G[\tau] + conj(G[\tau]) )\) \(G[i\omega](i,j) == \frac{1}{2} ( G[i\omega](i,j) + conj(G[-i\omega](j,i)) )\) \(G[\tau](i,j) == \frac{1}{2} ( G[\tau](i,j) + conj(G[\tau](j,i)) )\) \(G[i\omega](i,j,k,l) == \frac{1}{2} ( G[i\omega](i,j,k,l) + conj(G[-i\omega](k,l,i,j)) )\) \(G[\tau](i,j,k,l) == \frac{1}{2} ( G[\tau](i,j,k,l) + conj(G[\tau](k,l,i,j)) )\)
Template parameters
The Green function type
Parameters
g The Green function object to check the symmetry for
tolerance The tolerance \(\epsilon\) for the check [default=1e-12]
Returns
true iif the fundamental property holds for all points of the mesh