3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-01 03:33:50 +01:00
dft_tools/doc/reference/c++/gf/gf_imtime.rst

62 lines
1.2 KiB
ReStructuredText
Raw Normal View History

2013-08-22 16:55:51 +02:00
.. highlight:: c
.. _gf_imtime:
gf<imtime>
===================================================
This is a specialisation of :ref:`gf_and_view` for imaginary Matsubara time.
Domain & mesh
----------------
Singularity
-------------
Interpolation method
---------------------
2013-09-18 15:13:23 +02:00
None.
2013-08-22 16:55:51 +02:00
Data storage
---------------
2013-09-18 15:13:23 +02:00
* `data_t` : 3d array (C ordered) of complex<double>.
* g.data()(i, range(), range()) is the value of g for the i-th point of the mesh.
2013-08-22 16:55:51 +02:00
HDF5 storage convention
---------------------------
2013-09-18 15:13:23 +02:00
h5 tag : `ImTime`
2013-08-22 16:55:51 +02:00
Examples
---------
2013-09-18 15:13:23 +02:00
.. compileblock::
#include <triqs/gfs.hpp>
using namespace triqs::gfs; using triqs::clef::placeholder;
int main(){
double beta=10, a = 1;
int n_times=5;
// First give information to build the mesh, second to build the target
auto GF1 = gf<imtime> { {beta,Fermion,n_times}, {1,1} };
// or a more verbose/explicit form ...
auto GF2 = gf<imtime> { gf_mesh<imtime>{beta,Fermion,n_times}, make_shape(1,1) };
// Filling the gf with something...
placeholder<0> tau_;
//GF1(tau_) << exp ( - a * tau_) / (1 + exp(- beta * a));
2013-08-22 16:55:51 +02:00
2013-09-18 15:13:23 +02:00
// evaluation at n=3
std::cout << make_matrix(GF1(3)) << " == "<< exp ( - a * 3) / (1 + exp(- beta * a)) << std::endl;
}
2013-08-22 16:55:51 +02:00