Conventions =========== Units ----- * Coordinates are provided in atomic units (Bohr) unless otherwise noted. Arrays ------ * Numerical arrays are NumPy ``ndarray`` (double precision, ``float64``) unless otherwise specified. * The code uses row-major NumPy arrays (default in NumPy). Implementation-specific details ------------------------------- * J matrix uses `scale=0.5`, matching the PySCF RHF convention. * Internally, contracted Gaussian shells are unit normalized. In the Python interface, the additional Racah factors are applied to Cartesian shells by default to match PySCF's convention. * The library supports spherical and Cartesian GTO basis sets with segmented contraction. General contracted and mixed SP-type shells are not supported and should be replaced with segmented contraction analogs. * Gradients are provided per AO; they are not contracted to atoms. It's the user's responsibility to assemble atomic gradients using an AO-to-atom correspondence map. Only the **Cartesian** shells are currently supported in the gradient code.