This file is indexed.

/usr/include/libiwl/iwl.hpp is in libpsi3-dev 3.4.0-6build2.

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
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#ifndef _psi_src_lib_libiwl_iwl_hpp_
#define _psi_src_lib_libiwl_iwl_hpp_

#include <cstdio>
#include <libpsio/psio.hpp>
#include "config.h"

namespace psi {
    
    class IWL {
        int itap_;                   /* tape number for input file */
        psio_address bufpos_;        /* current page/offset */
        int ints_per_buf_;           /* integrals per buffer */
        int bufszc_;                 /* buffer size in characters (bytes) */
        double cutoff_;              /* cutoff value for writing */
        int lastbuf_;                /* is this the last IWL buffer? 1=yes,0=no */
        int inbuf_;                  /* how many ints in current buffer? */
        int idx_;                    /* index of integral in current buffer */
        Label *labels_;              /* pointer to where integral values begin */
        Value *values_;              /* integral values */
        /*! Instance of libpsio to use */
        PSIO *psio_;
        /*! Flag indicating whether to keep the IWL file or not */
        bool keep_;
        
    public:
        
        IWL();
        IWL(PSIO *psio, int itap, double cutoff, int oldfile, int readflag);
        ~IWL();
        
        // Accessor functions to data
        int& itap()                         { return itap_; }
        psio_address& buffer_position()     { return bufpos_; }
        int& ints_per_buffer()              { return ints_per_buf_; }
        int& buffer_size()                  { return bufszc_; }
        double& cutoff()                    { return cutoff_; }
        int& last_buffer()                  { return lastbuf_; }
        int& buffer_count()                 { return inbuf_; }
        int& index()                        { return idx_; }
        Label* labels()                     { return labels_; }
        Value* values()                     { return values_; }
        bool& keep()                        { return keep_; }
        
        void init(PSIO *psio, int itap, double cutoff, int oldfile, int readflag);
        
        void set_keep_flag(bool keep) { keep_ = keep; }
        void close();
        
        void fetch();
        void put();
        
        static void read_one(PSIO *psio, int itap, const char *label, double *ints, 
            int ntri, int erase, int printflg, FILE *outfile);
        static void write_one(PSIO *psio, int itap, const char *label, int ntri, 
            double *onel_ints);
        static void read_two(PSIO *psio, int itap, double *ints, int *ioff, 
            int norbs, int nfzc, int nfzv, int printflg, FILE *outfile);
        static void write_two(PSIO *psio, int itap, int nbfso, double *ints, 
            int *ioff, double toler, int printflg, FILE *outfile);
            
        int read(int target_pq, double *ints, int *ioff_lt, int *ioff_rt, 
            int mp2, int printflg, FILE *outfile);
        int read_all(double *ints, int *ioff_lt, int *ioff_rt, int no_pq_perm, 
            int *ioff, int printflg, FILE *outfile);
        int read_all2(double **ints, int *ioff_lt, int *ioff_rt, int no_pq_perm, 
            int *ioff, int printflg, FILE *outfile);
        int read_all_active(double *ints,
            int *ioff_lt, int *ioff_rt, int no_pq_perm, int *ioff,
            int fstact, int lstact, int printflg,FILE *outfile);
        int read_all_mp2r12a(double *ints, int *ioff_lt, int *ioff_rt, 
            int bra_ket_symm, int *ioff, int printflg, FILE *outfile);
        int read_array(int target_pq, double *ints, int *rlist, int *slist, 
            int *size, int *ioff, int printflg, FILE *outfile);
        int read_array2(double *ints, int *plist, int *qlist, int *rlist, 
            int *slist, int *size, int *ioff, int printflg, FILE *outfile);
              
        void write(int p, int q, int pq, int pqsym,
            double *arr, int rmax, int *active, int *ioff, int *orbsym, 
            int *firsti, int *lasti, int sortby_rs, int printflag, 
            FILE *outfile);
        void write_all(int nbfso, double *ints, int *ioff, int printflg, 
            FILE *outfile);
        void write_mp2(int p, int q, int pq,
            int pqsym, double **arr, int rsym, int *firstr, int *lastr, 
            int *firsts, int *lasts, int *occ, int *vir, int *ioff, 
            int printflag, FILE *outfile);
        void write_mp2r12a(int p, int q, int pq, int pqsym, double **arr, 
            int rsym, int *firstr, int *lastr, int *firsts, int *lasts, 
            int *occ, int bra_ket_symm, int *ioff, int printflag, 
            FILE *outfile);
        void write_array(double *arr, int *p, int *q, int *r, int *s, long int size);
        void write_array_SI(double *arr, short int *p, short int *q, short int *r, 
            short int *s, int size);
        void write_array_SI_nocut(double *arr, short int *p, short int *q, 
            short int *r, short int *s, int size);
        void write_array2(double *arr, int p, int q, int *rlist, int *slist, 
            int size, int printflag, FILE *outfile);
        void write_matrix(int ptr, int qtr, double **mat, int rfirst, int rlast, 
            int sfirst, int slast, int *reorder, int reorder_offset, 
            int printflag, int *ioff, FILE *outfile);
        void write_matrix2(int ptr, int qtr, double **mat, int rfirst, int rlast, 
            int sfirst, int slast, int *reorder, int reorder_offset, 
            int printflag, int *ioff, FILE *outfile);
        void write_value(int p, int q, int r, int s, double value, int printflag,
            FILE *outfile, int dirac);
        void write_value_SI(short int p, short int q,
            short int r, short int s, double value, int printflag,
            FILE *outfile, int dirac);
        
        void flush(int lastbuf);
        void to_end();
        
        static void sort_buffer(IWL *Inbuf, IWL *Outbuf,
            double *ints, int fpq, int lpq, int *ioff, int *ioff2, 
            int nbfso, int elbert, int intermediate, int no_pq_perm, 
            int qdim, int add, int printflg, FILE *outfile);
    };
    
}

#endif