Be careful to the value of a function at a point in case of discontinuities: is its value equal to the limit from below ? To the limit from above ? By none of these limits ?
Real frequency
---------------
The domain is the set of real numbers.
By default, the mesh kind is ``full_bins``.
Matsubara time
---------------
The domain is (approximatively) the set of real numbers between 0 and :math:`\beta`.
In fact, other points are also in the domain, but the values at these points are given by the values on this restricted domain.
:math:`G(\tau+\beta)=-G(\tau)` for fermions, :math:`G(\tau+\beta)=G(\tau)` for bosons.
The limits from above or below at these both points can be different.
Depending on what one needs, we can choose ``full_bins``, ``half_bins`` or ``without_last``.
The domain is discrete. The Matsubara frequencies are :math:`\omega_n=\frac{(2n+1)\pi}{\beta}` for fermions and :math:`\omega_n=\frac{2n\pi}{\beta}` for bosons.
Products of meshes
===================
We detail the case of a two mesh product, but what follows is true for any number of meshes.
A mesh point can be labelled by a linear index, or by a tuple of indices. Each mesh point correspond to a point of the domain, which is a tuple of points of the subdomains.
We can navigate between these representations, through ``closest_mesh_pt``, ``get_closest_pt``, ``index_to_linear``,...
How to access to the closest mesh point
---------------------------------------
..compileblock::
#include <triqs/gf/two_real_times.hpp>
using namespace triqs::gf;
int main() {
double tmax = 1.0;
int nt = 101;
auto Gtt = make_gf<two_real_times>(tmax, nt, triqs::arrays::make_shape(1,1));
//does not work for instance
//double t1 = 0.256, t2 = 0.758;
//Gtt(closest_mesh_pt(i1,i2)) = 1.5;
}
How to access to a mesh point with its index
---------------------------------------------
..compileblock::
#include <triqs/gf/two_real_times.hpp>
using namespace triqs::gf;
int main() {
double tmax = 1.0;
int nt = 101;
auto Gtt = make_gf<two_real_times>(tmax, nt, triqs::arrays::make_shape(1,1));