ergo
SCF_unrestricted Class Reference

#include <SCF_unrestricted.h>

Inheritance diagram for SCF_unrestricted:
SCF_general

Public Member Functions

 SCF_unrestricted (const Molecule &molecule_, const Molecule &extraCharges_, const BasisInfoStruct &basisInfo_, const IntegralInfo &integralInfo_, const char *guessDmatFileName_, const JK::Params &J_K_params_, const Dft::GridParams &gridParams_, const SCF::Options &scfopts, const SCF::MatOptions &matOpts, ergo_real threshold_integrals_1el_input, int alpha_beta_diff_input)
 ~SCF_unrestricted ()
void get_Fock_matrices (symmMatrix &FockMatrix_a, symmMatrix &FockMatrix_b)
void get_no_of_electrons (int &noOfElectrons_a, int &noOfElectrons_b)
Public Member Functions inherited from SCF_general
void do_SCF_iterations ()
void get_overlap_matrix (symmMatrix &S)
void get_invCholFactor_matrix (triangMatrix &invCholFactor_)
void get_H_core_matrix (symmMatrix &H_core)
void get_energy (ergo_real &E, ergo_real &E_nuclear)

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 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_eigenvalues_files () const
void create_eigenvectors_files () const
void create_eigvec_file (const generalVector &eigVec_alpha, const generalVector &eigVec_beta, const char *vector_name, const char *filename_id) const
void create_gabedit_file () const
void compute_dipole_moment ()
void do_mulliken_pop_stuff ()
void compute_gradient_fixeddens ()
void get_S2 (ergo_real &S2_exact, ergo_real &S2)

Private Attributes

symmMatrix densityMatrix_alpha
symmMatrix densityMatrix_beta
symmMatrix FockMatrix_alpha
symmMatrix FockMatrix_beta
symmMatrix Fprev_alpha
symmMatrix Fprev_beta
symmMatrix Dprev_alpha
symmMatrix Dprev_beta
symmMatrix F_ort_prev_alpha
symmMatrix F_ort_prev_beta
symmMatrix D_ort_prev_alpha
symmMatrix D_ort_prev_beta
symmMatrix bestFockMatrixSoFar_alpha
symmMatrix bestFockMatrixSoFar_beta
symmMatrix bestFockMatrixSoFar2_alpha
symmMatrix bestFockMatrixSoFar2_beta
normalMatrix ErrorMatrix_alpha
normalMatrix ErrorMatrix_beta
symmMatrix G_alpha
symmMatrix G_beta
intervalType homoInterval_F_ort_prev_alpha
intervalType lumoInterval_F_ort_prev_alpha
intervalType homoInterval_F_ort_prev_beta
intervalType lumoInterval_F_ort_prev_beta
intervalType homoInterval_Fprev_alpha
intervalType lumoInterval_Fprev_alpha
intervalType homoInterval_Fprev_beta
intervalType lumoInterval_Fprev_beta
int alpha_beta_diff
int noOfElectrons_alpha
int noOfElectrons_beta
std::vector< generalVectoreigVecOCC_alpha
std::vector< generalVectoreigVecUNOCC_alpha
std::vector< ergo_realeigValOCC_alpha
std::vector< ergo_realeigValUNOCC_alpha
std::vector< generalVectoreigVecOCC_beta
std::vector< generalVectoreigVecUNOCC_beta
std::vector< ergo_realeigValOCC_beta
std::vector< ergo_realeigValUNOCC_beta

Additional Inherited Members

Protected Member Functions inherited from SCF_general
 SCF_general (const Molecule &molecule_, const Molecule &extraCharges_, const BasisInfoStruct &basisInfo_, const IntegralInfo &integralInfo_, const char *guessDmatFileName_, const JK::Params &J_K_params_, const Dft::GridParams &gridParams_, const SCF::Options &scfopts, const SCF::MatOptions &matOpts, ergo_real threshold_integrals_1el_input)
virtual ~SCF_general ()
ergo_real GetEuclideanNormOfMatrix (const symmMatrix &A)
Protected Attributes inherited from SCF_general
const Moleculemolecule
const MoleculeextraCharges
const BasisInfoStructbasisInfo
const IntegralInfointegralInfo
const char * guessDmatFileName
const JK::ParamsJ_K_params
const Dft::GridParamsgridParams
const SCF::Optionsscfopts
const SCF::MatOptionsmatOpts
ergo_real threshold_integrals_1el
JK::ExchWeights CAM_params
int SCF_step
ergo_real nuclearEnergy
ergo_real energy_2el
ergo_real energy
ergo_real energy_2el_core
ergo_real energy_2el_valence
ergo_real energy_of_valence
ergo_real energy_reference
ergo_real electronicEntropyTerm
ergo_real errorMeasure
ergo_real curr_subspace_diff
symmMatrix S_symm
triangMatrix invCholFactor
ergo_real invCholFactor_euclnorm
symmMatrix H_core_Matrix
DIISManagerDIIS
int noOfElectrons
SCF_statisticscurr_cycle_stats
GetDensFromFock DensFromFock

