xc_matrix.cc File Reference

The XC matrix evaluator. More...

#include <assert.h>
#include <cmath>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/times.h>
#include <unistd.h>
#include <pthread.h>
#include "aos.h"
#include "integrator.h"
#include "functionals.h"
#include "dft_common.h"
#include "gblas.h"
#include "output.h"
#include "utilities.h"
#include "matrix_utilities.h"
#include "grid_matrix.h"
#include "xc_evaluators.hpp"

Classes

struct  XCDistributorLdaBlas
struct  XCDistributorGgaBlas
struct  xc_data
struct  uks_data
struct  uxc_data

Defines

#define _XOPEN_SOURCE   500
#define _XOPEN_SOURCE_EXTENDED   1
#define WITH_PTHREAD   1
#define __CVERSION__
#define restrict
#define dft_kohn_sham_sync_slaves(dmat)
#define dft_kohn_sham_collect_info(myksm, ksm, energy)

Functions

void lrao2mo_ (const real *cmo, const int *ksymop, const real *res, real *fmat, real *work, int *lw)
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.
static void * dft_get_xc_worker (void *data)
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.
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)
static void * dft_get_uxc_worker (void *data)
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)

Variables

static pthread_mutex_t dft_prop_mutex = PTHREAD_MUTEX_INITIALIZER
static const int KOHNSH_DEBUG = 0
static const int DFTLR_DEBUG = 0
static const int DFTMAG_DEBUG = 0


Detailed Description

The XC matrix evaluator.

(c) Pawel Salek, pawsa@theochem.kth.se. 2002.04.05

This module evaluates DFT contribution KS matrix.


Define Documentation

#define __CVERSION__

#define _XOPEN_SOURCE   500

#define _XOPEN_SOURCE_EXTENDED   1

#define dft_kohn_sham_collect_info ( myksm,
ksm,
energy   ) 

#define dft_kohn_sham_sync_slaves ( dmat   ) 

#define restrict

#define WITH_PTHREAD   1


Function Documentation

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 
)

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 
)

static void* dft_get_uxc_worker ( void *  data  )  [static]

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.

fast version - uses memory bandwidth-efficient algorithm.

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.

Parameters:
dmat .
Returns:
the integrated number of electrons.
Parameters:
nElectrons number of electrons.
bis a structure describing the used basis set.
mol a structure describing the molecule.
gss a structure describing the grid settings.
xc resulting XC matrix.
edfty resulting XC energy.

static void* dft_get_xc_worker ( void *  data  )  [static]

void lrao2mo_ ( const real cmo,
const int *  ksymop,
const real res,
real fmat,
real work,
int *  lw 
)


Variable Documentation

pthread_mutex_t dft_prop_mutex = PTHREAD_MUTEX_INITIALIZER [static]

const int DFTLR_DEBUG = 0 [static]

const int DFTMAG_DEBUG = 0 [static]

const int KOHNSH_DEBUG = 0 [static]


Generated on Mon Sep 17 14:30:41 2012 for ergo by  doxygen 1.4.7