Recent Releases of chgnet

chgnet - v0.4.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Change default CHGnet.load(check_cuda_mem: bool) to False by @janosh in https://github.com/CederGroupHub/chgnet/pull/164 ### ๐Ÿ› Bug Fixes
  • Fix KeyError: 'decay_fraction' and TypeError: Object of type int64 is not JSON serializable by @janosh in https://github.com/CederGroupHub/chgnet/pull/169
  • Fix missing create_graph.c in source distribution by @DanielYang59 in https://github.com/CederGroupHub/chgnet/pull/201
  • Remove reverse readline, test again NP1 and recover NumPy 1 dependency support by @DanielYang59 in https://github.com/CederGroupHub/chgnet/pull/203 ### ๐Ÿ›  Enhancements
  • Add wandb logging support to Trainer class by @janosh in https://github.com/CederGroupHub/chgnet/pull/166
  • Add keyword wandb_log_freq: LogFreq = LogEachBatch to Trainer.train() by @janosh in https://github.com/CederGroupHub/chgnet/pull/170 ### ๐Ÿ“– Documentation
  • Dispersion by @ajhoffman1229 in https://github.com/CederGroupHub/chgnet/pull/192 ### ๐Ÿงน Linting
  • ruff fixes by @DanielYang59 in https://github.com/CederGroupHub/chgnet/pull/184 ### ๐Ÿท๏ธ Static Typing
  • Use return type typing_extensions.Self for class methods by @janosh in https://github.com/CederGroupHub/chgnet/pull/179
  • Create py.typed by @Andrew-S-Rosen in https://github.com/CederGroupHub/chgnet/pull/189 ### ๐Ÿฅ Package Health
  • Support NumPy 2 by @DanielYang59 in https://github.com/CederGroupHub/chgnet/pull/202
  • Drop Python 3.9 support by @janosh in https://github.com/CederGroupHub/chgnet/pull/204

New Contributors

  • @ajhoffman1229 made their first contribution in https://github.com/CederGroupHub/chgnet/pull/192
  • @DanielYang59 made their first contribution in https://github.com/CederGroupHub/chgnet/pull/201

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.8...v0.4.0

- Python
Published by janosh over 1 year ago

chgnet - v0.3.8

[!IMPORTANT] v0.3.8 is a hot-fix release to replace v0.3.7 which we plan to yank from PyPI due to lack of compiled wheels, resulting in installation issues as reported in https://github.com/CederGroupHub/chgnet/issues/160

What's Changed

๐Ÿ› Bug Fixes

  • Fix release CI by @janosh in https://github.com/CederGroupHub/chgnet/pull/161

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.7...v0.3.8

- Python
Published by janosh over 1 year ago

chgnet - v0.3.7

What's Changed

๐Ÿ“– Documentation

  • Fix eslint by @janosh in https://github.com/CederGroupHub/chgnet/pull/151 ### ๐Ÿ’ฅ Breaking Changes
  • ruff fixes + type annotations by @janosh in https://github.com/CederGroupHub/chgnet/pull/156 ### ๐Ÿฅ Package Health
  • Fix "Failed to CreateArtifact" on release by @janosh in https://github.com/CederGroupHub/chgnet/pull/152
  • Bump min ASE to 3.23.0 by @janosh in https://github.com/CederGroupHub/chgnet/pull/159

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.6...v0.3.7

- Python
Published by janosh over 1 year ago

chgnet - v0.3.6

What's Changed

๐Ÿ›  Enhancements

  • Fixing VASP parsing with no MAGMOM by @BowenD-UCB in https://github.com/CederGroupHub/chgnet/pull/148

๐Ÿš€ Performance

  • Allowing avoiding sorting cuda memory, enhancing compatibility working on HPC by @BowenD-UCB in https://github.com/CederGroupHub/chgnet/commit/dd0dd076279b4c9d33b0cbddec9fd94f67ab4645

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.5...v0.3.6

