ergo
|
#include <SCF_restricted.h>
Public Member Functions | |
SCF_restricted (const Molecule &molecule_, const Molecule &extraCharges_, const BasisInfoStruct &basisInfo_, const BasisInfoStruct &basisInfoDensFit_, const IntegralInfo &integralInfo_, const char *guessDmatFileNamePtr, const JK::Params &J_K_paramsPtr, const Dft::GridParams &gridParams_, const SCF::Options &scfopts, const SCF::MatOptions &matOpts, ergo_real threshold_integrals_1el_input) | |
~SCF_restricted () | |
![]() | |
void | do_SCF_iterations () |
void | get_overlap_matrix (symmMatrix &S) |
void | get_H_core_matrix (symmMatrix &H_core) |
void | get_energy (ergo_real &E, ergo_real &E_nuclear) |
SCF_restricted::SCF_restricted | ( | const Molecule & | molecule_, |
const Molecule & | extraCharges_, | ||
const BasisInfoStruct & | basisInfo_, | ||
const BasisInfoStruct & | basisInfoDensFit_, | ||
const IntegralInfo & | integralInfo_, | ||
const char * | guessDmatFileNamePtr, | ||
const JK::Params & | J_K_paramsPtr, | ||
const Dft::GridParams & | gridParams_, | ||
const SCF::Options & | scfopts, | ||
const SCF::MatOptions & | matOpts, | ||
ergo_real | threshold_integrals_1el_input | ||
) |
References SCF_general::DIIS.
SCF_restricted::~SCF_restricted | ( | ) |
References SCF_general::DIIS.
|
private |
References add_disturbance_to_matrix(), SCF_general::basisInfo, densityMatrix, SCF::DISTURB_ELEMENT_MAX_COUNT, SCF::Options::disturbedElementIndexVector, SCF_general::matOpts, BasisInfoStruct::noOfBasisFuncs, SCF::MatOptions::permutationHML, mat::FileWritable::readFromFile(), SCF_general::scfopts, SCF::Options::sg_disturb_specific_elements, SCF::Options::starting_guess_disturbance, and mat::FileWritable::writeToFile().
|
private |
|
private |
|
private |
References do_output(), LOG_AREA_SCF, LOG_CAT_ERROR, and SCF_general::noOfElectrons.
|
private |
References SCF_general::DIIS.
|
private |
References mat::MatrixBase< Treal, Tmatrix >::clear(), and ErrorMatrix.
|
private |
|
private |
|
private |
References Molecule::atoms, SCF_general::basisInfo, ShellSpecStruct_::centerCoords, Atom::charge, ShellSpecStruct_::coeffList, Atom::coords, do_output(), eigVecHOMO, eigVecLUMO, ShellSpecStruct_::exponentList, mat::VectorGeneral< Treal, Tvector >::fullvector(), get_atom_label_from_charge_int(), SquareFuncIntegrator::getShellFactor(), SCF_general::integralInfo, mat::VectorGeneral< Treal, Tvector >::is_empty(), LOG_AREA_SCF, LOG_CAT_INFO, LOG_CAT_WARNING, SCF_general::matOpts, SCF_general::molecule, Molecule::noOfAtoms, BasisInfoStruct::noOfBasisFuncs, ShellSpecStruct_::noOfContr, BasisInfoStruct::noOfShells, output_orbital_coeffs_in_gabedit_order(), SCF::MatOptions::permutationHML, BasisInfoStruct::shellList, ShellSpecStruct_::shellType, UNIT_one_Angstrom, and BasisInfoStruct::use_6_d_funcs.
|
private |
References SCF_general::basisInfo, do_output(), eigVecHOMO, mat::VectorGeneral< Treal, Tvector >::fullvector(), SCF::MatOptions::inversePermutationHML, mat::VectorGeneral< Treal, Tvector >::is_empty(), LOG_AREA_SCF, LOG_CAT_INFO, LOG_CAT_WARNING, SCF_general::matOpts, and BasisInfoStruct::noOfBasisFuncs.
|
private |
References SCF_general::basisInfo, do_output(), eigVecLUMO, mat::VectorGeneral< Treal, Tvector >::fullvector(), SCF::MatOptions::inversePermutationHML, mat::VectorGeneral< Treal, Tvector >::is_empty(), LOG_AREA_SCF, LOG_CAT_INFO, LOG_CAT_WARNING, SCF_general::matOpts, and BasisInfoStruct::noOfBasisFuncs.
|
private |
References SCF::Options::calculation_identifier, densityMatrix, do_output(), SCF::MatOptions::inversePermutationHML, LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, SCF::Options::method_and_basis_set, mat::FileWritable::readFromFile(), SCF_general::scfopts, write_matrix_in_matrix_market_format(), and mat::FileWritable::writeToFile().
|
private |
References SCF::Options::calculation_identifier, do_output(), FockMatrix, SCF::MatOptions::inversePermutationHML, LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, SCF::Options::method_and_basis_set, mat::FileWritable::readFromFile(), SCF_general::scfopts, write_matrix_in_matrix_market_format(), and mat::FileWritable::writeToFile().
|
private |
References densityMatrix, do_output(), get_non_ort_err_mat_normalized_in_ort_basis(), LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF::MatOptions::size_block_info, and mat::FileWritable::writeToFile().
|
private |
References densityMatrix, disturb_dens_matrix_exact_try(), do_output(), get_non_ort_err_mat_normalized_in_ort_basis(), LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF::MatOptions::size_block_info, and mat::FileWritable::writeToFile().
|
private |
References SCF_general::basisInfo, SCF::Options::do_comparison_to_simple_purification, SCF::Options::do_sparsity_investigation, SCF::Options::electronic_temperature, mat::MatrixSymmetric< Treal, Tmatrix >::eucl(), SCF::Options::gap_expected_lower_bound, get_dens_from_fock_general(), get_machine_epsilon(), SCF_general::invCholFactor, SCF_general::invCholFactor_euclnorm, SCF_general::matOpts, BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, SCF::Options::purification_create_m_files, SCF::Options::purification_eigvalue_err_limit, SCF::Options::purification_ignore_failure, SCF::Options::purification_maxmul, SCF::Options::purification_subspace_err_limit, SCF::Options::purification_truncation_norm, SCF::Options::purification_use_rand_perturbation_for_alleigsint, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF_general::S_symm, SCF_general::scfopts, SCF::MatOptions::size_block_info, SCF::Options::sparsity_plots_resolution_m, transform_with_invChol(), transform_with_S(), and mat::FileWritable::writeToFile().
Referenced by disturb_dens_matrix_exact().
|
private |
References SCF_general::basisInfo, SCF::Options::do_comparison_to_simple_purification, do_output(), SCF::Options::do_sparsity_investigation, SCF::Options::electronic_temperature, FockMatrix, SCF::Options::gap_expected_lower_bound, get_dens_from_fock_general(), get_non_ort_err_mat_normalized_in_ort_basis(), SCF_general::invCholFactor, SCF_general::invCholFactor_euclnorm, LOG_AREA_SCF, LOG_CAT_INFO, mat::Interval< Treal >::low(), SCF_general::matOpts, BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, SCF::Options::purification_create_m_files, SCF::Options::purification_eigvalue_err_limit, SCF::Options::purification_ignore_failure, SCF::Options::purification_maxmul, SCF::Options::purification_subspace_err_limit, SCF::Options::purification_truncation_norm, SCF::Options::purification_use_rand_perturbation_for_alleigsint, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF_general::S_symm, SCF_general::scfopts, SCF::MatOptions::size_block_info, SCF::Options::sparsity_plots_resolution_m, mat::Interval< Treal >::upp(), and mat::FileWritable::writeToFile().
|
private |
References SCF_general::basisInfo, SCF_general::CAM_params, densityMatrix, do_tdhf_dynamics(), SCF_general::extraCharges, FockMatrix, SCF_general::integralInfo, SCF_general::invCholFactor, SCF_general::J_K_params, SCF_general::matOpts, SCF_general::molecule, mat::FileWritable::readFromFile(), and SCF_general::S_symm.
|
private |
References SCF_general::basisInfo, densityMatrix, do_mulliken_atomic_charges(), do_output(), SCF::MatOptions::inversePermutationHML, LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, SCF_general::molecule, SCF::MatOptions::permutationHML, mat::FileWritable::readFromFile(), SCF_general::S_symm, SCF::MatOptions::size_block_info, and mat::FileWritable::writeToFile().
|
private |
|
private |
References SCF_statistics::add_value(), SCF_general::basisInfo, SCF_general::basisInfoDensFit, SCF_general::CAM_params, SCF_general::curr_cycle_stats, SCF_general::densfit_data, densityMatrix, SCF::Options::do_acc_scan_J, do_acc_scan_J(), SCF::Options::do_acc_scan_K, do_acc_scan_K(), SCF::Options::do_acc_scan_Vxc, do_acc_scan_Vxc(), SCF::Options::do_f_thresh_verification, do_output(), SCF::Options::do_sparsity_investigation, SCF_general::energy_2el, mat::MatrixSymmetric< Treal, Tmatrix >::eucl(), mat::MatrixSymmetric< Treal, Tmatrix >::eucl_diff(), mat::MatrixSymmetric< Treal, Tmatrix >::eucl_thresh(), FockMatrix, Fprev, mat::MatrixSymmetric< Treal, Tmatrix >::frob_diff(), Fxc_matrix, SCF::Options::gap_expected_lower_bound, get_2e_matrix_and_energy_sparse(), get_machine_epsilon(), SCF_general::gridParams, SCF_general::H_core_Matrix, homoInterval_Fprev, mat::Interval< Treal >::increase(), SCF_general::integralInfo, SCF_general::invCholFactor, SCF::MatOptions::inversePermutationHML, mat::MatrixBase< Treal, Tmatrix >::is_empty(), SCF_general::J_K_params, J_matrix, K_matrix, LOG_AREA_DENSFROMF, LOG_AREA_SCF, LOG_CAT_ERROR, LOG_CAT_INFO, mat::Interval< Treal >::low(), lumoInterval_Fprev, SCF_general::matOpts, mat::MatrixSymmetric< Treal, Tmatrix >::mixed_diff(), SCF_general::molecule, mat::MatrixSymmetric< Treal, Tmatrix >::nnz(), BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, output_diff_norm_values(), output_distance_vs_magnitude(), SCF::MatOptions::permutationHML, SCF::Options::purification_subspace_err_limit, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF::Options::scan_do_invcholfactor_transf, SCF::Options::scan_no_of_steps, SCF::Options::scan_start_thresh, SCF::Options::scan_step_factor, SCF_general::scfopts, SCF::MatOptions::size_block_info, SCF::Options::sparsity_plots_resolution_m, SCF::Options::sparsity_plots_resolution_r, mat::transpose(), mat::Interval< Treal >::upp(), SCF::Options::use_dft, and mat::FileWritable::writeToFile().
|
private |
|
private |
References SCF_general::basisInfo, compute_FDSminusSDF_sparse(), densityMatrix, do_output(), ErrorMatrix, FockMatrix, LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, BasisInfoStruct::noOfBasisFuncs, output_sparsity(), mat::FileWritable::readFromFile(), SCF_general::S_symm, SCF::MatOptions::sparse_threshold, and mat::FileWritable::writeToFile().
|
private |
References SCF_statistics::add_values(), SCF_general::basisInfo, SCF_general::curr_cycle_stats, densityMatrix, SCF::Options::do_comparison_to_simple_purification, do_output(), SCF::Options::do_sparsity_investigation, SCF::Options::do_sparsity_investigation_reppuri, eigVecHOMO, eigVecLUMO, SCF::Options::electronic_temperature, mat::euclNorm, F_ort_prev, FockMatrix, mat::frobNorm, SCF::Options::gap_expected_lower_bound, get_dens_from_fock_general(), mat::getNormTypeString(), homoInterval_F_ort_prev, homoInterval_Fprev, SCF_general::invCholFactor, SCF_general::invCholFactor_euclnorm, SCF::MatOptions::inversePermutationHML, LOG_AREA_SCF, LOG_CAT_INFO, lumoInterval_F_ort_prev, lumoInterval_Fprev, SCF_general::matOpts, mat::mixedNorm, BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, output_distance_vs_magnitude(), output_sparsity_symm(), SCF::Options::purification_create_m_files, SCF::Options::purification_eigvalue_err_limit, SCF::Options::purification_ignore_failure, SCF::Options::purification_maxmul, SCF::Options::purification_subspace_err_limit, SCF::Options::purification_truncation_norm, SCF::Options::purification_use_rand_perturbation_for_alleigsint, mat::FileWritable::readFromFile(), SCF_general::S_symm, SCF_general::scfopts, SCF::Options::shift_using_prev_density_matrix, SCF::MatOptions::size_block_info, SCF::Options::sparsity_plots_resolution_m, SCF::Options::sparsity_plots_resolution_r, mat::MatrixSymmetric< Treal, Tmatrix >::trace_ab(), transform_with_S(), UNIT_one_eV, SCF::Options::use_diag_on_error, SCF::Options::use_diagonalization, and mat::FileWritable::writeToFile().
|
private |
References do_output(), mat::MatrixSymmetric< Treal, Tmatrix >::eucl(), get_machine_epsilon(), LOG_AREA_SCF, LOG_CAT_INFO, SCF_general::matOpts, mat::MatrixSymmetric< Treal, Tmatrix >::random(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF::MatOptions::size_block_info, transform_with_invChol(), and transform_with_S().
Referenced by disturb_dens_matrix(), disturb_dens_matrix_exact(), and disturb_fock_matrix().
|
private |
References SCF_general::basisInfo, densityMatrix, SCF::Options::do_comparison_to_simple_purification, do_output(), SCF::Options::do_sparsity_investigation, SCF::Options::electronic_temperature, SCF::Options::gap_expected_lower_bound, get_dens_from_fock_general(), get_diag_matrix_from_file(), get_simple_starting_guess_sparse(), SCF_general::guessDmatFileName, SCF_general::H_core_Matrix, SCF_general::integralInfo, SCF_general::invCholFactor, SCF_general::invCholFactor_euclnorm, load_density_and_project_sparse(), LOG_AREA_SCF, LOG_CAT_ERROR, LOG_CAT_INFO, SCF_general::matOpts, BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, output_sparsity_symm(), SCF::MatOptions::permutationHML, SCF::Options::puri_eig_acc_factor_for_guess, SCF::Options::purification_create_m_files, SCF::Options::purification_eigvalue_err_limit, SCF::Options::purification_ignore_failure, SCF::Options::purification_maxmul, SCF::Options::purification_subspace_err_limit, SCF::Options::purification_truncation_norm, SCF::Options::purification_use_rand_perturbation_for_alleigsint, mat::FileWritable::readFromFile(), mat::MatrixBase< Treal, Tmatrix >::resetSizesAndBlocks(), SCF_general::S_symm, SCF_general::scfopts, SCF::MatOptions::size_block_info, SCF::MatOptions::sparse_threshold, SCF::Options::sparsity_plots_resolution_m, SCF::Options::use_diag_guess_from_file, SCF::Options::use_diag_on_error_guess, SCF::Options::use_diagonalization, SCF::Options::use_simple_starting_guess, and mat::FileWritable::writeToFile().
|
private |
References homoInterval_F_ort_prev, homoInterval_Fprev, lumoInterval_F_ort_prev, and lumoInterval_Fprev.
|
private |
|
private |
|
private |
References do_output(), LOG_AREA_SCF, and LOG_CAT_ERROR.
|
private |
|
private |
|
private |
|
private |
References FockMatrix, Fprev, mat::FileWritable::readFromFile(), and mat::FileWritable::writeToFile().
|
private |
References densityMatrix, Dprev, mat::FileWritable::readFromFile(), and mat::FileWritable::writeToFile().
|
private |
|
private |
|
private |
Transform matrix A to invCholT*A*invChol.
References SCF_general::invCholFactor, mat::FileWritable::readFromFile(), mat::transpose(), and mat::FileWritable::writeToFile().
Referenced by disturb_dens_matrix_exact_try(), get_non_ort_err_mat_normalized_in_ort_basis(), and update_subspace_diff().
|
private |
Transform matrix A to S*A*S.
References mat::FileWritable::readFromFile(), SCF_general::S_symm, and mat::FileWritable::writeToFile().
Referenced by disturb_dens_matrix_exact_try(), get_new_density_matrix(), get_non_ort_err_mat_normalized_in_ort_basis(), and update_subspace_diff().
|
private |
|
private |
|
private |
|
private |
References SCF_general::basisInfo, matrix_description_struct::colind, ddf_writeShellListAndDensityMatricesToFile_sparse(), densityMatrix, do_output(), mat::MatrixSymmetric< Treal, Tmatrix >::get_all_values(), SCF::MatOptions::inversePermutationHML, LOG_AREA_SCF, LOG_CAT_ERROR, SCF_general::matOpts, matrix_description_struct::nvalues, mat::MatrixSymmetric< Treal, Tmatrix >::nvalues(), mat::FileWritable::readFromFile(), matrix_description_struct::rowind, matrix_description_struct::values, and mat::FileWritable::writeToFile().
|
private |
|
private |
References bestFockMatrixSoFar, bestFockMatrixSoFar2, Dprev, F_ort_prev, FockMatrix, Fprev, and mat::FileWritable::writeToFile().
|
private |
Referenced by combine_old_fock_matrices(), initialize_matrices(), update_best_fock_so_far(), and write_matrices_to_file().
|
private |
Referenced by combine_old_fock_matrices(), initialize_matrices(), update_best_fock_so_far(), and write_matrices_to_file().
|
private |
Referenced by add_random_disturbance_to_starting_guess(), calculate_energy(), compute_dipole_moment(), create_mtx_files_D(), disturb_dens_matrix(), disturb_dens_matrix_exact(), do_electron_dynamics(), do_mulliken_pop_stuff(), get_2e_part_and_energy(), get_FDSminusSDF(), get_new_density_matrix(), get_starting_guess_density(), initialize_matrices(), output_sparsity_S_F_D(), report_density_difference(), save_density_as_prevdens(), save_full_matrices_for_matlab(), update_subspace_diff(), write_density_to_file(), and write_diag_dens_to_file().
|
private |
|
private |
Referenced by create_gabedit_file(), create_homo_eigvec_file(), and get_new_density_matrix().
|
private |
Referenced by create_gabedit_file(), create_lumo_eigvec_file(), and get_new_density_matrix().
|
private |
Referenced by add_to_DIIS_list(), clear_error_matrices(), get_error_measure(), get_FDSminusSDF(), and initialize_matrices().
|
private |
Referenced by get_new_density_matrix(), initialize_matrices(), and write_matrices_to_file().
|
private |
Referenced by add_to_DIIS_list(), combine_old_fock_matrices(), create_mtx_files_F(), disturb_fock_matrix(), do_electron_dynamics(), get_2e_part_and_energy(), get_FDSminusSDF(), get_new_density_matrix(), initialize_matrices(), output_csr_matrices_for_gao(), output_sparsity_S_F_D(), save_current_fock_as_fprev(), save_final_potential(), save_full_matrices_for_matlab(), update_best_fock_so_far(), use_diis_to_get_new_fock_matrix(), and write_matrices_to_file().
|
private |
|
private |
Referenced by get_2e_part_and_energy().
|
private |
Referenced by get_new_density_matrix(), and initialize_homo_lumo_limits().
|
private |
Referenced by get_2e_part_and_energy(), get_new_density_matrix(), and initialize_homo_lumo_limits().
|
private |
Referenced by get_2e_part_and_energy().
|
private |
Referenced by get_2e_part_and_energy().
|
private |
Referenced by get_new_density_matrix(), and initialize_homo_lumo_limits().
|
private |
Referenced by get_2e_part_and_energy(), get_new_density_matrix(), and initialize_homo_lumo_limits().