20#ifndef VOTCA_XTP_IMAGINARYAXISINTEGRATION_H
21#define VOTCA_XTP_IMAGINARYAXISINTEGRATION_H
52 const Eigen::MatrixXd& kDielMxInv_zero);
54 const Eigen::MatrixXd& kDielMxInv_zero);
60 const Eigen::MatrixXd& K);
65 std::unique_ptr<GaussianQuadratureBase>
gq_ =
nullptr;
69 template <
class RPAType>
71 const Eigen::MatrixXd& kDielMxInv_zero);
75 void CalcNodeTerms(
const std::vector<Eigen::MatrixXd>& dielinv_matrices);
double SigmaGQDiag(double frequency, Index gw_level, double eta) const
const Eigen::VectorXd & energies_
ImaginaryAxisIntegration(const Eigen::VectorXd &energies, const TCMatrix_gwbse &Mmn)
void configure(options opt, const RPA &rpa, const Eigen::MatrixXd &kDielMxInv_zero)
void CalcDielInvVector(const RPAType &rpa, const Eigen::MatrixXd &kDielMxInv_zero)
const TCMatrix_gwbse & Mmn_
std::unique_ptr< GaussianQuadratureBase > gq_
static Eigen::VectorXd RowQuadraticForms(const Eigen::MatrixXd &M, const Eigen::MatrixXd &K)
q(i) = M.row(i) K M.row(i)^T for all rows of M.
std::vector< Eigen::MatrixXd > node_terms_
void CalcNodeTerms(const std::vector< Eigen::MatrixXd > &dielinv_matrices)
Unrestricted RPA helper for spin-resolved GW screening.
Charge transport classes.
Provides a means for comparing floating point numbers.
std::string quadrature_scheme