MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
sc::GRTLibint2 Class Reference

GRTLibint2 is a specialization of Int2eLibint2 that computes two-electron integrals specific to linear R12 methods. More...

#include <chemistry/qc/libint2/grt.h>

Inheritance diagram for sc::GRTLibint2:
sc::Int2eLibint2 sc::RefCount

Public Member Functions

 GRTLibint2 (Integral *, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, size_t storage)
 
double * buffer (TwoBodyOper::type te_type) const
 
void compute_quartet (int *, int *, int *, int *)
 Evaluate the target quartet of integrals.
 
- Public Member Functions inherited from sc::Int2eLibint2
 Int2eLibint2 (Integral *, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, const Ref< GaussianBasisSet > &, size_t storage)
 
virtual Ref< Int2eLibint2clone ()
 "clones" this engine, all precomputed data is shallow-copied
 
void bounds (const Ref< Log2Bounds > &)
 provides the bounds evaluator for log2_bound
 
const Ref< Log2Bounds > & bounds () const
 returns the bounds evaluator for log2_bound
 
size_t storage_used () const
 Reports how much storage is actually used at a given time.
 
int redundant () const
 Whether redundant integrals are returned.
 
void set_redundant (int flag)
 Set redundant flag.
 
int permute () const
 Whether shells can be permuted.
 
void set_permute (int flag)
 Set shell permutation flag.
 
virtual double * buffer (unsigned int) const =0
 Returns the location of the buffer with target integrals.
 
virtual int log2_bound (int s1, int s2, int s3, int s4)
 Computes log2 bound.
 
Ref< GaussianBasisSetbasis ()
 
Ref< GaussianBasisSetbasis1 ()
 
Ref< GaussianBasisSetbasis2 ()
 
Ref< GaussianBasisSetbasis3 ()
 
Ref< GaussianBasisSetbasis4 ()
 
- Public Member Functions inherited from sc::RefCount
size_t identifier () const
 Return the unique identifier for this object that can be compared for different objects of different types.
 
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
 Return 1 if the object is managed. Otherwise return 0.
 

Static Public Member Functions

static size_t storage_required (const Ref< GaussianBasisSet > &b1, const Ref< GaussianBasisSet > &b2=0, const Ref< GaussianBasisSet > &b3=0, const Ref< GaussianBasisSet > &b4=0)
 

Additional Inherited Members

- Protected Member Functions inherited from sc::Int2eLibint2
void check_storage_ () const
 
void transform_contrquartets_ (double *, double *)
 
void norm_contrcart1_ (double *data)
 
template<unsigned int ntypes>
void norm_contrcart_ (double *data)
 
void sort_contrquartets_to_shellquartet_ (double *, double *)
 
void permute_target_ (double *, double *, int, int, int)
 
void permute_1234_to_1243_ (double *, double *)
 
void permute_1234_to_2134_ (double *, double *)
 
void permute_1234_to_2143_ (double *, double *)
 
void permute_1234_to_3412_ (double *, double *)
 
void permute_1234_to_3421_ (double *, double *)
 
void permute_1234_to_4312_ (double *, double *)
 
void permute_1234_to_4321_ (double *, double *)
 
void get_nonredundant_ints_ (double *, double *, int, int, int)
 
 Int2eLibint2 (const Int2eLibint2 &other)
 shallow-copies other
 
- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 
- Static Protected Member Functions inherited from sc::Int2eLibint2
static size_t storage_required_ (const Ref< GaussianBasisSet > &b1, const Ref< GaussianBasisSet > &b2=0, const Ref< GaussianBasisSet > &b3=0, const Ref< GaussianBasisSet > &b4=0)
 
- Protected Attributes inherited from sc::Int2eLibint2
Integralintegral_
 
Ref< GaussianBasisSetbs1_
 
Ref< GaussianBasisSetbs2_
 
Ref< GaussianBasisSetbs3_
 
Ref< GaussianBasisSetbs4_
 
Ref< Log2Boundsbounds_
 
GaussianShellint_shell1_
 
GaussianShellint_shell2_
 
GaussianShellint_shell3_
 
GaussianShellint_shell4_
 
int permute_
 
int redundant_
 
size_t storage_
 
size_t storage_used_
 
std::vector< double > tformbuf_
 

Detailed Description

GRTLibint2 is a specialization of Int2eLibint2 that computes two-electron integrals specific to linear R12 methods.

Member Function Documentation

◆ compute_quartet()

void sc::GRTLibint2::compute_quartet ( int * ,
int * ,
int * ,
int *  )
virtual

Evaluate the target quartet of integrals.

Implements sc::Int2eLibint2.


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

Generated at Wed Sep 25 2024 02:45:33 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.