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

#include <bse_uks.h>

Collaboration diagram for votca::xtp::BSE_UKS:

Classes

struct  ExpectationValues
struct  options

Public Member Functions

 BSE_UKS (Logger &log, const TCMatrix_gwbse_spin &Mmn)
void configure_with_precomputed_screening (const options &opt, Index homo_alpha, Index homo_beta, const Eigen::VectorXd &RPAInputEnergiesAlpha, const Eigen::VectorXd &RPAInputEnergiesBeta, const Eigen::MatrixXd &Hqp_alpha_in, const Eigen::MatrixXd &Hqp_beta_in, const Eigen::VectorXd &epsilon_0_inv, const Eigen::MatrixXd &epsilon_eigenvectors)
void Solve_excitons_uks (Orbitals &orb) const
void Analyze_excitons_uks (std::vector< QMFragment< BSE_Population > > fragments, const Orbitals &orb) const
void Perturbative_DynamicalScreening (Orbitals &orb)

Private Member Functions

Eigen::MatrixXd AdjustHqpSize (const Eigen::MatrixXd &Hqp_in, const Eigen::VectorXd &RPAInputEnergies, Index homo) const
void SetupDirectInteractionOperator (const Eigen::VectorXd &RPAInputEnergiesAlpha, const Eigen::VectorXd &RPAInputEnergiesBeta, double energy)
template<typename BSE_OPERATOR>
void configureBSEOperator (BSE_OPERATOR &H) const
template<typename BSE_OPERATOR>
ExpectationValues ExpectationValue_Operator (const Orbitals &orb, const BSE_OPERATOR &H) const
template<typename BSE_OPERATOR>
ExpectationValues ExpectationValue_Operator_State (Index state, const Orbitals &orb, const BSE_OPERATOR &H) const
tools::EigenSystem Solve_excitons_uks_TDA () const
tools::EigenSystem Solve_excitons_uks_BTDA () const
template<typename BSE_OPERATOR>
tools::EigenSystem solve_hermitian (BSE_OPERATOR &h) const
template<typename BSE_OPERATOR_A, typename BSE_OPERATOR_B>
tools::EigenSystem Solve_nonhermitian_Davidson (BSE_OPERATOR_A &Aop, BSE_OPERATOR_B &Bop) const
void PrintWeightsUKS (const Eigen::VectorXd &coeffs) const

Private Attributes

Loggerlog_
const TCMatrix_gwbse_spinMmn_raw_
TCMatrix_gwbse_spin Mmn_
options opt_
Index homo_alpha_ = 0
Index homo_beta_ = 0
Index alpha_vtotal_ = 0
Index alpha_ctotal_ = 0
Index alpha_size_ = 0
Index beta_vtotal_ = 0
Index beta_ctotal_ = 0
Index beta_size_ = 0
Eigen::VectorXd epsilon_0_inv_
Eigen::MatrixXd Hqp_alpha_
Eigen::MatrixXd Hqp_beta_

Detailed Description

Definition at line 34 of file bse_uks.h.

Constructor & Destructor Documentation

◆ BSE_UKS()

votca::xtp::BSE_UKS::BSE_UKS ( Logger & log,
const TCMatrix_gwbse_spin & Mmn )
inline

Definition at line 55 of file bse_uks.h.

Member Function Documentation

◆ AdjustHqpSize()

Eigen::MatrixXd votca::xtp::BSE_UKS::AdjustHqpSize ( const Eigen::MatrixXd & Hqp_in,
const Eigen::VectorXd & RPAInputEnergies,
Index homo ) const
private

Definition at line 92 of file bse_uks.cc.

◆ Analyze_excitons_uks()

void votca::xtp::BSE_UKS::Analyze_excitons_uks ( std::vector< QMFragment< BSE_Population > > fragments,
const Orbitals & orb ) const

Definition at line 597 of file bse_uks.cc.

◆ configure_with_precomputed_screening()

void votca::xtp::BSE_UKS::configure_with_precomputed_screening ( const options & opt,
Index homo_alpha,
Index homo_beta,
const Eigen::VectorXd & RPAInputEnergiesAlpha,
const Eigen::VectorXd & RPAInputEnergiesBeta,
const Eigen::MatrixXd & Hqp_alpha_in,
const Eigen::MatrixXd & Hqp_beta_in,
const Eigen::VectorXd & epsilon_0_inv,
const Eigen::MatrixXd & epsilon_eigenvectors )

Definition at line 51 of file bse_uks.cc.

◆ configureBSEOperator()

template<typename BSE_OPERATOR>
template void votca::xtp::BSE_UKS::configureBSEOperator< Hd2UKSOperator > ( BSE_OPERATOR & H) const
private

Definition at line 159 of file bse_uks.cc.

◆ ExpectationValue_Operator()

template<typename BSE_OPERATOR>
template BSE_UKS::ExpectationValues votca::xtp::BSE_UKS::ExpectationValue_Operator< Hd2UKSOperator > ( const Orbitals & orb,
const BSE_OPERATOR & H ) const
private

