source/dft/sparse_matrix.h File Reference

Declares a sparse matrix optimized for the XC code. More...

#include <stdio.h>
#include <vector>
#include <algorithm>
#include "realtype.h"
#include "matrix_typedefs.h"
#include "basisinfo.h"
#include "sparse_pattern.h"

Go to the source code of this file.

Classes

class  SparseMatrix
 Sparse matrix structure optimized for XC data access pattern. More...
class  SparseMatrix::Exception

Defines

#define _SPARSE_MATRIX_H_   1
#define BEGIN_NAMESPACE(x)   namespace x {
#define END_NAMESPACE(x)   }

Functions

void getrho_blocked_lda (int nbast, const Dft::SparseMatrix &dmat, const ergo_real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, ergo_real *tmp, int nvclen, ergo_real *rho)
void getrho_blocked_gga (int nbast, const Dft::SparseMatrix &dmat, const ergo_real *gao, const int *nblocks, const int(*iblocks)[2], int ldaib, ergo_real *tmp, int nvclen, ergo_real *rho, ergo_real(*grad)[3])

Detailed Description

Declares a sparse matrix optimized for the XC code.

The object provides methods for fast preallocation of the matrix elements, and some matrix elements iterators as needed for the numerical matrix element integration schemes.


Define Documentation

#define _SPARSE_MATRIX_H_   1
#define BEGIN_NAMESPACE (  )     namespace x {
#define END_NAMESPACE (  )     }

Function Documentation

void getrho_blocked_gga ( int  nbast,
const Dft::SparseMatrix &  dmat,
const ergo_real gao,
const int *  nblocks,
const int(*)  iblocks[2],
int  ldaib,
ergo_real tmp,
int  nvclen,
ergo_real rho,
ergo_real(*)  grad[3] 
)

References zeroorbs().

void getrho_blocked_lda ( int  nbast,
const Dft::SparseMatrix &  dmat,
const ergo_real gao,
const int *  nblocks,
const int(*)  iblocks[2],
int  ldaib,
ergo_real tmp,
int  nvclen,
ergo_real rho 
)

References zeroorbs().


Generated on 10 Jul 2018 for ergo by  doxygen 1.6.1