sc::UnrestrictedSCF Class Reference

A base class for unrestricted self-consistent-field methods. More...

#include <uscf.h>

Inheritance diagram for sc::UnrestrictedSCF:

sc::SCF sc::OneBodyWavefunction sc::Wavefunction sc::MolecularEnergy sc::Function sc::SavableState sc::Compute sc::DescribedClass sc::RefCount sc::Identity sc::UHF sc::UKS List of all members.

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< SCExtrapErrorextrap_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< SCExtrapDataextrap_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< PointGroupmost_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< TwoBodyInttbi_
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

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.

RefSCMatrix sc::UnrestrictedSCF::eigenvectors (  ) 

Deprecated.

Use so_to_mo().t() instead.

Reimplemented from sc::OneBodyWavefunction.

RefDiagSCMatrix sc::UnrestrictedSCF::eigenvalues (  )  [virtual]

Returns the MO basis eigenvalues.

Reimplemented from sc::SCF.

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.

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.

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::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.

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.

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.


The documentation for this class was generated from the following file:
Generated at Mon Dec 3 23:23:55 2007 for MPQC 2.3.1 using the documentation package Doxygen 1.5.2.