votca 2026-dev
Loading...
Searching...
No Matches
votca::xtp::Sigma_PPM Class Reference

#include <sigma_ppm.h>

Inheritance diagram for votca::xtp::Sigma_PPM:
Collaboration diagram for votca::xtp::Sigma_PPM:

Public Member Functions

 Sigma_PPM (TCMatrix_gwbse &Mmn, RPA &rpa)
void PrepareScreening () final
std::string ScreeningSummary () const final
 One line about the screening just prepared (empty if nothing to say).
double CalcCorrelationDiagElement (Index gw_level, double frequency) const final
double CalcCorrelationDiagElementDerivative (Index gw_level, double frequency) const final
Eigen::VectorXd CalcCorrelationDiagElements (Index gw_level, const Eigen::VectorXd &frequencies) const final
double CalcCorrelationOffDiagElement (Index gw_level1, Index gw_level2, double frequency1, double frequency2) const final
Eigen::MatrixXd CalcCorrelationOffDiag (const Eigen::VectorXd &frequencies) const final
bool HasPoleForm () const final
DiagPoleForm PoleForm (Index gw_level) const final
ScreeningData ScreeningDump (const Eigen::VectorXd &nu) const final
Public Member Functions inherited from votca::xtp::Sigma_base
 Sigma_base (TCMatrix_gwbse &Mmn, const RPA &rpa)
virtual ~Sigma_base ()=default
void configure (options opt)
Eigen::MatrixXd CalcExchangeMatrix () const
Eigen::MatrixXd CalcHartreeMatrix (const Eigen::MatrixXd &R=Eigen::MatrixXd()) const
Eigen::MatrixXd CalcReactionFieldMatrix (const Eigen::MatrixXd &R) const
 Static self-energy of an environment reaction field: the COH+SEX pair for v_reac, in the QP window.
Eigen::VectorXd CalcCorrelationDiag (const Eigen::VectorXd &frequencies) const
Eigen::MatrixXd CalcCorrelationSRG (const Eigen::VectorXd &frequencies, double s) const
virtual bool HasOffDiagonal () const
 False if CalcCorrelationOffDiag only returns zeros (CDA).
void setKeepScreeningData (bool keep)
void setPairContractionMemory (double block_bytes, double chunk_bytes)
void setTimings (DFTTimings *timings)
 Times the parts of PrepareScreening in these timings (optional).
void ResetDiagEvalCounter () const
std::size_t GetDiagEvalCounter () const

Private Member Functions

template<class Term>
void AccumulateDiag (Index gw_level, const double *freqs, Index nfreq, double *out, Term term) const

Private Attributes

PPM ppm_
Eigen::VectorXd mode_factors_
Eigen::VectorXd screening_energies_

Additional Inherited Members

Protected Member Functions inherited from votca::xtp::Sigma_base
void CountDiagEval () const
Eigen::MatrixXd PairContraction (Index nrows, const std::function< void(Index, Eigen::MatrixXd &)> &makeX) const
Static Protected Member Functions inherited from votca::xtp::Sigma_base
static void FrameSums (const Eigen::MatrixXd &a, const Eigen::VectorXd &omegas, const Eigen::VectorXd &nu, ScreeningData &data)
Protected Attributes inherited from votca::xtp::Sigma_base
options opt_
TCMatrix_gwbse & Mmn_
const RPA & rpa_
DFTTimings * timings_ = nullptr
Index qptotal_ = 0
Index rpatotal_ = 0
bool keep_screening_data_ = false

Detailed Description

Definition at line 34 of file sigma_ppm.h.

Constructor & Destructor Documentation

◆ Sigma_PPM()

votca::xtp::Sigma_PPM::Sigma_PPM ( TCMatrix_gwbse & Mmn,
RPA & rpa )
inline

Definition at line 36 of file sigma_ppm.h.

Member Function Documentation

◆ AccumulateDiag()

template<class Term>
void votca::xtp::Sigma_PPM::AccumulateDiag ( Index gw_level,
const double * freqs,
Index nfreq,
double * out,
Term term ) const
private

Definition at line 107 of file sigma_ppm.cc.

◆ CalcCorrelationDiagElement()

double votca::xtp::Sigma_PPM::CalcCorrelationDiagElement ( Index gw_level,
double frequency ) const
finalvirtual

Implements votca::xtp::Sigma_base.

Definition at line 137 of file sigma_ppm.cc.

◆ CalcCorrelationDiagElementDerivative()

double votca::xtp::Sigma_PPM::CalcCorrelationDiagElementDerivative ( Index gw_level,
double frequency ) const
finalvirtual

Implements votca::xtp::Sigma_base.

Definition at line 147 of file sigma_ppm.cc.

◆ CalcCorrelationDiagElements()

Eigen::VectorXd votca::xtp::Sigma_PPM::CalcCorrelationDiagElements ( Index gw_level,
const Eigen::VectorXd & frequencies ) const
finalvirtual

Diagonal element at several frequencies. The default evaluates them one by one; implementations may do all of them in one pass over the integrals.

Reimplemented from votca::xtp::Sigma_base.

Definition at line 158 of file sigma_ppm.cc.

◆ CalcCorrelationOffDiag()

Eigen::MatrixXd votca::xtp::Sigma_PPM::CalcCorrelationOffDiag ( const Eigen::VectorXd & frequencies) const
finalvirtual

Reimplemented from votca::xtp::Sigma_base.

Definition at line 215 of file sigma_ppm.cc.

◆ CalcCorrelationOffDiagElement()

double votca::xtp::Sigma_PPM::CalcCorrelationOffDiagElement ( Index gw_level1,
Index gw_level2,
double frequency1,
double frequency2 ) const
finalvirtual

Implements votca::xtp::Sigma_base.

Definition at line 175 of file sigma_ppm.cc.

◆ HasPoleForm()

bool votca::xtp::Sigma_PPM::HasPoleForm ( ) const
inlinefinalvirtual

Reimplemented from votca::xtp::Sigma_base.

Definition at line 59 of file sigma_ppm.h.

◆ PoleForm()

Sigma_base::DiagPoleForm votca::xtp::Sigma_PPM::PoleForm ( Index gw_level) const
finalvirtual

Reimplemented from votca::xtp::Sigma_base.

Definition at line 50 of file sigma_ppm.cc.

◆ PrepareScreening()

void votca::xtp::Sigma_PPM::PrepareScreening ( )
finalvirtual

Implements votca::xtp::Sigma_base.

Definition at line 33 of file sigma_ppm.cc.

◆ ScreeningDump()

Sigma_base::ScreeningData votca::xtp::Sigma_PPM::ScreeningDump ( const Eigen::VectorXd & nu) const
finalvirtual

Reimplemented from votca::xtp::Sigma_base.

Definition at line 60 of file sigma_ppm.cc.

◆ ScreeningSummary()

std::string votca::xtp::Sigma_PPM::ScreeningSummary ( ) const
finalvirtual

One line about the screening just prepared (empty if nothing to say).

Reimplemented from votca::xtp::Sigma_base.

Definition at line 85 of file sigma_ppm.cc.

Member Data Documentation

◆ mode_factors_

Eigen::VectorXd votca::xtp::Sigma_PPM::mode_factors_
private

Definition at line 70 of file sigma_ppm.h.

◆ ppm_

PPM votca::xtp::Sigma_PPM::ppm_
private

Definition at line 67 of file sigma_ppm.h.

◆ screening_energies_

Eigen::VectorXd votca::xtp::Sigma_PPM::screening_energies_
private

Definition at line 72 of file sigma_ppm.h.


The documentation for this class was generated from the following files: