Psi4
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
psi::scf::RHF Class Reference

#include <rhf.h>

Inheritance diagram for psi::scf::RHF:
psi::scf::HF psi::Wavefunction

Public Member Functions

 RHF (SharedWavefunction ref_wfn, std::shared_ptr< SuperFunctional > functional)
 
 RHF (SharedWavefunction ref_wfn, std::shared_ptr< SuperFunctional > functional, Options &options, std::shared_ptr< PSIO > psio)
 
virtual ~RHF ()
 
virtual SharedMatrix Da () const
 
virtual bool same_a_b_orbs () const
 
virtual bool same_a_b_dens () const
 
virtual std::vector< SharedMatrixonel_Hx (std::vector< SharedMatrix > x)
 Hessian-vector computers and solvers. More...
 
virtual std::vector< SharedMatrixtwoel_Hx (std::vector< SharedMatrix > x, bool combine=true, std::string return_basis="MO")
 
virtual std::vector< SharedMatrixcphf_Hx (std::vector< SharedMatrix > x)
 
virtual std::vector< SharedMatrixcphf_solve (std::vector< SharedMatrix > x_vec, double conv_tol=1.e-4, int max_iter=10, int print_lvl=1)
 
- Public Member Functions inherited from psi::scf::HF
int iterations_needed ()
 The number of iterations needed to reach convergence. More...
 
std::shared_ptr< JKjk () const
 The JK object (or null if it has been deleted) More...
 
std::shared_ptr< SuperFunctionalfunctional () const
 The DFT Functional object (or null if it has been deleted) More...
 
std::shared_ptr< VBaseV_potential () const
 The DFT Potential object (or null if it has been deleted) More...
 
double rms_density_error ()
 The RMS error in the density. More...
 
std::shared_ptr< Vectoroccupation_a () const
 Returns the occupation vectors. More...
 
std::shared_ptr< Vectoroccupation_b () const
 
 HF (SharedWavefunction ref_wfn, std::shared_ptr< SuperFunctional > funct, Options &options, std::shared_ptr< PSIO > psio)
 
virtual ~HF ()
 
virtual void initialize ()
 Specialized initialization, compute integrals and does everything to prepare for iterations. More...
 
virtual void iterations ()
 Performs the actual SCF iterations. More...
 
virtual double finalize_E ()
 
virtual double compute_energy ()
 
virtual void semicanonicalize ()
 
void rotate_orbitals (SharedMatrix C, const SharedMatrix x)
 
bool cphf_converged ()
 
int cphf_nfock_builds ()
 
SharedMatrix Va ()
 
SharedMatrix Vb ()
 
void guess_Ca (SharedMatrix Ca)
 
void guess_Cb (SharedMatrix Cb)
 
void reset_occ (bool reset)
 
void set_sad_basissets (std::vector< std::shared_ptr< BasisSet >> basis_vec)
 
void set_sad_fitting_basissets (std::vector< std::shared_ptr< BasisSet >> basis_vec)
 
- Public Member Functions inherited from psi::Wavefunction
 Wavefunction (std::shared_ptr< Molecule > molecule, std::shared_ptr< BasisSet > basis, Options &options)
 Constructor for an entirely new wavefunction with an existing basis. More...
 
 Wavefunction (std::shared_ptr< Molecule > molecule, std::shared_ptr< BasisSet > basis, std::shared_ptr< BasisSet > ecpbasis)
 Constructor for an entirely new wavefunction with an existing basis. More...
 
 Wavefunction (std::shared_ptr< Molecule > molecule, std::shared_ptr< BasisSet > basis)
 Constructor for an entirely new wavefunction with an existing basis and global options. More...
 
 Wavefunction (Options &options)
 Blank constructor for derived classes. More...
 
void shallow_copy (SharedWavefunction other)
 
void shallow_copy (const Wavefunction *other)
 
void deep_copy (SharedWavefunction other)
 
void deep_copy (const Wavefunction *other)
 
virtual ~Wavefunction ()
 
virtual SharedMatrix compute_gradient ()
 Compute gradient. Subclasses override this function to compute the gradient. More...
 
virtual SharedMatrix compute_hessian ()
 Compute Hessian. Subclasses override this function to compute the Hessian. More...
 
bool same_a_b_orbs () const
 Is this a restricted wavefunction? More...
 
