ergo
BasisInfoStruct Struct Reference

#include <basisinfo.h>

List of all members.

Public Member Functions

 BasisInfoStruct (int use_6_d_funcs_=0)
 Initializes all the fields to sane values.
 ~BasisInfoStruct ()
int addBasisfuncsForMolecule (const Molecule &molecule, const char *basisset_filename_default, int noOfRanges, const BasissetNameRange *rangeList, const IntegralInfo &integralInfo, int print_raw, int do_normalization, int skip_sort_shells)
 Fills in BasisInfoStruct for given molecule and basisset_filename.
BasisInfoStructpermuteShells (const int *shellMap, const IntegralInfo &ii) const
 a factory method generating new BasisInfo struct with permuted shells and basis functions.
int normalizeShells (const IntegralInfo &integralInfo)
 Normalizes shells so that the overlap of each basis function with itself will be 1.
int get_basis_funcs ()
 creates list of 'basis functions', and set startIndexInMatrix for each shell.
int getSimplePrimitivesAll (const IntegralInfo &integralInfo)

Public Attributes

int use_6_d_funcs
 Whether to use 6 d-type basis functions instead of the usual 5 functions.
int noOfShells
ShellSpecStructshellList
int noOfBasisFuncs
BasisFuncStructbasisFuncList
int noOfSimplePrimitives
DistributionSpecStructsimplePrimitiveList

Constructor & Destructor Documentation

BasisInfoStruct::BasisInfoStruct ( int  use_6_d_funcs_ = 0) [inline]

Initializes all the fields to sane values.

Referenced by permuteShells().

BasisInfoStruct::~BasisInfoStruct ( ) [inline]

Member Function Documentation

int BasisInfoStruct::addBasisfuncsForMolecule ( const Molecule molecule,
const char *  basisset_filename_default,
int  noOfRanges,
const BasissetNameRange rangeList,
const IntegralInfo integralInfo,
int  print_raw,
int  do_normalization,
int  skip_sort_shells 
)

Fills in BasisInfoStruct for given molecule and basisset_filename.

It can be called several times to add basis functions for ghost molecules.

Parameters:
moleculecontains the description of the molecule geometry.
basisset_filename_defaultcontains the name of the basis set that will be used for atoms that have no basis set specified in rangeList. A number of directories will be searched for the given basis.
noOfRangesthe length of rangeList.
rangeListis a list of basis sets associated with ranges of atoms that should get non-default basis set.
integralInfo- the core structure for integral evaluation, needed for basis set normalization.
print_raw- whether the basis set as read should be printed.
do_normalization- whether the contraction coefficients in front of exponentials are to be normalized.
skip_sort_shellsdisable the standard sorting of shells in the basis set with respect to atom type and exponent.
Returns:
0 on success, -1 on failure.

References ERGO_DATA_PREFIX, ERGO_SPREFIX, do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, read_basisset_file(), basis_set_range_struct::startAtomIndex, BasissetNameRange::startAtomIndex, basis_set_range_struct::count, BasissetNameRange::count, basis_set_range_struct::basisset, setup_shells_multi_basis_getcount(), noOfShells, LOG_CAT_INFO, shellList, setup_shells_multi_basis(), ShellSpecStruct_::noOfContr, ShellSpecStruct_::sizeList, pi, sort_shells(), normalizeShells(), get_basis_funcs(), noOfBasisFuncs, getSimplePrimitivesAll(), and noOfSimplePrimitives.

Referenced by es_run(), main(), test_small(), and test_mol().

int BasisInfoStruct::normalizeShells ( const IntegralInfo integralInfo)
BasisInfoStruct * BasisInfoStruct::permuteShells ( const int *  shellMap,
const IntegralInfo ii 
) const

a factory method generating new BasisInfo struct with permuted shells and basis functions.

Parameters:
shellMapvector defining the permutation of shells.

newShell(i) = this.shell(shellMap(i));

Parameters:
iiIntegralInfo structure needed to reconstruct the primitive gaussian data.

References BasisInfoStruct(), noOfShells, shellList, get_basis_funcs(), do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, and getSimplePrimitivesAll().

Referenced by XCEvaluator::XCEvaluator(), and grid_test_scaling().


Member Data Documentation

