ergo
|
implementation of Becke(88) functional and its derivatives. More...
Defines | |
#define | _XOPEN_SOURCE 600 |
#define | _XOPEN_SOURCE_EXTENDED 1 |
#define | __CVERSION__ |
Functions | |
static int | becke_isgga (void) |
static int | becke_read (const char *conf_line) |
static real | becke_energy (const FunDensProp *dens_prop) |
static void | becke_first (FunFirstFuncDrv *ds, real factor, const FunDensProp *dens_prop) |
static void | becke_second (FunSecondFuncDrv *ds, real factor, const FunDensProp *dens_prop) |
static void | becke_third (FunThirdFuncDrv *ds, real factor, const FunDensProp *dens_prop) |
static void | becke_fourth (FunFourthFuncDrv *ds, real factor, const FunDensProp *dens_prop) |
Variables | |
Functional | BeckeFunctional |
static const real | BECKE_THRESHOLD = 1e-14 |
static const real | BETA = 0.0042 |
implementation of Becke(88) functional and its derivatives.
or exactly: Becke GGA correction to the functional. (total Becke(88) energy is E_LDA+E_BCK). (c) Pawel Salek, pawsa@theochem.kth.se, aug 2001 Z. Rinkevicius adapted for open shell systems: energy, first derivatives. NOTE: this file may seem unnecessarily complex but the structure does pay off when implementing multiple functionals depending on different parameters.
#define __CVERSION__ |
#define _XOPEN_SOURCE 600 |
#define _XOPEN_SOURCE_EXTENDED 1 |
static real becke_energy | ( | const FunDensProp * | dens_prop | ) | [static] |
References FunDensProp_::rhob, BECKE_THRESHOLD, FunDensProp_::gradb, POW, BETA, ASINH, FunDensProp_::rhoa, and FunDensProp_::grada.
static void becke_first | ( | FunFirstFuncDrv * | ds, |
real | factor, | ||
const FunDensProp * | dens_prop | ||
) | [static] |
static void becke_fourth | ( | FunFourthFuncDrv * | ds, |
real | factor, | ||
const FunDensProp * | dens_prop | ||
) | [static] |
References B, drv3_clear(), Functional_::third, FunFourthFuncDrv::df1000, FunThirdFuncDrv::df1000, FunFourthFuncDrv::df0010, FunThirdFuncDrv::df0010, FunFourthFuncDrv::df2000, FunThirdFuncDrv::df2000, FunFourthFuncDrv::df0020, FunThirdFuncDrv::df0020, FunFourthFuncDrv::df2010, FunThirdFuncDrv::df2010, FunFourthFuncDrv::df1020, FunThirdFuncDrv::df1020, FunFourthFuncDrv::df3000, FunThirdFuncDrv::df3000, FunFourthFuncDrv::df0030, FunThirdFuncDrv::df0030, FunFourthFuncDrv::df0100, FunThirdFuncDrv::df0100, FunFourthFuncDrv::df0001, FunThirdFuncDrv::df0001, FunFourthFuncDrv::df0200, FunThirdFuncDrv::df0200, FunFourthFuncDrv::df0002, FunThirdFuncDrv::df0002, FunFourthFuncDrv::df0201, FunThirdFuncDrv::df0201, FunFourthFuncDrv::df0102, FunThirdFuncDrv::df0102, FunFourthFuncDrv::df0300, FunThirdFuncDrv::df0300, FunFourthFuncDrv::df0003, FunThirdFuncDrv::df0003, FunFourthFuncDrv::df1010, FunThirdFuncDrv::df1010, FunFourthFuncDrv::df0101, FunThirdFuncDrv::df0101, BETA, FunDensProp_::rhoa, BECKE_THRESHOLD, FunDensProp_::grada, POW, SQRT, ASINH, FunFourthFuncDrv::df4000, FunFourthFuncDrv::df3010, FunFourthFuncDrv::df2020, FunFourthFuncDrv::df1030, FunFourthFuncDrv::df0040, FunDensProp_::rhob, FunDensProp_::gradb, FunFourthFuncDrv::df0400, FunFourthFuncDrv::df0301, FunFourthFuncDrv::df0202, FunFourthFuncDrv::df0103, and FunFourthFuncDrv::df0004.
static int becke_isgga | ( | void | ) | [static] |
static int becke_read | ( | const char * | conf_line | ) | [static] |
References fun_set_hf_weight.
static void becke_second | ( | FunSecondFuncDrv * | ds, |
real | factor, | ||
const FunDensProp * | dens_prop | ||
) | [static] |
References BETA, FunDensProp_::rhoa, BECKE_THRESHOLD, FunDensProp_::grada, POW, ASINH, SQRT, FunSecondFuncDrv::df1000, FunSecondFuncDrv::df0010, FunSecondFuncDrv::df1010, FunSecondFuncDrv::df2000, FunSecondFuncDrv::df0020, FunDensProp_::rhob, FunDensProp_::gradb, FunSecondFuncDrv::df0100, FunSecondFuncDrv::df0001, FunSecondFuncDrv::df0101, FunSecondFuncDrv::df0200, and FunSecondFuncDrv::df0002.
static void becke_third | ( | FunThirdFuncDrv * | ds, |
real | factor, | ||
const FunDensProp * | dens_prop | ||
) | [static] |
References BETA, FunDensProp_::rhoa, BECKE_THRESHOLD, FunDensProp_::grada, POW, ASINH, SQRT, FunThirdFuncDrv::df1000, FunThirdFuncDrv::df0010, FunThirdFuncDrv::df1010, FunThirdFuncDrv::df2000, FunThirdFuncDrv::df0020, FunThirdFuncDrv::df2010, FunThirdFuncDrv::df1020, FunThirdFuncDrv::df3000, FunThirdFuncDrv::df0030, FunDensProp_::rhob, FunDensProp_::gradb, FunThirdFuncDrv::df0100, FunThirdFuncDrv::df0001, FunThirdFuncDrv::df0101, FunThirdFuncDrv::df0200, FunThirdFuncDrv::df0002, FunThirdFuncDrv::df0201, FunThirdFuncDrv::df0102, FunThirdFuncDrv::df0300, and FunThirdFuncDrv::df0003.
const real BECKE_THRESHOLD = 1e-14 [static] |
Referenced by becke_energy(), becke_first(), becke_second(), becke_third(), and becke_fourth().
{ "Becke", becke_isgga, becke_read, NULL, becke_energy, becke_first, becke_second, becke_third, becke_fourth }
Referenced by camb3lyp_read(), blyp_read(), b3lyp_read(), b3lypgauss_read(), b3pw91_read(), bhandhlyp_read(), bp86_read(), b3p86_read(), b3p86g_read(), and bpw91_read().
Referenced by becke_energy(), becke_first(), becke_second(), becke_third(), becke_fourth(), and benchmark_mm().