28#ifndef _chemistry_qc_wfn_obwfn_h
29#define _chemistry_qc_wfn_obwfn_h
35#include <chemistry/qc/wfn/wfn.h>
49 double *alpha_occupations_;
50 double *beta_occupations_;
58 int form_occupations(
int *&newocc,
const int *oldocc);
178 double orbital(
const SCVector3& r,
int iorb);
179 double orbital_density(
const SCVector3& r,
int iorb,
double* orbval = 0);
195 int ndocc,
int *docc,
int nsocc = 0,
int *socc = 0);
static std::ostream & out0()
Return an ostream that writes from node 0.
int spin_unrestricted()
Return 1 if the alpha orbitals are not equal to the beta orbitals.
int value_implemented() const
Information about the availability of values, gradients, and hessians.
RefDiagSCMatrix eigenvalues()
Returns the MO basis eigenvalues.
RefSymmSCMatrix density()
Returns the SO density.
double occupation(int irrep, int vectornum)
Returns the occupation.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
RefSCMatrix oso_eigenvectors()
Returns the orthogonal MO (columns) to orthogonal-SO (rows) transformation matrix.
int spin_polarized()
Return 1 if the alpha density is not equal to the beta density.
A OneBodyWavefunction is a MolecularEnergy that solves an effective one-body problem.
Definition obwfn.h:41
RefSCMatrix so_to_mo()
These members give metrics and basis transformations using the covariant/contravariant tensor notatio...
virtual RefSCMatrix hcore_guess(RefDiagSCMatrix &val)
Return a guess vector and the eigenvalues.
void symmetry_changed()
Call this if you have changed the molecular symmetry of the molecule contained by this MolecularEnerg...
OneBodyWavefunction(const Ref< KeyVal > &)
The KeyVal constructor.
RefSCMatrix mo_to_so()
Returns the MO to SO transformation matrix.
virtual double beta_occupation(int irrep, int vectornum)
Returns the beta occupation.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
void set_desired_value_accuracy(double eps)
Overload of Function::set_desired_value_accuracy().
virtual int spin_unrestricted()=0
Return 1 if the alpha orbitals are not equal to the beta orbitals.
virtual double occupation(int irrep, int vectornum)=0
Returns the occupation.
virtual RefDiagSCMatrix eigenvalues()=0
Returns the MO basis eigenvalues.
double occupation(int vectornum)
Returns the occupation.
RefSCMatrix eigenvectors()
Deprecated.
double alpha_occupation(int vectornum)
Returns the alpha occupation.
virtual double alpha_occupation(int irrep, int vectornum)
Returns the alpha occupation.
RefSCMatrix orthog_so_to_mo()
Returns the orthogonal-SO to MO transformation matrix.
RefSCMatrix mo_to_orthog_so()
Returns the MO to orthogonal-SO transformation matrix.
int nelectron()
Returns the number of electrons.
virtual RefSCMatrix hcore_guess()
Return a guess vector.
virtual RefSCMatrix oso_eigenvectors()=0
Returns the orthogonal MO (columns) to orthogonal-SO (rows) transformation matrix.
void print(std::ostream &o=ExEnv::out0()) const
Print information about the object.
double beta_occupation(int vectornum)
Returns the beta occupation.
virtual RefSCMatrix projected_eigenvectors(const Ref< OneBodyWavefunction > &, int alp=1)
Projects the density into the current basis set.
The RefDiagSCMatrix class is a smart pointer to an DiagSCMatrix specialization.
Definition matrix.h:380
The RefSCMatrix class is a smart pointer to an SCMatrix specialization.
Definition matrix.h:135
The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix specialization.
Definition matrix.h:261
A template class that maintains references counts.
Definition ref.h:332
Restores objects that derive from SavableState.
Definition statein.h:70
Serializes objects that derive from SavableState.
Definition stateout.h:61
A Wavefunction is a MolecularEnergy that utilizies a GaussianBasisSet.
Definition wfn.h:48