Psi4
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
psi::sapt::SAPT2p Class Reference

#include <sapt2p.h>

Inheritance diagram for psi::sapt::SAPT2p:
psi::sapt::SAPT2 psi::sapt::SAPT psi::Wavefunction psi::sapt::SAPT2p3

Public Member Functions

 SAPT2p (SharedWavefunction Dimer, SharedWavefunction MonomerA, SharedWavefunction MonomerB, Options &options, std::shared_ptr< PSIO >psio)
 
virtual ~SAPT2p ()
 
virtual double compute_energy ()
 Compute energy. Subclasses override this function to compute its energy. More...
 
virtual void amplitudes ()
 
void disp21 ()
 
void disp22sdq ()
 
void disp22t ()
 
void disp2ccd ()
 
void disp22tccd ()
 
- Public Member Functions inherited from psi::sapt::SAPT2
 SAPT2 (SharedWavefunction Dimer, SharedWavefunction MonomerA, SharedWavefunction MonomerB, Options &options, std::shared_ptr< PSIO >psio)
 
virtual ~SAPT2 ()
 
void elst10 ()
 
void exch10_s2 ()
 
void exch10 ()
 
void ind20r ()
 
void exch_ind20r ()
 
void disp20 ()
 
void exch_disp20 ()
 
void elst12 ()
 
void exch11 ()
 
void exch12 ()
 
void ind22 ()
 
- Public Member Functions inherited from psi::sapt::SAPT
 SAPT (SharedWavefunction Dimer, SharedWavefunction MonomerA, SharedWavefunction MonomerB, Options &options, std::shared_ptr< PSIO > psio)
 
virtual ~SAPT ()
 
- Public Member Functions inherited from psi::Wavefunction
 Wavefunction (std::shared_ptr< Molecule > molecule, std::shared_ptr< BasisSet > basis, Options &options)
 Constructor for an entirely new wavefunction with an existing basis. More...
 
 Wavefunction (std::shared_ptr< Molecule > molecule, std::shared_ptr< BasisSet > basis)
 Constructor for an entirely new wavefunction with an existing basis and global options. More...
 
 Wavefunction (Options &options)
 Blank constructor for derived classes. More...
 
void shallow_copy (SharedWavefunction other)
 
void shallow_copy (const Wavefunction *other)
 
void deep_copy (SharedWavefunction other)
 
void deep_copy (const Wavefunction *other)
 
std::shared_ptr< Wavefunctionc1_deep_copy (std::shared_ptr< BasisSet > basis)
 
virtual ~Wavefunction ()
 
virtual SharedMatrix compute_gradient ()
 Compute gradient. Subclasses override this function to compute the gradient. More...
 
virtual SharedMatrix compute_hessian ()
 Compute Hessian. Subclasses override this function to compute the Hessian. More...
 
bool same_a_b_orbs () const
 Is this a restricted wavefunction? More...
 
bool same_a_b_dens () const
 
Dimension map_irreps (const Dimension &dimpi)
 
std::shared_ptr< Moleculemolecule () const
 Returns the molecule object that pertains to this wavefunction. More...
 
std::shared_ptr< PSIOpsio () const
 
Optionsoptions () const
 
std::shared_ptr< IntegralFactoryintegral () const
 An integral factory with basisset() on each center. More...
 
std::shared_ptr< BasisSetbasisset () const
 Returns the basis set object that pertains to this wavefunction. More...
 
std::shared_ptr< SOBasisSetsobasisset () const
 Returns the SO basis set object that pertains to this wavefunction. More...
 
std::shared_ptr< BasisSetget_basisset (std::string label)
 Getters and setters for other basis sets. More...
 
void set_basisset (std::string label, std::shared_ptr< BasisSet > basis)
 
bool basisset_exists (std::string label)
 
std::shared_ptr< MatrixFactorymatrix_factory () const
 Returns the MatrixFactory object that pertains to this wavefunction. More...
 
std::shared_ptr< Wavefunctionreference_wavefunction () const
 Returns the reference wavefunction. More...
 
void set_reference_wavefunction (const std::shared_ptr< Wavefunction > wfn)
 Sets the reference wavefunction. More...
 
bool density_fitted () const
 Returns whether this wavefunction was obtained using density fitting or not. More...
 
int get_print () const
 Returns the print level. More...
 
const Dimensiondoccpi () const
 Returns the DOCC per irrep array. More...
 
const Dimensionsoccpi () const
 Returns the SOCC per irrep array. More...
 
const Dimensionnsopi () const
 Returns the number of SOs per irrep array. More...
 
const Dimensionnmopi () const
 Returns the number of MOs per irrep array. More...
 
const Dimensionnalphapi () const
 Returns the number of alpha electrons per irrep array. More...
 
