|
TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
|
Apply a function block-by-block on block Green's functions.
Helpers that lift a function acting on a single Green's function to a function acting on each block of a block Green's function (triqs::gfs::map_block_gf).
Functions | |
| template<typename V, typename T, typename L, int A> | |
| auto | triqs::gfs::fourier (block_gf< V, T, L, A > &g) |
| Lvalue overload of the block-wise lazy Fourier transform (see the const overload). | |
| template<typename V, typename T, typename L, int A> | |
| auto | triqs::gfs::fourier (block_gf< V, T, L, A > const &g) |
| Lazily apply the Fourier transform block by block to a block Green's function. | |
| template<typename V, typename T, typename L, int A, bool C> | |
| auto | triqs::gfs::fourier (block_gf_view< V, T, L, A, C > g) |
| View overload of the block-wise lazy Fourier transform (see the const overload). | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::inverse (block_gf< M, T, L, A > &g) |
Apply inverse block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::inverse (block_gf< M, T, L, A > const &g) |
Apply inverse block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A, bool C> | |
| auto | triqs::gfs::inverse (block_gf_view< M, T, L, A, C > g) |
Apply inverse block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::make_gf_from_fourier (block_gf< M, T, L, A > &g) |
Apply make_gf_from_fourier block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::make_gf_from_fourier (block_gf< M, T, L, A > const &g) |
Apply make_gf_from_fourier block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A, bool C> | |
| auto | triqs::gfs::make_gf_from_fourier (block_gf_view< M, T, L, A, C > g) |
Apply make_gf_from_fourier block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::make_gf_from_inverse_fourier (block_gf< M, T, L, A > &g) |
Apply make_gf_from_inverse_fourier block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::make_gf_from_inverse_fourier (block_gf< M, T, L, A > const &g) |
Apply make_gf_from_inverse_fourier block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A, bool C> | |
| auto | triqs::gfs::make_gf_from_inverse_fourier (block_gf_view< M, T, L, A, C > g) |
Apply make_gf_from_inverse_fourier block-wise to each block of the block Green's function. | |
| template<typename F, typename G> requires (is_block_gf_v<G>) | |
| auto | triqs::gfs::map (F &&f, G &&g) |
| Apply a callable to each block of a block Green's function (alias of triqs::gfs::map_block_gf). | |
| template<typename F, typename G> | |
| auto | triqs::gfs::map_block_gf (F &&f, G &&g) |
| Apply a callable to each block of a block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::reinterpret_scalar_valued_gf_as_matrix_valued (block_gf< M, T, L, A > &g) |
Apply reinterpret_scalar_valued_gf_as_matrix_valued block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A> | |
| auto | triqs::gfs::reinterpret_scalar_valued_gf_as_matrix_valued (block_gf< M, T, L, A > const &g) |
Apply reinterpret_scalar_valued_gf_as_matrix_valued block-wise to each block of the block Green's function. | |
| template<typename M, typename T, typename L, int A, bool C> | |
| auto | triqs::gfs::reinterpret_scalar_valued_gf_as_matrix_valued (block_gf_view< M, T, L, A, C > g) |
Apply reinterpret_scalar_valued_gf_as_matrix_valued block-wise to each block of the block Green's function. | |
| auto triqs::gfs::fourier | ( | block_gf< V, T, L, A > const & | g | ) |
#include <triqs/gfs/block/functions.hpp>
Lazily apply the Fourier transform block by block to a block Green's function.
Returns a lazy transform object that applies fourier to each block when assigned into a block Green's function.
| V | Mesh type. |
| T | Target type. |
| L | Layout type. |
| A | Block arity. |
| g | Block Green's function. |
Definition at line 44 of file functions.hpp.
| auto triqs::gfs::map | ( | F && | f, |
| G && | g ) |
#include <triqs/gfs/block/map.hpp>
Apply a callable to each block of a block Green's function (alias of triqs::gfs::map_block_gf).
| F | Type of the callable. |
| G | Type of the block Green's function. |
| f | Callable applied to each block. |
| g | Block Green's function (or view). |
| auto triqs::gfs::map_block_gf | ( | F && | f, |
| G && | g ) |
#include <triqs/gfs/block/map.hpp>
Apply a callable to each block of a block Green's function.
Computes f(g[i]) for every block. The return type follows the result of f: a triqs::gfs::block_gf if f returns a triqs::gfs::gf, a triqs::gfs::block_gf_view / triqs::gfs::block_gf_const_view if it returns a view, and a std::vector otherwise.
| F | Type of the callable. |
| G | Type of the block Green's function. |
| f | Callable applied to each block. |
| g | Block Green's function (or view). |