21#ifndef VOTCA_XTP_SIGMA_BASE_UKS_H
22#define VOTCA_XTP_SIGMA_BASE_UKS_H
60 const Eigen::VectorXd& frequencies)
const;
66 Index gw_level,
double frequency)
const = 0;
68 double frequency)
const = 0;
72 Index gw_level,
const Eigen::VectorXd& frequencies)
const {
73 Eigen::VectorXd result(frequencies.size());
74 for (
Index i = 0; i < frequencies.size(); ++i) {
81 double frequency2)
const = 0;
86 ?
rpa_.getRPAInputEnergiesAlpha()
87 :
rpa_.getRPAInputEnergiesBeta();
Unrestricted RPA helper for spin-resolved GW screening.
virtual bool HasOffDiagonal() const
False if CalcCorrelationOffDiag only returns zeros (CDA).
const Eigen::VectorXd & getSpinRPAInputEnergies() const
virtual double CalcCorrelationDiagElement(Index gw_level, double frequency) const =0
TCMatrix::SpinChannel spin_
TCMatrix_gwbse_spin & Mmn_spin_
void configure(options opt)
Eigen::MatrixXd CalcCorrelationOffDiag(const Eigen::VectorXd &frequencies) const
virtual double CalcCorrelationOffDiagElement(Index gw_level1, Index gw_level2, double frequency1, double frequency2) const =0
virtual Eigen::VectorXd CalcCorrelationDiagElements(Index gw_level, const Eigen::VectorXd &frequencies) const
Eigen::MatrixXd CalcExchangeMatrix() const
virtual ~Sigma_base_UKS()=default
Sigma_base_UKS(TCMatrix_gwbse_spin &Mmn, const RPA_UKS &rpa, TCMatrix::SpinChannel spin)
virtual void PrepareScreening()=0
virtual double CalcCorrelationDiagElementDerivative(Index gw_level, double frequency) const =0
Eigen::VectorXd CalcCorrelationDiag(const Eigen::VectorXd &frequencies) const
Provides a means for comparing floating point numbers.
std::string quadrature_scheme