const Dimensionnbetapi () const
 Returns the number of beta electrons per irrep array. More...
 
const Dimensionfrzcpi () const
 Returns the frozen core orbitals per irrep array. More...
 
const Dimensionfrzvpi () const
 Returns the frozen virtual orbitals per irrep array. More...
 
void set_doccpi (const Dimension &doccpi)
 
void set_soccpi (const Dimension &soccpi)
 
void set_frzvpi (const Dimension &frzvpi)
 Sets the frozen virtual orbitals per irrep array. More...
 
int nfrzc () const
 Return the number of frozen core orbitals. More...
 
int nalpha () const
 Return the number of alpha electrons. More...
 
int nbeta () const
 Return the number of beta electrons. More...
 
int nso () const
 Returns the number of SOs. More...
 
int nmo () const
 Returns the number of MOs. More...
 
int nirrep () const
 Returns the number of irreps. More...
 
double reference_energy () const
 Returns the reference energy. More...
 
double efzc () const
 Returns the frozen-core energy. More...
 
void set_efzc (double efzc)
 Sets the frozen-core energy. More...
 
SharedMatrix S () const
 Returns the overlap matrix. More...
 
SharedMatrix H () const
 Returns the core Hamiltonian matrix. More...
 
SharedMatrix Ca () const
 Returns the alpha electrons MO coefficients. More...
 
SharedMatrix Cb () const
 Returns the beta electrons MO coefficients. More...
 
SharedMatrix Fa () const
 Returns the (SO basis) alpha Fock matrix. More...
 
SharedMatrix Fb () const
 Returns the (SO basis) beta Fock matrix. More...
 
SharedVector epsilon_a () const
 Returns the alpha orbital energies. More...
 
SharedVector epsilon_b () const
 Returns the beta orbital energies. More...
 
SharedMatrix Lagrangian () const
 Returns the SO basis Lagrangian. More...
 
SharedMatrix aotoso () const
 
const SharedMatrix Da () const
 Returns the alpha OPDM for the wavefunction. More...
 
SharedMatrix Db () const
 Returns the beta OPDM for the wavefunction. More...
 
SharedMatrix Ca_subset (const std::string &basis="SO", const std::string &subset="ALL") const
 
SharedMatrix Cb_subset (const std::string &basis="SO", const std::string &subset="ALL") const
 
OrbitalSpace alpha_orbital_space (const std::string &id, const std::string &basis="SO", const std::string &subset="ALL")
 Creates an OrbitalSpace object containing information about the request alpha orbital space. More...
 
OrbitalSpace beta_orbital_space (const std::string &id, const std::string &basis="SO", const std::string &subset="ALL")
 Creates an OrbitalSpace object containing information about the request beta orbital space. More...
 
SharedMatrix Da_subset (const std::string &basis="SO") const
 
SharedMatrix Db_subset (const std::string &basis="SO") const
 
SharedMatrix D_subset_helper (SharedMatrix D, SharedMatrix C, const std::string &basis) const
 
SharedMatrix Fa_subset (const std::string &basis="SO") const
 
SharedMatrix Fb_subset (const std::string &basis="SO") const
 
SharedMatrix F_subset_helper (SharedMatrix F, SharedMatrix C, const std::string &basis) const
 
SharedMatrix matrix_subset_helper (SharedMatrix M, SharedMatrix C, const std::string &basis, const std::string matrix_basename) const
 
SharedVector epsilon_a_subset (const std::string &basis="SO", const std::string &subset="ALL") const
 
SharedVector epsilon_b_subset (const std::string &basis="SO", const std::string &subset="ALL") const
 
SharedMatrix basis_projection (SharedMatrix Cold, Dimension noccpi, std::shared_ptr< BasisSet > old_basis, std::shared_ptr< BasisSet > new_basis)
 
SharedMatrix X () const
 Returns the Lagrangian in SO basis for the wavefunction. More...
 
SharedMatrix gradient () const
 Returns the gradient. More...
 
void set_gradient (SharedMatrix &grad)
 Set the gradient for the wavefunction. More...
 
SharedMatrix hessian () const
 Returns the Hessian. More...
 
void set_hessian (SharedMatrix &hess)
 Set the Hessian for the wavefunction. More...
 
std::shared_ptr< std::vector
< double > > 
atomic_point_charges () const
 Returns the atomic point charges. More...
 
SharedVector get_atomic_point_charges () const
 Returns the atomic point charges in Vector form for python output. More...
 
void set_atomic_point_charges (const std::shared_ptr< std::vector< double >> &apcs)
 Sets the atomic point charges. More...
 
SharedVector frequencies () const
 Returns the frequencies. More...
 
void set_frequencies (SharedVector &freqs)
 Set the frequencies for the wavefunction. More...
 
SharedVector normalmodes () const
 Returns the normalmodes. More...
 
void set_normalmodes (SharedVector &norms)
 Set the normalmodes for the wavefunction. More...
 
void set_name (const std::string &name)
 Set the wavefunction name (e.g. "RHF", "ROHF", "UHF", "CCEnergyWavefunction") More...
 
const std::string & name () const
 Returns the wavefunction name. More...
 
void set_print (size_t print)
 
void set_debug (size_t debug)
 
virtual void save () const
 Save the wavefunction to checkpoint. More...
 
void set_external_potential (std::shared_ptr< ExternalPotential > external)
 
double get_variable (const std::string key)
 Get and set variables dictionary. More...
 
void set_variable (const std::string key, double value)
 
std::map< std::string, double > variables (void)
 
SharedMatrix get_array (const std::string key)
 Get and set arrays dictionary. More...
 
void set_array (const std::string key, SharedMatrix value)
 
std::map< std::string,
SharedMatrix
arrays (void)
 

Protected Member Functions

void gARARxtARBS (int, const char *, const char, int, const char *, const char *, const char *, int, int, int, int, int, int, int, const char *)
 
double disp21_1 (int, const char *, const char *, int, int, int, int)
 
double disp21_2 (int, const char *, const char *, int, int)
 
double disp211 ()
 
double disp220s (int, const char *, const char *, int, const char *, const char *, int, int, int)
 
double disp220d_1 (int, const char *, const char *, int, const char *, int, int, int)
 
double disp220d_2 (int, const char *, const char *, int, const char *, int, int, int, int, int, int, double *, double *, const char)
 
double disp220q_1 (int, const char *, const char *, const char *, int, int)
 
double disp220q_2 (int, const char *, const char *, const char *, int, const char *, int, int, int)
 
double disp220q_3 (int, const char *, const char *, const char, int, const char *, int, int, int, int, int, int)
 
double disp220q_4 (int, const char *, const char *, const char, int, const char *, int, int, int, int, int, int)
 
double disp220t (int, const char *, const char *, const char *, int, const char *, int, const char *, int, int, int, int, int, int, double *, double *)
 
void r_ccd_prep (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, int, const char *, int, const char *, double *, double *, int, int, int, int, int, int)
 
double r_ccd_energy (const char *, const char *, int, int, int, int)
 
double r_ccd_iterate (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, double *, int, int, int, int, int, int)
 
double r_ccd_amplitudes (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, double *, int, int, int, int, int, int)
 
void s_ccd_prep (const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, int, int, int, int, int, int)
 
double s_ccd_iterate (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, int, int, int, std::shared_ptr< Matrix >)
 
double s_ccd_amplitudes (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, int, int, int, std::shared_ptr< Matrix >)
 
void ccd_prep (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, int, const char *, const char *, const char *, double *, int, int, int, std::shared_ptr< Matrix >, const char *)
 
double ccd_energy (const char *, const char *, int, int)
 
void ccd_iterate (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, int, int, int, std::shared_ptr< Matrix >)
 
double ccd_amplitudes (const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, double *, int, int, int, std::shared_ptr< Matrix >)
 
void vvvv_prep (const char *, const char *, double **, int, int, std::shared_ptr< Matrix >)
 
double ** vvvv_ccd (const char *, const char *, const char *, int, int, std::shared_ptr< Matrix >)
 
std::shared_ptr< Matrixmo2no (int ampfile, const char *VV_opdm, int nvir, double cutoff)
 
double ** read_IJKL (int, char *, int, int)
 
void write_IJKL (double **, int, const char *, int, int)
 
void disp_s_prep (const char *, const char *, const char *, const char *, int, const char *, const char *, const char *, int, const char *, double *, int, int, int, int, int, int)
 
void natural_orbitalify_ccd ()
 
double disp220tccd (int, const char *, int, const char *, const char *, int, const char *, int, const char *, const char *, double *, double *, int, int, int, int, int, int)
 
- Protected Member Functions inherited from psi::sapt::SAPT2
double ** get_AA_ints (const int, int=0, int=0)
 
double ** get_diag_AA_ints (const int)
 
double ** get_AR_ints (const int, int=0)
 
double ** get_RR_ints (const int)
 
double ** get_BB_ints (const int, int=0, int=0)
 
double ** get_diag_BB_ints (const int)
 
double ** get_BS_ints (const int, int=0)
 
double ** get_SS_ints (const int)
 
double ** get_AB_ints (const int, int=0, int=0)
 
double ** get_AS_ints (const int, int=0)
 
double ** get_RB_ints (const int, int=0)
 
void df_integrals ()
 
void w_integrals ()
 
double ** get_DF_ints (int, const char *, int, int, int, int)
 
double ** get_DF_ints_nongimp (int, const char *, int, int, int, int)
 
void antisym (double *, int, int)
 
