ergo
|
Go to the source code of this file.
Classes | |
struct | polydeg1struct |
Functions | |
int | get_product_simple_prims (const DistributionSpecStruct &primA, const DistributionSpecStruct &primB, DistributionSpecStruct resultList[], int maxCount, ergo_real threshold) |
int | get_product_simple_primitives (const BasisInfoStruct &basisInfoA, int iA, const BasisInfoStruct &basisInfoB, int iB, DistributionSpecStruct resultList[], int maxCount, ergo_real threshold) |
ergo_real | compute_integral_of_simple_prim (DistributionSpecStruct *distr) |
int | multiply_polynomials (ergo_real result[], polydeg1struct *polydeg1, int dim, ergo_real a[]) |
ergo_real | get_largest_simple_integral (const BasisInfoStruct &basisInfo) |
Computes the largest integral of any primitive in the basis set, when any x y z factors are ignored. | |
ergo_real | get_max_basis_func_abs_value (const BasisInfoStruct &basisInfo) |
Computes an estimate for the largest absolute value that any basis function takes. | |
int | get_basis_func_extent_list (const BasisInfoStruct &basisInfo, ergo_real *basisFuncExtentList, ergo_real maxAbsValue) |
Computes an "extent" for each basis function in the basis set. | |
Variables | |
const int | POLY_PRODUCT_MAX_DISTRS = 10000 |
ergo_real compute_integral_of_simple_prim | ( | DistributionSpecStruct * | distr | ) |
References DistributionSpecStruct_::monomialInts, DistributionSpecStruct_::exponent, DistributionSpecStruct_::coeff, and pi.
Referenced by SquareFuncIntegrator::computeIntegralOfSquareOfBasisFunc(), simplePrimTintegral(), get_largest_simple_integral(), compute_multipole_moments(), and compute_operator_matrix_sparse().
int get_basis_func_extent_list | ( | const BasisInfoStruct & | basisInfo, |
ergo_real * | basisFuncExtentList, | ||
ergo_real | maxAbsValue | ||
) |
Computes an "extent" for each basis function in the basis set.
The "extent" is such that the value of the function is smaller than maxAbsValue at distances beyond the "extent".
References BasisInfoStruct::noOfBasisFuncs, BasisInfoStruct::basisFuncList, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, DistributionSpecStruct_::exponent, and DistributionSpecStruct_::coeff.
Referenced by compute_extent_for_shells(), get_product_distrs(), compute_T_matrix_sparse(), and compute_operator_matrix_sparse().
ergo_real get_largest_simple_integral | ( | const BasisInfoStruct & | basisInfo | ) |
Computes the largest integral of any primitive in the basis set, when any x y z factors are ignored.
This is useful for getting rough estimates of basis function extents.
References BasisInfoStruct::noOfBasisFuncs, A, BasisInfoStruct::basisFuncList, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, DistributionSpecStruct_::monomialInts, and compute_integral_of_simple_prim().
Referenced by compute_T_matrix_sparse(), and compute_operator_matrix_sparse().
ergo_real get_max_basis_func_abs_value | ( | const BasisInfoStruct & | basisInfo | ) |
Computes an estimate for the largest absolute value that any basis function takes.
Useful as "worst case" when you want to find out the largest contribution to the density that a basis function can be part of.
References BasisInfoStruct::noOfBasisFuncs, BasisInfoStruct::basisFuncList, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, BasisInfoStruct::simplePrimitiveList, and DistributionSpecStruct_::coeff.
Referenced by compute_extent_for_shells(), and get_product_distrs().
int get_product_simple_primitives | ( | const BasisInfoStruct & | basisInfoA, |
int | iA, | ||
const BasisInfoStruct & | basisInfoB, | ||
int | iB, | ||
DistributionSpecStruct | resultList[], | ||
int | maxCount, | ||
ergo_real | threshold | ||
) |
References BasisInfoStruct::basisFuncList, BasisFuncStruct_::noOfSimplePrimitives, BasisFuncStruct_::simplePrimitiveIndex, do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, BasisInfoStruct::simplePrimitiveList, and get_product_simple_prims().
Referenced by get_product_distrs(), get_maxLimitingFactor(), get_basis_func_pair_list_2el(), get_basis_func_pair_list_1el(), get_list_of_distrs_for_V(), get_list_of_labeled_distrs_maxLimitingFactor_linear(), get_list_of_labeled_distrs_linear(), do_2e_integral(), get_list_of_labeled_distrs_maxLimitingFactor(), get_list_of_labeled_distrs(), compute_operator_matrix_sparse(), test_V_by_explicit_comparison(), test_V_by_explicit_comparison_tight(), get_no_of_primitives_for_density(), and get_density().
int get_product_simple_prims | ( | const DistributionSpecStruct & | primA, |
const DistributionSpecStruct & | primB, | ||
DistributionSpecStruct | resultList[], | ||
int | maxCount, | ||
ergo_real | threshold | ||
) |
References DistributionSpecStruct_::centerCoords, K_MAX_DIM, DistributionSpecStruct_::exponent, DistributionSpecStruct_::coeff, DistributionSpecStruct_::monomialInts, polydeg1struct::a0, polydeg1struct::a1, multiply_polynomials(), pi, do_output(), LOG_CAT_ERROR, and LOG_AREA_INTEGRALS.
Referenced by SquareFuncIntegrator::computeIntegralOfSquareOfBasisFunc(), simplePrimTintegral(), compute_V_matrix_full(), and get_product_simple_primitives().
int multiply_polynomials | ( | ergo_real | result[], |
polydeg1struct * | polydeg1, | ||
int | dim, | ||
ergo_real | a[] | ||
) |
References K_MAX_DIM, polydeg1struct::a0, and polydeg1struct::a1.
Referenced by get_product_simple_prims().