This file is indexed.

/usr/include/libmints/eri.h is in libpsi3-dev 3.4.0-6+b1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#ifndef _psi_src_lib_libmints_eri_h
#define _psi_src_lib_libmints_eri_h

/*!
    \file libmints/eri.h
    \ingroup MINTS
*/

#include <libmints/ref.h>

#include <libmints/basisset.h>
#include <libmints/gshell.h>
#include <libmints/osrecur.h>
#include <libmints/onebody.h>
#include <libmints/twobody.h>
#include <libmints/integral.h>

#include <libint/libint.h>
#include <libderiv/libderiv.h>

namespace psi {
    
class ERI : public TwoBodyInt
{
    //! Libint object.
    Libint_t libint_;
    //! Libderiv object
    Libderiv_t libderiv_;

    //! Maximum cartesian class size.
    int max_cart_;
    double **d_;
    double *denom_;
    double wval_infinity_;
    int itable_infinity_;
    
    void init_fjt(int);
    void int_fjt(double *, int, double);

    //! Computes the ERIs between four shells.
    void compute_quartet(int, int, int, int);

    //! Computes the ERI derivatives between four shells.
    void compute_quartet_deriv1(int, int, int, int);
public:
    //! Constructor. Use an IntegralFactory to create this object.
    ERI(IntegralFactory*, Ref<BasisSet> &, Ref<BasisSet> &, Ref<BasisSet> &, Ref<BasisSet> &, int deriv=0);
    ~ERI();
    
    /// Compute ERIs between 4 shells. Result is stored in buffer.
    void compute_shell(int, int, int, int);

    /// Compute ERI derivatives between 4 shells. Result is stored in buffer.
    void compute_shell_deriv1(int, int, int, int);
};

class ERI3C {
   Ref<ERI> eri_;
public:
   ERI3C(IntegralFactory*, Ref<BasisSet> &, Ref<BasisSet> &, Ref<BasisSet> &);
   
   /// Compute 3-center ERI between 3 shells. Result is store in buffer.
   void compute_shell(int, int, int);
   
   /// Basis set on center one
   Ref<BasisSet> basis() { return eri_->basis(); }
   /// Basis set on center one
   Ref<BasisSet> basis1()  { return eri_->basis1(); }
   /// Basis set on center two
   Ref<BasisSet> basis2()  { return eri_->basis2(); }
   /// Basis set on center three (it is a modified form of what was actually sent in)
   Ref<BasisSet> basis3()  { return eri_->basis3(); }
   
   /// Buffer where the integrals are placed
   const double *buffer() const { return eri_->buffer(); };
};

}

#endif