void antisym (double **, int, int)
 
void cphf_solver (double **, double **, double *, int, const char *, const char *, const char *, int, int)
 
void exch_ind20rA_B ()
 
void exch_ind20rB_A ()
 
void tOVOV (int, const char *, int, int, int, double *, int, const char *, int, int, int, double *, int, const char *)
 
void pOOpVV (int, const char *, const char *, int, int, int, const char *, const char *)
 
void theta (int, const char *, const char, bool, int, int, int, int, const char *, int, const char *)
 
void Y2 (int, const char *, const char *, const char *, int, const char *, const char *, const char *, int, int, int, double *, int, const char *, const char *)
 
void Y2_1 (double **, int, const char *, const char *, int, const char *, int, int, int)
 
void Y2_2 (double **, int, const char *, const char *, int, const char *, int, int, int)
 
void Y2_3 (double **, int, const char *, const char *, int, const char *, int, int, int)
 
void t2OVOV (int, const char *, const char *, int, const char *, const char *, const char *, int, int, int, double *, int, const char *)
 
void t2OVOV (int, const char *, const char *, const char *, int, const char *, const char *, const char *, const char *, int, int, int, int, double *, double **, int, const char *)
 
void OVOpVp_to_OVpOpV (double *, int, int)
 
void ijkl_to_ikjl (double *, int, int, int, int)
 
void symmetrize (double *, int, int)
 
void natural_orbitalify (int, const char *, double *evals, int, int, int, const char)
 
void natural_orbitalify_df_ints ()
 
double elst120 (double **, double **, double **, int, const char *, const char *, const char *, int, int, int)
 
double exch110 (int, const char *)
 
double exch101 (int, const char *)
 
double exch111 ()
 
double exch120_k2f ()
 
double exch102_k2f ()
 
double exch120_k11u_1 ()
 
double exch102_k11u_1 ()
 
double exch120_k11u_2 ()
 
double exch102_k11u_2 ()
 
double exch120_k11u_3 ()
 
double exch102_k11u_3 ()
 
double exch120_k11u_4 ()
 
double exch102_k11u_4 ()
 
double exch120_k11u_5 ()
 
double exch102_k11u_5 ()
 
double exch120_k11u_6 ()
 
double exch102_k11u_6 ()
 
double ind220 ()
 
double ind202 ()
 
double ind220_1 (int, const char *, const char *, const char *, int, const char *, double **, double **, double **, int, int, int, double *)
 
double ind220_2 (int, const char *, double **, double **, double **, int, int, int)
 
double ind220_3 (int, const char *, const char *, double **, double **, int, int, int)
 
double ind220_4 (int, const char *, int, const char *, double **, int, int, int)
 
double ind220_5 (int, const char *, double **, int, int, int, double *)
 
double ind220_6 (int, const char *, const char *, const char *, int, const char *, double **, int, int, int)
 
double ind220_7 (int, const char *, const char *, const char *, int, const char *, int, const char *, const char *, const char *, double **, int, int, int, int, int, int)
 
- Protected Member Functions inherited from psi::sapt::SAPT
void zero_disk (int, const char *, int, int)
 
- Protected Member Functions inherited from psi::Wavefunction
SharedMatrix C_subset_helper (SharedMatrix C, const Dimension &noccpi, SharedVector epsilon, const std::string &basis, const std::string &subset) const
 Helpers for C/D/epsilon transformers. More...
 
SharedVector epsilon_subset_helper (SharedVector epsilon, const Dimension &noccpi, const std::string &basis, const std::string &subset) const
 
std::vector< std::vector< int > > subset_occupation (const Dimension &noccpi, const std::string &subset) const
 

Protected Attributes

double e_disp21_
 
double e_disp22sdq_
 
double e_disp22t_
 
double e_est_disp22t_
 
double e_sapt2p_
 
double e_disp2d_ccd_
 
double e_disp22s_ccd_
 
double e_disp22t_ccd_
 
double e_est_disp22t_ccd_
 
double e_sapt2p_ccd_
 
bool ccd_disp_
 
int ccd_maxiter_
 
int min_ccd_vecs_
 
int max_ccd_vecs_
 
double ccd_e_conv_
 
double ccd_t_conv_
 
bool mbpt_disp_
 
- Protected Attributes inherited from psi::sapt::SAPT2
size_t no_nvirA_
 
size_t no_nvirB_
 
double * no_evalsA_
 
double * no_evalsB_
 
double ** no_CA_
 
double ** no_CB_
 
int * ioff_
 
int * index2i_
 
int * index2j_
 
int maxiter_
 
double e_conv_
 
double d_conv_
 
bool nat_orbs_t3_
 
bool nat_orbs_t2_
 
bool nat_orbs_v4_
 
double occ_cutoff_
 
