#pragma once
#include "qc/basis.hpp"
#include "qc/matrix.hpp"
#include <vector>
namespace qc {
struct MolecularIntegrals {
Matrix S;
Matrix T;
Matrix V;
std::vector<double> eri;
double eri_index(std::size_t i, std::size_t j, std::size_t k,
std::size_t l) const;
};
MolecularIntegrals compute_integrals(const Basis& basis,
const std::vector<Atom>& atoms);
} // namespace qc