21#ifndef VOTCA_XTP_EXACT_POLE_SUMS_H
22#define VOTCA_XTP_EXACT_POLE_SUMS_H
67 const Eigen::VectorXd& w);
73 const Eigen::VectorXd& w,
const double* mode_factors);
77 const Eigen::VectorXd& w);
79 const Eigen::VectorXd& w,
80 const double* mode_factors);
84 const double* weights,
85 const Eigen::VectorXd& w);
92 const Eigen::MatrixXd& residues_all,
93 const Eigen::VectorXd& w);
double Value(const ExactPoles &poles, const double *residues, double w)
S_n(w) at one frequency.
double Derivative(const ExactPoles &poles, const double *residues, double w)
dS_n/dw at one frequency
Eigen::VectorXd ValuesDirect(const ExactPoles &poles, const double *residues, const Eigen::VectorXd &w)
The same sum term by term at every frequency (reference for tests).
Eigen::MatrixXd OffDiagonal(const ExactPoles &poles, const Eigen::MatrixXd &residues_all, const Eigen::VectorXd &w)
Eigen::VectorXd Values(const ExactPoles &poles, const double *residues, const Eigen::VectorXd &w)
Eigen::VectorXd ValuesDirectWeighted(const ExactPoles &poles, const double *weights, const Eigen::VectorXd &w)
sum_p a_p f(w - z_p) with given weights a_p (e.g. r_n1 r_n2)
Provides a means for comparing floating point numbers.
Pole sums of the exact (RPA spectral) correlation self-energy.
const Eigen::VectorXd & energies
const Eigen::VectorXd & omegas