bool same_a_b_dens () const
 
Dimension map_irreps (const Dimension &dimpi)
 
std::shared_ptr< Moleculemolecule () const
 Returns the molecule object that pertains to this wavefunction. More...
 
std::shared_ptr< PSIOpsio () const
 
Optionsoptions () const
 
std::shared_ptr< IntegralFactoryintegral () const
 An integral factory with basisset() on each center. More...
 
std::shared_ptr< BasisSetbasisset () const
 Returns the basis set object that pertains to this wavefunction. More...
 
std::shared_ptr< BasisSetecpbasisset () const
 Returns this wavefunction's ECP basisset. More...
 
std::shared_ptr< SOBasisSetsobasisset () const
 Returns the SO basis set object that pertains to this wavefunction. More...
 
std::shared_ptr< BasisSetget_basisset (std::string label)
 Getters and setters for other basis sets. More...
 
void set_basisset (std::string label, std::shared_ptr< BasisSet > basis)
 
bool basisset_exists (std::string label)
 
std::shared_ptr< MatrixFactorymatrix_factory () const
 Returns the MatrixFactory object that pertains to this wavefunction. More...
 
std::shared_ptr< Wavefunctionreference_wavefunction () const
 Returns the reference wavefunction. More...
 
void set_reference_wavefunction (const std::shared_ptr< Wavefunction > wfn)
 Sets the reference wavefunction. More...
 
bool density_fitted () const
 Returns whether this wavefunction was obtained using density fitting or not. More...
 
int get_print () const
 Returns the print level. More...
 
const Dimensiondoccpi () const
 Returns the DOCC per irrep array. More...
 
const Dimensionsoccpi () const
 Returns the SOCC per irrep array. More...
 
const Dimensionnsopi () const
 Returns the number of SOs per irrep array. More...
 
const Dimensionnmopi () const
 Returns the number of MOs per irrep array. More...
 
const Dimensionnalphapi () const
 Returns the number of alpha electrons per irrep array. More...
 
const Dimensionnbetapi () const
 Returns the number of beta electrons per irrep array. More...
 
const Dimensionfrzcpi () const
 Returns the frozen core orbitals per irrep array. More...
 
const Dimensionfrzvpi () const
 Returns the frozen virtual orbitals per irrep array. More...
 
void set_doccpi (const Dimension &doccpi)
 
void set_soccpi (const Dimension &soccpi)
 
void set_frzvpi (const Dimension &frzvpi)
 Sets the frozen virtual orbitals per irrep array. More...
 
int nfrzc () const
 Return the number of frozen core orbitals. More...
 
int nalpha () const
 Return the number of alpha electrons. More...
 
int nbeta () const
 Return the number of beta electrons. More...
 
int nso () const
 Returns the number of SOs. More...
 
int nmo () const
 Returns the number of MOs. More...
 
int nirrep () const
 Returns the number of irreps. More...
 
double reference_energy () const
 Returns the reference energy. More...
 
double efzc () const
 Returns the frozen-core energy. More...
 
void set_efzc (double efzc)
 Sets the frozen-core energy. More...
 
SharedMatrix S () const
 Returns the overlap matrix. More...
 
SharedMatrix H () const
 Returns the core Hamiltonian matrix. More...
 
SharedMatrix Ca () const
 Returns the alpha electrons MO coefficients. More...
 
SharedMatrix Cb () const
 Returns the beta electrons MO coefficients. More...
 
SharedMatrix Fa () const
 Returns the (SO basis) alpha Fock matrix. More...
 
SharedMatrix Fb () const
 Returns the (SO basis) beta Fock matrix. More...
 
std::shared_ptr< Vectorepsilon_a () const
 Returns the alpha orbital energies. More...
 
std::shared_ptr< Vectorepsilon_b () const
 Returns the beta orbital energies. More...
 
std::shared_ptr< MatrixLagrangian () const
 Returns the SO basis Lagrangian. More...
 
virtual std::shared_ptr< Matrixtpdm_gradient_contribution () const
 The two particle density matrix contribution to the gradient. More...
 
SharedMatrix aotoso () const
 
const SharedMatrix Da () const
 Returns the alpha OPDM for the wavefunction. More...
 
SharedMatrix Db () const
 Returns the beta OPDM for the wavefunction. More...
 