double e_elst10_
 
double e_elst12_
 
double e_exch10_
 
double e_exch10_s2_
 
double e_exch11_
 
double e_exch12_
 
double e_ind20_
 
double e_ind22_
 
double e_exch_ind20_
 
double e_exch_ind22_
 
double e_disp20_
 
double e_no_disp20_
 
double e_exch_disp20_
 
double e_sapt0_
 
double e_sapt2_
 
double ** wBAA_
 
double ** wBAR_
 
double ** wBRR_
 
double ** wABB_
 
double ** wABS_
 
double ** wASS_
 
- Protected Attributes inherited from psi::sapt::SAPT
std::shared_ptr< BasisSetribasis_
 
std::shared_ptr< BasisSetelstbasis_
 
std::shared_ptr< BasisSetzero_
 
size_t nsoA_
 
size_t nmoA_
 
size_t nsoB_
 
size_t nmoB_
 
size_t ndf_
 
size_t noccA_
 
size_t foccA_
 
size_t aoccA_
 
size_t noccB_
 
size_t foccB_
 
size_t aoccB_
 
size_t nvirA_
 
size_t nvirB_
 
int NA_
 
int NB_
 
int natomsA_
 
int natomsB_
 
bool elst_basis_
 
long int mem_
 
double exch_scale_alpha_
 
double enuc_
 
double eHF_
 
double schwarz_
 
double * evalsA_
 
double * evalsB_
 
double * diagAA_
 
double * diagBB_
 
double ** CA_
 
double ** CB_
 
double ** CHFA_
 
double ** CHFB_
 
double ** sAB_
 
double ** vABB_
 
double ** vBAA_
 
double ** vAAB_
 
double ** vBAB_
 
std::shared_ptr< SAPTDenominatordenom_
 
size_t nvec_
 
double ** dAR_
 
double ** dBS_
 
- Protected Attributes inherited from psi::Wavefunction
std::string name_
 Name of the wavefunction. More...
 
std::map< std::string,
std::shared_ptr< BasisSet > > 
basissets_
 DF/RI/F12/etc basis sets. More...
 
std::shared_ptr< BasisSetbasisset_
 The ORBITAL basis. More...
 
std::shared_ptr< SOBasisSetsobasisset_
 Primary basis set for SO integrals. More...
 
SharedMatrix AO2SO_
 AO2SO conversion matrix (AO in rows, SO in cols) More...
 
std::shared_ptr< Moleculemolecule_
 Molecule that this wavefunction is run on. More...
 
Optionsoptions_
 Options object. More...
 
std::shared_ptr< PSIOpsio_
 
std::shared_ptr< IntegralFactoryintegral_
 Integral factory. More...
 
std::shared_ptr< MatrixFactoryfactory_
 Matrix factory for creating standard sized matrices. More...
 
std::shared_ptr< Wavefunctionreference_wavefunction_
 
long int memory_
 How much memory you have access to. More...
 
size_t debug_
 Debug flag. More...
 
size_t print_
 Print flag. More...
 
int nalpha_
 Total alpha and beta electrons. More...
 
int nbeta_
 
int nfrzc_
 Total frozen core orbitals. More...
 
Dimension doccpi_
 Number of doubly occupied per irrep. More...
 
Dimension soccpi_
 Number of singly occupied per irrep. More...
 
Dimension frzcpi_
 Number of frozen core per irrep. More...
 
Dimension frzvpi_
 Number of frozen virtuals per irrep. More...
 
Dimension nalphapi_
 Number of alpha electrons per irrep. More...
 
Dimension nbetapi_
 Number of beta electrons per irrep. More...
 
Dimension nsopi_
 Number of so per irrep. More...
 
Dimension nmopi_
 Number of mo per irrep. More...
 
bool density_fitted_
 Whether this wavefunction was obtained using density fitting. More...
 
double energy_
 The energy associated with this wavefunction. More...
 
double efzc_
 Frozen-core energy associated with this wavefunction. More...
 
int nso_
 Total number of SOs. More...
 
int nmo_
 Total number of MOs. More...
 
int nirrep_
 Number of irreps. More...
 
SharedMatrix S_
 Overlap matrix. More...
 
SharedMatrix H_
 Core Hamiltonian matrix. More...
 
SharedMatrix Ca_
 Alpha MO coefficients. More...
 
SharedMatrix Cb_
 Beta MO coefficients. More...
 
SharedMatrix Da_
 Alpha density matrix. More...
 
SharedMatrix Db_
 Beta density matrix. More...
 
SharedMatrix Lagrangian_
 Lagrangian matrix. More...
 
SharedMatrix Fa_
 Alpha Fock matrix. More...
 
SharedMatrix Fb_
 Beta Fock matrix. More...
 
SharedVector epsilon_a_
 Alpha orbital eneriges. More...
 
