---
name: "sc_Int2eCints"
section: "3"
platform: "linux"
package: "libsc-doc"
version: "2.3.1-22"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/sc_Int2eCints"
---

# sc\_Int2eCints(3)

Int2eCints is an interface to various specializations of two-electron integral evaluators implemented in Cints.

## NAME

sc::Int2eCints - **Int2eCints** is an interface to various specializations of two-electron integral evaluators implemented in Cints.

## SYNOPSIS

`#include <int2e.h>`

Inherits **sc::RefCount**.

Inherited by **sc::EriCints**, and **sc::GRTCints**.

### Public Member Functions

**Int2eCints** (**Integral** \*, const **Ref**\< **GaussianBasisSet** \> &, const **Ref**\< **GaussianBasisSet** \> &, const **Ref**\< **GaussianBasisSet** \> &, const **Ref**\< **GaussianBasisSet** \> &, size\_t storage)\
 void **init\_storage** (size\_t)\
 Sets storage limit and starts storage tracking.  void **done\_storage** ()\
 Finishes storage tracking.  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 void **compute\_quartet** (int \*, int \*, int \*, int \*)=0\
 Evaluate the target quartet of integrals.  virtual double \* **buffer** (**TwoBodyInt::tbint\_type**=TwoBodyInt::eri) const =0\
 Returns the location of the buffer with target integrals.  **Ref**\< **GaussianBasisSet** \> **basis** ()\
 **Ref**\< **GaussianBasisSet** \> **basis1** ()\
 **Ref**\< **GaussianBasisSet** \> **basis2** ()\
 **Ref**\< **GaussianBasisSet** \> **basis3** ()\
 **Ref**\< **GaussianBasisSet** \> **basis4** ()\

### Protected Member Functions

void **check\_storage\_** () const\
 void **transform\_contrquartets\_** (double \*, double \*)\
 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)\

### Static Protected 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)\

### Protected Attributes

**Integral** \* **integral\_**\
 **Ref**\< **GaussianBasisSet** \> **bs1\_**\
 **Ref**\< **GaussianBasisSet** \> **bs2\_**\
 **Ref**\< **GaussianBasisSet** \> **bs3\_**\
 **Ref**\< **GaussianBasisSet** \> **bs4\_**\
 **Ref**\< **MessageGrp** \> **grp\_**\
 **GaussianShell** \* **int\_shell1\_**\
 **GaussianShell** \* **int\_shell2\_**\
 **GaussianShell** \* **int\_shell3\_**\
 **GaussianShell** \* **int\_shell4\_**\
 int **permute\_**\
 int **redundant\_**\
 size\_t **storage\_**\
 size\_t **storage\_used\_**\
 double \* **tformbuf\_**\

## Detailed Description

**Int2eCints** is an interface to various specializations of two-electron integral evaluators implemented in Cints.

It is used by **TwoBodyIntCints** and **TwoBodyDerivIntCints** to implement **IntegralCints**.

## Member Function Documentation

### virtual double \* sc::Int2eCints::buffer (TwoBodyInt::tbint\_type = `TwoBodyInt::eri`) const` [pure virtual]`

Returns the location of the buffer with target integrals.

Implemented in **sc::EriCints**, and **sc::GRTCints**.

### virtual void sc::Int2eCints::compute\_quartet (int \*, int \*, int \*, int \*)` [pure virtual]`

Evaluate the target quartet of integrals.

Implemented in **sc::EriCints**, and **sc::GRTCints**.

## Author

Generated automatically by Doxygen for MPQC from the source code.