SharedMatrix Ca_subset (const std::string &basis="SO", const std::string &subset="ALL")
 
SharedMatrix Cb_subset (const std::string &basis="SO", const std::string &subset="ALL")
 
OrbitalSpace alpha_orbital_space (const std::string &id, const std::string &basis="SO", const std::string &subset="ALL")
 Creates an OrbitalSpace object containing information about the request alpha orbital space. More...
 
OrbitalSpace beta_orbital_space (const std::string &id, const std::string &basis="SO", const std::string &subset="ALL")
 Creates an OrbitalSpace object containing information about the request beta orbital space. More...
 
SharedMatrix Da_subset (const std::string &basis="SO")
 
SharedMatrix Db_subset (const std::string &basis="SO")
 
SharedMatrix D_subset_helper (SharedMatrix D, SharedMatrix C, const std::string &basis)
 
SharedVector epsilon_a_subset (const std::string &basis="SO", const std::string &subset="ALL")
 
SharedVector epsilon_b_subset (const std::string &basis="SO", const std::string &subset="ALL")
 
SharedMatrix basis_projection (SharedMatrix Cold, Dimension noccpi, std::shared_ptr< BasisSet > old_basis, std::shared_ptr< BasisSet > new_basis)
 
SharedMatrix X () const
 Returns the Lagrangian in SO basis for the wavefunction. More...
 
SharedMatrix gradient () const
 Returns the gradient. More...
 
void set_gradient (SharedMatrix &grad)
 Set the gradient for the wavefunction. More...
 
SharedMatrix hessian () const
 Returns the Hessian. More...
 
void set_hessian (SharedMatrix &hess)
 Set the Hessian for the wavefunction. More...
 
std::shared_ptr< std::vector
< double > > 
atomic_point_charges () const
 Returns the atomic point charges. More...
 
std::shared_ptr< Vectorget_atomic_point_charges () const
 Returns the atomic point charges in Vector form for python output. More...
 
void set_atomic_point_charges (const std::shared_ptr< std::vector< double >> &apcs)
 Sets the atomic point charges. More...
 
std::shared_ptr< Vectorfrequencies () const
 Returns the frequencies. More...
 
void set_frequencies (std::shared_ptr< Vector > &freqs)
 Set the frequencies for the wavefunction. More...
 
std::shared_ptr< Vectornormalmodes () const
 Returns the normalmodes. More...
 
void set_normalmodes (std::shared_ptr< Vector > &norms)
 Set the normalmodes for the wavefunction. More...
 
void set_name (const std::string &name)
 Set the wavefunction name (e.g. "RHF", "ROHF", "UHF", "CCEnergyWavefunction") More...
 
const std::string & name () const
 Returns the wavefunction name. More...
 
void set_print (unsigned int print)
 
void set_debug (unsigned int debug)
 
virtual void save () const
 Save the wavefunction to checkpoint. More...
 
double get_variable (const std::string key)
 Get and set variables dictionary. More...
 
void set_variable (const std::string key, double value)
 
std::map< std::string, double > variables (void)
 
SharedMatrix get_array (const std::string key)
 Get and set arrays dictionary. More...
 
void set_array (const std::string key, SharedMatrix value)
 
std::map< std::string,
SharedMatrix
arrays (void)
 

Protected Member Functions

void form_C ()
 Compute the MO coefficients (C_) More...
 
void form_D ()
 Computes the density matrix (D_) More...
 
virtual void damp_update ()
 
double compute_initial_E ()
 
virtual double compute_E ()
 Compute energy for the iteration. More...
 
virtual bool stability_analysis ()
 Check the stability of the wavefunction, and correct (if requested) More...
 
virtual void form_F ()
 
virtual void form_G ()
 
virtual void form_V ()
 Computes the density matrix (V_) More...
 
virtual void compute_orbital_gradient (bool save_fock)
 
bool diis ()
 
bool test_convergency ()
 
void common_init ()
 
virtual void finalize ()
 
void save_density_and_energy ()
 Save the current density and energy. More...
 
virtual int soscf_update (void)
 
- Protected Member Functions inherited from psi::scf::HF
virtual void form_H ()
 Formation of H is the same regardless of RHF, ROHF, UHF. More...
 
void form_Shalf ()
 Formation of S^+1/2 and S^-1/2 are the same. More...
 