SharedVector epsilon_b_
 Beta orbital energies. More...
 
SharedMatrix gradient_
 gradient, if available, as natom_ x 3 SharedMatrix More...
 
SharedMatrix hessian_
 Hessian, if available, as natom_*3 x natom_*3 SharedMatrix. More...
 
std::shared_ptr< std::vector
< double > > 
atomic_point_charges_
 If atomic point charges are available they will be here. More...
 
SharedVector frequencies_
 If frequencies are available, they will be here: More...
 
SharedVector normalmodes_
 If normal modes are available, they will be here: More...
 
bool same_a_b_dens_
 Same orbs or dens. More...
 
bool same_a_b_orbs_
 
std::shared_ptr
< ExternalPotential
external_pot_
 
std::map< std::string, double > variables_
 
std::map< std::string,
SharedMatrix
arrays_
 

Private Member Functions

virtual void print_header ()
 
virtual void print_results ()
 

Additional Inherited Members

- Static Public Member Functions inherited from psi::Wavefunction
static void initialize_singletons ()
 

Constructor & Destructor Documentation

psi::sapt::SAPT2p::SAPT2p ( SharedWavefunction  Dimer,
SharedWavefunction  MonomerA,
SharedWavefunction  MonomerB,
Options options,
std::shared_ptr< PSIO psio 
)
psi::sapt::SAPT2p::~SAPT2p ( )
virtual

Member Function Documentation

void psi::sapt::SAPT2p::amplitudes ( )
virtual

Reimplemented from psi::sapt::SAPT2.

Reimplemented in psi::sapt::SAPT2p3.

double psi::sapt::SAPT2p::ccd_amplitudes ( const char *  TARAR,
const char *  TARARerr,
const char *  ThetaARAR,
const char *  GARAR,
const char *  GARRA,
const char *  AAAA,
const char *  ARAR,
const char *  AARR,
const char *  RRRRp,
const char *  RRRRm,
double *  evals,
int  noccA,
int  virA,
int  foccA,
std::shared_ptr< Matrix mo2no 
)
protected

!

// Reduces memory

// Reduces memory

double psi::sapt::SAPT2p::ccd_energy ( const char *  TARAR,
const char *  GARAR,
int  occA,
int  virA 
)
protected
void psi::sapt::SAPT2p::ccd_iterate ( const char *  TARAR,
const char *  TARARerr,
const char *  ThetaARAR,
const char *  GARAR,
const char *  GARRA,
const char *  AAAA,
const char *  ARAR,
const char *  AARR,
const char *  RRRRp,
const char *  RRRRm,
double *  evals,
int  noccA,
int  virA,
int  foccA,
std::shared_ptr< Matrix mo2no 
)
protected
void psi::sapt::SAPT2p::ccd_prep ( const char *  TARAR,
const char *  ThetaARAR,
const char *  GARAR,
const char *  GARRA,
const char *  AAAA,
const char *  ARAR,
const char *  AARR,
const char *  RRRRp,
const char *  RRRRm,
int  DFfile,
const char *  AAints,
const char *  ARints,
const char *  RRints,
double *  evals,
int  noccA,
int  virA,
int  foccA,
std::shared_ptr< Matrix mo2no,
const char *  T2ARAR 
)
protected

!

!

double psi::sapt::SAPT2p::compute_energy ( )
virtual

Compute energy. Subclasses override this function to compute its energy.

Reimplemented from psi::sapt::SAPT2.

Reimplemented in psi::sapt::SAPT2p3.

