Changelog¶
Unreleased¶
🎉 New Features¶
Constraints support for molecular dynamics and optimization by @thomasloux in #294
Added
FixAtomsconstraint to fix specific atoms in placeAdded
FixComconstraint to prevent center of mass driftConstraints automatically adjust degrees of freedom for accurate temperature calculations
Full support across all integrators (NVE, NVT, NPT) and optimizers (FIRE, Gradient Descent)
Constraints preserved during state manipulation (slicing, splitting, concatenation)
v0.5.0¶
This release focuses on improving batch processing capabilities across TorchSim. The neighbor list module has been completely refactored to support batched calculations with multiple backend implementations, elastic tensor calculations now leverage batched operations for improved performance, and a bug fix ensures Monte Carlo swaps work correctly with ragged (different-sized) systems.
🎉 New Features¶
Refactor neighbor list module with batched support and multiple backends by @abhijeetgangan in #348
New unified
torchsim_nlfunction with automatic backend selectionMultiple implementations: Alchemiops (NVIDIA CUDA), Vesin, torch_nl, and pure PyTorch fallback
Support for both single-system and batched (multi-system) calculations
Automatic selection of best available implementation based on installed packages
🛠 Enhancements¶
Batch elastic operations by @orionarcher in #384
calculate_elastic_tensornow usests.staticrunner for batched calculationsAdded
autobatcherparameter for memory-efficient processing of deformationsAdded
pbarparameter for progress bar support
🐛 Bug Fixes¶
Fix Monte Carlo swap for ragged systems by @curtischong in #380
Fixed
generate_swapscalculation of system start indices for systems with different atom counts
v0.4.2¶
Thank you to everyone who contributed to this release! This release includes important bug fixes and new features. @thomasloux, @orionarcher, @WillEngler, @RishikeshMagar, @nh-univie, @andrewrm98, @danielzuegner, and others made valuable contributions. 🚀
🎉 New Features¶
🐛 Bug Fixes¶
Fix: add init_kwargs to ts.integrate by @danielzuegner in #360
Fix PBC extraction to CPU fairchem model by @nh-univie in #368
Handle tensor PBC input in FairChemV1Model by @WillEngler in #372
Fix Comments Issue#309 by @RishikeshMagar in #378
Fix fairchem-legacy tests by removing explicit Hugging Face login by @WillEngler in #369
🛠 Enhancements¶
Consolidate model and model_name args in FairchemModel by @orionarcher in #377
New Contributors¶
v0.4.1¶
Thank you to everyone who contributed to this release! This release includes important bug fixes, new features, and API improvements. @thomasloux, @curtischong, @CompRhys, @orionarcher, @WillEngler, @samanvya10, @hn-yu, @wendymak8, @chuin-wei, @pragnya17, and many others made valuable contributions. 🚀
💥 Breaking Changes¶
🎉 New Features¶
🐛 Bug Fixes¶
MACE: transfer atomic numbers to CPU before converting to numpy by @t-reents in #289
Fixed max atoms memory estimation by @nh-univie in #279
Fixing model loading logic (names and cache dir) for fairchem models by @nh-univie in #278
Fix fairchem and neighbors tests by @WillEngler in #317
Fix #293: State to device side effects by @samanvya10 in #297
Fix graph-pes key issue by @jla-gardner in #303
Fix calculate static state after relax by @curtischong in #338
Misc fixes by @orionarcher in #336
Fix cell to cellpar by @thomasloux in #342
Fix failing Docs build by @CompRhys in #296
Fix: correct speedup plot image path in README by @Joaqland in #333
🛠 Enhancements¶
Put SimState Init logic into post_init (and enforce kw_args=true for SimState children) by @curtischong in #335
Replace vars(state) with state.attributes by @orionarcher in #329
Rename and reorder some variables by @orionarcher in #316
Add SevenNet path, str types for model arg by @YutackPark in #322
Add version attribute by @thomasloux in #311
Convert cell_to_cellpar from ase’s numpy implementation to pytorch by @wendymak8 in #306
Autobatch OOM handling by @chuin-wei in #337
Allow Mace to be loaded from a model path by @orionarcher in #349
NPTLangevinState inherits from MDState by @hn-yu in #299
📖 Documentation¶
Add integrators in docs by @thomasloux in #290
🏷️ Type Hints¶
Create py.typed by @arosen93 in #287
🧹 House-Keeping¶
📦 Dependencies¶
Loosen numpy dependency by @chuin-wei in #321
New Contributors¶
@arosen93 made their first contribution in #287
@nh-univie made their first contribution in #278
@samanvya10 made their first contribution in #297
@wendymak8 made their first contribution in #306
@pragnya17 made their first contribution in #341
@chuin-wei made their first contribution in #321
@hn-yu made their first contribution in #299
@Joaqland made their first contribution in #333
v0.4.0¶
Thank you to everyone who contributed to this release! This release includes significant API improvements and breaking changes. @janosh led a major API redesign to improve usability. @stefanbringuier added heat flux calculations. @curtischong continued improving type safety across the codebase. @CompRhys, @orionarcher, @WillEngler, and @thomasloux all made valuable contributions. 🚀
What’s Changed¶
💥 Breaking Changes¶
🎉 New Features¶
Enhancement: Heat Flux Function by @stefanbringuier in #127
🐛 Bug Fixes¶
🛠 Enhancements¶
Fairchem legacy support by @CompRhys in #270
📖 Documentation¶
Update citation in README.md by @orionarcher in #240
Add GOVERNANCE.md and remove Contributor’s Certification checkbox and language by @WillEngler in #272
Remove Contributor License Agreement (CLA) in favor of certification in contributing.md by @WillEngler in #267
Small update to README and CHANGELOG by @orionarcher in #283
🏷️ Type Hints¶
🧹 House-Keeping¶
MAINT: update pins in MACE phonons example. Remove misleading ty from PR template by @CompRhys in #239
New Contributors¶
Full Changelog: https://github.com/TorchSim/torch-sim/compare/v0.3.0…v0.4.0
v0.3.0¶
Thank you to everyone who contributed to this release! @t-reents, @curtischong, and @CompRhys did great work squashing an issue with SimState concatenation. @curtischong continued his crusade to type and improve the TorchSim API. @orionarcher, @kianpu34593, and @janosh all made contributions that continue to improve package quality and usability. 🚀
What’s Changed¶
🛠 Enhancements¶
🐛 Bug Fixes¶
Initial fix for concatenation of states in
InFlightAutoBatcherby @t-reents in #219Finish fix for
SimStateconcatenation by @t-reents and @curtischong in #232Fix broken code block in low-level tutorial by @CompRhys in #226
Update metatomic checkpoint to fix tests by @curtischong in #223
Fix memory scaling in
determine_max_batch_sizeby @t-reents, @janosh in #212
📖 Documentation¶
Update README plot with more models by @orionarcher in #236, #237
Update
citation.cffby @CompRhys in #225
Full Changelog: https://github.com/TorchSim/torch-sim/compare/v0.2.2…v0.3.0
v0.2.2¶
What’s Changed¶
💥 Breaking Changes¶
Remove higher level model imports by @CompRhys in https://github.com/TorchSim/torch-sim/pull/179
🛠 Enhancements¶
Add per atom energies and stresses for batched LJ by @abhijeetgangan in https://github.com/TorchSim/torch-sim/pull/144
throw error if autobatcher type is wrong by @orionarcher in https://github.com/TorchSim/torch-sim/pull/167
🐛 Bug Fixes¶
Mattersim fix tensors on wrong device (CPU->GPU) by @orionarcher in https://github.com/TorchSim/torch-sim/pull/154
fix
npt_langevinby @jla-gardner in https://github.com/TorchSim/torch-sim/pull/153Make sure to move data to CPU before calling vesin by @Luthaf in https://github.com/TorchSim/torch-sim/pull/156
Fix virial calculations in
optimizersandintegratorsby @janosh in https://github.com/TorchSim/torch-sim/pull/163Pad memory estimation by @orionarcher in https://github.com/TorchSim/torch-sim/pull/160
Refactor sevennet model by @YutackPark in https://github.com/TorchSim/torch-sim/pull/172
iooptional dependencies inpyproject.tomlby @curtischong in https://github.com/TorchSim/torch-sim/pull/185Fix column->row cell vector mismatch in integrators by @CompRhys in https://github.com/TorchSim/torch-sim/pull/175
📖 Documentation¶
(tiny) add graph-pes to README by @jla-gardner in https://github.com/TorchSim/torch-sim/pull/149
Better module fig by @janosh in https://github.com/TorchSim/torch-sim/pull/168
🚀 Performance¶
More efficient Orb
state_to_atoms_graphcalculation by @AdeeshKolluru in https://github.com/TorchSim/torch-sim/pull/165
🚧 CI¶
Refactor
test_math.pyandtest_transforms.pyby @janosh in https://github.com/TorchSim/torch-sim/pull/151
🏥 Package Health¶
Try out hatchling for build vs setuptools by @CompRhys in https://github.com/TorchSim/torch-sim/pull/177
📦 Dependencies¶
Bump
mace-torchto v0.3.12 by @janosh in https://github.com/TorchSim/torch-sim/pull/170Update metatrain dependency by @Luthaf in https://github.com/TorchSim/torch-sim/pull/186
🏷️ Type Hints¶
Add
torch_sim/typing.pyby @janosh in https://github.com/TorchSim/torch-sim/pull/157
New Contributors¶
@Luthaf made their first contribution in https://github.com/TorchSim/torch-sim/pull/156
@YutackPark made their first contribution in https://github.com/TorchSim/torch-sim/pull/172
@curtischong made their first contribution in https://github.com/TorchSim/torch-sim/pull/185
Full Changelog: https://github.com/TorchSim/torch-sim/compare/v0.2.0…v0.2.1
v0.2.1¶
What’s Changed¶
💥 Breaking Changes¶
Remove higher level model imports by @CompRhys in #179
🛠 Enhancements¶
🐛 Bug Fixes¶
Fix column->row cell vector mismatch in integrators by @CompRhys in #175
Mattersim fix tensors on wrong device (CPU->GPU) by @orionarcher in #154
fix
npt_langevinby @jla-gardner in #153Make sure to move data to CPU before calling vesin by @Luthaf in #156
Fix virial calculations in
optimizersandintegratorsby @janosh in #163Pad memory estimation by @orionarcher in #160
Refactor sevennet model by @YutackPark in #172
iooptional dependencies inpyproject.tomlby @curtischong in #185
📖 Documentation¶
🚀 Performance¶
More efficient Orb
state_to_atoms_graphcalculation by @AdeeshKolluru in #165
🚧 CI¶
Refactor
test_math.pyandtest_transforms.pyby @janosh in #151
🏥 Package Health¶
Try out hatchling for build vs setuptools by @CompRhys in #177
🏷️ Type Hints¶
Add
torch-sim/typing.pyby @janosh in #157
📦 Dependencies¶
New Contributors¶
@Luthaf made their first contribution in #156
@YutackPark made their first contribution in #172
@curtischong made their first contribution in #185
Full Changelog: https://github.com/torchsim/torch-sim/compare/v0.2.0…v0.2.1
v0.2.0¶
Bug Fixes 🐛¶
Enhancements 🛠¶
breaking Rename
HotSwappingAutobatchertoInFlightAutobatcherandChunkingAutoBatchertoBinningAutoBatcher, #143 @orionarcherSupport for Orbv3, #140, @AdeeshKolluru
Support metatensor models, #141, @frostedoyter @Luthaf
Support for graph-pes models, #118 @jla-gardner
Support MatterSim and fix ASE cell convention issues, #112 @CompRhys
Implement positions only FIRE optimization, #139 @abhijeetgangan
Allow different temperatures in batches, #123 @orionarcher
FairChem model updates: PBC handling, test on OMat24 e-trained model, #126 @AdeeshKolluru
FairChem model from_data_list support, #138 @ryanliu30
New correlation function module, #115 @stefanbringuier
Documentation 📖¶
House-Keeping 🧹¶
v0.1.0¶
Initial release.