ergo
aos.h File Reference
#include "realtype.h"
#include "basisinfo.h"

Go to the source code of this file.

Macros

#define DFT_MAX_BLLEN   192
 Limit for the number of grid point batch length. More...
 

Functions

void dft_get_orbs (int nvclen, ergo_real *gao, const ergo_real(*coor)[3], int nblcnt, int(*iblcks)[2], int nder, const BasisInfoStruct &bis)
 Computes values of basis functions at specified points in space. More...
 

Detailed Description

Blocked version of orbtial evaluation routines.

Macro Definition Documentation

◆ DFT_MAX_BLLEN

#define DFT_MAX_BLLEN   192

Limit for the number of grid point batch length.

Should not be too short because the loop overhead will grow too large, nor too long because we run out of cache then.

Function Documentation

◆ dft_get_orbs()

void dft_get_orbs ( int  nvclen,
ergo_real gao,
const ergo_real(*)  coor[3],
int  nblcnt,
int(*)  iblcks[2],
int  nder,
const BasisInfoStruct bis 
)

Computes values of basis functions at specified points in space.

Only b.fs specified by iblcks[nblcnt] are computed.

Parameters
nvclennumber of points to consider. IT must be smaller than DFT_MAX_BLLEN.
gaomatrix of computed b.f, values. Dimension is in C convention: [nderivatives][nvclen], where nderivatives is 1 for nder==0, 4 for nder==1.
coorpoint coordinates.
nblcntso many continous blocks of basis functions will be computed.
iblcksstart and end indices of the b.fs shells. Computed shells are [iblcks[0], iblcks[1]).
nderwhether orbital derivatives are to be computed as well. Allowed values are 0 (no derivatives) and 1 (values and first order derivatives).
bisstructure describing the basis functions to be evaluated.

References ShellSpecStruct::centerCoords, DFT_MAX_BLLEN, get_bf_vals(), get_bf_vals_derivs(), and ShellSpecStruct::startIndexInMatrix.

Referenced by computeFermiContact(), dft_integrate(), and integrate_density_and_energy().