triqs_tprf::product
#include <tprf/linalg.hpp>
Synopsis
template<Channel_t CH>g2_iw_t product (g2_iw_cvt A, g2_iw_cvt B)
Two-particle response-function product \(A * B\)
The two-particle response functions \(A \equiv A_{abcd}(\omega, \nu, \nu')\) and \(B \equiv B_{abcd}(\omega, \nu, \nu')\) are cast to matrix form and their product is computed
\[(A * B)_{\{\nu\alpha\beta\}, \{\nu'\gamma\delta\}}(\omega)
= \sum_{\bar{\nu}ab}
A_{\{\nu\alpha\beta\}, \{\bar{\nu}ab\}}(\omega)
B_{\{\bar{\nu}ab\}, \{\nu'\gamma\delta\}}(\omega)\]
where the mapping of target-space indices \(\{a, b, c, d \}\) to \(\{\alpha, \beta\}, \{\gamma, \delta\}\) is channel dependent.
Storage is allocated and the product is returned by value.
Template parameters
CH selects the two-particle channel
Parameters
A two-particle response function \(A \equiv A_{abcd}(\omega, \nu, \nu')\)
B two-particle response function \(B \equiv A_{abcd}(\omega, \nu, \nu')\)
Returns
\((A * B)\) in the given channel