Constructor & Destructor Documentation

◆ SCF_unrestricted()

SCF_unrestricted::SCF_unrestricted ( const Molecule & molecule_,
const Molecule & extraCharges_,
const BasisInfoStruct & basisInfo_,
const IntegralInfo & integralInfo_,
const char * guessDmatFileName_,
const JK::Params & J_K_params_,
const Dft::GridParams & gridParams_,
const SCF::Options & scfopts,
const SCF::MatOptions & matOpts,
ergo_real threshold_integrals_1el_input,
int alpha_beta_diff_input )

◆ ~SCF_unrestricted()

SCF_unrestricted::~SCF_unrestricted ( )

References SCF_general::DIIS.

Member Function Documentation

◆ add_random_disturbance_to_starting_guess()

◆ add_to_DIIS_list()

void SCF_unrestricted::add_to_DIIS_list ( )
privatevirtual

◆ calculate_energy()

◆ check_params()

void SCF_unrestricted::check_params ( )
privatevirtual

Implements SCF_general.

◆ clear_diis_list()

void SCF_unrestricted::clear_diis_list ( )
privatevirtual

Implements SCF_general.

References SCF_general::DIIS.

◆ clear_error_matrices()

void SCF_unrestricted::clear_error_matrices ( )
privatevirtual

Implements SCF_general.

References ErrorMatrix_alpha, and ErrorMatrix_beta.

◆ combine_old_fock_matrices()

void SCF_unrestricted::combine_old_fock_matrices ( ergo_real stepLength)
privatevirtual

◆ compute_dipole_moment()

void SCF_unrestricted::compute_dipole_moment ( )
privatevirtual

◆ compute_gradient_fixeddens()

void SCF_unrestricted::compute_gradient_fixeddens ( )
privatevirtual

Implements SCF_general.

◆ create_eigenvalues_files()

void SCF_unrestricted::create_eigenvalues_files ( ) const
private

◆ create_eigenvectors_files()

void SCF_unrestricted::create_eigenvectors_files ( ) const
privatevirtual

◆ create_eigvec_file()

void SCF_unrestricted::create_eigvec_file ( const generalVector & eigVec_alpha,
const generalVector & eigVec_beta,
const char * vector_name,
const char * filename_id ) const
private

◆ create_gabedit_file()

◆ create_mtx_files_D()

void SCF_unrestricted::create_mtx_files_D ( int const scfIter)
privatevirtual

◆ create_mtx_files_F()

void SCF_unrestricted::create_mtx_files_F ( int const scfIter)
privatevirtual

◆ disturb_dens_matrix()

void SCF_unrestricted::disturb_dens_matrix ( ergo_real subspaceError)
privatevirtual

Implements SCF_general.

◆ disturb_dens_matrix_exact()

void SCF_unrestricted::disturb_dens_matrix_exact ( ergo_real subspaceError)
privatevirtual

Implements SCF_general.

◆ disturb_fock_matrix()

void SCF_unrestricted::disturb_fock_matrix ( ergo_real subspaceError)
privatevirtual

Implements SCF_general.

◆ do_mulliken_pop_stuff()

◆ do_spin_flip()

◆ get_2e_part_and_energy()

◆ get_error_measure()

void SCF_unrestricted::get_error_measure ( )
privatevirtual

◆ get_FDSminusSDF()

◆ get_Fock_matrices()

void SCF_unrestricted::get_Fock_matrices ( symmMatrix & FockMatrix_a,
symmMatrix & FockMatrix_b )

◆ get_new_density_matrix()

◆ get_no_of_electrons()

void SCF_unrestricted::get_no_of_electrons ( int & noOfElectrons_a,
int & noOfElectrons_b )

◆ get_S2()

◆ get_starting_guess_density()

◆ initialize_homo_lumo_limits()

◆ initialize_matrices()

◆ output_density_images()

◆ output_density_images_orbital()

void SCF_unrestricted::output_density_images_orbital ( generalVector & eigVec,
const std::string & filename_id )
private

◆ output_expected_values_pos_operator()

void SCF_unrestricted::output_expected_values_pos_operator ( )
privatevirtual

Implements SCF_general.

References do_output(), LOG_AREA_SCF, and LOG_CAT_ERROR.

◆ output_sparsity_S_F_D()

void SCF_unrestricted::output_sparsity_S_F_D ( SCF_statistics & stats)
privatevirtual

◆ report_density_difference()

void SCF_unrestricted::report_density_difference ( )
privatevirtual

◆ report_final_results()

void SCF_unrestricted::report_final_results ( )
privatevirtual

◆ save_current_fock_as_fprev()

void SCF_unrestricted::save_current_fock_as_fprev ( )
privatevirtual

◆ save_density_as_prevdens()

void SCF_unrestricted::save_density_as_prevdens ( )
privatevirtual

◆ save_final_potential()

void SCF_unrestricted::save_final_potential ( )
privatevirtual

Implements SCF_general.

