Psi4
Public Member Functions | Private Member Functions | Private Attributes | List of all members
psi::X2CInt Class Reference

Computes the 1e-X2C kinetic and potential integrals. More...

#include <x2cint.h>

Public Member Functions

 X2CInt ()
 
 ~X2CInt ()
 
void compute (std::shared_ptr< BasisSet > basis, std::shared_ptr< BasisSet > x2c_basis, SharedMatrix S, SharedMatrix T, SharedMatrix V)
 

Private Member Functions

void setup (std::shared_ptr< BasisSet > basis, std::shared_ptr< BasisSet > x2c_basis)
 Setup the basis objects, integral factories, etc. More...
 
void compute_integrals ()
 Compute the S, T, V, and W integrals. More...
 
void form_dirac_h ()
 Compute the Hamiltonian and overlap matrices of the modified Dirac equation. More...
 
void diagonalize_dirac_h ()
 Diagonalize the modified Dirac equation. More...
 
void form_X ()
 Form the matrix X. More...
 
void form_R ()
 Form the matrices R and XR. More...
 
void form_h_FW_plus ()
 Form the FW Hamiltonian for positive energy states. More...
 
void write_integrals_to_disk ()
 Write the FW Hamiltonian for positive energy states. More...
 
void test_h_FW_plus ()
 Test the FW Hamiltonian. More...
 
void project ()
 Basis set projection. More...
 

Private Attributes

std::string basis_
 The name of the basis set. More...
 
std::string x2c_basis_
 The name of the basis set. More...
 
bool do_project_
 Do basis set projection? More...
 
std::shared_ptr< IntegralFactoryintegral_
 Integral factory. More...
 
std::shared_ptr< BasisSetaoBasis_
 The basis used to solve the Dirac equation. More...
 
std::shared_ptr< BasisSetaoBasis_contracted_
 
std::shared_ptr< MatrixFactoryssFactory_
 Matrix factory for matrices of dimension 2 nbf x 2 nbf. More...
 
std::shared_ptr< MatrixFactorysoFactory_
 Matrix factory for matrices of dimension nbf x nbf. More...
 
Dimension nsopi_
 Dimension of the orbital basis. More...
 
Dimension nsopi_contracted_
 Dimension of the constracted orbital basis. More...
 
SharedMatrix sMat
 The overlap matrix in the orbital basis. More...
 
SharedMatrix tMat
 The kinetic energy matrix in the orbital basis. More...
 
SharedMatrix vMat
 The potential energy matrix in the orbital basis. More...
 
SharedMatrix wMat
 The spin-free relativistic potential (W = pVp) matrix in the orbital basis. More...
 
SharedMatrix xMat
 The X matrix. More...
 
SharedMatrix rMat
 The R matrix. More...
 
SharedMatrix xrMat
 The XR matrix. More...
 
SharedMatrix S_x2c_
 The X2C overlap matrix. More...
 
SharedMatrix T_x2c_
 The X2C kinetic energy matrix. More...
 
SharedMatrix V_x2c_
 The X2C potential energy matrix. More...
 
SharedMatrix dMat
 The four-component Hamiltonian of the modified Dirac equation. More...
 
SharedMatrix SXMat
 The four-component overlap matrix of the modified Dirac equation. More...
 
SharedMatrix C_LS_Mat
 Eigenvectors of the modified Dirac equation. More...
 
SharedVector E_LS_Mat
 Eigenvalues of the modified Dirac equation. More...
 

Detailed Description

Computes the 1e-X2C kinetic and potential integrals.

Constructor & Destructor Documentation

psi::X2CInt::X2CInt ( )
psi::X2CInt::~X2CInt ( )

Member Function Documentation

void psi::X2CInt::compute ( std::shared_ptr< BasisSet basis,
std::shared_ptr< BasisSet x2c_basis,
SharedMatrix  S,
SharedMatrix  T,
SharedMatrix  V 
)

Computes the X2C kinetic and potential integrals

Parameters
SShared matrix object that will hold the X2C overlap integrals.
TShared matrix object that will hold the X2C kinetic energy integrals.
VShared matrix object that will hold the X2C potential energy integrals.
optionsan Options object used to read basis set information.
void psi::X2CInt::compute_integrals ( )
private

Compute the S, T, V, and W integrals.

void psi::X2CInt::diagonalize_dirac_h ( )
private

Diagonalize the modified Dirac equation.

void psi::X2CInt::form_dirac_h ( )
private

Compute the Hamiltonian and overlap matrices of the modified Dirac equation.

void psi::X2CInt::form_h_FW_plus ( )
private

Form the FW Hamiltonian for positive energy states.

void psi::X2CInt::form_R ( )
private

Form the matrices R and XR.

void psi::X2CInt::form_X ( )
private

Form the matrix X.

void psi::X2CInt::project ( )
private

Basis set projection.

void psi::X2CInt::setup ( std::shared_ptr< BasisSet basis,
std::shared_ptr< BasisSet x2c_basis 
)
private

Setup the basis objects, integral factories, etc.

void psi::X2CInt::test_h_FW_plus ( )
private

Test the FW Hamiltonian.

void psi::X2CInt::write_integrals_to_disk ( )
private

Write the FW Hamiltonian for positive energy states.

Member Data Documentation

std::shared_ptr<BasisSet> psi::X2CInt::aoBasis_
private

The basis used to solve the Dirac equation.

std::shared_ptr<BasisSet> psi::X2CInt::aoBasis_contracted_
private

The basis onto which we project the final FW (Foldy-Wouthuysen) Hamiltonian This is used only if we project (do_project)

std::string psi::X2CInt::basis_
private

The name of the basis set.

SharedMatrix psi::X2CInt::C_LS_Mat
private

Eigenvectors of the modified Dirac equation.

SharedMatrix psi::X2CInt::dMat
private

The four-component Hamiltonian of the modified Dirac equation.

bool psi::X2CInt::do_project_
private

Do basis set projection?

SharedVector psi::X2CInt::E_LS_Mat
private

Eigenvalues of the modified Dirac equation.

std::shared_ptr<IntegralFactory> psi::X2CInt::integral_
private

Integral factory.

Dimension psi::X2CInt::nsopi_
private

Dimension of the orbital basis.

Dimension psi::X2CInt::nsopi_contracted_
private

Dimension of the constracted orbital basis.

SharedMatrix psi::X2CInt::rMat
private

The R matrix.

SharedMatrix psi::X2CInt::S_x2c_
private

The X2C overlap matrix.

SharedMatrix psi::X2CInt::sMat
private

The overlap matrix in the orbital basis.

std::shared_ptr<MatrixFactory> psi::X2CInt::soFactory_
private

Matrix factory for matrices of dimension nbf x nbf.

std::shared_ptr<MatrixFactory> psi::X2CInt::ssFactory_
private

Matrix factory for matrices of dimension 2 nbf x 2 nbf.

SharedMatrix psi::X2CInt::SXMat
private

The four-component overlap matrix of the modified Dirac equation.

SharedMatrix psi::X2CInt::T_x2c_
private

The X2C kinetic energy matrix.

SharedMatrix psi::X2CInt::tMat
private

The kinetic energy matrix in the orbital basis.

SharedMatrix psi::X2CInt::V_x2c_
private

The X2C potential energy matrix.

SharedMatrix psi::X2CInt::vMat
private

The potential energy matrix in the orbital basis.

SharedMatrix psi::X2CInt::wMat
private

The spin-free relativistic potential (W = pVp) matrix in the orbital basis.

std::string psi::X2CInt::x2c_basis_
private

The name of the basis set.

SharedMatrix psi::X2CInt::xMat
private

The X matrix.

SharedMatrix psi::X2CInt::xrMat
private

The XR matrix.


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