Changelog:
Bugfixes (code)
* Error in calculation of Hartree potential fixed (incorrect synchronization of lower and upper integrals): means fewer grid points required for convergence (196)
* Error in the matrix solver which makes the initial guess for the eigenvalues fixed (199)
Bugfixes (other - test suite, CI, etc.)
* Rename tests so that pytest sees all tests (204)
* Make `mixfrac` explicitly re-defined in each test, as this was causing occasional failures (206)
* Update package requirements in docs to make them more up-to-date (210)
New features and improvements (code)
* Square-root grid implemented: usually requires many fewer points for converged calculations (179)
* Explicit use of diagonal matrices in numerov solver: yields massive speed-ups and reduced memory requirements (194)
* Speed-up for Hartree potential calculation (198)
* Update to a better set of defaults (201)
* Allow faster convergence after 2 SCF cycles (205)
* Add method B for virial pressure in kinetic energy calculation (180)
* Allow suppression of some warnings (208)
* Update stated temperature range of atoMEC (209)
New features and improvements (other - test suite, CI, etc.)
* Change installation of libxc: we now install from the official libxc latest stable tarball, which means atoMEC can be run on more Python versions (and we don't rely on an unofficial wheels distribution) (223)
* Update default Python version to 3.12: it was noticed during benchmarking that atoMEC runs ~20% faster with Python 3.12 compared to Python<=3.11 (212 - just the final commit)
* Introduce (optional) development tests to benchmark performance (215)
* Update out-of-date information in the README (214) and improve it (188)
* Improve manual running of test suite (i.e. running without `pytest`) (192)
**Full Changelog**: https://github.com/atomec-project/atoMEC/compare/v1.3.0...v1.4.0