home | help
sc::TwoBodyIntV3(3)		      MPQC		     sc::TwoBodyIntV3(3)

NAME
     sc::TwoBodyIntV3  -  This	implements  electron  repulsion integrals in the
     IntV3 library.

SYNOPSIS
     #include <tbintv3.h>

     Inherits sc::TwoBodyInt.

   Public Member Functions
     TwoBodyIntV3 (Integral *integral, const Ref< GaussianBasisSet > &b1,  const
	 Ref<  GaussianBasisSet  > &b2, const Ref< GaussianBasisSet > &b3, const
	 Ref< GaussianBasisSet > &b4, size_t storage)
     int log2_shell_bound (int, int, int, int)
	 Return log base 2 of the maximum magnitude of any integral in	a  shell
	 block obtained from compute_shell.
     void compute_shell (int, int, int, int)
	 Given	four shell indices, integrals will be computed and placed in the
	 buffer.
     size_t storage_used ()
     void set_integral_storage (size_t storage)
	 This storage is used to cache computed integrals.

     Public Member Functions inherited from sc::TwoBodyInt
     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 nbasis3 () const
	 Return the number of basis functions on center three.
     int nbasis4 () const
	 Return the number of basis functions on center four.
     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.
     int nshell3 () const
	 Return the number of shells on center three.
     int nshell4 () const
	 Return the number of shells on center four.
     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.
     Ref< GaussianBasisSet > basis3 ()
	 Return the basis set on center three.
     Ref< GaussianBasisSet > basis4 ()
	 Return the basis set on center four.
     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, 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, int=-1, int=-1)=0
	 Return  log  base 2 of the maximum magnitude of any integral in a shell
	 block obtained from compute_shell.
     virtual int redundant () const
	 If redundant is true, then keep redundant integrals in the buffer.
     virtual 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.

   Protected Attributes
     Ref< Int2eV3 > int2ev3_

     Protected Attributes inherited from sc::TwoBodyInt
     Integral * integral_
     Ref< GaussianBasisSet > bs1_
     Ref< GaussianBasisSet > bs2_
     Ref< GaussianBasisSet > bs3_
     Ref< GaussianBasisSet > bs4_
     double * buffer_
     int redundant_

   Additional Inherited Members
     Public Types inherited from sc::TwoBodyInt
     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.

     Static Public Attributes inherited from sc::TwoBodyInt
     static const int num_tbint_types = 4
	 The total number of such types.

     Protected Member Functions inherited from sc::TwoBodyInt
     TwoBodyInt  (Integral  *integral, const Ref< GaussianBasisSet > &bs1, const
	 Ref< GaussianBasisSet > &bs2, const Ref< GaussianBasisSet > &bs3, const
	 Ref< GaussianBasisSet > &bs4)

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

Detailed Description
     This implements electron repulsion integrals in the IntV3 library.

Member Function Documentation
   void sc::TwoBodyIntV3::compute_shell (int, int, int, int) [virtual]
     Given four shell indices, integrals will be  computed  and  placed  in  the
     buffer.  The  first two indices correspond to electron 1 and the second two
     indices correspond to electron 2.

     Implements sc::TwoBodyInt.

   int sc::TwoBodyIntV3::log2_shell_bound (int, int, int, int) [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.

     Implements sc::TwoBodyInt.

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

     Reimplemented from sc::TwoBodyInt.

Author
     Generated automatically by Doxygen for MPQC from the source code.

Version 2.3.1			 Thu Sep 3 2026 	     sc::TwoBodyIntV3(3)

home | help