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

This class computes overlap integrals and soon overlap integral derivatives. Use an IntegralFactory to create this object. More...

#include <overlap.h>

Inheritance diagram for psi::OverlapInt:
psi::OneBodyAOInt

Public Member Functions

 OverlapInt (std::vector< SphericalTransform > &, std::shared_ptr< BasisSet >, std::shared_ptr< BasisSet >, int deriv=0)
 Constructor, it assumes you are not computing derivatives by default. More...
 
virtual ~OverlapInt ()
 
bool has_deriv1 ()
 Does the method provide first derivatives? More...
 
bool has_deriv2 ()
 Does the method provide second derivatives? More...
 
- Public Member Functions inherited from psi::OneBodyAOInt
virtual ~OneBodyAOInt ()
 
std::shared_ptr< BasisSetbasis ()
 Basis set on center one. More...
 
std::shared_ptr< BasisSetbasis1 ()
 Basis set on center one. More...
 
std::shared_ptr< BasisSetbasis2 ()
 Basis set on center two. More...
 
int nchunk () const
 Number of chunks. Normally 1, but dipoles (3) quadrupoles (6). More...
 
void set_force_cartesian (bool t_f)
 Sets whether we're forcing this object to always generate Cartesian integrals. More...
 
const double * buffer () const
 Buffer where the integrals are placed. More...
 
void compute_shell (int, int)
 Compute the integrals between basis function in the given shell pair. More...
 
virtual void compute (std::vector< SharedMatrix > &result)
 Computes all integrals and stores them in result by default this method throws. More...
 
int deriv () const
 What order of derivative was requested? More...
 
virtual void compute_deriv1 (std::vector< SharedMatrix > &result)
 Computes the first derivatives and stores them in result. More...
 
virtual void compute_deriv2 (std::vector< SharedMatrix > &result)
 Computes the second derivatives and stores them in result. More...
 
virtual void compute_shell_deriv1 (int, int)
 Computes the integrals between basis function in the given shell pair. More...
 
virtual void compute_shell_deriv2 (int, int)
 Computes the integrals between basis function in the given shell pair. More...
 
virtual bool cloneable () const
 Return true if the clone member can be called. By default returns false. More...
 
virtual OneBodyAOIntclone () const
 Returns a clone of this object. By default throws an exception. More...
 
Vector3 origin () const
 Returns the origin (useful for properties) More...
 
void set_origin (const Vector3 &_origin)
 Set the origin (useful for properties) More...
 
void compute (SharedMatrix &result)
 

Private Member Functions

void compute_pair (const GaussianShell &, const GaussianShell &)
 Computes the overlap between a given shell pair. More...
 
void compute_pair_deriv1 (const GaussianShell &s1, const GaussianShell &s2)
 
void compute_pair_deriv2 (const GaussianShell &, const GaussianShell &)
 

Private Attributes

ObaraSaikaTwoCenterRecursion overlap_recur_
 Generic Obara Saika recursion object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from psi::OneBodyAOInt
 OneBodyAOInt (std::vector< SphericalTransform > &, std::shared_ptr< BasisSet > bs1, std::shared_ptr< BasisSet > bs2, int deriv=0)
 
void set_chunks (int nchunk)
 
void pure_transform (const GaussianShell &, const GaussianShell &, int=1)
 
void normalize_am (const GaussianShell &, const GaussianShell &, int nchunk=1)
 Normalize Cartesian functions based on angular momentum. More...
 
- Protected Attributes inherited from psi::OneBodyAOInt
std::shared_ptr< BasisSetbs1_
 
std::shared_ptr< BasisSetbs2_
 
std::vector< SphericalTransform > & spherical_transforms_
 
Vector3 origin_
 
double * buffer_
 
double * target_
 
double * tformbuf_
 
bool force_cartesian_
 Whether we want to always generate Cartesian integrals;. More...
 
size_t count_
 
int deriv_
 
int natom_
 
int nchunk_
 
int buffer_size_
 

Detailed Description

This class computes overlap integrals and soon overlap integral derivatives. Use an IntegralFactory to create this object.

Constructor & Destructor Documentation

OverlapInt::OverlapInt ( std::vector< SphericalTransform > &  st,
std::shared_ptr< BasisSet bs1,
std::shared_ptr< BasisSet bs2,
int  deriv = 0 
)

Constructor, it assumes you are not computing derivatives by default.

OverlapInt::~OverlapInt ( )
virtual

Member Function Documentation

void OverlapInt::compute_pair ( const GaussianShell s1,
const GaussianShell s2 
)
privatevirtual

Computes the overlap between a given shell pair.

Implements psi::OneBodyAOInt.

void OverlapInt::compute_pair_deriv1 ( const GaussianShell s1,
const GaussianShell s2 
)
privatevirtual

Reimplemented from psi::OneBodyAOInt.

void OverlapInt::compute_pair_deriv2 ( const GaussianShell s1,
const GaussianShell s2 
)
privatevirtual

Reimplemented from psi::OneBodyAOInt.

bool psi::OverlapInt::has_deriv1 ( )
inlinevirtual

Does the method provide first derivatives?

Reimplemented from psi::OneBodyAOInt.

bool psi::OverlapInt::has_deriv2 ( )
inlinevirtual

Does the method provide second derivatives?

Reimplemented from psi::OneBodyAOInt.

Member Data Documentation

ObaraSaikaTwoCenterRecursion psi::OverlapInt::overlap_recur_
private

Generic Obara Saika recursion object.


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