Common interface to the compute kernels for GGA-like functionals. More...
#include <ExCorr_internal_GGA.h>
  
 Public Member Functions | |
| FunctionalGGA (GGA_Variant variant, double scaleFac=1.0) | |
| bool | needsSigma () const | 
| return true if density gradients are used  | |
| bool | needsLap () const | 
| return true if laplacian of density is used (MGGA)  | |
| bool | needsTau () const | 
| return true if orbital kinetic energy density is used (MGGA)  | |
| bool | hasExchange () const | 
| whether this functional includes exchange  | |
| bool | hasCorrelation () const | 
| whether this functional includes correlation  | |
| bool | hasKinetic () const | 
| whether this functional includes kinetic energy  | |
| bool | hasEnergy () const | 
| whether total energy is meaningful for this functional  | |
| void | evaluate (int N, std::vector< const double * > n, std::vector< const double * > sigma, std::vector< const double * > lap, std::vector< const double * > tau, double *E, std::vector< double * > E_n, std::vector< double * > E_sigma, std::vector< double * > E_lap, std::vector< double * > E_tau) const | 
  Public Member Functions inherited from Functional | |
| Functional (double scaleFac=1.0) | |
| void | evaluateSub (int iStart, int iStop, std::vector< const double * > n, std::vector< const double * > sigma, std::vector< const double * > lap, std::vector< const double * > tau, double *E, std::vector< double * > E_n, std::vector< double * > E_sigma, std::vector< double * > E_lap, std::vector< double * > E_tau) const | 
| Call evaluate for a subset of data points:  | |
Additional Inherited Members | |
  Protected Attributes inherited from Functional | |
| double | scaleFac | 
| scale factor (to support mixing for hybrid functionals)  | |
Common interface to the compute kernels for GGA-like functionals.
      
  | 
  virtual | 
The thread launchers and gpu kernels for all GGAs are generated by this function using the template specializations of GGA_calc, GGA_eval Note that lap and taus are unused by GGAs
Implements Functional.