NAME
sc::UnrestrictedSCF -
A base class for unrestricted self-consistent-field methods.
SYNOPSIS
#include <uscf.h>
Inherits sc::SCF.
Inherited by sc::UHF, and sc::UKS.
Public Member Functions
UnrestrictedSCF (StateIn &)
UnrestrictedSCF (const Ref< KeyVal > &)
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 eigenvectors ()
Deprecated.
RefDiagSCMatrix eigenvalues ()
Returns the MO basis eigenvalues.
RefSCMatrix oso_alpha_eigenvectors ()
RefSCMatrix alpha_eigenvectors ()
RefDiagSCMatrix alpha_eigenvalues ()
RefSCMatrix oso_beta_eigenvectors ()
RefSCMatrix beta_eigenvectors ()
RefDiagSCMatrix beta_eigenvalues ()
RefSymmSCMatrix alpha_density ()
Return alpha electron densities in the SO basis.
RefSymmSCMatrix beta_density ()
Return beta electron densities in the SO basis.
RefSymmSCMatrix density ()
Returns the SO density.
void symmetry_changed ()
Call this if you have changed the molecular symmetry of the
molecule contained by this MolecularEnergy.
double occupation (int, int)
Returns the occupation.
double alpha_occupation (int, int)
Returns the alpha occupation.
double beta_occupation (int, int)
Returns the beta occupation.
int spin_polarized ()
Return 1 if the alpha density is not equal to the beta density.
int spin_unrestricted ()
Return 1 if the alpha orbitals are not equal to the beta orbitals.
void print (std::ostream &o=ExEnv::out0()) const
Print information about the object.
int n_fock_matrices () const
RefSymmSCMatrix fock (int i)
Returns alpha (i==0) or beta (i==1) Fock matrix in AO basis
(including XC contribution in KS DFT -- compare this to CLSCF and
HSOSSCF!).
RefSymmSCMatrix effective_fock ()
Spin-unrestricted SCF methods do not define effective Fock matrix,
thus this function should never be called.
void set_desired_value_accuracy (double eps)
Overload of Function::set_desired_value_accuracy().
Protected Member Functions
Ref< SCExtrapError > extrap_error ()
double compute_vector (double &, double enuclear)
void initial_vector (int needv=1)
void set_occupations (const RefDiagSCMatrix &)
void set_occupations (const RefDiagSCMatrix &, const RefDiagSCMatrix &)
void init_vector ()
void done_vector ()
double new_density ()
void reset_density ()
double scf_energy ()
Ref< SCExtrapData > extrap_data ()
void init_gradient ()
void done_gradient ()
RefSymmSCMatrix lagrangian ()
RefSymmSCMatrix gradient_density ()
void init_hessian ()
void done_hessian ()
void two_body_deriv_hf (double *grad, double exchange_fraction)
Protected Attributes
Ref< PointGroup > most_recent_pg_
int user_occupations_
int tnalpha_
int tnbeta_
int nirrep_
int * nalpha_
int * nbeta_
int * initial_nalpha_
int * initial_nbeta_
AccResultRefSCMatrix oso_eigenvectors_beta_
AccResultRefDiagSCMatrix eigenvalues_beta_
ResultRefSymmSCMatrix focka_
ResultRefSymmSCMatrix fockb_
Ref< TwoBodyInt > tbi_
RefSymmSCMatrix densa_
RefSymmSCMatrix densb_
RefSymmSCMatrix gmata_
RefSymmSCMatrix gmatb_
RefSymmSCMatrix diff_densa_
RefSymmSCMatrix diff_densb_
Detailed Description
A base class for unrestricted self-consistent-field methods.
Member Function Documentation
double sc::UnrestrictedSCF::alpha_occupation (int irrep, int vectornum)
[virtual]
Returns the alpha occupation. The irreducible representation and the
vector number within that representation are given as arguments.
Reimplemented from sc::OneBodyWavefunction.
double sc::UnrestrictedSCF::beta_occupation (int irrep, int vectornum)
[virtual]
Returns the beta occupation. The irreducible representation and the
vector number within that representation are given as arguments.
Reimplemented from sc::OneBodyWavefunction.
RefSymmSCMatrix sc::UnrestrictedSCF::effective_fock () [virtual]
Spin-unrestricted SCF methods do not define effective Fock matrix, thus
this function should never be called.
Implements sc::SCF.
RefDiagSCMatrix sc::UnrestrictedSCF::eigenvalues () [virtual]
Returns the MO basis eigenvalues.
Reimplemented from sc::SCF.
RefSCMatrix sc::UnrestrictedSCF::eigenvectors ()
Deprecated. Use so_to_mo().t() instead.
Reimplemented from sc::OneBodyWavefunction.
RefSymmSCMatrix sc::UnrestrictedSCF::fock (int i) [virtual]
Returns alpha (i==0) or beta (i==1) Fock matrix in AO basis (including
XC contribution in KS DFT -- compare this to CLSCF and HSOSSCF!).
Argument i must be 0.
Implements sc::SCF.
double sc::UnrestrictedSCF::occupation (int irrep, int vectornum) [virtual]
Returns the occupation. The irreducible representation and the vector
number within that representation are given as arguments.
Implements sc::OneBodyWavefunction.
void sc::UnrestrictedSCF::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::SCF.
Reimplemented in sc::UKS, and sc::UHF.
void sc::UnrestrictedSCF::set_desired_value_accuracy (double eps) [virtual]
Overload of Function::set_desired_value_accuracy(). Must update
accuracy of the eigenvalues and eigenvectors.
Reimplemented from sc::OneBodyWavefunction.
void sc::UnrestrictedSCF::symmetry_changed () [virtual]
Call this if you have changed the molecular symmetry of the molecule
contained by this MolecularEnergy.
Reimplemented from sc::SCF.
Author
Generated automatically by Doxygen for MPQC from the source code.