Provided by: libsc-doc_2.3.1-22build2_all bug

NAME

       sc::TwoBodyTwoCenterInt - This is an abstract base type for classes that compute integrals
       involving two electrons in two Gaussian functions.

SYNOPSIS

       #include <tbint.h>

       Inherits sc::RefCount.

       Inherited by sc::TwoBodyTwoCenterIntV3.

   Public Types
       enum tbint_type { eri =0, r12 =1, r12t1 =2, r12t2 =3 }
           Types of two-body integrals that TwoBodyInt understands: eri stands for electron
           repulsion integral, r12 stands for integrals of r12 operator, r12t1 and r12t2 are
           integrals of [r12,T1] and [r12,T2] operators.

   Public Member Functions
       int nbasis () const
           Return the number of basis functions on center one.
       int nbasis1 () const
           Return the number of basis functions on center one.
       int nbasis2 () const
           Return the number of basis functions on center two.
       int nshell () const
           Return the number of shells on center one.
       int nshell1 () const
           Return the number of shells on center one.
       int nshell2 () const
           Return the number of shells on center two.
       Ref< GaussianBasisSet > basis ()
           Return the basis set on center one.
       Ref< GaussianBasisSet > basis1 ()
           Return the basis set on center one.
       Ref< GaussianBasisSet > basis2 ()
           Return the basis set on center two.
       virtual const double * buffer (tbint_type type=eri) const
           The computed shell integrals will be put in the buffer returned by this member.
       virtual void compute_shell (int, int)=0
           Given four shell indices, integrals will be computed and placed in the buffer.
       virtual int log2_shell_bound (int=-1, int=-1)=0
           Return log base 2 of the maximum magnitude of any integral in a shell block obtained
           from compute_shell.
       int redundant () const
           If redundant is true, then keep redundant integrals in the buffer.
       void set_redundant (int i)
           See redundant().
       virtual void set_integral_storage (size_t storage)
           This storage is used to cache computed integrals.
       Integral * integral () const
           Return the integral factory that was used to create this object.

       Public Member Functions inherited from sc::RefCount
       int lock_ptr () const
           Lock this object.
       int unlock_ptr () const
           Unlock this object.
       void use_locks (bool inVal)
           start and stop using locks on this object
       refcount_t nreference () const
           Return the reference count.
       refcount_t reference ()
           Increment the reference count and return the new count.
       refcount_t dereference ()
           Decrement the reference count and return the new count.
       int managed () const
       void unmanage ()
           Turn off the reference counting mechanism for this object.
       int managed () const
           Return 1 if the object is managed. Otherwise return 0.

       Public Member Functions inherited from sc::Identity
       Identifier identifier ()
           Return the Identifier for this argument.

   Static Public Attributes
       static const int num_tbint_types = 4
           The total number of such types.

   Protected Member Functions
       TwoBodyTwoCenterInt (Integral *integral, const Ref< GaussianBasisSet > &bs1, const Ref<
           GaussianBasisSet > &bs2)

       Protected Member Functions inherited from sc::RefCount
       RefCount (const RefCount &)
       RefCount & operator= (const RefCount &)

   Protected Attributes
       Integral * integral_
       Ref< GaussianBasisSet > bs1_
       Ref< GaussianBasisSet > bs2_
       double * buffer_
       int redundant_

Detailed Description

       This is an abstract base type for classes that compute integrals involving two electrons
       in two Gaussian functions.

Member Function Documentation

   virtual const double * sc::TwoBodyTwoCenterInt::buffer (tbint_type type = eri) const [virtual]
       The computed shell integrals will be put in the buffer returned by this member. Some
       TwoBodyInt specializations have more than one buffer: The type arguments selects which
       buffer is returned. If the requested type is not supported, then 0 is returned.

   virtual void sc::TwoBodyTwoCenterInt::compute_shell (int, int) [pure virtual]
       Given four shell indices, integrals will be computed and placed in the buffer. The first
       index corresponds to electron 1 and the second index corresponds to electron 2.

       Implemented in sc::TwoBodyTwoCenterIntV3.

   virtual int sc::TwoBodyTwoCenterInt::log2_shell_bound (int = -1, int = -1) [pure virtual]
       Return log base 2 of the maximum magnitude of any integral in a shell block obtained from
       compute_shell. An index of -1 for any argument indicates any shell.

       Implemented in sc::TwoBodyTwoCenterIntV3.

   int sc::TwoBodyTwoCenterInt::redundant () const [inline]
       If redundant is true, then keep redundant integrals in the buffer. The default is true.

   virtual void sc::TwoBodyTwoCenterInt::set_integral_storage (size_t storage) [virtual]
       This storage is used to cache computed integrals.

       Reimplemented in sc::TwoBodyTwoCenterIntV3.

Author

       Generated automatically by Doxygen for MPQC from the source code.