Skip to content

Releases: atomec-project/atoMEC

v1.4.0

09 Nov 10:24
Compare
Choose a tag to compare

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: v1.3.0...v1.4.0

v1.3.0

10 May 08:44
Compare
Choose a tag to compare

Changelog:

Bugfixes (code)

  • Resolved issue with entropy calculation for very high temperatures (#172)
  • Fixed the calculation of the type "B" kinetic energy density (#173)

Bugfixes (other - test suite, CI, etc.)

  • Fixed and updated broken CASUS mirror (#170)

New features and improvements (code)

  • Added E_kin and E_en attributes to EnergyAlt class (#174)
  • Added more options for pressure calculations in postprocess.Pressure module (#175)
  • Added check_orbs function to staticKS.Orbitals to check that the requested number of orbitals is sufficient (#176)

New features and improvements (other - test suite, CI, etc.)

  • Added codecov to github actions (#169)
  • Updated CI actions and environments to latest versions (#171)

Full Changelog: v1.2.0...v1.3.0

v1.2.0

28 Nov 14:01
v1.2.0
Compare
Choose a tag to compare

Changelog:

Bugfixes

  • Automatic publishing to PyPI with new release (#119)
  • CalcPressure function does not permanently alter the density and radius properties of the Atom (#126)
  • Remove np.matrix references (will be deprecated) (#137)
  • Replace incorrect if force_bound call (#151)

Improvements

  • Test suite created (#135) and added to CI (#159)
  • Chemical potential limits adjust dynamically (#157)
  • Temporary joblib folders have clearer names (#138)
  • Mean ionization state now property of StaticKS.Density object (#129)
  • Warning boxes added to Sphinx docs (#127)

New features

  • Band-structure model implemented (#123)
  • postprocess.localization module created, with functionality to calculate the electron localization function (#130)
  • postprocess.conductivity module created, with functionality to compute the Kubo-Greenwood conductivity (#139)
  • GGA xc-functionals now supported (#142)
  • Counting approach for mean ionization state (#149)
  • postprocess.pressure module created, with various methods to calculate pressure (#150)

v1.1.1

14 Dec 11:46
Compare
Choose a tag to compare

Changelog:

  • Fixed typos in CITATION.cff so that orcid IDs are correctly linked
  • Zenodo badge in README.md directs to latest version (previously went to v1.0.0)

v1.1.0

10 Dec 12:44
Compare
Choose a tag to compare

Changelog:

Bug fixes

  • Parallelization now works when multiple jobs run simultaneously from same folder (previously data was overwritten)
  • Setting config.numcores to be a negative number now invokes parallelization (see joblib docs for now negative njobs are treated)
  • KS orbitals are correct at the ngrid point (manually propagated from ngrid -1 point)
  • Limits for the integral of the Hartree potential are corrected
  • Kinetic energy density at ngrid grid point is hardcoded to reasonable value to reduce numerical error
  • calc_v_Hxc function in EnergyAlt class now correctly accounts for the constant shift in the KS potential

Improvements

  • Matrix diagonalization in numerov module is made more robust and faster thanks to better initial estimate of eigenvalues

New features

  • "quantum" is now an accepted argument for the unbound parameter in models.ISModel class (this treats unbound electrons on same footing as bound ones)
  • Famous "dimensionless parameters" of warm dense matter are computed with creation of Atom object
  • postprocess module is added, which contains functionality to compute the inverse participation ratio (IPR)
  • New function to compute kinetic energy density with two choices for how it is computed

v1.0.0

16 Aug 12:23
Compare
Choose a tag to compare

Changelog:

  • First release of atoMEC