Skip to content

Releases: MDIL-SNU/SevenNet

v0.10.3

16 Dec 01:43
e3a2bf4
Compare
Choose a tag to compare

[0.10.3]

Matbench
Our new model SevenNet-l3i5 is now available.

Added

  • SevenNet-l3i5, checkpoint, preset. (keywords: 7net-l3i5, sevennet-l3i5)

Changed

  • Fast --help (do not import torch)
  • README refined

What's Changed

New Contributors

Full Changelog: v0.10.2...v0.10.3

v0.10.2

07 Dec 07:13
f981b7c
Compare
Choose a tag to compare

[0.10.2]

Added

  • Accelerated graph build routine if matscipy is installed @hexagonerose
  • matscipy vs. ase neighborlist unit test
  • If valid set is not given but data_divide_ratio is given, validaset is created using random split. (shift, scale, and conv_denoiminator uses original whole statistics)

Changed

  • matscipy is included as a dependency
  • data_divide_ration defaults to 0.0 (meaning not used)

Fixed

  • For torch version >= 2.4.0, Loading graph dataset no more raises warnings.
  • Raise error when unknown element is found (SevenNetCalculator)

What's Changed

New Contributors

Full Changelog: v0.10.1...v0.10.2

v0.10.1

07 Nov 04:41
32e1357
Compare
Choose a tag to compare

[0.10.1]

Added

  • experimental SevenNetAtomsDataset which is memory efficient, can be enabled with dataset_type='atoms'
  • Save meta data & statistics when the SevenNetGraphDataset saves its data.

Changed

  • Save checkpoint_0.pth (model before any training)
  • SevenNetGraphDataset._file_to_graph_list -> SevenNetGraphDataset.file_to_graph_list
  • Refactoring SevenNetGraphDataset, skips computing statistics if it is loaded, more detailed logging
  • Prefer use .get when accessing config dict

Fixed

  • Fix error when loading SevenNetGraphDataset with other types of data (ex: extxyz) in one dataset

Full Changelog: v0.10.0...v0.10.1

What's Changed

v0.10.0

22 Oct 02:02
326a78d
Compare
Choose a tag to compare

[0.10.0]

SevenNet now has CI workflows and its python coverage is 78%!
Substantial changes in command-line apps and their outputs.
Previous functionalities are still accessible with correct flags (sevenn -m train_v1 ... , sevennet_graph_build --legacy ...)

Added

  • sevenn_preset for below changes
  • [train_v2]: train_v2, with lots of refactoring, support load_testset_path.
  • [train_v2]: SevenNetGraphDataset replaces old AtomGrpahDataset, which extends InMemoryDataset of PyG.
  • [train_v2]: sevenn_graph_build for SevenNetGraphDataset.
  • [train_v2]: Any additional datasets will be evaluated and recorded if it is given as 'load_{NAME}set_path' key.
  • Univ keyword for chemical_species
  • More options: energy_key, force_key, stress_key for sevenn_graph_build, than ase.calculator @thangckt
  • OpenMPI distributed training @thangckt

Changed

  • Some cumbersome things(type_map, requires_grad ), that hurt readability, are now hidden inside AtomGraphSequential.
  • log.sevenn and lc.csv automatically find a safe filename (log0.sevenn, log1.sevenn, ...) to avoid overwriting.
  • [train_v2]: train_v2 loads its training set via load_trainset_path, rather than previous load_dataset_path.
  • [train_v2]: log.csv -> lc.csv, and columns have no units, (easier to postprocess with it) but still on log.sevenn.
  • [train_v2]: Train valid split by ratio is temporarily removed
  • Previous presets are renamed with _v1 suffix

Fixed

  • [e3gnn_serial]: can continue simulation even when atom tag becomes not consecutive (removing atom dynamically), @gasplant64
  • [e3gnn_parallel]: undefined behavior when there is no atoms to send/recv (for non pbc system)
  • [e3gnn_parallel]: incorrect force/stress in some edge cases (too small simulation cell & 2 process)
  • [e3gnn_parallel]: revert commit 14851ef, now e3gnn_parallel is sane.
  • [e3gnn_*]: += instead of = when saving virial stress and forces @gasplant64
  • Now Logger correctly closes a file.
  • ... and lots of small bugs I found during writing pytest.

New Contributors

v0.9.3

26 Jul 01:40
6d00fc7
Compare
Choose a tag to compare
v0.9.3 Pre-release
Pre-release

Warning: This release has a serious bug in LAMMPS parallel. Please use v0.9.3.post1 in the 'tags', or use pip install.

SevenNet is released to PyPI, project is managed using pyproject.toml, not setup.py

  • PyPI release + docs
  • torch_scatter dependency removed
  • torch_geometric dependency added to the pyproject.toml

Features:

  • sevenn_preset for basic training yaml files
  • sevenn_patch_lammps for easier installation
  • keyword input for pre-trained models: continue, sevenn_get_model, sevennet_calculator

Bugfix:

  • C++17 for torch version > 2.0

Known bug:

  • In training yaml, scale: 'elemwise_force_rms' is broken. Fixed in github, but not in pip.

The last snapshot of XPLOR cutoff bug

29 Apr 08:15
ca86269
Compare
Choose a tag to compare
Pre-release

The last snapshot of SevenNet has XPLOR cutoff bug and wrong SevenNet-0 potential.

v0.9.1

12 Mar 07:03
6555200
Compare
Choose a tag to compare
v0.9.1 Pre-release
Pre-release

This is checkpoint before updating pair_e3gnn_parallel.cpp

I have fixed bugs for small simulation cell but nswap == 6

This version could gives wrong results in the special case where

  1. cell is very small but still nswap == 6 (6 communication for each cubic faces).
  2. There exists a small overlap of cutoffs between process 2 and its PBC replicated cell.

The error is fixed but the version is not thoroughly debugged by others.

v0.9.0

23 Nov 07:50
00f91c9
Compare
Choose a tag to compare
v0.9.0 Pre-release
Pre-release

Temporal release after merge from dev.

Stress calculation on serial version implemented.

sevenn_get_model
sevenn_inference
sevenn_graph_build

commend updated, README.md updated.

v0.8.1

29 Aug 03:59
Compare
Choose a tag to compare
v0.8.1 Pre-release
Pre-release

Average num neighbor fixed.

This is backup for following merge from branch dev

First release v0.8.0

03 Jul 09:23
Compare
Choose a tag to compare
First release v0.8.0 Pre-release
Pre-release

Minimal documentation for usage and installation is prepared. But still bugs are present.

Know bugs:

  • When parsing VASP OUTCARs with structure_list, if the folder contains a POSCAR with selective dynamics, it does not read the OUTCAR correctly.
  • When parsing VASP OUTCARs with structure_list, spin polarized calculations are not yet supported.
  • Models with a large number of parameters (>=5 message passing layers, >= 64 channels) show initial RMSEs of energy and force significantly larger than the original nequip. Since the difference should be marginal, we are actively investigating this issue.
  • The calculated stress on LAMMPS is incorrect.
  • Functionality 'continue' is unstable.