Code for 1-electron integrals, computation of kinetic-energy matrix T. More...
#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"#include "basis_func_pair_list_1el.h"Functions | |
| static void | do_derivative_of_simple_prim (const DistributionSpecStruct &prim, DistributionSpecStruct *resultList, int coord) |
| 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_linear (const BasisInfoStruct &basisInfo, ergo_real threshold, ergo_real boxSize, 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 |
Code for 1-electron integrals, computation of kinetic-energy matrix T.
| int compute_T_matrix_full | ( | const BasisInfoStruct & | basisInfo, | |
| ergo_real | threshold, | |||
| ergo_real * | result | |||
| ) |
References compute_T_matrix_sparse_linear(), do_output(), ergo_free(), ergo_new, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, and BasisInfoStruct::noOfBasisFuncs.
Referenced by compute_h_core_matrix_full(), and main().
| int compute_T_matrix_sparse_linear | ( | const BasisInfoStruct & | basisInfo, | |
| ergo_real | threshold, | |||
| ergo_real | boxSize, | |||
| int * | nvaluesList, | |||
| int ** | colindList, | |||
| ergo_real ** | valuesList | |||
| ) |
References A, BasisInfoStruct::basisFuncList, BasisFuncStruct::centerCoords, distance(), do_output(), ergo_new, get_basis_func_extent_list(), get_basis_func_pair_list_simple(), get_largest_simple_integral(), LOG_AREA_UNDEFINED, LOG_CAT_ERROR, LOG_CAT_INFO, MATRIX_ELEMENT_THRESHOLD_VALUE, BasisInfoStruct::noOfBasisFuncs, BasisFuncStruct::noOfSimplePrimitives, BasisFuncStruct::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, simplePrimTintegral(), template_blas_fabs(), and template_blas_sqrt().
Referenced by compute_T_matrix_full(), and compute_T_sparse_linear().
| 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().
| 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.
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_linear().
const ergo_real MATRIX_ELEMENT_THRESHOLD_VALUE = 1e-12 [static] |
Referenced by compute_T_matrix_sparse_linear().
1.6.1