#include <electronic/ExCorr_internal.h>
Classes | |
class | FunctionalLDA |
Common interface to the compute kernels shared by all LDA functionals. More... | |
struct | LDA_calc< variant, nCount > |
struct | LDA_calc< LDA_KE_TF, nCount > |
Specialization of LDA_calc for Thomas-Fermi kinetic energy (compute directly in n[s]) More... | |
struct | LDA_calc< LDA_X_Slater, nCount > |
Specialization of LDA_calc for Slater exchange (compute directly in n[s]; zeta not required) More... | |
struct | LDA_eval_C_PZ< para > |
struct | LDA_eval_C_PW< spinID, prec > |
struct | LDA_eval_C_VWN< spinID > |
Macros | |
#define | SwitchTemplate_LDA(variant, nCount, fTemplate, argList) |
Enumerations | |
enum | LDA_Variant { LDA_X_Slater , LDA_C_PZ , LDA_C_PW , LDA_C_PW_prec , LDA_C_VWN , LDA_XC_Teter , LDA_KE_TF } |
Available LDA functionals. More... | |
Functions | |
template<LDA_Variant variant> | |
__hostanddev__ double | LDA_eval (double rs, double zeta, double &e_rs, double &e_zeta) |
template<> | |
__hostanddev__ double | LDA_eval< LDA_C_PZ > (double rs, double zeta, double &e_rs, double &e_zeta) |
Perdew-Zunger correlation. | |
template<> | |
__hostanddev__ double | LDA_eval< LDA_C_PW > (double rs, double zeta, double &e_rs, double &e_zeta) |
Perdew-Wang correlation (original version, for numerical compatibility with LibXC's PW91) | |
template<> | |
__hostanddev__ double | LDA_eval< LDA_C_PW_prec > (double rs, double zeta, double &e_rs, double &e_zeta) |
Perdew-Wang correlation (extended precision version, for numerical compatibility with LibXC's PBE) | |
template<> | |
__hostanddev__ double | LDA_eval< LDA_C_VWN > (double rs, double zeta, double &e_rs, double &e_zeta) |
Vosko-Wilk-Nusair correlation. | |
template<> | |
__hostanddev__ double | LDA_eval< LDA_XC_Teter > (double rs, double zeta, double &e_rs, double &e_zeta) |
Teter LSD exchange & correlation [Phys. Rev. B 54, 1703 (1996)]. | |
Shared CPU-GPU implementation of LDA functionals