Go to the documentation of this file.
32 #if !defined(_XC_MATRIX_H_)
33 #define _XC_MATRIX_H_ 1
int nThreads
Definition: xc_matrix.cc:527
const real * dmatb
Definition: xc_matrix.cc:520
int bas_bl_cnt[8]
Definition: integrator.h:58
#define BASBLOCK(grid, isym)
Definition: integrator.h:61
static void axpy(const int *n, const T *da, const T *dx, const int *incx, T *dy, const int *incy)
Definition: mat_gblas.h:431
int noOfBasisFuncs
Definition: basisinfo.h:120
real * dZab
Definition: xc_matrix.cc:441
Common DFT routines. Mostly functional mixing.
#define __inline__
Definition: dft.h:127
distributes a LDA-type xc potential over the XC-matrix elements, with optimization for a closed shell...
Definition: xc_evaluators.h:56
const Dft::GridParams * gss
Definition: xc_matrix.cc:523
#define LOG_CAT_ERROR
Definition: output.h:47
#define DFT_MAX_BLLEN
Limit for the number of grid point batch length.
Definition: aos.h:41
Definition: xc_matrix.cc:129
double ergo_real
Definition: realtype.h:69
static void xcCallbackGgaU(DftIntegratorBl *grid, real *restrict tmp, int bllen, int blstart, int blend, UksData< Matrix > *d)
modifes data->excmat by adding GGA-type xc contributions, for a general unrestricted case.
Definition: xc_evaluators.h:353
const Dft::GridParams * gss
Definition: xc_matrix.cc:336
real * dRa
Definition: xc_matrix.cc:440
structure describing the data needed by distributors.
Definition: xc_evaluators.h:36
const BasisInfoStruct * bis
Definition: xc_matrix.cc:334
#define USE_BLAS_IN_XC
Definition: config.h:259
real integrate(int ndmat, const FullMatrix *const *dmat, const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, int nThreads, DftBlockCallback cb, void *cb_data)
Dft::FullMatrix * exca
Definition: xc_matrix.cc:439
Definition: xc_matrix.cc:519
Definition: grid_matrix.h:53
Definition: xc_evaluators.h:220
real energy
Definition: xc_evaluators.h:224
Definition: basisinfo.h:112
ergo_real real
Definition: test.cc:46
EXTERN_C real dft_get_uxc_mt(int nElectrons, const real *dmata, const real *dmatb, const BasisInfoStruct *bis, const Molecule *mol, const Dft::GridParams &gss, real *xca, real *xcb, real *edfty)
distributes a GGA-type xc potential over the XC-matrix elements.
Definition: xc_evaluators.h:126
static const int KOHNSH_DEBUG
Definition: xc_matrix.cc:74
int nElectrons
Definition: xc_matrix.cc:526
real * xc
Definition: xc_matrix.cc:337
Definition: integrator.h:49
const real * dmata
Definition: xc_matrix.cc:520
real energy
Definition: xc_evaluators.h:40
union DftIntegratorBl_::@1 g
A structure describing the grid settings.
Definition: grid_params.h:59
real edfty
Definition: xc_matrix.cc:525
EXTERN_C real dft_get_uxc(int nElectrons, const real *dmata, const real *dmatb, const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, real *xca, real *xcb, real *edfty, int nThreads)
Definition: xc_matrix.cc:446
int nElectrons
Definition: xc_matrix.cc:339
EXTERN_C real dft_get_xc_mt(int nElectrons, const real *dmat, const BasisInfoStruct *bis, const Molecule *mol, const Dft::GridParams &gss, real *ksm, real *edfty)
static void * dft_get_uxc_worker(void *data)
Definition: xc_matrix.cc:530
EXTERN_C int dft_get_num_threads(void)
Definition: dft_common.cc:203
void(* DftBlockCallback)(DftIntegratorBl *grid, real *tmp, int bllen, int blstart, int blend, void *cb_data)
Definition: integrator.h:97
const BasisInfoStruct * bis
Definition: xc_matrix.cc:521
struct DftIntegratorBl_::@1::@3 rad
static void gemm(const char *ta, const char *tb, const int *n, const int *k, const int *l, const T *alpha, const T *A, const int *lda, const T *B, const int *ldb, const T *beta, T *C, const int *ldc)
Definition: mat_gblas.h:232
#define dft_kohn_sham_collect_info(myksm, ksm, energy)
Definition: xc_matrix.cc:122
EXTERN_C real dft_get_xc_mt(int nElectrons, const real *dmat, const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, real *xc, real *edfty)
Computes the XC interaction matrix for given density matrix.
Definition: xc_matrix.cc:381
IsGGAFunc is_gga
Definition: functionals.h:403
Utilities related to the hierarchical matrix library (HML), including functions for setting up permut...
const Molecule * mol
Definition: xc_matrix.cc:522
const Molecule * mol
Definition: xc_matrix.cc:335
void print(int area, const char *routine)
Definition: utilities.h:111
real el
Definition: xc_matrix.cc:338
Dft::FullMatrix * excb
Definition: xc_matrix.cc:439
real * dRb
Definition: xc_matrix.cc:440
Basic OS access utilities.
static void distribute(DftIntegratorBl *grid, int bllen, int blstart, int blend, real *restrict tmp, const real *dR, const real *dZ, Dft::FullMatrix &mat)
Definition: xc_matrix.cc:192
real ONER
Definition: dft_common.cc:65
Definition: allocate.cc:39
#define LOG_CAT_INFO
Definition: output.h:49
real el
Definition: xc_matrix.cc:525
Definition: xc_matrix.cc:438
int nbast
Definition: integrator.h:72
Functional * selected_func
Definition: functionals.c:106
const real * dmat
Definition: xc_matrix.cc:333
EXTERN_C real dft_get_xc(int nElectrons, const real *dmat, const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, real *ksm, real *edfty, int nThreads)
computes Fock matrix ksm corresponding to given density matrix dmat.
Definition: xc_matrix.cc:259
real * atv
Definition: integrator.h:53
real * xca
Definition: xc_matrix.cc:524
Definition: xc_evaluators.h:238
Representation of a molecule as a set of nuclei and total charge.
Definition: molecule.h:87
#define EXTERN_C
Definition: dft.h:45
static void distribute(DftIntegratorBl *grid, int bllen, int blstart, int blend, real *restrict tmp, const real *restrict dR, Dft::FullMatrix &excmat)
Definition: xc_matrix.cc:137
real * dZa
Definition: xc_matrix.cc:441
int ONEI
Definition: dft_common.cc:64
Definition: xc_matrix.cc:332
real energy
Definition: xc_matrix.cc:442
static pthread_mutex_t dft_prop_mutex
Definition: xc_matrix.cc:53
ergo_real * mat
Definition: grid_matrix.h:55
EXTERN_C real dft_get_uxc_mt(int nElectrons, const real *dmata, const real *dmatb, const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, real *xca, real *xcb, real *edfty)
Definition: xc_matrix.cc:539
real edfty
Definition: xc_matrix.cc:337
void do_output(int logCategory, int logArea, const char *format,...)
Definition: output.cc:53
Generic matrix interface. It is not optimized for speed.
int getNumberOfElectrons() const
Compute total number of electrons.
Definition: molecule.cc:158
void xcCallbackLdaR(DftIntegratorBl *grid, real *restrict tmp, int bllen, int blstart, int blend, KsData< Matrix > *data)
modifies data->excmat by adding LDA-type contributions from a given set of bllen grid points as saved...
Definition: xc_evaluators.h:100
#define restrict
Definition: xc_matrix.cc:71
int nThreads
Definition: xc_matrix.cc:340
Definition: xc_matrix.cc:183
int nsym
Definition: integrator.h:58
static void * dft_get_xc_worker(void *data)
Definition: xc_matrix.cc:343
Grid Generator interface. Functions for opening grid file, reading chunks from it,...
#define LOG_AREA_DFT
Definition: output.h:62
void output_matrix(int n, const ergo_real *matrix, const char *matrixName)
Definition: matrix_utilities.cc:390
Time-measuring class.
Definition: utilities.h:80
void xcCallbackGgaR(DftIntegratorBl *grid, real *restrict tmp, int bllen, int blstart, int blend, KsData< Matrix > *data)
modifies data->excmat by adding GGA-type contributions from a given set of bllen grid points as saved...
Definition: xc_evaluators.h:182
void lrao2mo_(const real *cmo, const int *ksymop, const real *res, real *fmat, real *work, int *lw)
Functionality for writing output messages to a text file.
real * xcb
Definition: xc_matrix.cc:524
#define dft_kohn_sham_sync_slaves(dmat)
Definition: xc_matrix.cc:121
real * dZb
Definition: xc_matrix.cc:441