Skip to content

Releases: CederGroupHub/chgnet

v0.3.6

12 Apr 22:49
Compare
Choose a tag to compare

What's Changed

🛠 Enhancements

🚀 Performance

  • Allowing avoiding sorting cuda memory, enhancing compatibility working on HPC by @BowenD-UCB in dd0dd07

Full Changelog: v0.3.5...v0.3.6

v0.3.5

11 Mar 15:27
Compare
Choose a tag to compare

What's Changed

🛠 Enhancements

  • Add assign_magmoms=True keyword to StructOptimizer.relax() by @janosh in #124

🚀 Performance

  • Use MPS backend if available and use_device=None, add CHGNET_DEVICE env var by @janosh in #131

🏥 Package Health

  • Add Python 3.12 to officially supported versions and test in CI by @janosh in #139

🤷‍♂️ Other Changes

  • Use new uv package manager to install deps in CI by @janosh in #133

Full Changelog: v0.3.4...v0.3.5

v0.3.4

08 Feb 08:31
38bb60b
Compare
Choose a tag to compare

What's Changed

🛠 Enhancements

  • Better backward compatibility with ase versions
  • Better backward compatibility with pymatgen versions
  • Allowing loss_ratio=0 for Trainer

🐛 Bug Fixes

  • Add pip install git+https://gitlab.com/ase/ase user advice on FrechetCellFilter ImportError and allow ase_filter to be str by @janosh in #104
  • Fix solve_charge_by_mag() using wrong key in structure.site_properties.get('final_magmom') by @janosh in #114

🧹 House-Keeping

🏥 Package Health

🤷‍♂️ Other Changes

  • Add keyword use_device to CHGNet.load() by @tsihyoung in #105
  • Update dynamics.py by @zhongpc in #109
  • cuda_devices_sorted_by_free_mem() return [] if not torch.cuda.is_available() by @janosh in #115

New Contributors

Full Changelog: v0.3.3...v0.3.4

v0.3.3

07 Dec 22:56
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Replace ase ExpCellFilter with FrechetCellFilter in StructOptimizer by @janosh in #101

If you encounter ase.filters import issue, please install the newest ase from their source before the next ase release:
pip install git+https://gitlab.com/ase/ase

🛠 Enhancements

  • Add ase_filter keyword to StructOptimizer.relax() by @janosh in #102

Full Changelog: v0.3.2...v0.3.3

v0.3.2

19 Nov 04:15
Compare
Choose a tag to compare

Changes

Full Changelog: V0.3.1...v0.3.2

v0.3.1

23 Oct 16:31
Compare
Choose a tag to compare

Hot fix release for v0.3.0 which is deprecated due to missing pretrained checkpoints (fixed in 0f02786). See #86 for details.

🛠 Enhancements

Full Changelog: V0.3.0...v0.3.1

v0.3.0

23 Oct 02:01
Compare
Choose a tag to compare

0.3.0 version: Improved pretrained weights released

We release the most recent pretrained model: CHGNet 0.3.0 🎉 (see details)
CHGNet.load() now defaults to '0.3.0' version.

Major changes:

  1. Increased AtomGraph cutoff to 6A #55
  2. Resolved discontinuity issue when no BondGraph presents #79
  3. Added some normalization layers
  4. Slight improvements on energy, force, stress accuracies

Full Changelog: v0.2.2...v0.3.0

v0.2.2

12 Oct 16:33
Compare
Choose a tag to compare

Important Notes

v0.2.2 has a breaking change in model initialization from scratch i.e. chgnet = CHGNet(), to address #79.
The developer team is running another round of pretraining and the updated weights will be released in the next release.

For now, chgnet = CHGNet.load() loads same pretrained model as previous releases.
If user wants to load their own fine-tuned weights trained from previous releases, please do
chgnet = CHGNet.from_file("your_weights_path", mlp_out_bias=True)

What's Changed

Full Changelog: v0.2.1...v0.2.2

v0.2.1

19 Sep 21:32
Compare
Choose a tag to compare

More Supports for MD: LAMMPS and ASE-MD ⚡

Main updates in this release:

  1. Implemented support for Nose-Hoover thermostat with ASE MD, choice of thermostat is now an option. @BowenD-UCB @tsihyoung
  2. MD and structure optimization now defaults to CUDA with most available memory. Device selection is mostly automatic now. @BowenD-UCB
  3. MD now has option to generate hidden space features, allowing opportunity for post analysis. @AegisIK @BowenD-UCB
  4. LAMMPS interface has been implemented, more tests to go. #57 @advancesoftcorp
  5. NVE MD is implemented with ASE-MD. @BowenD-UCB
  6. Isolated atom now defaults to warning in MD and relaxer (previously raised an error). Makes MD more stable @BowenD-UCB
  7. VASP parser now checks electronic convergence at every ionic step. @BowenD-UCB
  8. Updated paper reference and citation. @janosh
  9. tests and minor bug-fix. @janosh @BowenD-UCB
  10. Publish pre-compiled wheels for all platforms to PyPI. @janosh

New Contributors

Full Changelog: v0.2.0...v0.2.1

v0.2.0

22 Jul 02:21
Compare
Choose a tag to compare

CHGNet is much faster now 🚀 🚀 🚀

Main updates in this release:

  1. Implement fast Cython graph converter in #40 by @AegisIK, yielding a 2 - 3x speed up in graph conversion depending on system size. Molecular dynamics now runs 1.5 - 2 x faster as well!

  2. CHGNet API docs went live at https://chgnet.lbl.gov 🎉 in #39 by @janosh

  3. Better tests and docstrings by @BowenD-UCB

All PRs since previous release

  • API Docs by @janosh in #39
  • Fix ValueError: ndarray is not C-contiguous CI errors by @janosh in #41
  • 2.4x avg speedup on PMG struct to CHGNET graph conversion by @AegisIK in #40
  • More descriptive names for single-letter variables by @janosh in #42
  • Fix ruff PERF203 + PERF401 violations by @janosh in #43
  • FIXED MEMORY LEAK in fast graph converter. Also cleaned up unneeded code. by @AegisIK in #44
  • Add CHGNet.todict method needed for ASE JSON serialization by @janosh in #49
  • Added garbage collection cyclic references turnoff for fast graph converter by @AegisIK in #50
  • Solved final memory leak in fast converter by @AegisIK in #51
  • Use MaterialsProject2020Compatibility to correct final energy in fine_tuning.ipynb by @janosh in #46

New Contributors

Full Changelog: v0.1.04...v0.2.0