ergo
|
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <errno.h>
#include <memory.h>
#include <time.h>
#include <stdarg.h>
#include "integrals_1el_kinetic.h"
#include "memorymanag.h"
#include "pi.h"
#include "output.h"
#include "utilities.h"
#include "boysfunction.h"
#include "integral_info.h"
#include "integrals_general.h"
#include "box_system.h"
#include "multipole.h"
#include "integrals_2el_single.h"
#include "integrals_1el_single.h"
Functions | |
static void | do_derivative_of_simple_prim (const DistributionSpecStruct &prim, DistributionSpecStruct *resultList, int coord) |
static ergo_real | simplePrimTintegral (const DistributionSpecStruct &prim1, const DistributionSpecStruct &prim2, int coord, ergo_real threshold) |
Computes the contribution to kinetic energy integral along the cartesian coordinate coord between two distributions prim1 and prim2. | |
int | compute_T_matrix_sparse (const BasisInfoStruct &basisInfo, ergo_real threshold, int n, int *nvaluesList, int **colindList, ergo_real **valuesList) |
int | compute_T_matrix_full (const BasisInfoStruct &basisInfo, ergo_real threshold, ergo_real *result) |
Variables | |
static const ergo_real | MATRIX_ELEMENT_THRESHOLD_VALUE = 1e-12 |
int compute_T_matrix_full | ( | const BasisInfoStruct & | basisInfo, |
ergo_real | threshold, | ||
ergo_real * | result | ||
) |
References BasisInfoStruct::noOfBasisFuncs, ergo_new, compute_T_matrix_sparse(), do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, and ergo_free().
Referenced by compute_h_core_matrix_full(), saveKinetic(), and main().
int compute_T_matrix_sparse | ( | const BasisInfoStruct & | basisInfo, |
ergo_real | threshold, | ||
int | n, | ||
int * | nvaluesList, | ||
int ** | colindList, | ||
ergo_real ** | valuesList | ||
) |
References BasisInfoStruct::noOfBasisFuncs, do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, A, get_largest_simple_integral(), ergo_new, get_basis_func_extent_list(), MATRIX_ELEMENT_THRESHOLD_VALUE, BasisInfoStruct::basisFuncList, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, BasisFuncStruct_::centerCoords, distance(), simplePrimTintegral(), and ergo_free().
Referenced by compute_T_matrix_full(), and get_T().
static void do_derivative_of_simple_prim | ( | const DistributionSpecStruct & | prim, |
DistributionSpecStruct * | resultList, | ||
int | coord | ||
) | [static] |
References DistributionSpecStruct_::monomialInts, DistributionSpecStruct_::coeff, and DistributionSpecStruct_::exponent.
Referenced by simplePrimTintegral().
static ergo_real simplePrimTintegral | ( | const DistributionSpecStruct & | prim1, |
const DistributionSpecStruct & | prim2, | ||
int | coord, | ||
ergo_real | threshold | ||
) | [static] |
Computes the contribution to kinetic energy integral along the cartesian coordinate coord between two distributions prim1 and prim2.
Note that this function is *not* strict wrt the effectiveThreshold parameter, the approximation is only proportional to its value but it can exceed it.
References do_derivative_of_simple_prim(), DistributionSpecStruct_::coeff, get_product_simple_prims(), do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, and compute_integral_of_simple_prim().
Referenced by compute_T_matrix_sparse().
const ergo_real MATRIX_ELEMENT_THRESHOLD_VALUE = 1e-12 [static] |
Referenced by compute_T_matrix_sparse().