- Python
Published by BowenD-UCB almost 2 years ago

chgnet - v0.3.5

What's Changed

๐Ÿ›  Enhancements

  • Add assign_magmoms=True keyword to StructOptimizer.relax() by @janosh in https://github.com/CederGroupHub/chgnet/pull/124

๐Ÿš€ Performance

  • Use MPS backend if available and use_device=None, add CHGNET_DEVICE env var by @janosh in https://github.com/CederGroupHub/chgnet/pull/131

๐Ÿฅ Package Health

  • Add Python 3.12 to officially supported versions and test in CI by @janosh in https://github.com/CederGroupHub/chgnet/pull/139

๐Ÿคทโ€โ™‚๏ธ Other Changes

  • Use new uv package manager to install deps in CI by @janosh in https://github.com/CederGroupHub/chgnet/pull/133

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.4...v0.3.5

- Python
Published by janosh almost 2 years ago

chgnet - v0.3.4

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 https://github.com/CederGroupHub/chgnet/pull/104
  • Fix solve_charge_by_mag() using wrong key in structure.site_properties.get('final_magmom') by @janosh in https://github.com/CederGroupHub/chgnet/pull/114 ### ๐Ÿงน House-Keeping
  • Drop __all__ by @janosh in https://github.com/CederGroupHub/chgnet/pull/106 ### ๐Ÿฅ Package Health
  • Fix release CI by @janosh in https://github.com/CederGroupHub/chgnet/pull/122 ### ๐Ÿคทโ€โ™‚๏ธ Other Changes
  • Add keyword use_device to CHGNet.load() by @tsihyoung in https://github.com/CederGroupHub/chgnet/pull/105
  • Update dynamics.py by @zhongpc in https://github.com/CederGroupHub/chgnet/pull/109
  • cuda_devices_sorted_by_free_mem() return [] if not torch.cuda.is_available() by @janosh in https://github.com/CederGroupHub/chgnet/pull/115

New Contributors

  • @zhongpc made their first contribution in https://github.com/CederGroupHub/chgnet/pull/109

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.3...v0.3.4

- Python
Published by janosh about 2 years ago

chgnet - v0.3.3

What's Changed

๐Ÿ› Bug Fixes

  • Replace ase ExpCellFilter with FrechetCellFilter in StructOptimizer by @janosh in https://github.com/CederGroupHub/chgnet/pull/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 https://github.com/CederGroupHub/chgnet/pull/102

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.3.2...v0.3.3

- Python
Published by janosh about 2 years ago

chgnet - v0.3.2

Changes

  • Link to Video tutorial @BowenD-UCB
  • Allow setting MD start temperature @BowenD-UCB
  • Fixed bug triggerred by dtype @janosh in https://github.com/CederGroupHub/chgnet/pull/95

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/V0.3.1...v0.3.2

- Python
Published by BowenD-UCB over 2 years ago

chgnet - v0.3.1

