#include <scf.h>
Inheritance diagram for sc::SCF:
Public Member Functions | |
SCF (StateIn &) | |
SCF (const Ref< KeyVal > &) | |
The KeyVal constructor. | |
void | save_data_state (StateOut &) |
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. | |
RefSCMatrix | oso_eigenvectors () |
Returns the orthogonal MO (columns) to orthogonal-SO (rows) transformation matrix. | |
RefDiagSCMatrix | eigenvalues () |
Returns the MO basis eigenvalues. | |
int | spin_unrestricted () |
Return 1 if the alpha orbitals are not equal to the beta orbitals. | |
virtual int | n_fock_matrices () const=0 |
virtual RefSymmSCMatrix | fock (int)=0 |
virtual RefSymmSCMatrix | effective_fock ()=0 |
virtual double | one_body_energy () |
virtual void | two_body_energy (double &ec, double &ex) |
void | symmetry_changed () |
Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnergy. | |
void | obsolete () |
Marks all results as being out of date. | |
void | print (std::ostream &o=ExEnv::out0()) const |
Print information about the object. | |
Protected Types | |
enum | Access { Read, Write, Accum } |
Protected Member Functions | |
virtual void | init_threads () |
virtual void | done_threads () |
virtual void | compute () |
Recompute at least the results that have compute true and are not already computed. | |
virtual double | compute_vector (double &, double enuclear) |
virtual Ref< SCExtrapError > | extrap_error () |
virtual void | compute_gradient (const RefSCVector &) |
virtual void | compute_hessian (const RefSymmSCMatrix &) |
virtual void | savestate_iter (int) |
virtual void | savestate_to_file (const std::string &filename) |
signed char * | init_pmax (double *) |
RefSymmSCMatrix | get_local_data (const RefSymmSCMatrix &, double *&, Access) |
virtual void | initial_vector (int needv=1) |
void | init_mem (int) |
void | so_density (const RefSymmSCMatrix &d, double occ, int alp=1) |
int * | read_occ (const Ref< KeyVal > &, const char *name, int nirrep) |
virtual void | set_occupations (const RefDiagSCMatrix &)=0 |
virtual void | init_vector ()=0 |
virtual void | done_vector ()=0 |
virtual double | new_density ()=0 |
virtual void | reset_density ()=0 |
virtual double | scf_energy ()=0 |
virtual Ref< SCExtrapData > | extrap_data ()=0 |
virtual void | ao_fock (double accuracy)=0 |
virtual void | init_gradient ()=0 |
virtual void | done_gradient ()=0 |
virtual RefSymmSCMatrix | lagrangian ()=0 |
virtual RefSymmSCMatrix | gradient_density ()=0 |
virtual void | two_body_deriv (double *)=0 |
virtual void | init_hessian ()=0 |
virtual void | done_hessian ()=0 |
Protected Attributes | |
int | need_vec_ |
int | compute_guess_ |
int | keep_guess_wfn_ |
Ref< OneBodyWavefunction > | guess_wfn_ |
int | always_use_guess_wfn_ |
Ref< SelfConsistentExtrapolation > | extrap_ |
Ref< AccumH > | accumdih_ |
Ref< AccumH > | accumddh_ |
int | maxiter_ |
int | dens_reset_freq_ |
int | reset_occ_ |
int | local_dens_ |
size_t | storage_ |
int | print_all_evals_ |
int | print_occ_evals_ |
double | level_shift_ |
Ref< MessageGrp > | scf_grp_ |
Ref< ThreadGrp > | threadgrp_ |
int | local_ |
Ref< TwoBodyInt > * | tbis_ |
std::string | previous_savestate_file_ |
RefSCMatrix | oso_scf_vector_ |
RefSCMatrix | oso_scf_vector_beta_ |
RefSymmSCMatrix | hcore_ |
The KeyVal constructor.
maxiter
density_reset_frequency
reset_occuptions
level_shift
extrap
memory
local_density
guess_wavefunction
keep_guess_wavefunction
always_use_guess_wavefunction
print_evals
print_occ_evals
virtual void sc::SCF::compute | ( | ) | [protected, virtual] |
Recompute at least the results that have compute true and are not already computed.
This should only be called by Result's members.
Implements sc::Compute.
void sc::SCF::save_data_state | ( | StateOut & | ) | [virtual] |
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.
This must be implemented by the derived class if the class has data.
Reimplemented from sc::OneBodyWavefunction.
Reimplemented in sc::CLKS, sc::HSOSKS, sc::UKS, sc::CLHF, sc::CLSCF, sc::HSOSHF, sc::HSOSSCF, sc::UHF, and sc::UnrestrictedSCF.
RefSCMatrix sc::SCF::oso_eigenvectors | ( | ) | [virtual] |
Returns the orthogonal MO (columns) to orthogonal-SO (rows) transformation matrix.
Implements sc::OneBodyWavefunction.
RefDiagSCMatrix sc::SCF::eigenvalues | ( | ) | [virtual] |
Returns the MO basis eigenvalues.
Implements sc::OneBodyWavefunction.
Reimplemented in sc::UnrestrictedSCF.
void sc::SCF::symmetry_changed | ( | ) | [virtual] |
Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnergy.
Reimplemented from sc::OneBodyWavefunction.
Reimplemented in sc::CLSCF, sc::HSOSSCF, and sc::UnrestrictedSCF.
void sc::SCF::obsolete | ( | ) | [virtual] |
Marks all results as being out of date.
Any subsequent access to results will cause Compute::compute() to be called.
Reimplemented from sc::Wavefunction.