void psi::sapt::SAPT2p::disp21 ( )
double psi::sapt::SAPT2p::disp211 ( )
protected
double psi::sapt::SAPT2p::disp21_1 ( int  ampfile,
const char *  glabel,
const char *  tlabel,
int  aoccA,
int  nvirA,
int  aoccB,
int  nvirB 
)
protected
double psi::sapt::SAPT2p::disp21_2 ( int  ampfile,
const char *  tlabel,
const char *  thetalabel,
int  aoccA,
int  nvirA 
)
protected
double psi::sapt::SAPT2p::disp220d_1 ( int  ampfile,
const char *  tlabel,
const char *  thetalabel,
int  intfile,
const char *  ARlabel,
int  foccA,
int  noccA,
int  nvirA 
)
protected
double psi::sapt::SAPT2p::disp220d_2 ( int  ampfile,
const char *  glabel,
const char *  thetalabel,
int  intfile,
const char *  BSlabel,
int  foccA,
int  noccA,
int  nvirA,
int  foccB,
int  noccB,
int  nvirB,
double *  evalsA,
double *  evalsB,
const char  trans 
)
protected
double psi::sapt::SAPT2p::disp220q_1 ( int  ampfile,
const char *  tlabel,
const char *  Tlabel,
const char *  thetalabel,
int  aoccA,
int  nvirA 
)
protected
double psi::sapt::SAPT2p::disp220q_2 ( int  ampfile,
const char *  pAAlabel,
const char *  pRRlabel,
const char *  Tlabel,
int  intfile,
const char *  ARlabel,
int  foccA,
int  noccA,
int  nvirA 
)
protected
double psi::sapt::SAPT2p::disp220q_3 ( int  ampfile,
const char *  tARARlabel,
const char *  tARBSlabel,
const char  trans,
int  intfile,
const char *  ARlabel,
int  foccA,
int  noccA,
int  nvirA,
int  foccB,
int  noccB,
int  nvirB 
)
protected
double psi::sapt::SAPT2p::disp220q_4 ( int  ampfile,
const char *  tARARlabel,
const char *  tARBSlabel,
const char  trans,
int  intfile,
const char *  ARlabel,
int  foccA,
int  noccA,
int  nvirA,
int  foccB,
int  noccB,
int  nvirB 
)
protected
double psi::sapt::SAPT2p::disp220s ( int  ampfile,
const char *  tlabel,
const char *  thetalabel,
int  intfile,
const char *  AAlabel,
const char *  RRlabel,
int  foccA,
int  noccA,
int  nvirA 
)
protected
double psi::sapt::SAPT2p::disp220t ( int  AAfile,
const char *  AAlabel,
const char *  ARlabel,
const char *  RRlabel,
int  BBfile,
const char *  BSlabel,
int  ampfile,
const char *  tlabel,
int  foccA,
int  noccA,
int  nvirA,
int  foccB,
int  noccB,
int  nvirB,
double *  evalsA,
double *  evalsB 
)
protected
double psi::sapt::SAPT2p::disp220tccd ( int  AAnum,
const char *  AA_label,
int  Rnum,
const char *  AR_label,
const char *  RR_label,
int  BBnum,
const char *  BS_label,
int  ampnum,
const char *  tarar,
const char *  tbsar,
double *  evalsA,
double *  evalsB,
int  noccA,
int  nvirA,
int  foccA,
int  noccB,
int  nvirB,
int  foccB 
)
protected
void psi::sapt::SAPT2p::disp22sdq ( )
void psi::sapt::SAPT2p::disp22t ( )
void psi::sapt::SAPT2p::disp22tccd ( )
void psi::sapt::SAPT2p::disp2ccd ( )
void psi::sapt::SAPT2p::disp_s_prep ( const char *  TAR,
const char *  TpAR,
const char *  ThetaARAR,
const char *  TARBS,
int  AAfile,
const char *  AAints,
const char *  ARints,
const char *  RRints,
int  BBfile,
const char *  BSints,
double *  evalsA_,
int  noccA_,
int  virA,
int  foccA_,
int  noccB_,
int  virB,
int  foccB_ 
)
protected
void psi::sapt::SAPT2p::gARARxtARBS ( int  ampfile,
const char *  tlabel,
const char  trans,
int  intfile,
const char *  AAlabel,
const char *  ARlabel,
const char *  RRlabel,
int  foccA,
int  noccA,
int  nvirA,
int  foccB,
int  noccB,
int  nvirB,
int  ampout,
const char *  labelout 
)
protected
std::shared_ptr< Matrix > psi::sapt::SAPT2p::mo2no ( int  ampfile,
const char *  VV_opdm,
int  nvir,
double  cutoff 
)
protected
void psi::sapt::SAPT2p::natural_orbitalify_ccd ( )
protected
void psi::sapt::SAPT2p::print_header ( )
privatevirtual

Reimplemented from psi::sapt::SAPT2.

Reimplemented in psi::sapt::SAPT2p3.

void psi::sapt::SAPT2p::print_results ( )
privatevirtual

Reimplemented from psi::sapt::SAPT2.

Reimplemented in psi::sapt::SAPT2p3.

double psi::sapt::SAPT2p::r_ccd_amplitudes ( const char *  TARBS,
const char *  TARBSerr,
const char *  CA_RBS,
const char *  GARRA,
const char *  GBSSB,
const char *  XARAR,
const char *  XAA,
const char *  XRR,
const char *  XBSBS,
const char *  XBB,
const char *  XSS,
double *  evalsA_,
double *  evalsB_,
int  noccA_,
int  virA,
int  foccA_,
int  noccB_,
int  virB,
int  foccB_ 
)
protected
double psi::sapt::SAPT2p::r_ccd_energy ( const char *  TARBS,
const char *  ARBS,
int  occA,
int  virA,
int  occB,
int  virB 
)
protected
double psi::sapt::SAPT2p::r_ccd_iterate ( const char *  TARBS,
const char *  TARBSerr,
const char *  CA_RBS,
const char *  GARRA,
const char *  GBSSB,
const char *  XARAR,
const char *  XAA,
const char *  XRR,
const char *  XBSBS,
const char *  XBB,
const char *  XSS,
const char *  ARBS,
double *  evalsA_,
double *  evalsB_,
int  noccA_,
int  virA,
int  foccA_,
int  noccB_,
int  virB,
int  foccB_ 
)
protected
void psi::sapt::SAPT2p::r_ccd_prep ( const char *  TARBS,
const char *  ARBS,
const char *  CA_RBS,
const char *  TARAR,
const char *  ThetaARAR,
const char *  TBSBS,
const char *  ThetaBSBS,
const char *  GARAR,
const char *  GBSBS,
const char *  XARAR,
const char *  YARAR,
const char *  XAA,
const char *  XRR,
const char *  XBSBS,
const char *  YBSBS,
const char *  XBB,
const char *  XSS,
int  AAfile,
const char *  ARints,
int  BBfile,
const char *  BSints,
double *  evalsA_,
double *  evalsB_,
int  noccA_,
int  virA,
int  foccA_,
int  noccB_,
int  virB,
int  foccB_ 
)
protected
double ** psi::sapt::SAPT2p::read_IJKL ( int  filenum,
char *  label,
int  length_IJ,
int  length_KL 
)
protected
double psi::sapt::SAPT2p::s_ccd_amplitudes ( const char *  SARAR,
const char *  SARARerr,
const char *  CA_RAR,
const char *  TARAR,
const char *  GARAR,
const char *  GARRA,
const char *  AAAA,
const char *  ARAR,
const char *  AARR,
const char *  RRRRp,
const char *  RRRRm,
const char *  XARAR,
const char *  YARAR,
const char *  XAA,
const char *  XRR,
double *  evalsA_,
int  noccA_,
int  virA,
int  foccA_,
std::shared_ptr< Matrix mo2no 
)
protected

!

double psi::sapt::SAPT2p::s_ccd_iterate ( const char *  SARAR,
const char *  SARARerr,
const char *  CA_RAR,
const char *  TARAR,
const char *  GARAR,
const char *  GARRA,
const char *  AAAA,
const char *  ARAR,
const char *  AARR,
const char *  RRRRp,
const char *  RRRRm,
const char *  XARAR,
const char *  YARAR,
const char *  XAA,
const char *  XRR,
double *  evalsA_,
int  noccA_,
int  virA,
int  foccA_,
std::shared_ptr< Matrix mo2no 
)
protected
void psi::sapt::SAPT2p::s_ccd_prep ( const char *  SARAR,
const char *  CA_RAR,
const char *  TARAR,
const char *  ThetaARAR,
const char *  TARBS,
const char *  GBSBS,
const char *  ARBS,
double *  evalsA_,
int  noccA_,
int  virA,
int  foccA_,
int  noccB_,
int  virB,
int  foccB_ 
)
protected
double ** psi::sapt::SAPT2p::vvvv_ccd ( const char *  TARAR,
const char *  RRRRp,
const char *  RRRRm,
int  occA,
int  virA,
std::shared_ptr< Matrix mo2no 
)
protected
void psi::sapt::SAPT2p::vvvv_prep ( const char *  RRRRp,
const char *  RRRRm,
double **  B_p_RR,
int  virA,
int  ndf,
std::shared_ptr< Matrix mo2no 
)
protected
void psi::sapt::SAPT2p::write_IJKL ( double **  A,
int  filenum,
const char *  label,
int  length_IJ,
int  length_KL 
)
protected

Member Data Documentation

bool psi::sapt::SAPT2p::ccd_disp_
protected
double psi::sapt::SAPT2p::ccd_e_conv_
protected
int psi::sapt::SAPT2p::ccd_maxiter_
protected
double psi::sapt::SAPT2p::ccd_t_conv_
protected
double psi::sapt::SAPT2p::e_disp21_
protected
double psi::sapt::SAPT2p::e_disp22s_ccd_
protected
double psi::sapt::SAPT2p::e_disp22sdq_
protected
double psi::sapt::SAPT2p::e_disp22t_
protected
double psi::sapt::SAPT2p::e_disp22t_ccd_
protected
double psi::sapt::SAPT2p::e_disp2d_ccd_
protected
double psi::sapt::SAPT2p::e_est_disp22t_
protected
double psi::sapt::SAPT2p::e_est_disp22t_ccd_
protected
double psi::sapt::SAPT2p::e_sapt2p_
protected
double psi::sapt::SAPT2p::e_sapt2p_ccd_
protected
int psi::sapt::SAPT2p::max_ccd_vecs_
protected
bool psi::sapt::SAPT2p::mbpt_disp_
protected
int psi::sapt::SAPT2p::min_ccd_vecs_
protected

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