ergo
|
Density and gradient evaluation interface. More...
#include "grid_matrix.h"
Go to the source code of this file.
Functions | |
void | getrho_blocked_lda (int nbast, const real *dmat, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real *rho) |
void | getrho_blocked_lda (int nbast, const Dft::FullMatrix &m, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real *rho) |
void | getrho_blocked_gga (int nbast, const real *dmat, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real *rho, real(*grad)[3]) |
void | getrho_blocked_gga (int nbast, const Dft::FullMatrix &dmat, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real *rho, real(*grad)[3]) |
void | getexp_blocked_lda (int nbast, const real *dmat, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real *rho) |
Computes the expectation value <o|dmat|o'> for a nonsymmetric matrix and given set of precomputed orbital values gao. More... | |
void | getexp_blocked_gga (int nbast, const real *dmat, const real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, real *tmp, int nvclen, real(*rgrad)[4]) |
Computes the expectation value <o|dmat|o'> and its derivatives for a nonsymmetric matrix and given set of precomputed orbital values and their cartesian derivatives gao. More... | |
Density and gradient evaluation interface.
void getexp_blocked_gga | ( | int | nbast, |
const real * | dmat, | ||
const real * | gao, | ||
const int * | nblocks, | ||
const int(*) | iblocks[2], | ||
int | ldaib, | ||
real * | tmp, | ||
int | nvclen, | ||
real(*) | rgrad[4] | ||
) |
Computes the expectation value <o|dmat|o'> and its derivatives for a nonsymmetric matrix and given set of precomputed orbital values and their cartesian derivatives gao.
Sparsity of gao as determined with help of nblocks and iblocks is used to reduce the computational effort.
dmat | full square symmetric matrix |
nbast | size of dmat |
gao | orbital matrix[4][nbast][nvclen]. First block [0][][] contains orbital values. Subsequent blocks - orbital derivatives wrt x,y, and z coordinates. Set values are determied by nblocks and iblocks, other values shall not be accessed. |
nblocks | number of nonzero row blocks in gao |
iblocks | ranges [a,b) of nonzero blocks in gao. |
ldaib | not used |
tmp | temporary matrix [nbast][nvclen] |
nvclen | batch length - number of columns in gao. |
rgrad | a vector of quartets where the computed expectation values and gradient values will be stored. |
References zeroorbs().
void getexp_blocked_lda | ( | int | nbast, |
const real * | dmat, | ||
const real * | gao, | ||
const int * | nblocks, | ||
const int(*) | iblocks[2], | ||
int | ldaib, | ||
real * | tmp, | ||
int | nvclen, | ||
real * | rho | ||
) |
Computes the expectation value <o|dmat|o'> for a nonsymmetric matrix and given set of precomputed orbital values gao.
Sparsity of gao as determined with help of nblocks and iblocks is used to reduce the computational effort.
dmat | full square symmetric matrix |
nbast | size of dmat |
gao | orbital matrix[nbast][nvclen]. Set values are determied by nblocks and iblocks, other values shall not be accessed. |
nblocks | number of nonzero row blocks in gao |
iblocks | ranges [a,b) of nonzero blocks in gao. |
ldaib | not used |
tmp | temporary matrix [nbast][nvclen] |
nvclen | batch length - number of columns in gao. |
rho | the vector[nvclen] where the computed expectation values will be stored. |
References zeroorbs().
Referenced by lin_resp_cb_b_lda().
void getrho_blocked_gga | ( | int | nbast, |
const real * | dmat, | ||
const real * | gao, | ||
const int * | nblocks, | ||
const int(*) | iblocks[2], | ||
int | ldaib, | ||
real * | tmp, | ||
int | nvclen, | ||
real * | rho, | ||
real(*) | grad[3] | ||
) |
Referenced by getrho_blocked_gga().
|
inline |
References getrho_blocked_gga(), and Dft::FullMatrix::mat.
void getrho_blocked_lda | ( | int | nbast, |
const real * | dmat, | ||
const real * | gao, | ||
const int * | nblocks, | ||
const int(*) | iblocks[2], | ||
int | ldaib, | ||
real * | tmp, | ||
int | nvclen, | ||
real * | rho | ||
) |
Referenced by getrho_blocked_lda().
|
inline |
References getrho_blocked_lda(), and Dft::FullMatrix::mat.