Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

HSOSSCF Class Reference

The HSOSSCF class is a base for classes implementing a self-consistent procedure for high-spin open-shell molecules. More...

#include <hsosscf.h>

Inheritance diagram for HSOSSCF

Inheritance graph
[legend]
Collaboration diagram for HSOSSCF:

Collaboration graph
[legend]
List of all members.

Public Methods

 HSOSSCF (StateIn &)
 HSOSSCF (const Ref< KeyVal > &)
 The KeyVal constructor. More...

 ~HSOSSCF ()
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. More...

void print (std::ostream &o=ExEnv::out()) const
 Print information about the object.

double occupation (int irrep, int vectornum)
 Returns the occupation. More...

double alpha_occupation (int irrep, int vectornum)
 Returns the alpha occupation. More...

double beta_occupation (int irrep, int vectornum)
 Returns the beta occupation. More...

int n_fock_matrices () const
RefSymmSCMatrix fock (int)
RefSymmSCMatrix effective_fock ()
void symmetry_changed ()
 Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnergy.

int spin_polarized ()
 Return 1 if the alpha density is not equal to the beta density.

RefSymmSCMatrix density ()
 Returns the SO density.

RefSymmSCMatrix alpha_density ()
 Return alpha electron densities in the SO basis.

RefSymmSCMatrix beta_density ()
 Return beta electron densities in the SO basis.


Protected Methods

void set_occupations (const RefDiagSCMatrix &evals)
void init_vector ()
void done_vector ()
void reset_density ()
double new_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 tndocc_
int tnsocc_
int nirrep_
int* initial_ndocc_
int* initial_nsocc_
int* ndocc_
int* nsocc_
ResultRefSymmSCMatrix cl_fock_
ResultRefSymmSCMatrix op_fock_
RefSymmSCMatrix cl_dens_
RefSymmSCMatrix cl_dens_diff_
RefSymmSCMatrix cl_gmat_
RefSymmSCMatrix op_dens_
RefSymmSCMatrix op_dens_diff_
RefSymmSCMatrix op_gmat_
RefSymmSCMatrix cl_hcore_

Detailed Description

The HSOSSCF class is a base for classes implementing a self-consistent procedure for high-spin open-shell molecules.


Constructor & Destructor Documentation

HSOSSCF::HSOSSCF ( const Ref< KeyVal > & )
 

The KeyVal constructor.

total_charge
This integer gives the total charge, , of the molecule. The default is 0.

nsocc
This integer gives the total number of singly occupied orbitals, . If this is not given, then multiplicity will be read.

multiplicity
This integer gives the multiplicity, , of the molecule. The number of singly occupied orbitals is then . If neither nsocc nor multiplicity is given, then if, in consideration of total_charge, the number of electrons is even, the default is 2. Otherwise, it is 1.

ndocc
This integer gives the total number of doubly occupied orbitals . The default .

socc
This vector of integers gives the total number of singly occupied orbitals of each irreducible representation. By default, the singly occupied orbitals will be distributed according to orbital eigenvalues. If socc is given, then docc must be given and they override nsocc, multiplicity, ndocc, and total_charge.

docc
This vector of integers gives the total number of doubly occupied orbitals of each irreducible representation. By default, the singly occupied orbitals will be distributed according to orbital eigenvalues. If docc is given, then socc must be given and they override nsocc, multiplicity, ndocc, and total_charge.

maxiter
This has the same meaning as in the parent class, SCF; however, the default value is 100.

level_shift
This has the same meaning as in the parent class, SCF; however, the default value is 1.0.


Member Function Documentation

double HSOSSCF::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 OneBodyWavefunction.

double HSOSSCF::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 OneBodyWavefunction.

double HSOSSCF::occupation ( int irrep,
int vectornum ) [virtual]
 

Returns the occupation.

The irreducible representation and the vector number within that representation are given as arguments.

Reimplemented from OneBodyWavefunction.

void HSOSSCF::save_data_state ( StateOut & s ) [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 SCF.

Reimplemented in HSOSHF.


The documentation for this class was generated from the following file:
Generated at Thu Oct 4 18:09:12 2001 for MPQC 2.0.0 using the documentation package Doxygen 1.2.5.