Code for setting up basis functions starting from shells. More...
#include <stdlib.h>#include <math.h>#include <stdio.h>#include <errno.h>#include <memory.h>#include <time.h>#include <stdarg.h>#include <string.h>#include "basisinfo.h"#include "basisset.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 "machine_epsilon.h"Functions | |
| int | output_basisinfo (const BasisInfoStruct &basisInfo) |
| static void | define_basis_func_poly (BasisFuncStruct *basisFunc, int polyIndex, const IntegralInfo &b) |
| static void | define_basis_func_poly_special_6dfuncs (BasisFuncStruct *basisFunc, const IntegralInfo &b) |
| static int | get_simple_primitives (BasisFuncStruct *currBasisFunc, DistributionSpecStruct *list, int nInput, int nListMax, const IntegralInfo &b, int use_6_d_funcs) |
| static int | sort_shells (ShellSpecStruct *list, ShellSpecStruct *listTemp, int n) |
| static int | find_range_index (int atomIndex, int noOfRanges, const basis_set_range_struct *rangeList) |
| static const basisset_info * | select_basis_set (int atomIndex, int noOfRanges, const basis_set_range_struct *rangeList, const basisset_info *basissetDefault) |
| static int | setup_shells_multi_basis_getcount (const Atom *atomList, int noOfAtoms, const basisset_info *basissetDefault, int noOfRanges, const basis_set_range_struct *rangeList) |
| Returns number of shells needed to describe the electronic density for given molecule and basis set. | |
| static int | setup_shells_multi_basis (const IntegralInfo &integralInfo, const Atom *atomList, int noOfAtoms, const basisset_info *basissetDefault, ShellSpecStruct *shell_list, int noOfShells, int noOfRanges, const basis_set_range_struct *rangeList, int use_6_d_funcs) |
| ergo_real | getSafeMaxDistance (const BasisInfoStruct &basisInfo) |
| Compute safe upper limit for largest possible distance between any two basis functions in given basis set. | |
Code for setting up basis functions starting from shells.
| static void define_basis_func_poly | ( | BasisFuncStruct * | basisFunc, | |
| int | polyIndex, | |||
| const IntegralInfo & | b | |||
| ) | [static] |
| static void define_basis_func_poly_special_6dfuncs | ( | BasisFuncStruct * | basisFunc, | |
| const IntegralInfo & | b | |||
| ) | [static] |
References basis_func_term_struct::coeff, BasisFuncStruct::functionNumber, monomial_info_struct::monomial_index_list, IntegralInfo::monomial_info, basis_func_term_struct::monomialID, basis_func_term_struct::monomialInts, BasisFuncStruct::noOfTermsInPolynomial, BasisFuncStruct::poly, and template_blas_sqrt().
Referenced by get_simple_primitives().
| static int find_range_index | ( | int | atomIndex, | |
| int | noOfRanges, | |||
| const basis_set_range_struct * | rangeList | |||
| ) | [static] |
Referenced by select_basis_set().
| static int get_simple_primitives | ( | BasisFuncStruct * | currBasisFunc, | |
| DistributionSpecStruct * | list, | |||
| int | nInput, | |||
| int | nListMax, | |||
| const IntegralInfo & | b, | |||
| int | use_6_d_funcs | |||
| ) | [static] |
References BasisFuncStruct::centerCoords, DistributionSpecStruct::centerCoords, basis_func_term_struct::coeff, DistributionSpecStruct::coeff, BasisFuncStruct::coeffList, define_basis_func_poly(), define_basis_func_poly_special_6dfuncs(), do_output(), DistributionSpecStruct::exponent, BasisFuncStruct::exponentList, BasisFuncStruct::functionNumber, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, basis_func_term_struct::monomialInts, BasisFuncStruct::noOfContr, BasisFuncStruct::noOfTermsInPolynomial, BasisFuncStruct::poly, and BasisFuncStruct::shellType.
Referenced by SquareFuncIntegrator::computeIntegralOfSquareOfBasisFunc(), and BasisInfoStruct::getSimplePrimitivesAll().
| ergo_real getSafeMaxDistance | ( | const BasisInfoStruct & | basisInfo | ) |
Compute safe upper limit for largest possible distance between any two basis functions in given basis set.
References BasisInfoStruct::basisFuncList, BasisFuncStruct::centerCoords, BasisInfoStruct::noOfBasisFuncs, and template_blas_sqrt().
| int output_basisinfo | ( | const BasisInfoStruct & | basisInfo | ) |
| static const basisset_info* select_basis_set | ( | int | atomIndex, | |
| int | noOfRanges, | |||
| const basis_set_range_struct * | rangeList, | |||
| const basisset_info * | basissetDefault | |||
| ) | [static] |
References basis_set_range_struct::basisset, and find_range_index().
Referenced by setup_shells_multi_basis(), and setup_shells_multi_basis_getcount().
| static int setup_shells_multi_basis | ( | const IntegralInfo & | integralInfo, | |
| const Atom * | atomList, | |||
| int | noOfAtoms, | |||
| const basisset_info * | basissetDefault, | |||
| ShellSpecStruct * | shell_list, | |||
| int | noOfShells, | |||
| int | noOfRanges, | |||
| const basis_set_range_struct * | rangeList, | |||
| int | use_6_d_funcs | |||
| ) | [static] |
References basisset_info::atoms, charge, basisset_shell_struct::coeffList, ShellSpecStruct::coeffList, basisset_shell_struct::contrCount, do_output(), ShellSpecStruct::exponentList, basisset_shell_struct::exponentList, SquareFuncIntegrator::getShellFactor(), LOG_AREA_INTEGRALS, LOG_CAT_ERROR, MAX_NO_OF_CONTR_GAUSSIANS, ShellSpecStruct::noOfBasisFuncs, ShellSpecStruct::noOfContr, select_basis_set(), basisset_shell_struct::shell_ID, ShellSpecStruct::shell_ID, ShellSpecStruct::shellType, ShellSpecStruct::startIndexInMatrix, and basisset_shell_struct::type.
Referenced by BasisInfoStruct::addBasisfuncsForAtomList().
| static int setup_shells_multi_basis_getcount | ( | const Atom * | atomList, | |
| int | noOfAtoms, | |||
| const basisset_info * | basissetDefault, | |||
| int | noOfRanges, | |||
| const basis_set_range_struct * | rangeList | |||
| ) | [static] |
Returns number of shells needed to describe the electronic density for given molecule and basis set.
| atomList | list of atoms | |
| noOfAtoms | the length of atomList | |
| basissetDefault | the basis set to be used for all atoms but those specified by rangeList. | |
| noOfRanges | the length of rangeList. | |
| rangeList | A list of atoms that should get some other, specified basis set. |
References basisset_info::atoms, charge, do_output(), LOG_AREA_INTEGRALS, LOG_CAT_ERROR, LOG_CAT_INFO, and select_basis_set().
Referenced by BasisInfoStruct::addBasisfuncsForAtomList().
| static int sort_shells | ( | ShellSpecStruct * | list, | |
| ShellSpecStruct * | listTemp, | |||
| int | n | |||
| ) | [static] |
Referenced by BasisInfoStruct::addBasisfuncsForAtomList().
1.6.1