virtual void prepare_canonical_orthogonalization ()
 Edit matrices if we are doing canonical orthogonalization. More...
 
void print_occupation ()
 Prints the orbital occupation. More...
 
void common_init ()
 Common initializer. More...
 
void find_occupation ()
 Figure out how to occupy the orbitals in the absence of DOCC and SOCC. More...
 
void MOM ()
 Maximum overlap method for prevention of oscillation/excited state SCF. More...
 
void MOM_start ()
 Start the MOM algorithm (requires one iteration worth of setup) More...
 
void frac ()
 Fractional occupation UHF/UKS. More...
 
void frac_renormalize ()
 Renormalize orbitals to 1.0 before saving. More...
 
void print_stability_analysis (std::vector< std::pair< double, int > > &vec)
 
void compute_fcpi ()
 Determine how many core and virtual orbitals to freeze. More...
 
void compute_fvpi ()
 
void print_orbitals (const char *header, std::vector< std::pair< double, std::pair< const char *, int > > > orbs)
 Prints the orbitals energies and symmetries (helper method) More...
 
void print_orbitals ()
 Prints the orbitals in arbitrary order (works with MOM) More...
 
void print_energies ()
 Prints the energy breakdown from this SCF. More...
 
void print_header ()
 Prints some opening information. More...
 
void print_preiterations ()
 Prints some details about nsopi/nmopi, and initial occupations. More...
 
virtual void integrals ()
 Do any needed integral setup. More...
 
void check_phases ()
 Check MO phases. More...
 
void compute_SAD_guess ()
 SAD Guess and propagation. More...
 
void reset_occupation ()
 Reset to regular occupation from the fractional occupation. More...
 
virtual void guess ()
 Form the guess (gaurantees C, D, and E) More...
 
virtual void diagonalize_F (const SharedMatrix &F, SharedMatrix &C, std::shared_ptr< Vector > &eps)
 
virtual void form_initial_C ()
 
virtual void compute_spin_contamination ()
 
virtual void save_information ()
 
virtual SharedMatrix form_Fia (SharedMatrix Fso, SharedMatrix Cso, int *noccpi)
 
virtual SharedMatrix form_FDSmSDF (SharedMatrix Fso, SharedMatrix Dso)
 
virtual void format_guess ()
 
- Protected Member Functions inherited from psi::Wavefunction
SharedMatrix C_subset_helper (SharedMatrix C, const Dimension &noccpi, SharedVector epsilon, const std::string &basis, const std::string &subset)
 Helpers for C/D/epsilon transformers. More...
 
SharedMatrix F_subset_helper (SharedMatrix F, SharedMatrix C, const std::string &basis)
 
SharedVector epsilon_subset_helper (SharedVector epsilon, const Dimension &noccpi, const std::string &basis, const std::string &subset)
 
std::vector< std::vector< int > > subset_occupation (const Dimension &noccpi, const std::string &subset)
 

Protected Attributes

SharedMatrix D_
 
SharedMatrix Dold_
 
SharedMatrix G_
 
SharedMatrix J_
 
SharedMatrix K_
 
SharedMatrix wK_
 
- Protected Attributes inherited from psi::scf::HF
SharedMatrix T_
 The kinetic energy matrix. More...
 
SharedMatrix V_
 The 1e potential energy matrix. More...
 
SharedMatrix Va_
 The DFT potential matrices (nice naming scheme) More...
 
SharedMatrix Vb_
 
SharedMatrix X_
 The orthogonalization matrix (symmetric or canonical) More...
 
SharedMatrix diag_temp_
 Temporary matrix for diagonalize_F. More...
 
SharedMatrix diag_F_temp_
 Temporary matrix for diagonalize_F. More...
 
SharedMatrix diag_C_temp_
 Temporary matrix for diagonalize_F. More...
 
SharedMatrix Ca_old_
 Old C Alpha matrix (if needed for MOM) More...
 
SharedMatrix Cb_old_
 Old C Beta matrix (if needed for MOM) More...
 
SharedMatrix guess_Ca_
 User defined orbitals. More...
 
SharedMatrix guess_Cb_
 
double energy_threshold_
 Energy convergence threshold. More...
 
double density_threshold_
 Density convergence threshold. More...
 
double Eold_
 Previous iteration's energy and current energy. More...
 
double E_
 
std::map< std::string, double > energies_
 Table of energy components. More...
 