Hot fix release for v0.3.0 which is deprecated due to missing pretrained checkpoints (fixed in https://github.com/CederGroupHub/chgnet/pull/86/commits/0f0278649ed1d9d07ccfcef2aa11caacda5848fe). See https://github.com/CederGroupHub/chgnet/pull/86 for details.

๐Ÿ›  Enhancements

  • Add CHGNet.version property by @janosh in https://github.com/CederGroupHub/chgnet/pull/86

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/V0.3.0...v0.3.1

- Python
Published by janosh over 2 years ago

chgnet - v0.3.0

0.3.0 version: Improved pretrained weights released

We release the most recent pretrained model: CHGNet 0.3.0 :tada: (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: https://github.com/CederGroupHub/chgnet/compare/v0.2.2...v0.3.0

- Python
Published by BowenD-UCB over 2 years ago

chgnet -

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

  • Run cibuildwheel on Apple silicon to publish pre-compiled macOS ARM binaries by @janosh in https://github.com/CederGroupHub/chgnet/pull/78
  • always report cov by @lbluque in https://github.com/CederGroupHub/chgnet/pull/77
  • 1.Dropped torch.det for MPS compatibility 2.better testing for rotation/supercell invariance by @BowenD-UCB in 4cee9e6
  • Added function to output site energies by @BowenD-UCB in 77845dc
  • Added examples for parsing DFT by @BowenD-UCB in 2ebc57f
  • Fixed bug in #79, while not breaking loading pretrained weights by @BowenD-UCB in 1a558ea
  • CHGNet now supports Apple MPS:tada:, pytorch-MPS has been tested with torch-2.0.1 by @BowenD-UCB in 516c422
  • added numisolatedatoms property by @BowenD-UCB in 20ebc58
  • allow specifying decay fraction in CosineAnnealing LR scheduler by @BowenD-UCB in dbb0305
  • Moved all torch.int64 to torch.int32 for MPS support by @BowenD-UCB in 828478a
  • added notes to avoid Colab bug by @BowenD-UCB in a760ec8
  • added installation from source by @BowenD-UCB in 030d897
  • removed print message by @BowenD-UCB in 38a5cc4
  • minor fix by @BowenD-UCB in 465f833
  • fixed test by @BowenD-UCB in d5ba24b
  • loosen numerical tolerance by @BowenD-UCB in b59d301
  • added gMLPnorm option if gMLP is used at readout by @BowenD-UCB in 195d48c

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.2.1...v0.2.2

- Python
Published by janosh over 2 years ago

chgnet - v0.2.1

More Supports for MD: LAMMPS and ASE-MD :zap:

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

  • @tsihyoung
  • @advancesoftcorp

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.2.0...v0.2.1

- Python
Published by BowenD-UCB over 2 years ago

chgnet - v0.2.0

CHGNet is much faster now :rocket: :rocket: :rocket:

Main updates in this release:

  1. Implement fast Cython graph converter in https://github.com/CederGroupHub/chgnet/pull/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 :tada: in https://github.com/CederGroupHub/chgnet/pull/39 by @janosh

  3. Better tests and docstrings by @BowenD-UCB

All PRs since previous release

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

New Contributors

  • @AegisIK made their first contribution in https://github.com/CederGroupHub/chgnet/pull/40

Full Changelog: https://github.com/CederGroupHub/chgnet/compare/v0.1.04...v0.2.0

- Python
Published by janosh over 2 years ago

chgnet - v0.2.1

CHGNet is much faster now

:rocket: :rocket: :rocket:

Main updates of this release:

  1. Implemented fast graph converter using C code, which makes the graph conversion steps 2 - 3x speed up depending on size of systems. Molecular dynamics now gain 1.5 - 2 x speed up as well! author: Kevin @AegisIK

  2. First version CHGNet API docs are online at https://chgnet.lbl.gov/ :tada: author: Janosh @janosh

  3. Better tests and docstrings author: Bowen @BowenD-UCB

- Python
Published by BowenD-UCB over 2 years ago

chgnet - v0.1.4

This release mainly cleaned codes and docstrings 1. Graph creation codes should be more readable 2. Added function to parse VASP outputs

Some minor bugs are solved including: 1. CHGNet detault initialization now matches pretrained model 2. energylossratio now functions correctly 3. GraphData now functions correctly

- Python
Published by BowenD-UCB over 2 years ago

chgnet - V0.1.3

- Python
Published by BowenD-UCB almost 3 years ago

chgnet - The first published PyPI version

- Python
Published by BowenD-UCB almost 3 years ago

chgnet - V0.1.1

  1. updated docstrings
  2. updated examples
  3. updated test cases

- Python
Published by BowenD-UCB almost 3 years ago

chgnet - initial release

initial relsease of CHGNet with the pretrained weights

- Python
Published by BowenD-UCB almost 3 years ago