Definition at line 171 of file bse_uks.cc.

◆ ExpectationValue_Operator_State()

template<typename BSE_OPERATOR>
template BSE_UKS::ExpectationValues votca::xtp::BSE_UKS::ExpectationValue_Operator_State< Hd2UKSOperator > ( Index state,
const Orbitals & orb,
const BSE_OPERATOR & H ) const
private

Definition at line 195 of file bse_uks.cc.

◆ Perturbative_DynamicalScreening()

void votca::xtp::BSE_UKS::Perturbative_DynamicalScreening ( Orbitals & orb)

Definition at line 640 of file bse_uks.cc.

◆ PrintWeightsUKS()

void votca::xtp::BSE_UKS::PrintWeightsUKS ( const Eigen::VectorXd & coeffs) const
private

Definition at line 520 of file bse_uks.cc.

◆ SetupDirectInteractionOperator()

void votca::xtp::BSE_UKS::SetupDirectInteractionOperator ( const Eigen::VectorXd & RPAInputEnergiesAlpha,
const Eigen::VectorXd & RPAInputEnergiesBeta,
double energy )
private

Definition at line 135 of file bse_uks.cc.

◆ Solve_excitons_uks()

void votca::xtp::BSE_UKS::Solve_excitons_uks ( Orbitals & orb) const

Definition at line 442 of file bse_uks.cc.

◆ Solve_excitons_uks_BTDA()

tools::EigenSystem votca::xtp::BSE_UKS::Solve_excitons_uks_BTDA ( ) const
private

Definition at line 291 of file bse_uks.cc.

◆ Solve_excitons_uks_TDA()

tools::EigenSystem votca::xtp::BSE_UKS::Solve_excitons_uks_TDA ( ) const
private

Definition at line 218 of file bse_uks.cc.

◆ solve_hermitian()

template<typename BSE_OPERATOR>
template tools::EigenSystem votca::xtp::BSE_UKS::solve_hermitian< ExcitonUKSOperator_TDA > ( BSE_OPERATOR & h) const
private

Definition at line 453 of file bse_uks.cc.

◆ Solve_nonhermitian_Davidson()

template<typename BSE_OPERATOR_A, typename BSE_OPERATOR_B>
template tools::EigenSystem votca::xtp::BSE_UKS::Solve_nonhermitian_Davidson< ExcitonUKSOperator_TDA, ExcitonUKSOperator_BTDA_B > ( BSE_OPERATOR_A & Aop,
BSE_OPERATOR_B & Bop ) const
private

Definition at line 481 of file bse_uks.cc.

Member Data Documentation

◆ alpha_ctotal_

Index votca::xtp::BSE_UKS::alpha_ctotal_ = 0
private

Definition at line 88 of file bse_uks.h.

◆ alpha_size_

Index votca::xtp::BSE_UKS::alpha_size_ = 0
private

Definition at line 89 of file bse_uks.h.

◆ alpha_vtotal_

Index votca::xtp::BSE_UKS::alpha_vtotal_ = 0
private

Definition at line 87 of file bse_uks.h.

◆ beta_ctotal_

Index votca::xtp::BSE_UKS::beta_ctotal_ = 0
private

Definition at line 91 of file bse_uks.h.

◆ beta_size_

Index votca::xtp::BSE_UKS::beta_size_ = 0
private

Definition at line 92 of file bse_uks.h.

◆ beta_vtotal_

Index votca::xtp::BSE_UKS::beta_vtotal_ = 0
private

Definition at line 90 of file bse_uks.h.

◆ epsilon_0_inv_

Eigen::VectorXd votca::xtp::BSE_UKS::epsilon_0_inv_
private

Definition at line 94 of file bse_uks.h.

◆ homo_alpha_

Index votca::xtp::BSE_UKS::homo_alpha_ = 0
private

Definition at line 84 of file bse_uks.h.

◆ homo_beta_

Index votca::xtp::BSE_UKS::homo_beta_ = 0
private

Definition at line 85 of file bse_uks.h.

◆ Hqp_alpha_

Eigen::MatrixXd votca::xtp::BSE_UKS::Hqp_alpha_
private

Definition at line 95 of file bse_uks.h.

◆ Hqp_beta_

Eigen::MatrixXd votca::xtp::BSE_UKS::Hqp_beta_
private

Definition at line 96 of file bse_uks.h.

◆ log_

Logger& votca::xtp::BSE_UKS::log_
private

Definition at line 79 of file bse_uks.h.

◆ Mmn_

TCMatrix_gwbse_spin votca::xtp::BSE_UKS::Mmn_
private

Definition at line 81 of file bse_uks.h.

◆ Mmn_raw_

const TCMatrix_gwbse_spin& votca::xtp::BSE_UKS::Mmn_raw_
private

Definition at line 80 of file bse_uks.h.

◆ opt_

options votca::xtp::BSE_UKS::opt_
private

Definition at line 82 of file bse_uks.h.


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