std::vector< std::shared_ptr
< BasisSet > > 
sad_basissets_
 Basis list for SAD. More...
 
std::vector< std::shared_ptr
< BasisSet > > 
sad_fitting_basissets_
 
double Drms_
 The RMS error in the density. More...
 
int maxiter_
 Max number of iterations for HF. More...
 
bool ref_C_
 Fail if we don't converge by maxiter? More...
 
bool fail_on_maxiter_
 Fail if we don't converge by maxiter? More...
 
int iteration_
 Current Iteration. More...
 
bool converged_
 Did the SCF converge? More...
 
double nuclearrep_
 Nuclear repulsion energy. More...
 
bool diis_performed_
 Whether DIIS was performed this iteration, or not. More...
 
bool input_docc_
 DOCC vector from input (if found) More...
 
bool input_socc_
 SOCC vector from input (if found) More...
 
bool broken_symmetry_
 Whether its broken symmetry solution or not. More...
 
Dimension original_doccpi_
 
Dimension original_soccpi_
 
int original_nalpha_
 
int original_nbeta_
 
bool reset_occ_
 
int * so2symblk_
 Mapping arrays. More...
 
int * so2index_
 
std::string scf_type_
 SCF algorithm type. More...
 
std::string old_scf_type_
 
int perturb_h_
 Perturb the Hamiltonian? More...
 
Vector3 perturb_dipoles_
 How big of a perturbation. More...
 
perturb perturb_
 
double integral_threshold_
 The value below which integrals are neglected. More...
 
std::shared_ptr< JKjk_
 The soon to be ubiquitous JK object. More...
 
bool MOM_enabled_
 Are we to do MOM? More...
 
bool MOM_excited_
 Are we to do excited-state MOM? More...
 
bool MOM_started_
 MOM started? More...
 
bool MOM_performed_
 MOM performed? More...
 
bool frac_enabled_
 Are we to fractionally occupy? More...
 
bool frac_performed_
 Frac started? (Same thing as frac_performed_) More...
 
bool initialized_diis_manager_
 DIIS manager intiialized? More...
 
std::shared_ptr< DIISManagerdiis_manager_
 DIIS manager for all SCF wavefunctions. More...
 
int min_diis_vectors_
 How many min vectors for DIIS. More...
 
int max_diis_vectors_
 How many max vectors for DIIS. More...
 
int diis_start_
 When do we start collecting vectors for DIIS. More...
 
int diis_enabled_
 Are we even using DIIS? More...
 
bool soscf_enabled_
 Are we doing second-order convergence acceleration? More...
 
double soscf_r_start_
 What is the gradient threshold that we should start? More...
 
int soscf_min_iter_
 Maximum number of iterations. More...
 
int soscf_max_iter_
 Minimum number of iterations. More...
 
double soscf_conv_
 Break if the residual RMS is less than this. More...
 
double soscf_print_
 Do we print the microiterations? More...
 
double damping_percentage_
 The amount (%) of the previous orbitals to mix in during SCF damping. More...
 
double damping_convergence_
 The energy convergence at which SCF damping is disabled. More...
 
bool damping_enabled_
 Whether to use SCF damping. More...
 
bool damping_performed_
 Whether damping was actually performed this iteration. More...
 
double radius_
 
double thickness_
 
int r_points_
 
int theta_points_
 
int phi_points_
 
std::shared_ptr< SuperFunctionalfunctional_
 DFT variables. More...
 
std::shared_ptr< VBasepotential_
 
int cphf_nfock_builds_
 
bool cphf_converged_
 
int attempt_number_
 
int max_attempts_
 Maximum number of macroiterations to take in e.g. a stability analysis. More...
 
int nelectron_
 The number of electrons. More...
 
int charge_
 The charge of the system. More...
 
int multiplicity_
 The multiplicity of the system (specified as 2 Ms + 1) More...
 
int iterations_needed_
 The number of iterations need to reach convergence. More...
 
- Protected Attributes inherited from psi::Wavefunction
std::string name_
 Name of the wavefunction. More...
 
std::map< std::string,
std::shared_ptr< BasisSet > > 
basissets_
 DF/RI/F12/etc basis sets. More...
 
std::shared_ptr< BasisSetbasisset_
 The ORBITAL basis. More...
 
std::shared_ptr< BasisSetecpbasisset_
 The ECP basis set. More...
 
std::shared_ptr< SOBasisSetsobasisset_
 Primary basis set for SO integrals. More...
 
SharedMatrix AO2SO_
 AO2SO conversion matrix (AO in rows, SO in cols) More...
 
std::shared_ptr< Moleculemolecule_
 Molecule that this wavefunction is run on. More...
 
Optionsoptions_
 Options object. More...
 
std::shared_ptr< PSIOpsio_
 
std::shared_ptr< IntegralFactoryintegral_
 Integral factory. More...
 
std::shared_ptr< MatrixFactoryfactory_
 Matrix factory for creating standard sized matrices. More...
 
std::shared_ptr< Wavefunctionreference_wavefunction_
 
long int memory_
 How much memory you have access to. More...
 
unsigned int debug_
 Debug flag. More...
 
unsigned int print_
 Print flag. More...
 
int nalpha_
 Total alpha and beta electrons. More...
 
int nbeta_
 
int nfrzc_
 Total frozen core orbitals. More...
 
Dimension doccpi_
 Number of doubly occupied per irrep. More...
 
Dimension soccpi_
 Number of singly occupied per irrep. More...
 
Dimension frzcpi_
 Number of frozen core per irrep. More...
 
Dimension frzvpi_
 Number of frozen virtuals per irrep. More...
 
Dimension nalphapi_
 Number of alpha electrons per irrep. More...
 
Dimension nbetapi_
 Number of beta electrons per irrep. More...
 
Dimension nsopi_
 Number of so per irrep. More...
 
Dimension nmopi_
 Number of mo per irrep. More...
 
bool density_fitted_
 Whether this wavefunction was obtained using density fitting. More...
 
double energy_
 The energy associated with this wavefunction. More...
 
double efzc_
 Frozen-core energy associated with this wavefunction. More...
 
int nso_
 Total number of SOs. More...
 
int nmo_
 Total number of MOs. More...
 
int nirrep_
 Number of irreps. More...
 
SharedMatrix S_
 Overlap matrix. More...
 
SharedMatrix H_
 Core Hamiltonian matrix. More...
 
SharedMatrix Horig_
 
SharedMatrix Ca_
 Alpha MO coefficients. More...
 
SharedMatrix Cb_
 Beta MO coefficients. More...
 
SharedMatrix Da_
 Alpha density matrix. More...
 
SharedMatrix Db_
 Beta density matrix. More...
 
SharedMatrix Lagrangian_
 Lagrangian matrix. More...
 
SharedMatrix Fa_
 Alpha Fock matrix. More...
 
SharedMatrix Fb_
 Beta Fock matrix. More...
 
std::shared_ptr< Vectorepsilon_a_
 Alpha orbital eneriges. More...
 
std::shared_ptr< Vectorepsilon_b_
 Beta orbital energies. More...
 
std::vector< void * > precallbacks_
 
std::vector< void * > postcallbacks_
 
SharedMatrix gradient_
 If a gradient is available it will be here: More...
 
SharedMatrix hessian_
 If a Hessian is available it will be here: More...
 
std::shared_ptr< Matrixtpdm_gradient_contribution_
 The TPDM contribution to the gradient. More...
 
std::shared_ptr< std::vector
< double > > 
atomic_point_charges_
 If atomic point charges are available they will be here. More...
 
std::shared_ptr< Vectorfrequencies_
 If frequencies are available, they will be here: More...
 
std::shared_ptr< Vectornormalmodes_
 If normal modes are available, they will be here: More...
 
bool same_a_b_dens_
 Same orbs or dens. More...
 
bool same_a_b_orbs_
 
std::map< std::string, double > variables_
 
std::map< std::string,
SharedMatrix
arrays_
 

Additional Inherited Members

- Static Public Member Functions inherited from psi::Wavefunction
static void initialize_singletons ()
 
- Public Attributes inherited from psi::scf::HF
Vector nuclear_dipole_contribution_
 Nuclear contributions. More...
 
Vector nuclear_quadrupole_contribution_
 
bool pcm_enabled_
 
std::shared_ptr< PCM > hf_pcm_
 
- Protected Types inherited from psi::scf::HF
enum  perturb {
  nothing, dipole_x, dipole_y, dipole_z,
  dipole, embpot, dx, sphere
}
 With what... More...
 

Constructor & Destructor Documentation

psi::scf::RHF::RHF ( SharedWavefunction  ref_wfn,
std::shared_ptr< SuperFunctional functional 
)
psi::scf::RHF::RHF ( SharedWavefunction  ref_wfn,
std::shared_ptr< SuperFunctional functional,
Options options,
std::shared_ptr< PSIO psio 
)
psi::scf::RHF::~RHF ( )
virtual

Member Function Documentation

void psi::scf::RHF::common_init ( void  )
protected
double psi::scf::RHF::compute_E ( )
protectedvirtual

Compute energy for the iteration.

Implements psi::scf::HF.

double psi::scf::RHF::compute_initial_E ( )
protectedvirtual

Computes the initial energy.

Reimplemented from psi::scf::HF.

void psi::scf::RHF::compute_orbital_gradient ( bool  )
protectedvirtual

Compute the orbital gradient

Reimplemented from psi::scf::HF.

std::vector< SharedMatrix > psi::scf::RHF::cphf_Hx ( std::vector< SharedMatrix x)
virtual

Reimplemented from psi::scf::HF.

std::vector< SharedMatrix > psi::scf::RHF::cphf_solve ( std::vector< SharedMatrix x_vec,
double  conv_tol = 1.e-4,
int  max_iter = 10,
int  print_lvl = 1 
)
virtual

Reimplemented from psi::scf::HF.

SharedMatrix psi::scf::RHF::Da ( ) const
virtual
void psi::scf::RHF::damp_update ( )
protectedvirtual

Applies damping to the density update

Reimplemented from psi::scf::HF.

bool psi::scf::RHF::diis ( )
protectedvirtual

Performs DIIS extrapolation

Reimplemented from psi::scf::HF.

void psi::scf::RHF::finalize ( )
protectedvirtual

Clears memory and closes files (Should they be open) prior to correlated code execution Derived classes override it for additional operations and then call HF::finalize()

Reimplemented from psi::scf::HF.

void psi::scf::RHF::form_C ( )
protectedvirtual

Compute the MO coefficients (C_)

Reimplemented from psi::scf::HF.

void psi::scf::RHF::form_D ( )
protectedvirtual

Computes the density matrix (D_)

Reimplemented from psi::scf::HF.

void psi::scf::RHF::form_F ( )
protectedvirtual

Computes the Fock matrix

Implements psi::scf::HF.

void psi::scf::RHF::form_G ( )
protectedvirtual

Forms the G matrix

Push the C matrix on

Implements psi::scf::HF.

void psi::scf::RHF::form_V ( )
protectedvirtual

Computes the density matrix (V_)

Reimplemented from psi::scf::HF.

std::vector< SharedMatrix > psi::scf::RHF::onel_Hx ( std::vector< SharedMatrix x)
virtual

Hessian-vector computers and solvers.

Reimplemented from psi::scf::HF.

virtual bool psi::scf::RHF::same_a_b_dens ( ) const
inlinevirtual
virtual bool psi::scf::RHF::same_a_b_orbs ( ) const
inlinevirtual
void psi::scf::RHF::save_density_and_energy ( )
protectedvirtual

Save the current density and energy.

Implements psi::scf::HF.

int psi::scf::RHF::soscf_update ( void  )
protectedvirtual

Applies second-order convergence acceleration

Reimplemented from psi::scf::HF.

bool psi::scf::RHF::stability_analysis ( )
protectedvirtual

Check the stability of the wavefunction, and correct (if requested)

Reimplemented from psi::scf::HF.

bool psi::scf::RHF::test_convergency ( )
protectedvirtual

Test convergence of the wavefunction

Reimplemented from psi::scf::HF.

std::vector< SharedMatrix > psi::scf::RHF::twoel_Hx ( std::vector< SharedMatrix x,
bool  combine = true,
std::string  return_basis = "MO" 
)
virtual

Reimplemented from psi::scf::HF.

Member Data Documentation

SharedMatrix psi::scf::RHF::D_
protected
SharedMatrix psi::scf::RHF::Dold_
protected
SharedMatrix psi::scf::RHF::G_
protected
SharedMatrix psi::scf::RHF::J_
protected
SharedMatrix psi::scf::RHF::K_
protected
SharedMatrix psi::scf::RHF::wK_
protected

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