aos.cc File Reference

Blocked version of orbtial evaluation routines. More...

#include <cmath>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include "aos.h"

Functions

static void get_bf_vals (int nvclen, ergo_real *gao, const ergo_real(*pa)[3], const ergo_real *pa2, const BasisInfoStruct &bis, const ShellSpecStruct &currShell)
static void get_bf_vals_derivs (int nvclen, ergo_real *gao, const ergo_real(*pa)[3], const ergo_real *pa2, const BasisInfoStruct &bis, const ShellSpecStruct &currShell)
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.

Detailed Description

Blocked version of orbtial evaluation routines.

Written by Pawel Salek. =================================================================== RETURNS: GSO: evaluated orbitals for a batch of grid points. GSO(:,:,1) contains orbital values. GSO(:,:,2:4) contains first geom. derivatives. - if requested. GSO(:,:,5:10) contains second derivatives - if requested.


Function Documentation

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:
nvclen number of points to consider. IT must be smaller than DFT_MAX_BLLEN.
gao matrix of computed b.f, values. Dimension is in C convention: [nderivatives][nvclen], where nderivatives is 1 for nder==0, 4 for nder==1.
coor point coordinates.
nblcnt so many continous blocks of basis functions will be computed.
iblcks start and end indices of the b.fs shells. Computed shells are [iblcks[0], iblcks[1]).
nder whether orbital derivatives are to be computed as well. Allowed values are 0 (no derivatives) and 1 (values and first order derivatives).
bis structure 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().

static void get_bf_vals ( int  nvclen,
ergo_real gao,
const ergo_real(*)  pa[3],
const ergo_real pa2,
const BasisInfoStruct bis,
const ShellSpecStruct currShell 
) [static]
static void get_bf_vals_derivs ( int  nvclen,
ergo_real gao,
const ergo_real(*)  pa[3],
const ergo_real pa2,
const BasisInfoStruct bis,
const ShellSpecStruct currShell 
) [static]

Generated on 21 Nov 2012 for ergo by  doxygen 1.6.1