Public Member Functions | Protected Attributes | List of all members
psi::CPHFRHamiltonian Class Reference

#include <hamiltonian.h>

Inheritance diagram for psi::CPHFRHamiltonian:
psi::RHamiltonian psi::Hamiltonian psi::CPKSRHamiltonian

Public Member Functions

 CPHFRHamiltonian (std::shared_ptr< JK > jk, SharedMatrix Caocc, SharedMatrix Cavir, std::shared_ptr< Vector > eps_aocc, std::shared_ptr< Vector > eps_avir, std::shared_ptr< VBase > v=std::shared_ptr< VBase >())
 ~CPHFRHamiltonian () override
void print_header () const override
std::shared_ptr< Vectordiagonal () override
void product (const std::vector< std::shared_ptr< Vector > > &x, std::vector< std::shared_ptr< Vector > > &b) override
virtual std::map< std::string,
pack (const std::map< std::string, std::shared_ptr< Matrix > > &b)
virtual std::vector< SharedMatrixunpack (const std::vector< SharedVector > &x)
- Public Member Functions inherited from psi::RHamiltonian
 RHamiltonian (std::shared_ptr< JK > jk)
 RHamiltonian (std::shared_ptr< JK > jk, std::shared_ptr< VBase > v)
 ~RHamiltonian () override
 Destructor. More...
SharedMatrix explicit_hamiltonian ()
- Public Member Functions inherited from psi::Hamiltonian
 Hamiltonian (std::shared_ptr< JK > jk)
 Hamiltonian (std::shared_ptr< JK > jk, std::shared_ptr< VBase > v)
virtual ~Hamiltonian ()
 Destructor. More...
std::shared_ptr< JKjk () const
std::shared_ptr< VBasev () const
void set_JK (std::shared_ptr< JK > jk)
void set_V (std::shared_ptr< VBase > v)
void set_print (int print)
 Print flag (defaults to 1) More...
void set_debug (int debug)
 Debug flag (defaults to 0) More...
void set_bench (int bench)
 Bench flag (defaults to 0) More...
void set_exact_diagonal (bool diag)
 User the exact diagonal, if available? (defaults to false) More...

Protected Attributes

SharedMatrix Caocc_
SharedMatrix Cavir_
std::shared_ptr< Vectoreps_aocc_
std::shared_ptr< Vectoreps_avir_
- Protected Attributes inherited from psi::Hamiltonian
int print_
 Print flag, defaults to 1. More...
int debug_
 Debug flag, defaults to 0. More...
int bench_
 Bench flag, defaults to 0. More...
bool exact_diagonal_
 Use exact diagonal, if available? More...
std::shared_ptr< JKjk_
 jk object More...
std::shared_ptr< VBasev_
 v object More...

Additional Inherited Members

- Protected Member Functions inherited from psi::Hamiltonian
void common_init ()

Constructor & Destructor Documentation

psi::CPHFRHamiltonian::CPHFRHamiltonian ( std::shared_ptr< JK jk,
SharedMatrix  Caocc,
SharedMatrix  Cavir,
std::shared_ptr< Vector eps_aocc,
std::shared_ptr< Vector eps_avir,
std::shared_ptr< VBase v = std::shared_ptr<VBase>() 
psi::CPHFRHamiltonian::~CPHFRHamiltonian ( )

Member Function Documentation

std::shared_ptr< Vector > psi::CPHFRHamiltonian::diagonal ( )

Return the approximate diagonal of the Hamiltonian (typically orbital energy differences). This is used for vector guess, eigenvector occupation, and preconditioning.

diagonal approximation, blocked by symmetry

Implements psi::RHamiltonian.

std::map< std::string, SharedVector > psi::CPHFRHamiltonian::pack ( const std::map< std::string, std::shared_ptr< Matrix > > &  b)
void psi::CPHFRHamiltonian::print_header ( ) const

Print header information regarding Hamiltonian type on output file

Implements psi::Hamiltonian.

Reimplemented in psi::CPKSRHamiltonian.

void psi::CPHFRHamiltonian::product ( const std::vector< std::shared_ptr< Vector > > &  x,
std::vector< std::shared_ptr< Vector > > &  b 

Form the product Hx for each x found in the argument, placing in second argument

xvector of state functions, blocked by symmetry
bvector of product functions, blocked by symmetry (preallocated)

Implements psi::RHamiltonian.

Reimplemented in psi::CPKSRHamiltonian.

std::vector< SharedMatrix > psi::CPHFRHamiltonian::unpack ( const std::vector< SharedVector > &  x)

Member Data Documentation

SharedMatrix psi::CPHFRHamiltonian::Caocc_
SharedMatrix psi::CPHFRHamiltonian::Cavir_
std::shared_ptr<Vector> psi::CPHFRHamiltonian::eps_aocc_
std::shared_ptr<Vector> psi::CPHFRHamiltonian::eps_avir_

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