Psi4
Public Types | Public Member Functions | Private Member Functions | List of all members
psi::PopulationAnalysisCalc Class Reference

#include <oeprop.h>

Inheritance diagram for psi::PopulationAnalysisCalc:
psi::Prop

Public Types

typedef std::shared_ptr
< std::vector< double > > 
SharedStdVector
 

Public Member Functions

 PopulationAnalysisCalc (std::shared_ptr< Wavefunction > wfn)
 
virtual ~PopulationAnalysisCalc ()
 
std::tuple< SharedStdVector,
SharedStdVector,
SharedStdVector
compute_mulliken_charges (bool print_output=false)
 Compute Mulliken Charges. More...
 
std::tuple< SharedStdVector,
SharedStdVector,
SharedStdVector
compute_lowdin_charges (bool print_output=false)
 Compute Lowdin Charges. More...
 
std::tuple< SharedMatrix,
SharedMatrix, SharedMatrix,
SharedVector
compute_mayer_indices (bool print_output=false)
 Compute Mayer Bond Indices (non-orthogoal basis) More...
 
std::tuple< SharedMatrix,
SharedMatrix, SharedMatrix,
SharedVector
compute_wiberg_lowdin_indices (bool print_output=false)
 Compute Wiberg Bond Indices using Lowdin Orbitals (symmetrically orthogonal basis) More...
 
std::shared_ptr< std::vector
< std::vector< std::tuple
< double, int, int > > > > 
compute_no_occupations (int max_noon=3, bool print_output=false)
 Compute/display natural orbital occupations around the bandgap. Displays max_num above and below the bandgap. More...
 
- Public Member Functions inherited from psi::Prop
 Prop (std::shared_ptr< Wavefunction > wfn)
 Build a Prop object with C, epsilon, and restricted buit from wfn. More...
 
virtual ~Prop ()
 Virtual destructor. More...
 
void set_wavefunction (std::shared_ptr< Wavefunction > wfn)
 
void set_restricted (bool restricted)
 
void set_epsilon_a (SharedVector epsilon_a)
 
void set_epsilon_b (SharedVector epsilon_a)
 
void set_Ca (SharedMatrix Ca)
 
void set_Cb (SharedMatrix Cb)
 
void set_Da_ao (SharedMatrix Da, int symmetry=0)
 
void set_Db_ao (SharedMatrix Db, int symmetry=0)
 
void set_Da_so (SharedMatrix Da)
 
void set_Db_so (SharedMatrix Db)
 
void set_Da_mo (SharedMatrix Da)
 
void set_Db_mo (SharedMatrix Db)
 
SharedVector epsilon_a ()
 The alpha eigenvalues in the MO basis (used to form Pitzer ordering) More...
 
SharedVector epsilon_b ()
 The alpha eigenvalues in the MO basis (used to form Pitzer ordering) More...
 
SharedMatrix Ca_so ()
 The alpha C matrix in the SO basis. More...
 
SharedMatrix Cb_so ()
 The beta C matrix in the SO basis. More...
 
SharedMatrix Ca_ao ()
 The alpha C matrix in the AO (Spherical Harmonics, C1) basis. Ordered by eigenvalue. More...
 
SharedMatrix Cb_ao ()
 The beta C matrix in the AO (Spherical Harmonics, C1) basis. Ordered by eigenvalue. More...
 
SharedMatrix Da_ao ()
 The alpha density matrix in the AO (Spherical Harmonics, C1) basis. More...
 
SharedMatrix Db_ao ()
 The beta density matrix in the AO (Spherical Harmonics, C1) basis. More...
 
SharedMatrix Da_so ()
 The alpha density matrix in the SO basis. More...
 
SharedMatrix Db_so ()
 The beta density matrix in the SO basis. More...
 
SharedMatrix Da_mo ()
 The alpha density matrix in the MO basis. More...
 
SharedMatrix Db_mo ()
 The beta density matrix in the MO basis. More...
 
SharedMatrix Dt_so (bool total=true)
 The total/spin density matrix in the ao basis, depending on if true or false. More...
 
SharedMatrix Dt_mo (bool total=true)
 The total/spin density matrix in the ao basis, depending on if true or false. More...
 
std::pair< SharedMatrix,
SharedVector
Na_mo ()
 The alpha natural orbital occupations and orbitals in the MO basis. More...
 
std::pair< SharedMatrix,
SharedVector
Nb_mo ()
 The beta natural orbital occupations and orbitals in the MO basis. Throws if restricted. More...
 
std::pair< SharedMatrix,
SharedVector
Nt_mo ()
 The total natural orbital occupations and orbitals in the MO basis. More...
 