References do_output(), LOG_AREA_SCF, and LOG_CAT_ERROR.

◆ save_full_matrices_for_matlab()

void SCF_unrestricted::save_full_matrices_for_matlab ( )
privatevirtual

Implements SCF_general.

◆ update_best_fock_so_far()

void SCF_unrestricted::update_best_fock_so_far ( )
privatevirtual

◆ update_subspace_diff()

void SCF_unrestricted::update_subspace_diff ( )
privatevirtual

Implements SCF_general.

◆ use_diis_to_get_new_fock_matrix()

void SCF_unrestricted::use_diis_to_get_new_fock_matrix ( )
privatevirtual

◆ write_density_to_file()

◆ write_diag_dens_to_file()

void SCF_unrestricted::write_diag_dens_to_file ( )
privatevirtual

◆ write_matrices_to_file()

Member Data Documentation

◆ alpha_beta_diff

int SCF_unrestricted::alpha_beta_diff
private

Referenced by SCF_unrestricted().

◆ bestFockMatrixSoFar2_alpha

symmMatrix SCF_unrestricted::bestFockMatrixSoFar2_alpha
private

◆ bestFockMatrixSoFar2_beta

symmMatrix SCF_unrestricted::bestFockMatrixSoFar2_beta
private

◆ bestFockMatrixSoFar_alpha

symmMatrix SCF_unrestricted::bestFockMatrixSoFar_alpha
private

◆ bestFockMatrixSoFar_beta

symmMatrix SCF_unrestricted::bestFockMatrixSoFar_beta
private

◆ D_ort_prev_alpha

symmMatrix SCF_unrestricted::D_ort_prev_alpha
private

◆ D_ort_prev_beta

symmMatrix SCF_unrestricted::D_ort_prev_beta
private

◆ densityMatrix_alpha

◆ densityMatrix_beta

◆ Dprev_alpha

symmMatrix SCF_unrestricted::Dprev_alpha
private

◆ Dprev_beta

symmMatrix SCF_unrestricted::Dprev_beta
private

◆ eigValOCC_alpha

std::vector<ergo_real> SCF_unrestricted::eigValOCC_alpha
private

◆ eigValOCC_beta

std::vector<ergo_real> SCF_unrestricted::eigValOCC_beta
private

◆ eigValUNOCC_alpha

std::vector<ergo_real> SCF_unrestricted::eigValUNOCC_alpha
private

◆ eigValUNOCC_beta

std::vector<ergo_real> SCF_unrestricted::eigValUNOCC_beta
private

◆ eigVecOCC_alpha

std::vector<generalVector> SCF_unrestricted::eigVecOCC_alpha
private

◆ eigVecOCC_beta

std::vector<generalVector> SCF_unrestricted::eigVecOCC_beta
private

◆ eigVecUNOCC_alpha

std::vector<generalVector> SCF_unrestricted::eigVecUNOCC_alpha
private

◆ eigVecUNOCC_beta

std::vector<generalVector> SCF_unrestricted::eigVecUNOCC_beta
private

◆ ErrorMatrix_alpha

normalMatrix SCF_unrestricted::ErrorMatrix_alpha
private

◆ ErrorMatrix_beta

normalMatrix SCF_unrestricted::ErrorMatrix_beta
private

◆ F_ort_prev_alpha

symmMatrix SCF_unrestricted::F_ort_prev_alpha
private

◆ F_ort_prev_beta

symmMatrix SCF_unrestricted::F_ort_prev_beta
private

◆ FockMatrix_alpha

◆ FockMatrix_beta

◆ Fprev_alpha

◆ Fprev_beta

◆ G_alpha

symmMatrix SCF_unrestricted::G_alpha
private

◆ G_beta

symmMatrix SCF_unrestricted::G_beta
private

◆ homoInterval_F_ort_prev_alpha

intervalType SCF_unrestricted::homoInterval_F_ort_prev_alpha
private

◆ homoInterval_F_ort_prev_beta

intervalType SCF_unrestricted::homoInterval_F_ort_prev_beta
private

◆ homoInterval_Fprev_alpha

intervalType SCF_unrestricted::homoInterval_Fprev_alpha
private

◆ homoInterval_Fprev_beta

intervalType SCF_unrestricted::homoInterval_Fprev_beta
private

◆ lumoInterval_F_ort_prev_alpha

intervalType SCF_unrestricted::lumoInterval_F_ort_prev_alpha
private

◆ lumoInterval_F_ort_prev_beta

intervalType SCF_unrestricted::lumoInterval_F_ort_prev_beta
private

◆ lumoInterval_Fprev_alpha

intervalType SCF_unrestricted::lumoInterval_Fprev_alpha
private

◆ lumoInterval_Fprev_beta

intervalType SCF_unrestricted::lumoInterval_Fprev_beta
private

◆ noOfElectrons_alpha

int SCF_unrestricted::noOfElectrons_alpha
private

◆ noOfElectrons_beta

int SCF_unrestricted::noOfElectrons_beta
private

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