Interface class to Libxc.
More...
#include <xc_functional_base.hpp>
Inherited by sirius::XC_functional.
|
| XC_functional_base (const std::string libxc_name__, int num_spins__) |
|
| XC_functional_base (XC_functional_base &&src__) |
|
const std::string | name () const |
|
const std::string | refs () const |
|
int | family () const |
|
xc_func_type * | handler () |
|
bool | is_lda () const |
|
bool | is_gga () const |
|
int | kind () const |
|
bool | is_exchange () const |
|
bool | is_correlation () const |
|
bool | is_exchange_correlation () const |
|
void | get_lda (const int size, const double *rho, double *v, double *e) const |
| Get LDA contribution. More...
|
|
void | get_lda (const int size, const double *rho_up, const double *rho_dn, double *v_up, double *v_dn, double *e) const |
| Get LSDA contribution. More...
|
|
void | get_gga (const int size, const double *rho, const double *sigma, double *vrho, double *vsigma, double *e) const |
| Get GGA contribution. More...
|
|
void | get_gga (const int size, const double *rho_up, const double *rho_dn, const double *sigma_uu, const double *sigma_ud, const double *sigma_dd, double *vrho_up, double *vrho_dn, double *vsigma_uu, double *vsigma_ud, double *vsigma_dd, double *e) const |
| Get spin-resolved GGA contribution. More...
|
|
void | set_dens_threshold (double tre) |
| set density threshold of libxc, if density is below tre, all xc output will be set to 0. More...
|
|
Interface class to Libxc.
Definition at line 1387 of file xc_functional_base.hpp.
◆ XC_functional_base() [1/2]
sirius::XC_functional_base::XC_functional_base |
( |
const std::string |
libxc_name__, |
|
|
int |
num_spins__ |
|
) |
| |
|
inline |
◆ XC_functional_base() [2/2]
◆ ~XC_functional_base()
sirius::XC_functional_base::~XC_functional_base |
( |
| ) |
|
|
inline |
◆ name()
const std::string sirius::XC_functional_base::name |
( |
| ) |
const |
|
inline |
◆ refs()
const std::string sirius::XC_functional_base::refs |
( |
| ) |
const |
|
inline |
◆ family()
int sirius::XC_functional_base::family |
( |
| ) |
const |
|
inline |
◆ handler()
xc_func_type * sirius::XC_functional_base::handler |
( |
| ) |
|
|
inline |
◆ is_lda()
bool sirius::XC_functional_base::is_lda |
( |
| ) |
const |
|
inline |
◆ is_gga()
bool sirius::XC_functional_base::is_gga |
( |
| ) |
const |
|
inline |
◆ kind()
int sirius::XC_functional_base::kind |
( |
| ) |
const |
|
inline |
◆ is_exchange()
bool sirius::XC_functional_base::is_exchange |
( |
| ) |
const |
|
inline |
◆ is_correlation()
bool sirius::XC_functional_base::is_correlation |
( |
| ) |
const |
|
inline |
◆ is_exchange_correlation()
bool sirius::XC_functional_base::is_exchange_correlation |
( |
| ) |
const |
|
inline |
◆ get_lda() [1/2]
void sirius::XC_functional_base::get_lda |
( |
const int |
size, |
|
|
const double * |
rho, |
|
|
double * |
v, |
|
|
double * |
e |
|
) |
| const |
|
inline |
◆ get_lda() [2/2]
void sirius::XC_functional_base::get_lda |
( |
const int |
size, |
|
|
const double * |
rho_up, |
|
|
const double * |
rho_dn, |
|
|
double * |
v_up, |
|
|
double * |
v_dn, |
|
|
double * |
e |
|
) |
| const |
|
inline |
◆ get_gga() [1/2]
void sirius::XC_functional_base::get_gga |
( |
const int |
size, |
|
|
const double * |
rho, |
|
|
const double * |
sigma, |
|
|
double * |
vrho, |
|
|
double * |
vsigma, |
|
|
double * |
e |
|
) |
| const |
|
inline |
◆ get_gga() [2/2]
void sirius::XC_functional_base::get_gga |
( |
const int |
size, |
|
|
const double * |
rho_up, |
|
|
const double * |
rho_dn, |
|
|
const double * |
sigma_uu, |
|
|
const double * |
sigma_ud, |
|
|
const double * |
sigma_dd, |
|
|
double * |
vrho_up, |
|
|
double * |
vrho_dn, |
|
|
double * |
vsigma_uu, |
|
|
double * |
vsigma_ud, |
|
|
double * |
vsigma_dd, |
|
|
double * |
e |
|
) |
| const |
|
inline |
◆ set_dens_threshold()
void sirius::XC_functional_base::set_dens_threshold |
( |
double |
tre | ) |
|
|
inline |
set density threshold of libxc, if density is below tre, all xc output will be set to 0.
Definition at line 1699 of file xc_functional_base.hpp.
◆ libxc_name_
std::string sirius::XC_functional_base::libxc_name_ |
|
protected |
◆ num_spins_
int sirius::XC_functional_base::num_spins_ |
|
protected |
◆ handler_
std::unique_ptr<xc_func_type> sirius::XC_functional_base::handler_ {nullptr} |
|
protected |
◆ libxc_initialized_
bool sirius::XC_functional_base::libxc_initialized_ {false} |
|
protected |
The documentation for this class was generated from the following file: