Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

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

NAME
       sc::TwoBodyInt -	This is	an abstract base type for classes that compute
       integrals involving two electrons.

SYNOPSIS
       #include	<tbint.h>

       Inherits	sc::RefCount.

       Inherited by sc::TwoBodyIntCCA, sc::TwoBodyIntCints, and
       sc::TwoBodyIntV3.

   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 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.

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

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

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

Detailed Description
       This is an abstract base	type for classes that compute integrals
       involving two electrons.

Member Function	Documentation
   virtual const double* sc::TwoBodyInt::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.

       Reimplemented in	sc::TwoBodyIntCints.

       Referenced by sc::LocalGBuild< T	>::run().

   virtual void	sc::TwoBodyInt::compute_shell (int, int, int, int) [pure
       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.

       Implemented in sc::TwoBodyIntV3,	sc::TwoBodyIntCCA, and
       sc::TwoBodyIntCints.

       Referenced by sc::LocalGBuild< T	>::run().

   virtual int sc::TwoBodyInt::log2_shell_bound	(int = -1, int = -1, 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::TwoBodyIntV3,	sc::TwoBodyIntCCA, and
       sc::TwoBodyIntCints.

       Referenced by sc::LocalGBuild< T	>::run().

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

       Reimplemented in	sc::TwoBodyIntCCA.

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

Version	2.3.1			Sun Feb	28 2021		     sc::TwoBodyInt(3)

NAME | SYNOPSIS | Detailed Description | Member Function Documentation | Author

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sc_TwoBodyInt&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help