mirror of
https://github.com/triqs/dft_tools
synced 2024-11-01 03:33:50 +01:00
38d89e2d01
- introducing scalar_valued gf - Change Fourier routines to run on scalar_valued, and then use those routines to run on matrix_valued. - Tools for slices of 2 variables functions
36 lines
883 B
C++
36 lines
883 B
C++
//#define TRIQS_ARRAYS_ENFORCE_BOUNDCHECK
|
|
|
|
#include <triqs/gf/imfreq.hpp>
|
|
#include <triqs/gf/imtime.hpp>
|
|
#include <triqs/gf/local/fourier_matsubara.hpp>
|
|
|
|
namespace tql= triqs::clef;
|
|
namespace tqa= triqs::arrays;
|
|
using tqa::range;
|
|
using triqs::arrays::make_shape;
|
|
using triqs::gf::Fermion;
|
|
using triqs::gf::imfreq;
|
|
using triqs::gf::imtime;
|
|
using triqs::gf::make_gf;
|
|
|
|
#define TEST(X) std::cout << BOOST_PP_STRINGIZE((X)) << " ---> "<< (X) <<std::endl<<std::endl;
|
|
|
|
int main() {
|
|
|
|
triqs::gf::freq_infty inf;
|
|
|
|
double beta =1;
|
|
auto G = make_gf<imfreq> (beta, Fermion, make_shape(2,2));
|
|
auto Gc = make_gf<imfreq> (beta, Fermion, make_shape(2,2));
|
|
auto G3 = make_gf<imfreq> (beta, Fermion, make_shape(2,2));
|
|
auto Gt = make_gf<imtime> (beta, Fermion, make_shape(2,2));
|
|
|
|
auto gt = inverse_fourier(G);
|
|
auto gw = fourier(gt);
|
|
|
|
//gw() = lazy_fourier(gt);
|
|
G() = lazy_fourier(Gt);
|
|
}
|
|
|
|
|