mpqc::lcao::XCFockBuilder< Tile, Policy > Class Template Reference
Documentation
template<typename Tile, typename Policy>
class mpqc::lcao::XCFockBuilder< Tile, Policy >
XCFockBuilder computes the exchange-correlation energy and potential using GauXC integrator
Public Types | |
using | base_type = FockBuilder< Tile, Policy > |
using | array_type = typename base_type::array_type |
using | arrayvec_type = typename base_type::arrayvec_type |
using | result_type = typename base_type::result_type |
Public Member Functions | |
~XCFockBuilder ()=default | |
XCFockBuilder (const KeyVal &kv) | |
result_type | operator() (arrayvec_type const &D, arrayvec_type const &, double) override |
computes the xc part of the Fock matrix (for KS-DFT) More... | |
void | register_fock (const arrayvec_type &fock, FormulaRegistry< array_type > ®istry) const override |
const auto & | functional () const |
const auto & | integrator () const |
const auto | func_is_hyb () const |
const auto | func_hyb_exx () const |
Member Typedef Documentation
◆ array_type
template<typename Tile , typename Policy >
using mpqc::lcao::XCFockBuilder< Tile, Policy >::array_type = typename base_type::array_type |
◆ arrayvec_type
template<typename Tile , typename Policy >
using mpqc::lcao::XCFockBuilder< Tile, Policy >::arrayvec_type = typename base_type::arrayvec_type |
◆ base_type
template<typename Tile , typename Policy >
using mpqc::lcao::XCFockBuilder< Tile, Policy >::base_type = FockBuilder<Tile, Policy> |
◆ result_type
template<typename Tile , typename Policy >
using mpqc::lcao::XCFockBuilder< Tile, Policy >::result_type = typename base_type::result_type |
Constructor & Destructor Documentation
◆ ~XCFockBuilder()
template<typename Tile , typename Policy >
|
default |
◆ XCFockBuilder()
template<typename Tile , typename Policy >
|
inline |
KeyVal constructor of XCFockBuilder
- Parameters
-
kv the KeyVal object; it will be queried for xc options: Keyword Type Default Description functional
string none The functional to use for KS-DFT kernels
vector of strings none The list of kernels to use for KS-DFT weights
vector of doubles vector filled with 1 The list of weights to use with the kernels for KS-DFT
Supported Functionals
Functional | Composition |
---|---|
SVWN3 | SlaterExchange + VWN3 |
SVWN5 | SlaterExchange + VWN5 |
BLYP | B88 + LYP |
B3LYP | 0.08 SlaterExchange + 0.72 B88 + 0.81 LYP + 0.19 VWN5 + 0.20 HFX |
PBE0 | 0.75 PBE_X + PBE_C + 0.25 HFX |
Supported Exchange Kernels
Kernel | Name |
---|---|
SlaterExchange | Slater (LDA) exchange |
PBE_X | Perdew-Burke-Ernzerhof exchange |
B88 | Becke 88 |
Supported Correlation Kernels
Kernel | Name |
---|---|
VWN3 | Vosko-Wilk-Nusair 3 |
VWN5 | Vosko-Wilk-Nusair 5 |
LYP | Lee-Yang-Parr |
PBE_C | Perdew-Burke-Ernzerhof correlation |
PZ81 | Perdew-Zunger 81 |
PZ81_MOD | Perdew-Zunger 81 Mod |
PW91_LDA | Perdew-Wang 91 LDA |
PW91_LDA_MOD | Perdew-Wang 91 LDA Mod |
PW91_LDA_RPA | Perdew-Wang 91 LDA RPA |
Supported Hybrid Kernels
Kernel | Name |
---|---|
B3LYP | Becke 3-parameter Lee-Yang-Parr |
PBE0 | PBE0 |
Member Function Documentation
◆ func_hyb_exx()
template<typename Tile , typename Policy >
|
inline |
◆ func_is_hyb()
template<typename Tile , typename Policy >
|
inline |
◆ functional()
template<typename Tile , typename Policy >
|
inline |
◆ integrator()
template<typename Tile , typename Policy >
|
inline |
◆ operator()()
template<typename Tile , typename Policy >
|
inlineoverride |
computes the xc part of the Fock matrix (for KS-DFT)
- Parameters
-
D the (1-particle) density matrix
- Returns
- the xc contribution to the Fock matrix and xc energy with correction for nonlinearity
- Note
- currently only supports closed shell (D has only one DistArray)
◆ register_fock()
template<typename Tile , typename Policy >
|
inlineoverride |
The documentation for this class was generated from the following files:
- mpqc/chemistry/qc/lcao/scf/fwd.h
- mpqc/chemistry/qc/lcao/scf/xc_fock_builder.h