Referenced by addBasisfuncsForMolecule(), get_basis_funcs(), getSimplePrimitivesAll(), getSafeMaxDistance(), main(), do_CI(), get_bf_vals_derivs(), compute_integral_from_points(), integrate_density_and_energy(), compute_extent_for_shells(), get_product_distrs(), get_density(), hicu_grid_generate(), grid_generate_sparse_pattern(), dft_integrator_bl_new(), dft_integrate(), dft_lin_respao(), SparsePattern::load(), SparsePattern::save(), SparsePattern::sizeTotal(), SparsePattern::size(), dft_get_xc(), dft_get_uxc(), es_run(), ErgoE2Evaluator::transform(), es_getexc(), es_get_polarisability(), computeFermiContact(), get_M(), compute_extent_for_all_basis_funcs_core(), compute_extent_for_all_basis_funcs_1el(), get_maxLimitingFactor(), get_basis_func_pair_list_2el(), get_basis_func_pair_list_1el(), compute_gamma_or_J_shelldriven(), densfit_compute_gamma(), densfit_compute_alpha_beta_matrix_inverse(), densfit_init(), densfit_compute_c_vector(), densfit_compute_J(), ExponentList::get_list_of_available_exponents(), compute_h_core_matrix_full(), compute_T_matrix_sparse(), compute_T_matrix_full(), compute_V_matrix_full(), get_JK_contribs_from_2_interacting_boxes(), compute_JK_single_box(), get_joblists_J_for_two_boxes_recursive(), compute_J_by_boxes_linear(), compute_J_by_boxes(), compute_J_by_boxes_nosymm(), get_K_contribs_from_2_interacting_boxes(), execute_joblist_K_thread_func(), execute_joblist_K_threaded(), execute_joblist_K_serial(), compute_K_by_boxes(), create_CSR_for_K(), compute_2e_matrix_simple(), compute_J_and_K_integraldriven(), compute_2e_matrix_list_explicit(), compute_2e_matrix_list_difden(), compute_2e_matrix_list(), compute_2e_matrix_coulomb(), get_list_of_labeled_distrs_maxLimitingFactor(), get_list_of_labeled_distrs(), get_largest_simple_integral(), get_max_basis_func_abs_value(), get_basis_func_extent_list(), compute_operator_matrix_full(), compute_operator_matrix_sparse(), SCF::MatOptions::prepare(), SCF_general::SCF_general(), SCF_general::do_SCF_iterations(), SCF_restricted::get_starting_guess_density(), SCF_restricted::add_random_disturbance_to_starting_guess(), SCF_restricted::get_2e_part_and_energy(), SCF_restricted::output_sparsity_S_F_D(), SCF_restricted::get_FDSminusSDF(), SCF_restricted::get_new_density_matrix(), SCF_restricted::save_full_matrices_for_matlab(), SCF_restricted::output_csr_matrices_for_gao(), SCF_restricted::write_diag_dens_to_file(), SCF_restricted::create_homo_eigvec_file(), SCF_restricted::create_lumo_eigvec_file(), output_orbital_coeffs_in_gabedit_order(), SCF_restricted::create_gabedit_file(), SCF_restricted::disturb_dens_matrix_exact_try(), SCF_restricted::disturb_fock_matrix(), SCF_unrestricted::get_starting_guess_density(), SCF_unrestricted::add_random_disturbance_to_starting_guess(), SCF_unrestricted::get_2e_part_and_energy(), SCF_unrestricted::output_sparsity_S_F_D(), SCF_unrestricted::get_FDSminusSDF(), SCF_unrestricted::get_new_density_matrix(), SCF_unrestricted::output_density_images(), SCF_unrestricted::do_spin_flip(), SCF_unrestricted::write_diag_dens_to_file(), get_T(), compute_h_core_matrix_simple_dense(), compute_h_core_matrix_sparse(), save_symmetric_matrix(), write_basis_func_coord_file(), get_2e_matrix_and_energy_simple_sparse(), get_2e_matrices_and_energy_simple_sparse_unrestricted(), get_2e_matrix_and_energy_sparse(), get_2e_matrices_and_energy_sparse_unrestricted(), get_2e_matrices_and_energy_restricted_open(), get_mulliken_charges(), do_tdhf_dynamics(), savePotential(), saveKinetic(), saveOverlap(), saveDipole(), saveCoulomb(), saveXC(), preparePermutations(), test_small(), test_mol(), ddf_writeShellListAndDensityMatricesToFile(), ddf_writeShellListAndDensityMatricesToFile_sparse(), load_density_and_project_full(), compute_R_matrix_sparse(), load_density_and_project_sparse(), get_no_of_primitives_for_density(), compute_V_sparse(), compute_overlap_matrix_sparse(), compute_operator_matrix_sparse_symm(), compute_J_by_boxes_sparse(), compute_K_by_boxes_sparse(), compute_K_by_boxes_sparse_nosymm(), getMatrixPermutation(), and output_distance_vs_magnitude().

Whether to use 6 d-type basis functions instead of the usual 5 functions.

This option exists to make it possible to get results compatible with other codes that have d-type functions defined in that way.

Referenced by SCF_restricted::create_gabedit_file().


The documentation for this struct was generated from the following files: