#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 compute_T_matrix_sparse(), do_output(), ergo_free(), ergo_new, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, and BasisInfoStruct::noOfBasisFuncs.
Referenced by compute_h_core_matrix_full(), main(), and saveKinetic().
int compute_T_matrix_sparse | ( | const BasisInfoStruct & | basisInfo, | |
ergo_real | threshold, | |||
int | n, | |||
int * | nvaluesList, | |||
int ** | colindList, | |||
ergo_real ** | valuesList | |||
) |
References A, BasisInfoStruct::basisFuncList, BasisFuncStruct_::centerCoords, distance(), do_output(), ergo_free(), ergo_new, get_basis_func_extent_list(), get_largest_simple_integral(), LOG_AREA_INTEGRALS, LOG_CAT_ERROR, MATRIX_ELEMENT_THRESHOLD_VALUE, BasisInfoStruct::noOfBasisFuncs, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, and simplePrimTintegral().
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_::coeff, DistributionSpecStruct_::exponent, and DistributionSpecStruct_::monomialInts.
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 DistributionSpecStruct_::coeff, compute_integral_of_simple_prim(), do_derivative_of_simple_prim(), do_output(), get_product_simple_prims(), LOG_AREA_INTEGRALS, and LOG_CAT_ERROR.
Referenced by compute_T_matrix_sparse().
const ergo_real MATRIX_ELEMENT_THRESHOLD_VALUE = 1e-12 [static] |
Referenced by compute_T_matrix_sparse().