std::pair< SharedMatrix,
SharedVector
Na_so ()
 The alpha natural orbital occupations and orbitals in the SO basis. More...
 
std::pair< SharedMatrix,
SharedVector
Nb_so ()
 The beta natural orbital occupations and orbitals in the SO basis. Throws if restricted. More...
 
std::pair< SharedMatrix,
SharedVector
Nt_so ()
 The total natural orbital occupations and orbitals in the SO basis. More...
 
std::pair< SharedMatrix,
SharedVector
Na_ao ()
 The alpha natural orbital occupations and orbitals in the AO basis. More...
 
std::pair< SharedMatrix,
SharedVector
Nb_ao ()
 The beta natural orbital occupations and orbitals in the AO basis. Throws if restricted. More...
 
std::pair< SharedMatrix,
SharedVector
Nt_ao ()
 The total natural orbital occupations and orbitals in the AO basis. More...
 
std::string Da_name () const
 Density Matrix title, used for fallback naming of OEProp compute jobs. More...
 
SharedMatrix overlap_so ()
 

Private Member Functions

 PopulationAnalysisCalc ()
 

Additional Inherited Members

- Protected Member Functions inherited from psi::Prop
void common_init ()
 Common initialization. More...
 
- Protected Attributes inherited from psi::Prop
std::shared_ptr< Wavefunctionwfn_
 The wavefunction object this Prop is built around. More...
 
std::shared_ptr< BasisSetbasisset_
 The basisset for this wavefunction. More...
 
bool same_orbs_
 Is this wavefunction object spin-restricted? (Actually closed-shell, but this is wavefunction's convention) More...
 
bool same_dens_
 
std::shared_ptr< IntegralFactoryintegral_
 The integral factory for this wavefunction's basisset. More...
 
std::shared_ptr< MatrixFactoryfactory_
 The matrix factory for this wavefunction's basisset (SO) More...
 
SharedMatrix AO2USO_
 The AO to USO matrix. More...
 
SharedVector epsilon_a_
 The alpha eigenvalues in the MO basis (used to form Pitzer ordering) More...
 
SharedVector epsilon_b_
 The alpha eigenvalues in the MO basis (used to form Pitzer ordering) More...
 
SharedMatrix Da_so_
 The alpha density matrix in the SO basis. More...
 
SharedMatrix Db_so_
 The beta density matrix in the SO basis. More...
 
SharedMatrix Ca_so_
 The alpha C matrix in the SO basis. More...
 
SharedMatrix Cb_so_
 The beta C matrix in the SO basis. More...
 

Detailed Description

PopulationAnalysisCalc

Class, which carries out popular population analysis, such as Mulliken or Loewdin.

Historically this class was part of OEProp.

It is initialized with a wavefunction. It does not generate any output or populate any environment variables.

If you are looking for previous OEProp functionality (i.e. output and environment exports) OEProp still contains all that.

Member Typedef Documentation

typedef std::shared_ptr<std::vector<double> > psi::PopulationAnalysisCalc::SharedStdVector

Constructor & Destructor Documentation

psi::PopulationAnalysisCalc::PopulationAnalysisCalc ( )
private
psi::PopulationAnalysisCalc::PopulationAnalysisCalc ( std::shared_ptr< Wavefunction wfn)
psi::PopulationAnalysisCalc::~PopulationAnalysisCalc ( )
virtual

Member Function Documentation

std::tuple< PAC::SharedStdVector, PAC::SharedStdVector, PAC::SharedStdVector > psi::PopulationAnalysisCalc::compute_lowdin_charges ( bool  print_output = false)

Compute Lowdin Charges.

std::tuple< SharedMatrix, SharedMatrix, SharedMatrix, SharedVector > psi::PopulationAnalysisCalc::compute_mayer_indices ( bool  print_output = false)

Compute Mayer Bond Indices (non-orthogoal basis)

std::tuple< PAC::SharedStdVector, PAC::SharedStdVector, PAC::SharedStdVector > psi::PopulationAnalysisCalc::compute_mulliken_charges ( bool  print_output = false)

Compute Mulliken Charges.

std::shared_ptr< std::vector< std::vector< std::tuple< double, int, int > > > > psi::PopulationAnalysisCalc::compute_no_occupations ( int  max_noon = 3,
bool  print_output = false 
)

Compute/display natural orbital occupations around the bandgap. Displays max_num above and below the bandgap.

std::tuple< SharedMatrix, SharedMatrix, SharedMatrix, SharedVector > psi::PopulationAnalysisCalc::compute_wiberg_lowdin_indices ( bool  print_output = false)

Compute Wiberg Bond Indices using Lowdin Orbitals (symmetrically orthogonal basis)


The documentation for this class was generated from the following files: