.TH "sc::OneBodyWavefunction" 3 "Sun Oct 4 2020" "Version 2.3.1" "MPQC" \" -*- nroff -*- .ad l .nh .SH NAME sc::OneBodyWavefunction \- A \fBOneBodyWavefunction\fP is a \fBMolecularEnergy\fP that solves an effective one-body problem\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBsc::Wavefunction\fP\&. .PP Inherited by \fBsc::ExtendedHuckelWfn\fP, \fBsc::HCoreWfn\fP, and \fBsc::SCF\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBOneBodyWavefunction\fP (\fBStateIn\fP &)" .br .ti -1c .RI "\fBOneBodyWavefunction\fP (const \fBRef\fP< \fBKeyVal\fP > &)" .br .RI "The \fBKeyVal\fP constructor\&. " .ti -1c .RI "void \fBsave_data_state\fP (\fBStateOut\fP &)" .br .RI "Save the base classes (with save_data_state) and the members in the same order that the \fBStateIn\fP CTOR initializes them\&. " .ti -1c .RI "int \fBnelectron\fP ()" .br .RI "Returns the number of electrons\&. " .ti -1c .RI "void \fBset_desired_value_accuracy\fP (double eps)" .br .RI "Overload of \fBFunction::set_desired_value_accuracy()\fP\&. " .ti -1c .RI "\fBRefSCMatrix\fP \fBso_to_mo\fP ()" .br .RI "Returns the \fBSO\fP to MO transformation matrix\&. " .ti -1c .RI "\fBRefSCMatrix\fP \fBorthog_so_to_mo\fP ()" .br .RI "Returns the orthogonal-SO to MO transformation matrix\&. " .ti -1c .RI "\fBRefSCMatrix\fP \fBmo_to_so\fP ()" .br .RI "Returns the MO to \fBSO\fP transformation matrix\&. " .ti -1c .RI "\fBRefSCMatrix\fP \fBmo_to_orthog_so\fP ()" .br .RI "Returns the MO to orthogonal-SO transformation matrix\&. " .ti -1c .RI "\fBRefSCMatrix\fP \fBeigenvectors\fP ()" .br .RI "Deprecated\&. " .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBoso_eigenvectors\fP ()=0" .br .RI "Returns the orthogonal MO (columns) to orthogonal-SO (rows) transformation matrix\&. " .ti -1c .RI "virtual \fBRefDiagSCMatrix\fP \fBeigenvalues\fP ()=0" .br .RI "Returns the MO basis eigenvalues\&. " .ti -1c .RI "virtual double \fBoccupation\fP (int irrep, int vectornum)=0" .br .RI "Returns the occupation\&. " .ti -1c .RI "double \fBoccupation\fP (int vectornum)" .br .RI "Returns the occupation\&. " .ti -1c .RI "virtual int \fBspin_unrestricted\fP ()=0" .br .RI "Return 1 if the alpha orbitals are not equal to the beta orbitals\&. " .ti -1c .RI "virtual double \fBalpha_occupation\fP (int irrep, int vectornum)" .br .RI "Returns the alpha occupation\&. " .ti -1c .RI "virtual double \fBbeta_occupation\fP (int irrep, int vectornum)" .br .RI "Returns the beta occupation\&. " .ti -1c .RI "double \fBalpha_occupation\fP (int vectornum)" .br .RI "Returns the alpha occupation\&. " .ti -1c .RI "double \fBbeta_occupation\fP (int vectornum)" .br .RI "Returns the beta occupation\&. " .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBoso_alpha_eigenvectors\fP ()" .br .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBoso_beta_eigenvectors\fP ()" .br .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBalpha_eigenvectors\fP ()" .br .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBbeta_eigenvectors\fP ()" .br .ti -1c .RI "virtual \fBRefDiagSCMatrix\fP \fBalpha_eigenvalues\fP ()" .br .ti -1c .RI "virtual \fBRefDiagSCMatrix\fP \fBbeta_eigenvalues\fP ()" .br .ti -1c .RI "virtual \fBRefDiagSCMatrix\fP \fBprojected_eigenvalues\fP (const \fBRef\fP< \fBOneBodyWavefunction\fP > &, int alp=1)" .br .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBprojected_eigenvectors\fP (const \fBRef\fP< \fBOneBodyWavefunction\fP > &, int alp=1)" .br .RI "Projects the density into the current basis set\&. " .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBhcore_guess\fP ()" .br .RI "Return a guess vector\&. " .ti -1c .RI "virtual \fBRefSCMatrix\fP \fBhcore_guess\fP (\fBRefDiagSCMatrix\fP &val)" .br .RI "Return a guess vector and the eigenvalues\&. " .ti -1c .RI "void \fBsymmetry_changed\fP ()" .br .RI "Call this if you have changed the molecular symmetry of the molecule contained by this \fBMolecularEnergy\fP\&. " .ti -1c .RI "double \fBorbital\fP (const \fBSCVector3\fP &r, int iorb)" .br .ti -1c .RI "double \fBorbital_density\fP (const \fBSCVector3\fP &r, int iorb, double *orbval=0)" .br .ti -1c .RI "void \fBprint\fP (std::ostream &o=\fBExEnv::out0\fP()) const" .br .RI "Print information about the object\&. " .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "void \fBinit_sym_info\fP ()" .br .ti -1c .RI "int \fBform_occupations\fP (int *&newocc, const int *oldocc)" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "\fBResultRefSymmSCMatrix\fP \fBdensity_\fP" .br .ti -1c .RI "\fBAccResultRefSCMatrix\fP \fBoso_eigenvectors_\fP" .br .ti -1c .RI "\fBAccResultRefDiagSCMatrix\fP \fBeigenvalues_\fP" .br .ti -1c .RI "int \fBnirrep_\fP" .br .ti -1c .RI "int * \fBnvecperirrep_\fP" .br .ti -1c .RI "double * \fBoccupations_\fP" .br .ti -1c .RI "double * \fBalpha_occupations_\fP" .br .ti -1c .RI "double * \fBbeta_occupations_\fP" .br .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP A \fBOneBodyWavefunction\fP is a \fBMolecularEnergy\fP that solves an effective one-body problem\&. .SH "Constructor & Destructor Documentation" .PP .SS "sc::OneBodyWavefunction::OneBodyWavefunction (const \fBRef\fP< \fBKeyVal\fP > &)" .PP The \fBKeyVal\fP constructor\&. .IP "\fB\fCeigenvector_accuracy\fP\fP" 1c Gives the accuracy to which eigenvectors are initially computed\&. The default 1\&.0e-7\&. Accuracies are usually adjusted as needed anyway, so it should not be necessary to change this\&. .PP .PP .SH "Member Function Documentation" .PP .SS "virtual double sc::OneBodyWavefunction::alpha_occupation (int irrep, int vectornum)\fC [virtual]\fP" .PP Returns the alpha occupation\&. The irreducible representation and the vector number within that representation are given as arguments\&. .PP Reimplemented in \fBsc::UnrestrictedSCF\fP, \fBsc::TCSCF\fP, \fBsc::OSSSCF\fP, and \fBsc::HSOSSCF\fP\&. .SS "double sc::OneBodyWavefunction::alpha_occupation (int vectornum)" .PP Returns the alpha occupation\&. The vector number in the MO basis is given as an argument\&. .SS "virtual double sc::OneBodyWavefunction::beta_occupation (int irrep, int vectornum)\fC [virtual]\fP" .PP Returns the beta occupation\&. The irreducible representation and the vector number within that representation are given as arguments\&. .PP Reimplemented in \fBsc::UnrestrictedSCF\fP, \fBsc::TCSCF\fP, \fBsc::OSSSCF\fP, and \fBsc::HSOSSCF\fP\&. .SS "double sc::OneBodyWavefunction::beta_occupation (int vectornum)" .PP Returns the beta occupation\&. The vector number in the MO basis is given as an argument\&. .SS "\fBRefSCMatrix\fP sc::OneBodyWavefunction::eigenvectors ()" .PP Deprecated\&. Use \fBso_to_mo()\fP\&.t() instead\&. .SS "virtual \fBRefSCMatrix\fP sc::OneBodyWavefunction::hcore_guess ()\fC [virtual]\fP" .PP Return a guess vector\&. The guess transforms the orthogonal \fBSO\fP basis to the MO basis\&. .SS "virtual \fBRefSCMatrix\fP sc::OneBodyWavefunction::hcore_guess (\fBRefDiagSCMatrix\fP & val)\fC [virtual]\fP" .PP Return a guess vector and the eigenvalues\&. The guess ransforms the orthogonal \fBSO\fP basis to the MO basis\&. Storage for the eigenvalues will be allocated\&. .SS "\fBRefSCMatrix\fP sc::OneBodyWavefunction::mo_to_orthog_so ()" .PP Returns the MO to orthogonal-SO transformation matrix\&. This returns the same matrix as \fBoso_eigenvectors()\fP\&. .SS "virtual double sc::OneBodyWavefunction::occupation (int irrep, int vectornum)\fC [pure virtual]\fP" .PP Returns the occupation\&. The irreducible representation and the vector number within that representation are given as arguments\&. .PP Implemented in \fBsc::UnrestrictedSCF\fP, \fBsc::HCoreWfn\fP, \fBsc::ExtendedHuckelWfn\fP, \fBsc::HSOSSCF\fP, \fBsc::CLSCF\fP, \fBsc::TCSCF\fP, and \fBsc::OSSSCF\fP\&. .SS "double sc::OneBodyWavefunction::occupation (int vectornum)" .PP Returns the occupation\&. The vector number in the MO basis is given as an argument\&. .SS "virtual \fBRefSCMatrix\fP sc::OneBodyWavefunction::projected_eigenvectors (const \fBRef\fP< \fBOneBodyWavefunction\fP > &, int alp = \fC1\fP)\fC [virtual]\fP" .PP Projects the density into the current basis set\&. Returns an orthogonalized \fBSO\fP to MO transformation with the orbitals\&. .SS "void sc::OneBodyWavefunction::save_data_state (\fBStateOut\fP &)\fC [virtual]\fP" .PP Save the base classes (with save_data_state) and the members in the same order that the \fBStateIn\fP CTOR initializes them\&. This must be implemented by the derived class if the class has data\&. .PP Reimplemented from \fBsc::MolecularEnergy\fP\&. .PP Reimplemented in \fBsc::HCoreWfn\fP\&. .SS "void sc::OneBodyWavefunction::set_desired_value_accuracy (double eps)\fC [virtual]\fP" .PP Overload of \fBFunction::set_desired_value_accuracy()\fP\&. Must update accuracy of the eigenvectors and the eigenvalues .PP Reimplemented from \fBsc::Function\fP\&. .SH "Author" .PP Generated automatically by Doxygen for MPQC from the source code\&.