ergo
|
The sparse XC matrix evaluator. More...
#include <pthread.h>
#include "aos.h"
#include "integrator.h"
#include "sparse_matrix.h"
#include "xc_matrix_sparse.h"
#include "dft_common.h"
#include "grid_reader.h"
#include "output.h"
#include "utilities.h"
#include "xc_evaluators.h"
#include "grid_hicu.h"
Classes | |
class | XCEvaluator |
class | XCEvaluatorRestricted |
struct | XcData |
class | XCEvaluatorUnrestricted |
Macros | |
#define | WITH_PTHREAD 1 |
#define | restrict |
Functions | |
static void * | xcWorker (void *data) |
real | getXC_mt (const BasisInfoStruct &bis, const IntegralInfo &integralInfo, const Molecule &mol, const Dft::GridParams &gss, int nElectrons, const symmMatrix &dens, symmMatrix &xcm, real *xcEnergy, std::vector< int > const &permutationHML) |
real | getXC_seq (const BasisInfoStruct &bis, const IntegralInfo &integralInfo, const Molecule &mol, const Dft::GridParams &gss, int nElectrons, const symmMatrix &dens, symmMatrix &xcm, real *xcEnergy, std::vector< int > const &permutationHML) |
real | getUXC_seq (const BasisInfoStruct &bis, const IntegralInfo &integralInfo, const Molecule &mol, const Dft::GridParams &gss, int nElectrons, const symmMatrix &densA, const symmMatrix &densB, symmMatrix &xcA, symmMatrix &xcB, real *xcEnergy, std::vector< int > const &permutationHML) |
Variables | |
static pthread_mutex_t | dft_prop_mutex = PTHREAD_MUTEX_INITIALIZER |
static pthread_mutex_t | dft_hicu_grid_init_mutex = PTHREAD_MUTEX_INITIALIZER |
The sparse XC matrix evaluator.
(c) Pawel Salek, pawsa. 2002.04.05 @the ochem .kth .se
This module evaluates DFT contribution KS matrix.
#define restrict |
Referenced by XCEvaluatorRestricted::getXC().
#define WITH_PTHREAD 1 |
real getUXC_seq | ( | const BasisInfoStruct & | bis, |
const IntegralInfo & | integralInfo, | ||
const Molecule & | mol, | ||
const Dft::GridParams & | gss, | ||
int | nElectrons, | ||
const symmMatrix & | densA, | ||
const symmMatrix & | densB, | ||
symmMatrix & | xcA, | ||
symmMatrix & | xcB, | ||
real * | xcEnergy, | ||
std::vector< int > const & | permutationHML | ||
) |
Referenced by get_2e_matrices_and_energy_simple_sparse_unrestricted().
real getXC_mt | ( | const BasisInfoStruct & | bis, |
const IntegralInfo & | integralInfo, | ||
const Molecule & | mol, | ||
const Dft::GridParams & | gss, | ||
int | nElectrons, | ||
const symmMatrix & | dens, | ||
symmMatrix & | xcm, | ||
real * | xcEnergy, | ||
std::vector< int > const & | permutationHML | ||
) |
References dft_get_num_threads(), do_output(), XCEvaluatorRestricted::getXC(), LOG_AREA_DFT, LOG_CAT_ERROR, LOG_CAT_INFO, XcData::nElectrons, XcData::nThreads, Util::TimeMeter::print(), XcData::xcEnergy, XcData::xcEvaluator, XcData::xcm, and xcWorker().
Referenced by calculation_shared(), Vxc_worker::ComputeMatrix(), and get_2e_matrix_and_energy_simple_sparse().
real getXC_seq | ( | const BasisInfoStruct & | bis, |
const IntegralInfo & | integralInfo, | ||
const Molecule & | mol, | ||
const Dft::GridParams & | gss, | ||
int | nElectrons, | ||
const symmMatrix & | dens, | ||
symmMatrix & | xcm, | ||
real * | xcEnergy, | ||
std::vector< int > const & | permutationHML | ||
) |
References XCEvaluatorRestricted::getXC(), XcData::nElectrons, XcData::xcEnergy, and XcData::xcm.
|
static |
References do_output(), XcData::el, XCEvaluatorRestricted::getXC(), LOG_AREA_DFT, LOG_CAT_ERROR, XcData::nElectrons, XcData::nThreads, XcData::xcEnergy, XcData::xcEvaluator, and XcData::xcm.
Referenced by getXC_mt().
|
static |
Referenced by XCEvaluator::XCEvaluator().
|
static |
Referenced by XCEvaluatorRestricted::getXC().