PBEx implementation. More...
#include <math.h>
#include <stddef.h>
#include "functionals.h"
Defines | |
#define | _XOPEN_SOURCE 600 |
#define | _XOPEN_SOURCE_EXTENDED 1 |
#define | __CVERSION__ |
Functions | |
static int | pbex_isgga (void) |
static int | pbex_read (const char *conf_line) |
static real | pbex_energy (const FunDensProp *dp) |
static void | pbex_first (FunFirstFuncDrv *ds, real factor, const FunDensProp *dp) |
static void | pbex_second (FunSecondFuncDrv *ds, real factor, const FunDensProp *dp) |
static void | pbex_third (FunThirdFuncDrv *ds, real factor, const FunDensProp *dp) |
static void | pbex_first_helper (real rhoa, real grada, real *res) |
static void | pbex_second_helper (real rhoa, real grada, real *res) |
static void | pbex_third_helper (real rhoa, real grada, real *res) |
Variables | |
Functional | PbexFunctional |
PBEx implementation.
Automatically generated code implementing pbex functional and its derivatives. Generated by func-codegen.pl being a part of a "Automatic code generation framework for analytical functional derivative evaluation", Pawel Salek, 2004
This functional has been generated from following input: ------ cut here ------- pi:3.14159265358979312;
xa:sqrt(grada*grada)/rhoa^(4/3); xb:sqrt(gradb*gradb)/rhob^(4/3);
parameters for pbex R:0.804; d:0.066725; mu:d*pi^2/3; Sa:xa/(2*(6*pi^2)^(1/3)); Sb:xb/(2*(6*pi^2)^(1/3));
functions for pbex F(S):=1+R-R/(1+mu*S^2/R); Ea(n):=-3/(4*pi)*(3*pi^2)^(1/3)*n^(4/3)*F(Sa); Eb(n):=-3/(4*pi)*(3*pi^2)^(1/3)*n^(4/3)*F(Sb);
kernel K(rhoa,grada,rhob,gradb,gradab):=0.5*(Ea(2*rhoa)+Eb(2*rhob));
------ cut here -------
#define __CVERSION__ |
#define _XOPEN_SOURCE 600 |
#define _XOPEN_SOURCE_EXTENDED 1 |
static real pbex_energy | ( | const FunDensProp * | dp | ) | [static] |
References FunDensProp_::grada, FunDensProp_::gradb, POW, FunDensProp_::rhoa, and FunDensProp_::rhob.
static void pbex_first | ( | FunFirstFuncDrv * | ds, | |
real | factor, | |||
const FunDensProp * | dp | |||
) | [static] |
References POW.
Referenced by pbex_first().
static int pbex_isgga | ( | void | ) | [static] |
static int pbex_read | ( | const char * | conf_line | ) | [static] |
References fun_set_hf_weight.
static void pbex_second | ( | FunSecondFuncDrv * | ds, | |
real | factor, | |||
const FunDensProp * | dp | |||
) | [static] |
References FunSecondFuncDrv::df0001, FunSecondFuncDrv::df0002, FunSecondFuncDrv::df0010, FunSecondFuncDrv::df0020, FunSecondFuncDrv::df0100, FunSecondFuncDrv::df0101, FunSecondFuncDrv::df0200, FunSecondFuncDrv::df1000, FunSecondFuncDrv::df1010, FunSecondFuncDrv::df2000, FABS, FunDensProp_::grada, FunDensProp_::gradb, pbex_second_helper(), FunDensProp_::rhoa, and FunDensProp_::rhob.
References POW.
Referenced by pbex_second().
static void pbex_third | ( | FunThirdFuncDrv * | ds, | |
real | factor, | |||
const FunDensProp * | dp | |||
) | [static] |
References FunThirdFuncDrv::df0001, FunThirdFuncDrv::df0002, FunThirdFuncDrv::df0003, FunThirdFuncDrv::df0010, FunThirdFuncDrv::df0020, FunThirdFuncDrv::df0030, FunThirdFuncDrv::df0100, FunThirdFuncDrv::df0101, FunThirdFuncDrv::df0102, FunThirdFuncDrv::df0200, FunThirdFuncDrv::df0201, FunThirdFuncDrv::df0300, FunThirdFuncDrv::df1000, FunThirdFuncDrv::df1010, FunThirdFuncDrv::df1020, FunThirdFuncDrv::df2000, FunThirdFuncDrv::df2010, FunThirdFuncDrv::df3000, FABS, FunDensProp_::grada, FunDensProp_::gradb, pbex_third_helper(), FunDensProp_::rhoa, and FunDensProp_::rhob.
References POW.
Referenced by pbex_third().
{ "Pbex", pbex_isgga, pbex_read, NULL, pbex_energy, pbex_first, pbex_second, pbex_third }
Referenced by pbe0_read(), and pbe_read().