Psi4
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
psi::Prop Class Referenceabstract

#include <oeprop.h>

Inheritance diagram for psi::Prop:
psi::OEProp

Public Member Functions

 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...
 
SharedMatrix overlap_so ()
 
void add (const std::string &task)
 Add a single task to the queue. More...
 
void add (std::vector< std::string > tasks)
 Add a set of tasks to the queue. More...
 
void clear ()
 Clear task queue. More...
 
void set_title (const std::string &title)
 Set title for use in saving information. More...
 
virtual void compute ()=0
 Compute properties. More...
 
void set_print (int print)
 
void set_debug (int debug)
 

Protected Member Functions

void common_init ()
 Common initialization. More...
 
virtual void print_header ()=0
 Print header. More...
 

Protected Attributes

int print_
 Print flag. More...
 
int debug_
 Debug flag. More...
 
std::string title_
 The title of this Prop object, for use in saving info. More...
 
std::set< std::string > tasks_
 The set of tasks to complete. More...
 
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...
 
int max_noon_ = 3
 

Detailed Description

The Prop object, base class of OEProp and GridProp objects

Word on the street:

Wavefunction is not finalized, so we have no idea what bases general density matrices/orbital coefficients will be in. Additionally, there are questions of natural/local/canonical orbitals, relaxed/unrelaxed OPDM, and possible special densities such as needed for transition dipoles.

Therefore, the Prop object explicitly stores a mutable set of D/C matrices in the SO basis, and knows how to transform between them at will Additionally, while these are initially ripped from the constructor's wavefunction, substitutions may be made later, to use different orbitals or densities.

Constructor & Destructor Documentation

psi::Prop::Prop ( std::shared_ptr< Wavefunction wfn)

Build a Prop object with C, epsilon, and restricted buit from wfn.

psi::Prop::~Prop ( )
virtual

Virtual destructor.

Member Function Documentation

void psi::Prop::add ( const std::string &  task)

Add a single task to the queue.

void psi::Prop::add ( std::vector< std::string >  tasks)

Add a set of tasks to the queue.

SharedMatrix psi::Prop::Ca_ao ( )

The alpha C matrix in the AO (Spherical Harmonics, C1) basis. Ordered by eigenvalue.

SharedMatrix psi::Prop::Ca_so ( )

The alpha C matrix in the SO basis.

SharedMatrix psi::Prop::Cb_ao ( )

The beta C matrix in the AO (Spherical Harmonics, C1) basis. Ordered by eigenvalue.

SharedMatrix psi::Prop::Cb_so ( )

The beta C matrix in the SO basis.

void psi::Prop::clear ( )

Clear task queue.

void psi::Prop::common_init ( void  )
protected

Common initialization.

virtual void psi::Prop::compute ( )
pure virtual

Compute properties.

Implemented in psi::OEProp.

SharedMatrix psi::Prop::Da_ao ( )

The alpha density matrix in the AO (Spherical Harmonics, C1) basis.

SharedMatrix psi::Prop::Da_mo ( )

The alpha density matrix in the MO basis.

SharedMatrix psi::Prop::Da_so ( )

The alpha density matrix in the SO basis.

SharedMatrix psi::Prop::Db_ao ( )

The beta density matrix in the AO (Spherical Harmonics, C1) basis.

SharedMatrix psi::Prop::Db_mo ( )

The beta density matrix in the MO basis.

SharedMatrix psi::Prop::Db_so ( )

The beta density matrix in the SO basis.

SharedMatrix psi::Prop::Dt_mo ( bool  total = true)

The total/spin density matrix in the ao basis, depending on if true or false.

SharedMatrix psi::Prop::Dt_so ( bool  total = true)

The total/spin density matrix in the ao basis, depending on if true or false.

SharedVector psi::Prop::epsilon_a ( )

The alpha eigenvalues in the MO basis (used to form Pitzer ordering)

SharedVector psi::Prop::epsilon_b ( )

The alpha eigenvalues in the MO basis (used to form Pitzer ordering)

std::pair< SharedMatrix, SharedVector > psi::Prop::Na_ao ( )

The alpha natural orbital occupations and orbitals in the AO basis.

std::pair< SharedMatrix, SharedVector > psi::Prop::Na_mo ( )

The alpha natural orbital occupations and orbitals in the MO basis.

std::pair< SharedMatrix, SharedVector > psi::Prop::Na_so ( )

The alpha natural orbital occupations and orbitals in the SO basis.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nb_ao ( )

The beta natural orbital occupations and orbitals in the AO basis. Throws if restricted.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nb_mo ( )

The beta natural orbital occupations and orbitals in the MO basis. Throws if restricted.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nb_so ( )

The beta natural orbital occupations and orbitals in the SO basis. Throws if restricted.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nt_ao ( )

The total natural orbital occupations and orbitals in the AO basis.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nt_mo ( )

The total natural orbital occupations and orbitals in the MO basis.

std::pair< SharedMatrix, SharedVector > psi::Prop::Nt_so ( )

The total natural orbital occupations and orbitals in the SO basis.

SharedMatrix psi::Prop::overlap_so ( )
virtual void psi::Prop::print_header ( )
protectedpure virtual

Print header.

Implemented in psi::OEProp.

void psi::Prop::set_Ca ( SharedMatrix  Ca)
void psi::Prop::set_Cb ( SharedMatrix  Cb)
void psi::Prop::set_Da_ao ( SharedMatrix  Da,
int  symmetry = 0 
)
void psi::Prop::set_Da_mo ( SharedMatrix  Da)
void psi::Prop::set_Da_so ( SharedMatrix  Da)
void psi::Prop::set_Db_ao ( SharedMatrix  Db,
int  symmetry = 0 
)
void psi::Prop::set_Db_mo ( SharedMatrix  Db)
void psi::Prop::set_Db_so ( SharedMatrix  Db)
void psi::Prop::set_debug ( int  debug)
inline
void psi::Prop::set_epsilon_a ( SharedVector  epsilon_a)
void psi::Prop::set_epsilon_b ( SharedVector  epsilon_a)
void psi::Prop::set_print ( int  print)
inline
void psi::Prop::set_restricted ( bool  restricted)
void psi::Prop::set_title ( const std::string &  title)
inline

Set title for use in saving information.

void psi::Prop::set_wavefunction ( std::shared_ptr< Wavefunction wfn)

Member Data Documentation

SharedMatrix psi::Prop::AO2USO_
protected

The AO to USO matrix.

std::shared_ptr<BasisSet> psi::Prop::basisset_
protected

The basisset for this wavefunction.

SharedMatrix psi::Prop::Ca_so_
protected

The alpha C matrix in the SO basis.

SharedMatrix psi::Prop::Cb_so_
protected

The beta C matrix in the SO basis.

SharedMatrix psi::Prop::Da_so_
protected

The alpha density matrix in the SO basis.

SharedMatrix psi::Prop::Db_so_
protected

The beta density matrix in the SO basis.

int psi::Prop::debug_
protected

Debug flag.

SharedVector psi::Prop::epsilon_a_
protected

The alpha eigenvalues in the MO basis (used to form Pitzer ordering)

Internally, data is held in the SO basis in Pitzer order

SharedVector psi::Prop::epsilon_b_
protected

The alpha eigenvalues in the MO basis (used to form Pitzer ordering)

std::shared_ptr<MatrixFactory> psi::Prop::factory_
protected

The matrix factory for this wavefunction's basisset (SO)

std::shared_ptr<IntegralFactory> psi::Prop::integral_
protected

The integral factory for this wavefunction's basisset.

int psi::Prop::max_noon_ = 3
protected
int psi::Prop::print_
protected

Print flag.

bool psi::Prop::same_dens_
protected
bool psi::Prop::same_orbs_
protected

Is this wavefunction object spin-restricted? (Actually closed-shell, but this is wavefunction's convention)

std::set<std::string> psi::Prop::tasks_
protected

The set of tasks to complete.

std::string psi::Prop::title_
protected

The title of this Prop object, for use in saving info.

std::shared_ptr<Wavefunction> psi::Prop::wfn_
protected

The wavefunction object this Prop is built around.


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