SCF_restricted Class Reference

#include <SCF_restricted.h>

Inheritance diagram for SCF_restricted:
SCF_general

List of all members.

Public Member Functions

 SCF_restricted (const Molecule &molecule_, const Molecule &extraCharges_, const BasisInfoStruct &basisInfo_, 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 get_Fock_matrix (symmMatrix &FockMatrix_)
void get_density_matrix (symmMatrix &densityMatrix_)

Private Member Functions

void initialize_matrices ()
void check_params ()
void get_starting_guess_density ()
void initialize_homo_lumo_limits ()
void write_matrices_to_file ()
void get_2e_part_and_energy ()
void output_sparsity_S_F_D (SCF_statistics &stats)
void calculate_energy ()
void get_FDSminusSDF ()
void get_error_measure ()
void add_to_DIIS_list ()
void update_best_fock_so_far ()
void combine_old_fock_matrices (ergo_real stepLength)
void use_diis_to_get_new_fock_matrix ()
void clear_diis_list ()
void clear_error_matrices ()
void save_current_fock_as_fprev ()
void get_new_density_matrix ()
void write_density_to_file ()
void save_final_potential ()
void add_random_disturbance_to_starting_guess ()
void output_expected_values_pos_operator ()
void get_expected_values_pos_operator (generalVector &eigVec, const char *vector_name)
void output_density_images ()
void output_density_images_orbital (generalVector &eigVec, const std::string &filename_id)
void write_diag_dens_to_file ()
void report_final_results ()
void save_density_as_prevdens ()
void update_subspace_diff ()
void disturb_fock_matrix (ergo_real subspaceError)
void disturb_dens_matrix (ergo_real subspaceError)
void do_spin_flip (int atomCount)
void disturb_dens_matrix_exact (ergo_real subspaceError)
void save_full_matrices_for_matlab ()
void report_density_difference ()
void create_mtx_files_F (int const scfIter)
void create_mtx_files_D (int const scfIter)
void create_homo_eigvec_file () const
void create_lumo_eigvec_file () const
void create_eigenvectors_files () const
void create_eigvec_file (const generalVector &eigVec, const char *vector_name, const char *filename_id) const
void create_gabedit_file () const
void create_gabedit_file_2 () const
void compute_dipole_moment ()
void do_mulliken_pop_stuff ()
void compute_gradient_fixeddens ()
void get_non_ort_err_mat_normalized_in_ort_basis (symmMatrix &randomMatrix, int transform_with_S_also)
void transform_with_S (symmMatrix &A)
 Transform matrix A to S*A*S.
void transform_with_invChol (symmMatrix &A)
 Transform matrix A to invCholT*A*invChol.
void disturb_dens_matrix_exact_try (const symmMatrix &randomMatrix, const symmMatrix &orgDensMatrix, ergo_real disturbanceFactor, ergo_real &resultSinTheta, symmMatrix &resultDensMatrix)

Private Attributes

symmMatrix densityMatrix
symmMatrix densityMatrix_core
symmMatrix twoel_matrix_core
symmMatrix FockMatrix
symmMatrix Fprev
symmMatrix Dprev
symmMatrix F_ort_prev
symmMatrix D_ort_prev
symmMatrix bestFockMatrixSoFar
symmMatrix bestFockMatrixSoFar2
normalMatrix ErrorMatrix
symmMatrix J_matrix
symmMatrix K_matrix
symmMatrix Fxc_matrix
generalVector eigVecLUMO
generalVector eigVecHOMO
intervalType homoInterval_F_ort_prev
intervalType lumoInterval_F_ort_prev
intervalType homoInterval_Fprev
intervalType lumoInterval_Fprev

Constructor & Destructor Documentation

SCF_restricted::SCF_restricted ( const Molecule molecule_,
const Molecule extraCharges_,
const BasisInfoStruct basisInfo_,
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::~SCF_restricted (  ) 

References SCF_general::DIIS.


Member Function Documentation

void SCF_restricted::add_random_disturbance_to_starting_guess (  )  [private, virtual]
void SCF_restricted::add_to_DIIS_list (  )  [private, virtual]
void SCF_restricted::calculate_energy (  )  [private, virtual]
void SCF_restricted::check_params (  )  [private, virtual]
void SCF_restricted::clear_diis_list (  )  [private, virtual]

Implements SCF_general.

References SCF_general::DIIS.

void SCF_restricted::clear_error_matrices (  )  [private, virtual]
void SCF_restricted::combine_old_fock_matrices ( ergo_real  stepLength  )  [private, virtual]
void SCF_restricted::compute_dipole_moment (  )  [private, virtual]
void SCF_restricted::compute_gradient_fixeddens (  )  [private, virtual]
void SCF_restricted::create_eigenvectors_files (  )  const [private, virtual]

Implements SCF_general.

References create_eigvec_file(), eigVecHOMO, and eigVecLUMO.

void SCF_restricted::create_eigvec_file ( const generalVector eigVec,
const char *  vector_name,
const char *  filename_id 
) const [private]
void SCF_restricted::create_gabedit_file (  )  const [private, virtual]
void SCF_restricted::create_gabedit_file_2 (  )  const [private]
void SCF_restricted::create_homo_eigvec_file (  )  const [private]
void SCF_restricted::create_lumo_eigvec_file (  )  const [private]
void SCF_restricted::create_mtx_files_D ( int const   scfIter  )  [private, virtual]
void SCF_restricted::create_mtx_files_F ( int const   scfIter  )  [private, virtual]
void SCF_restricted::disturb_dens_matrix ( ergo_real  subspaceError  )  [private, virtual]
void SCF_restricted::disturb_dens_matrix_exact ( ergo_real  subspaceError  )  [private, virtual]
void SCF_restricted::disturb_dens_matrix_exact_try ( const symmMatrix randomMatrix,
const symmMatrix orgDensMatrix,
ergo_real  disturbanceFactor,
ergo_real resultSinTheta,
symmMatrix resultDensMatrix 
) [private]
void SCF_restricted::disturb_fock_matrix ( ergo_real  subspaceError  )  [private, virtual]
void SCF_restricted::do_mulliken_pop_stuff (  )  [private, virtual]
void SCF_restricted::do_spin_flip ( int  atomCount  )  [private, virtual]

Implements SCF_general.

void SCF_restricted::get_2e_part_and_energy (  )  [private, virtual]

Implements SCF_general.

References SCF_statistics::add_value(), SCF_general::basisInfo, SCF_general::CAM_params, check_if_matrix_contains_strange_elements(), SCF::Options::compute_core_density, SCF_general::curr_cycle_stats, densityMatrix, densityMatrix_core, do_acc_scan_J(), SCF::Options::do_acc_scan_J, do_acc_scan_K(), SCF::Options::do_acc_scan_K, do_acc_scan_Vxc(), SCF::Options::do_acc_scan_Vxc, SCF::Options::do_f_thresh_verification, do_output(), SCF_general::energy_2el, SCF_general::energy_2el_core, SCF_general::energy_2el_valence, FockMatrix, Fprev, Fxc_matrix, SCF::Options::gap_expected_lower_bound, get_2e_matrix_and_energy_sparse(), get_eucl_diff_with_adapted_accuracy(), 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, 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, SCF_general::molecule, SCF::Options::no_of_core_electrons, BasisInfoStruct::noOfBasisFuncs, SCF_general::noOfElectrons, output_diff_norm_values(), SCF::MatOptions::permutationHML, Util::TimeMeter::print(), SCF::Options::purification_subspace_err_limit, mat::FileWritable::readFromFile(), 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, template_blas_sqrt(), mat::transpose(), twoel_matrix_core, mat::Interval< Treal >::upp(), SCF::Options::use_dft, and mat::FileWritable::writeToFile().

void SCF_restricted::get_density_matrix ( symmMatrix densityMatrix_  ) 

References densityMatrix.

Referenced by es_run().

void SCF_restricted::get_error_measure (  )  [private, virtual]
void SCF_restricted::get_expected_values_pos_operator ( generalVector eigVec,
const char *  vector_name 
) [private]
void SCF_restricted::get_FDSminusSDF (  )  [private, virtual]
void SCF_restricted::get_Fock_matrix ( symmMatrix FockMatrix_  ) 

References FockMatrix.

Referenced by es_run().

void SCF_restricted::get_new_density_matrix (  )  [private, virtual]

Implements SCF_general.

References SCF_statistics::add_values(), SCF_general::basisInfo, SCF::Options::checkpoint_IDstr, GetDensFromFock::clean_eigs_intervals(), GetDensFromFock::clean_puri_stats(), SCF::Options::compute_core_density, GetDensFromFock::compute_eigenvectors(), GetDensFromFock::compute_eigenvectors_extra(), GetDensFromFock::create_checkpoint(), SCF::Options::create_checkpoints, SCF_general::curr_cycle_stats, SCF_general::DensFromFock, densityMatrix, densityMatrix_core, do_output(), SCF::Options::eigensolver_accuracy, SCF::Options::eigensolver_maxiter, SCF::Options::eigenvectors_iterative_method, SCF::Options::eigenvectors_method, eigVecHOMO, eigVecLUMO, SCF_general::electronicEntropyTerm, F_ort_prev, FockMatrix, GetDensFromFock::get_dens_from_fock(), GetDensFromFock::get_eigs_F_ort_prev(), GetDensFromFock::get_eigs_Fprev(), GetDensFromFock::get_output_homo_and_lumo_eigenvectors(), GetDensFromFock::get_puri_stats(), GetDensFromFock::get_result_entropy_term(), GetDensFromFock::get_use_purification(), homoInterval_F_ort_prev, homoInterval_Fprev, mat::VectorGeneral< Treal, Tvector >::is_empty(), LOG_AREA_SCF, LOG_CAT_INFO, lumoInterval_F_ort_prev, lumoInterval_Fprev, SCF::Options::min_number_of_iterations, BasisInfoStruct::noOfBasisFuncs, output_sparsity_symm(), Util::TimeMeter::print(), SCF::Options::puri_compute_eigv_in_each_iteration, SCF::Options::run_shift_and_square_method_on_F, SCF_general::S_symm, SCF_general::SCF_step, SCF_general::scfopts, GetDensFromFock::set_eigs_F_ort_prev(), GetDensFromFock::set_generate_figures(), GetDensFromFock::set_SCF_step(), SCF::Options::shift_using_prev_density_matrix, transform_with_S(), SCF::Options::try_eigv_on_next_iteration_if_fail, UNIT_one_eV, GetDensFromFock::unset_generate_figures(), and SCF::Options::use_prev_vector_as_initial_guess.

void SCF_restricted::get_non_ort_err_mat_normalized_in_ort_basis ( symmMatrix randomMatrix,
int  transform_with_S_also 
) [private]
void SCF_restricted::get_starting_guess_density (  )  [private, virtual]
void SCF_restricted::initialize_homo_lumo_limits (  )  [private, virtual]
void SCF_restricted::initialize_matrices (  )  [private, virtual]
void SCF_restricted::output_density_images (  )  [private, virtual]
void SCF_restricted::output_density_images_orbital ( generalVector eigVec,
const std::string &  filename_id 
) [private]
void SCF_restricted::output_expected_values_pos_operator (  )  [private, virtual]
void SCF_restricted::output_sparsity_S_F_D ( SCF_statistics stats  )  [private, virtual]
void SCF_restricted::report_density_difference (  )  [private, virtual]
void SCF_restricted::report_final_results (  )  [private, virtual]

Implements SCF_general.

void SCF_restricted::save_current_fock_as_fprev (  )  [private, virtual]

Implements SCF_general.

References FockMatrix, and Fprev.

void SCF_restricted::save_density_as_prevdens (  )  [private, virtual]

Implements SCF_general.

References densityMatrix, and Dprev.

void SCF_restricted::save_final_potential (  )  [private, virtual]
void SCF_restricted::save_full_matrices_for_matlab (  )  [private, virtual]
void SCF_restricted::transform_with_invChol ( symmMatrix A  )  [private]
void SCF_restricted::transform_with_S ( symmMatrix A  )  [private]
void SCF_restricted::update_best_fock_so_far (  )  [private, virtual]
void SCF_restricted::update_subspace_diff (  )  [private, virtual]
void SCF_restricted::use_diis_to_get_new_fock_matrix (  )  [private, virtual]
void SCF_restricted::write_density_to_file (  )  [private, virtual]
void SCF_restricted::write_diag_dens_to_file (  )  [private, virtual]
void SCF_restricted::write_matrices_to_file (  )  [private, virtual]

Member Data Documentation

Referenced by get_2e_part_and_energy().

Referenced by get_2e_part_and_energy().

Referenced by get_2e_part_and_energy().


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

Generated on 10 Jul 2018 for ergo by  doxygen 1.6.1