mlip 0.2.0__tar.gz → 0.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. {mlip-0.2.0 → mlip-0.2.2}/CHANGELOG +38 -0
  2. mlip-0.2.2/Dockerfile +19 -0
  3. {mlip-0.2.0 → mlip-0.2.2}/PKG-INFO +18 -9
  4. {mlip-0.2.0 → mlip-0.2.2}/README.md +8 -3
  5. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/batching_helpers.rst +1 -1
  6. mlip-0.2.2/docs/source/api_reference/data/dataset_builder_config.rst +8 -0
  7. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/index.rst +1 -1
  8. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/esen.rst +2 -2
  9. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/index.rst +3 -0
  10. mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_config.rst +10 -0
  11. mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_engine.rst +14 -0
  12. mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_potential_configs.rst +20 -0
  13. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/simulation_state.rst +4 -0
  14. {mlip-0.2.0 → mlip-0.2.2}/docs/source/conf.py +3 -0
  15. {mlip-0.2.0 → mlip-0.2.2}/docs/source/index.rst +2 -2
  16. {mlip-0.2.0 → mlip-0.2.2}/docs/source/installation/index.rst +3 -0
  17. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/index.rst +1 -0
  18. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/simulations.rst +233 -33
  19. {mlip-0.2.0 → mlip-0.2.2}/pyproject.toml +9 -6
  20. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/hdf5_reader.py +14 -6
  21. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/graph_dataset.py +4 -5
  22. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/combined_graph_dataset.py +5 -1
  23. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/hessian_utils.py +48 -16
  24. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/single_graph_dataset_builder.py +17 -6
  25. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/batching_helpers.py +27 -15
  26. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/inference/batched_inference.py +15 -12
  27. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/blocks.py +19 -16
  28. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/config.py +10 -0
  29. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/esen_helpers.py +10 -11
  30. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/layer.py +4 -2
  31. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/moe.py +4 -2
  32. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/network.py +2 -0
  33. mlip-0.2.2/src/mlip/models/esen/quaternion/custom_coefficients.npz +0 -0
  34. mlip-0.2.2/src/mlip/models/esen/quaternion/utils.py +165 -0
  35. mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_custom.py +272 -0
  36. mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_general.py +763 -0
  37. mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_hybrid.py +159 -0
  38. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss_term.py +1 -1
  39. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/blocks.py +9 -2
  40. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/config.py +14 -0
  41. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/layer.py +68 -20
  42. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/network.py +7 -1
  43. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mlip_network_v1.py +1 -0
  44. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/predictor_v1.py +14 -0
  45. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/ase_montecarlo_barostat.py +19 -5
  46. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/ase_simulation_engine.py +55 -27
  47. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/mlip_ase_calculator.py +14 -10
  48. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/simulation_config.py +12 -0
  49. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/enums.py +3 -0
  50. mlip-0.2.2/src/mlip/simulation/jax_md/auxiliary_properties.py +66 -0
  51. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/graph_creation.py +1 -1
  52. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/helpers.py +21 -5
  53. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/jax_md_simulation_engine.py +109 -30
  54. mlip-0.2.2/src/mlip/simulation/jax_md/jaxmd_utils.py +231 -0
  55. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/npt_montecarlo_langevin.py +9 -4
  56. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/states.py +2 -0
  57. mlip-0.2.2/src/mlip/simulation/metadynamics/config.py +131 -0
  58. mlip-0.2.2/src/mlip/simulation/metadynamics/helpers.py +133 -0
  59. mlip-0.2.2/src/mlip/simulation/metadynamics/jax_md_metad_engine.py +397 -0
  60. mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/__init__.py +37 -0
  61. mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/bias.py +118 -0
  62. mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/collective_variables.py +355 -0
  63. mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/restraints.py +166 -0
  64. mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/walls.py +232 -0
  65. mlip-0.2.2/src/mlip/simulation/metadynamics/states.py +87 -0
  66. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/state.py +4 -0
  67. {mlip-0.2.0 → mlip-0.2.2}/tests/conftest.py +17 -1
  68. mlip-0.2.2/tests/data/helpers/__init__.py +0 -0
  69. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_graph_dataset_builders.py +57 -4
  70. {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph_helpers.py +27 -1
  71. {mlip-0.2.0 → mlip-0.2.2}/tests/models/esen/test_esen_blocks.py +0 -5
  72. {mlip-0.2.0 → mlip-0.2.2}/tests/models/esen/test_esen_layer.py +6 -12
  73. mlip-0.2.2/tests/models/esen/test_esen_quaternion.py +82 -0
  74. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_loss.py +1 -1
  75. {mlip-0.2.0 → mlip-0.2.2}/tests/models/visnet/test_visnet_layer.py +6 -3
  76. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_batched_inference.py +55 -0
  77. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_visnet_inference.py +68 -17
  78. mlip-0.2.2/tests/sample_data/alanine_dipeptide_vacuum.xyz +24 -0
  79. mlip-0.2.2/tests/simulation/metadynamics/test_jax_md_metad_engine.py +159 -0
  80. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_energy_minimization.py +13 -0
  81. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_simulation.py +87 -84
  82. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_npt_montecarlo_langevin.py +9 -2
  83. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_simulation.py +101 -58
  84. {mlip-0.2.0 → mlip-0.2.2}/tutorials/advanced_simulation_tutorial.ipynb +48 -54
  85. {mlip-0.2.0 → mlip-0.2.2}/tutorials/hessian_model_training_tutorial.ipynb +142 -144
  86. mlip-0.2.2/tutorials/metadynamics_tutorial.ipynb +536 -0
  87. mlip-0.2.0/Dockerfile +0 -15
  88. mlip-0.2.0/src/mlip/simulation/jax_md/jaxmd_utils.py +0 -142
  89. {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/deploy_docs.yaml +0 -0
  90. {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/publish.yaml +0 -0
  91. {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/tests_and_linters.yaml +0 -0
  92. {mlip-0.2.0 → mlip-0.2.2}/.pre-commit-config.yaml +0 -0
  93. {mlip-0.2.0 → mlip-0.2.2}/LICENSE +0 -0
  94. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_system.rst +0 -0
  95. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/ase_atoms_reader.rst +0 -0
  96. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/chemical_systems_reader.rst +0 -0
  97. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/extxyz_reader.rst +0 -0
  98. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/hdf5_reader.rst +0 -0
  99. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/index.rst +0 -0
  100. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/combined_graph_dataset.rst +0 -0
  101. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/data_prefetching.rst +0 -0
  102. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/data_split.rst +0 -0
  103. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/dataset_configs.rst +0 -0
  104. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/dataset_info.rst +0 -0
  105. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph.rst +0 -0
  106. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph_dataset.rst +0 -0
  107. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph_dataset_builder.rst +0 -0
  108. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/helper_functions.rst +0 -0
  109. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/single_graph_dataset_builder.rst +0 -0
  110. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/index.rst +0 -0
  111. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/blocks.rst +0 -0
  112. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/config.rst +0 -0
  113. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/conservative_predictor.rst +0 -0
  114. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/force_field.rst +0 -0
  115. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/hessian_predictor.rst +0 -0
  116. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/index.rst +0 -0
  117. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/inference_context.rst +0 -0
  118. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/io.rst +0 -0
  119. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/loss.rst +0 -0
  120. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/mace.rst +0 -0
  121. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/mlip_network.rst +0 -0
  122. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/nequip.rst +0 -0
  123. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/options.rst +0 -0
  124. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/prediction.rst +0 -0
  125. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/predictor.rst +0 -0
  126. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/properties.rst +0 -0
  127. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/readout.rst +0 -0
  128. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/visnet.rst +0 -0
  129. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_calculator.rst +0 -0
  130. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_engine.rst +0 -0
  131. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_sim_config.rst +0 -0
  132. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/batched_inference.rst +0 -0
  133. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/enums.rst +0 -0
  134. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/graph_creation_jaxmd.rst +0 -0
  135. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/jaxmd_engine.rst +0 -0
  136. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/jaxmd_sim_config.rst +0 -0
  137. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/neb_config.rst +0 -0
  138. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/neb_engine.rst +0 -0
  139. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/sim_config.rst +0 -0
  140. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/simulation_engine.rst +0 -0
  141. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/temperature_scheduling.rst +0 -0
  142. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/ema.rst +0 -0
  143. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/evaluation.rst +0 -0
  144. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/finetuning.rst +0 -0
  145. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/index.rst +0 -0
  146. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/optimizer.rst +0 -0
  147. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_io_handling.rst +0 -0
  148. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_loop.rst +0 -0
  149. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_loop_config.rst +0 -0
  150. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_state.rst +0 -0
  151. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_step.rst +0 -0
  152. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/utils/index.rst +0 -0
  153. {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/utils/multihost.rst +0 -0
  154. {mlip-0.2.0 → mlip-0.2.2}/docs/source/migration_guide/index.rst +0 -0
  155. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/data_processing.rst +0 -0
  156. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/finetuning.rst +0 -0
  157. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/inference.rst +0 -0
  158. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/models.rst +0 -0
  159. {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/training.rst +0 -0
  160. {mlip-0.2.0 → mlip-0.2.2}/ruff.toml +0 -0
  161. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/__init__.py +0 -0
  162. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/__init__.py +0 -0
  163. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_system.py +0 -0
  164. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/__init__.py +0 -0
  165. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/ase_atoms_reader.py +0 -0
  166. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/chemical_systems_reader.py +0 -0
  167. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/defaults.py +0 -0
  168. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/extxyz_reader.py +0 -0
  169. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/type_aliases.py +0 -0
  170. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/configs.py +0 -0
  171. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/dataset_info.py +0 -0
  172. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/graph_dataset_builder.py +0 -0
  173. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/__init__.py +0 -0
  174. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/atomic_energies.py +0 -0
  175. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/data_prefetching.py +0 -0
  176. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/data_split.py +0 -0
  177. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/dummy_init_graph.py +0 -0
  178. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/dynamically_batch.py +0 -0
  179. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/exceptions.py +0 -0
  180. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/filtering_utils.py +0 -0
  181. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/neighbor_analysis.py +0 -0
  182. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/type_aliases.py +0 -0
  183. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/__init__.py +0 -0
  184. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/graph.py +0 -0
  185. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/mask_helpers.py +0 -0
  186. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/neighborhood.py +0 -0
  187. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/inference/__init__.py +0 -0
  188. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/__init__.py +0 -0
  189. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/blocks.py +0 -0
  190. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/charge_utils.py +0 -0
  191. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/config.py +0 -0
  192. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/Jd.npz +0 -0
  193. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/coefficient_mapping.py +0 -0
  194. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/eulers.py +0 -0
  195. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/normalisation.py +0 -0
  196. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/force_field.py +0 -0
  197. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/gaunt_tensor_product.py +0 -0
  198. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/inference_context.py +0 -0
  199. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/__init__.py +0 -0
  200. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/default_losses.py +0 -0
  201. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/eval_metrics.py +0 -0
  202. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss.py +0 -0
  203. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss_helpers.py +0 -0
  204. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/blocks.py +0 -0
  205. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/config.py +0 -0
  206. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/layer.py +0 -0
  207. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/network.py +0 -0
  208. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/symmetric_contraction.py +0 -0
  209. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/message_passing.py +0 -0
  210. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mlip_network.py +0 -0
  211. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/model_io.py +0 -0
  212. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/blocks.py +0 -0
  213. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/config.py +0 -0
  214. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/layer.py +0 -0
  215. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/nequip_helpers.py +0 -0
  216. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/network.py +0 -0
  217. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/options.py +0 -0
  218. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/params_loading.py +0 -0
  219. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/params_transfer.py +0 -0
  220. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/__init__.py +0 -0
  221. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/conservative_predictor.py +0 -0
  222. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/energy_heads.py +0 -0
  223. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/hessian_predictor.py +0 -0
  224. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/predictor.py +0 -0
  225. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/radial_embedding.py +0 -0
  226. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/readout.py +0 -0
  227. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/visnet_helpers.py +0 -0
  228. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/__init__.py +0 -0
  229. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/atomic_energies.py +0 -0
  230. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/blocks.py +0 -0
  231. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/blocks.py +0 -0
  232. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/config.py +0 -0
  233. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/message_passing.py +0 -0
  234. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/models.py +0 -0
  235. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/symmetric_contraction.py +0 -0
  236. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/config.py +0 -0
  237. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/models.py +0 -0
  238. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/nequip_helpers.py +0 -0
  239. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/options.py +0 -0
  240. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/radial_embedding.py +0 -0
  241. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/version_compatibility.py +0 -0
  242. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/blocks.py +0 -0
  243. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/config.py +0 -0
  244. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/models.py +0 -0
  245. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/__init__.py +0 -0
  246. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/__init__.py +0 -0
  247. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/__init__.py +0 -0
  248. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/ase_config.py +0 -0
  249. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/jax_md_config.py +0 -0
  250. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/neb_config.py +0 -0
  251. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/exceptions.py +0 -0
  252. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/__init__.py +0 -0
  253. {mlip-0.2.0/tests/data → mlip-0.2.2/src/mlip/simulation/metadynamics}/__init__.py +0 -0
  254. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/montecarlo_barostat.py +0 -0
  255. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/simulation_engine.py +0 -0
  256. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/temperature_scheduling.py +0 -0
  257. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ts_search/__init__.py +0 -0
  258. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ts_search/neb_simulation_engine.py +0 -0
  259. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/utils.py +0 -0
  260. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/__init__.py +0 -0
  261. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/checkpointer.py +0 -0
  262. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/ema.py +0 -0
  263. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/evaluation.py +0 -0
  264. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/metrics_reweighting.py +0 -0
  265. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/optimizer.py +0 -0
  266. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/optimizer_config.py +0 -0
  267. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_io_handler.py +0 -0
  268. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loggers.py +0 -0
  269. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loop.py +0 -0
  270. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loop_config.py +0 -0
  271. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_state.py +0 -0
  272. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_step.py +0 -0
  273. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/__init__.py +0 -0
  274. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/fields.py +0 -0
  275. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/prediction.py +0 -0
  276. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/properties.py +0 -0
  277. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/signatures.py +0 -0
  278. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/__init__.py +0 -0
  279. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/dict_flatten.py +0 -0
  280. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/jax_utils.py +0 -0
  281. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/multihost.py +0 -0
  282. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/safe_norm.py +0 -0
  283. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf001.00003 +0 -0
  284. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf002.00006 +0 -0
  285. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf003.00008 +0 -0
  286. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf004.00014 +0 -0
  287. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf005.00018 +0 -0
  288. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf006.00026 +0 -0
  289. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf007.00032 +0 -0
  290. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf008.00042 +0 -0
  291. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf009.00050 +0 -0
  292. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf010.00062 +0 -0
  293. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf011.00072 +0 -0
  294. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf012.00086 +0 -0
  295. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf013.00098 +0 -0
  296. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf014.00114 +0 -0
  297. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf015.00128 +0 -0
  298. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf016.00146 +0 -0
  299. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss001.00002 +0 -0
  300. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss003.00006 +0 -0
  301. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss005.00012 +0 -0
  302. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss007.00032 +0 -0
  303. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss009.00048 +0 -0
  304. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss011.00070 +0 -0
  305. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss013.00094 +0 -0
  306. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss015.00120 +0 -0
  307. {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/spherical_designs.py +0 -0
  308. {mlip-0.2.0/tests/data/helpers → mlip-0.2.2/tests/data}/__init__.py +0 -0
  309. {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_atomic_energies_removal.py +0 -0
  310. {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_dummy_init_graph.py +0 -0
  311. {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_dynamically_batch.py +0 -0
  312. {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_filtering_utils.py +0 -0
  313. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_chemical_system.py +0 -0
  314. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_data_processing.py +0 -0
  315. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_dataset_info.py +0 -0
  316. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_extxyz_reader.py +0 -0
  317. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_graph_dataset.py +0 -0
  318. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_hdf5_reader.py +0 -0
  319. {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_hessian_processing.py +0 -0
  320. {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph.py +0 -0
  321. {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph_neighborhood.py +0 -0
  322. {mlip-0.2.0 → mlip-0.2.2}/tests/models/mace/test_mace_layer.py +0 -0
  323. {mlip-0.2.0 → mlip-0.2.2}/tests/models/nequip/test_nequip_layer.py +0 -0
  324. {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_conservative_predictor.py +0 -0
  325. {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_energy_heads.py +0 -0
  326. {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_force_field.py +0 -0
  327. {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_hessian_predictor.py +0 -0
  328. {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_predictor.py +0 -0
  329. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_blocks.py +0 -0
  330. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_charge_utils.py +0 -0
  331. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_eval_metrics.py +0 -0
  332. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_gaunt_tensor_product.py +0 -0
  333. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_inference_context.py +0 -0
  334. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_message_passing.py +0 -0
  335. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_model_io.py +0 -0
  336. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_node_masking.py +0 -0
  337. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_params_transfer.py +0 -0
  338. {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_readout.py +0 -0
  339. {mlip-0.2.0 → mlip-0.2.2}/tests/models/visnet/test_visnet_blocks.py +0 -0
  340. {mlip-0.2.0 → mlip-0.2.2}/tests/models_core/test_symmetric_contraction.py +0 -0
  341. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_esen_inference.py +0 -0
  342. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_esen_moe.py +0 -0
  343. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_mace_inference.py +0 -0
  344. {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_nequip_inference.py +0 -0
  345. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/Dimethyl_sulfoxide.xyz +0 -0
  346. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/SPICE_small_with_charges.xyz +0 -0
  347. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/mace_test_params.pkl +0 -0
  348. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/mace_test_params_3_heads.pkl +0 -0
  349. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/nequip_test_params.pkl +0 -0
  350. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_test.xyz +0 -0
  351. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_test_unseen_atoms.xyz +0 -0
  352. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_with_charge_spin.xyz +0 -0
  353. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_materials_test.extxyz +0 -0
  354. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/spice2-1000_429_md_0-1.hdf5 +0 -0
  355. {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/visnet_test_params.pkl +0 -0
  356. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_montecarlo_barostat.py +0 -0
  357. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_energy_minimization.py +0 -0
  358. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_log_outputs.py +0 -0
  359. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_montecarlo_barostat.py +0 -0
  360. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_neb.py +0 -0
  361. {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_simulation_utils.py +0 -0
  362. {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_mid_epoch_checkpoint.py +0 -0
  363. {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_training.py +0 -0
  364. {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_training_io_handler.py +0 -0
  365. {mlip-0.2.0 → mlip-0.2.2}/tests/utils/test_jax_utils.py +0 -0
  366. {mlip-0.2.0 → mlip-0.2.2}/tutorials/model_addition_tutorial.ipynb +0 -0
  367. {mlip-0.2.0 → mlip-0.2.2}/tutorials/model_training_tutorial.ipynb +0 -0
  368. {mlip-0.2.0 → mlip-0.2.2}/tutorials/moe_training_and_inference_tutorial.ipynb +0 -0
  369. {mlip-0.2.0 → mlip-0.2.2}/tutorials/simulation_tutorial.ipynb +0 -0
@@ -1,5 +1,43 @@
1
1
  # Changelog
2
2
 
3
+ ## Release 0.2.2
4
+
5
+ - Adding support for running well-tempered metadynamics MD simulations using the
6
+ JAX-MD backend.
7
+ - Adding support for NVE ensemble MD simulations.
8
+ - Adding support for setting a random seed for simulations via the config, and
9
+ introducing per-trajectory random seeds in batched JAX-MD simulations via the
10
+ new `independent_seeds_batched` config flag. This is now `True` by
11
+ default, meaning batched simulations use independent random keys per trajectory unless
12
+ explicitly disabled.
13
+ - Adding support for logging of potential energy and predicted partial charges during MD
14
+ simulations for the JAX-MD backend, and for both MD simulations and energy
15
+ minimizations for the ASE backend.
16
+ - Reducing memory requirements for the Mixture-of-Experts (MoE) dense layer.
17
+ - Fixing a bug in graph batching where `spin_multiplicity` was missed by
18
+ homogenization.
19
+ - Updating batched inference to allow for efficient energy-only predictions.
20
+ - Fixing energy, force, and Hessian discontinuities at the cutoff in ViSNet. Set
21
+ `use_legacy_visnet=True` in `VisnetConfig` to reproduce models trained with
22
+ versions v0.2.0 and v0.2.1. Note that after loading a ViSNet model trained with
23
+ these versions, it can still be used for inference after updating its config via
24
+ `force_field = force_field.replace_config(use_legacy_visnet=True)`. The pre-trained
25
+ ViSNet model provided on HuggingFace has been updated after retraining with the
26
+ corrected version of the code. See the API documentation of
27
+ `VisnetConfig.use_legacy_visnet` for details of the changes to the model equations.
28
+
29
+ ## Release 0.2.1
30
+
31
+ - Reducing memory requirements for Hessian predictions in batched inference drastically.
32
+ - Optimizing eSEN implementation, introducing (1) Quaternion method to compute Wigner
33
+ D matrices, and (2) `use_remat_edgewise` flag to rematerialize `Edgewise`.
34
+ - Improving file reading efficiency in `Hdf5Reader`.
35
+ - Fixing `CombinedGraphDataset` by catching `StopIteration` runtime error.
36
+ - Fixing `MSEHessianLoss` to use correct axes for aggregation.
37
+ - Updating advanced simulation and Hessian tutorial notebooks.
38
+ - Fixing memory bottleneck in ViSNet, adding rematerialisation option with `use_remat`.
39
+ - Upgrading e3j dependency to minimum version of 0.1.0b3.
40
+
3
41
  ## Release 0.2.0
4
42
 
5
43
  - Introducing breaking API updates in multiple places, see Migration guide in
mlip-0.2.2/Dockerfile ADDED
@@ -0,0 +1,19 @@
1
+ FROM python:3.12-slim
2
+
3
+ WORKDIR /app
4
+
5
+ RUN apt-get update && apt-get install -y git wget
6
+
7
+ RUN pip install "mlip[cuda13]" huggingface_hub notebook
8
+
9
+ RUN wget https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/simulation_tutorial.ipynb \
10
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/model_training_tutorial.ipynb \
11
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/model_addition_tutorial.ipynb \
12
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/advanced_simulation_tutorial.ipynb \
13
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/moe_training_and_inference_tutorial.ipynb \
14
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/hessian_model_training_tutorial.ipynb \
15
+ https://raw.githubusercontent.com/instadeepai/mlip/refs/heads/main/tutorials/metadynamics_tutorial.ipynb
16
+
17
+ EXPOSE 8888
18
+
19
+ CMD ["jupyter", "notebook", "--ip=0.0.0.0", "--port=8888", "--no-browser", "--allow-root"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mlip
3
- Version: 0.2.0
3
+ Version: 0.2.2
4
4
  Summary: Machine Learning Interatomic Potentials in JAX
5
5
  Project-URL: Homepage, https://github.com/instadeepai/mlip/
6
6
  Author-email: InstaDeep <placeholder@instadeep.com>
@@ -18,7 +18,7 @@ Requires-Python: <3.14,>=3.11
18
18
  Requires-Dist: ase>=3.22.1
19
19
  Requires-Dist: dm-haiku>=0.0.14
20
20
  Requires-Dist: dm-tree>=0.1.8
21
- Requires-Dist: e3j<0.1.1,>=0.1.0b0
21
+ Requires-Dist: e3j<0.1.1,>=0.1.0b3
22
22
  Requires-Dist: e3nn-jax>=0.20.7
23
23
  Requires-Dist: flax>=0.9.0
24
24
  Requires-Dist: h5py>=3.12.1
@@ -32,20 +32,24 @@ Requires-Dist: pydantic>=2.10.2
32
32
  Requires-Dist: roundmantissa>=0.2.1
33
33
  Requires-Dist: tqdm-loggable>=0.2
34
34
  Requires-Dist: tqdm>=4.0
35
+ Provides-Extra: cuda
36
+ Requires-Dist: e3j-ops<0.1.1,>=0.1.0b3; extra == 'cuda'
37
+ Requires-Dist: jax[cuda13]>=0.8.0; extra == 'cuda'
38
+ Requires-Dist: jaxlib>=0.8.0; extra == 'cuda'
35
39
  Provides-Extra: cuda12
36
- Requires-Dist: e3j-ops<0.1.1,>=0.1.0b0; extra == 'cuda12'
40
+ Requires-Dist: e3j-ops<0.1.1,>=0.1.0b3; extra == 'cuda12'
37
41
  Requires-Dist: jax[cuda12]>=0.4.32; extra == 'cuda12'
38
42
  Requires-Dist: jaxlib>=0.4.32; extra == 'cuda12'
39
43
  Provides-Extra: cuda12-local
40
- Requires-Dist: e3j-ops<0.1.1,>=0.1.0b0; extra == 'cuda12-local'
44
+ Requires-Dist: e3j-ops<0.1.1,>=0.1.0b3; extra == 'cuda12-local'
41
45
  Requires-Dist: jax[cuda12-local]>=0.4.32; extra == 'cuda12-local'
42
46
  Requires-Dist: jaxlib>=0.4.32; extra == 'cuda12-local'
43
47
  Provides-Extra: cuda13
44
- Requires-Dist: e3j-ops<0.1.1,>=0.1.0b0; extra == 'cuda13'
48
+ Requires-Dist: e3j-ops<0.1.1,>=0.1.0b3; extra == 'cuda13'
45
49
  Requires-Dist: jax[cuda13]>=0.8.0; extra == 'cuda13'
46
50
  Requires-Dist: jaxlib>=0.8.0; extra == 'cuda13'
47
51
  Provides-Extra: cuda13-local
48
- Requires-Dist: e3j-ops<0.1.1,>=0.1.0b0; extra == 'cuda13-local'
52
+ Requires-Dist: e3j-ops<0.1.1,>=0.1.0b3; extra == 'cuda13-local'
49
53
  Requires-Dist: jax[cuda13-local]>=0.8.0; extra == 'cuda13-local'
50
54
  Requires-Dist: jaxlib>=0.8.0; extra == 'cuda13-local'
51
55
  Provides-Extra: tpu
@@ -89,10 +93,11 @@ modular API for development of new architectures
89
93
  - ⚡ Batched inference with trained MLIP models
90
94
  - 🧪 MD simulations with MLIP models using multiple simulation backends
91
95
  (currently: JAX-MD and ASE)
92
- - 🌡️ Support for both NVT and NPT ensembles in MD
96
+ - 🌡️ Support for NVT, NPT and NVE ensembles in MD
93
97
  - ⛰️ Energy minimizations using the same simulation backends as for MD
94
98
  - 🚀 Batched MD simulations and energy minimizations with the JAX-MD backend
95
99
  - 🔎 Transition state search with the nudged elastic band (NEB) method
100
+ - 🌋 Enhanced sampling via metadynamics for free energy landscape exploration
96
101
  - 🌐 Global charge conditioning, partial charge predictions, and
97
102
  support for long-range interactions
98
103
  - 📈 Training on Hessian labels
@@ -144,6 +149,9 @@ To install the **CUDA 13 version of JAX and e3j** binaries alongside *mlip*, run
144
149
  pip install "mlip[cuda13]"
145
150
  ```
146
151
 
152
+ The alias `cuda` can be used instead of `cuda13` for backwards
153
+ compatibility with *mlip* v1.
154
+
147
155
  To install the CUDA 12 version instead, run:
148
156
 
149
157
  ```bash
@@ -175,6 +183,7 @@ simple templates to build your own MLIP pipelines:
175
183
  - [Advanced simulation tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/advanced_simulation_tutorial.ipynb)
176
184
  - [MoE training tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/moe_training_and_inference_tutorial.ipynb)
177
185
  - [Hessian model training tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/hessian_model_training_tutorial.ipynb)
186
+ - [Metadynamics tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/metadynamics_tutorial.ipynb)
178
187
 
179
188
  To run the tutorials, just install Jupyter notebooks via pip and launch it from
180
189
  a directory that contains the notebooks:
@@ -242,8 +251,8 @@ Further details can be found in our white paper (see [below](#-citing-our-work))
242
251
  **ViSNet (1,172,676 parameters):**
243
252
  | Systems | JAX-MD | ASE |
244
253
  | --------- |-------------:|-------------:|
245
- | 1UAO | 1.9 ms/step | 7.1 ms/step |
246
- | 1ABT | 13.7 ms/step | 30.2 ms/step |
254
+ | 1UAO | 1.6 ms/step | 7.0 ms/step |
255
+ | 1ABT | 9.0 ms/step | 24.0 ms/step |
247
256
 
248
257
  **NequIP (1,327,792 parameters):**
249
258
  | Systems | JAX-MD | ASE |
@@ -33,10 +33,11 @@ modular API for development of new architectures
33
33
  - ⚡ Batched inference with trained MLIP models
34
34
  - 🧪 MD simulations with MLIP models using multiple simulation backends
35
35
  (currently: JAX-MD and ASE)
36
- - 🌡️ Support for both NVT and NPT ensembles in MD
36
+ - 🌡️ Support for NVT, NPT and NVE ensembles in MD
37
37
  - ⛰️ Energy minimizations using the same simulation backends as for MD
38
38
  - 🚀 Batched MD simulations and energy minimizations with the JAX-MD backend
39
39
  - 🔎 Transition state search with the nudged elastic band (NEB) method
40
+ - 🌋 Enhanced sampling via metadynamics for free energy landscape exploration
40
41
  - 🌐 Global charge conditioning, partial charge predictions, and
41
42
  support for long-range interactions
42
43
  - 📈 Training on Hessian labels
@@ -88,6 +89,9 @@ To install the **CUDA 13 version of JAX and e3j** binaries alongside *mlip*, run
88
89
  pip install "mlip[cuda13]"
89
90
  ```
90
91
 
92
+ The alias `cuda` can be used instead of `cuda13` for backwards
93
+ compatibility with *mlip* v1.
94
+
91
95
  To install the CUDA 12 version instead, run:
92
96
 
93
97
  ```bash
@@ -119,6 +123,7 @@ simple templates to build your own MLIP pipelines:
119
123
  - [Advanced simulation tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/advanced_simulation_tutorial.ipynb)
120
124
  - [MoE training tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/moe_training_and_inference_tutorial.ipynb)
121
125
  - [Hessian model training tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/hessian_model_training_tutorial.ipynb)
126
+ - [Metadynamics tutorial](https://github.com/instadeepai/mlip/blob/main/tutorials/metadynamics_tutorial.ipynb)
122
127
 
123
128
  To run the tutorials, just install Jupyter notebooks via pip and launch it from
124
129
  a directory that contains the notebooks:
@@ -186,8 +191,8 @@ Further details can be found in our white paper (see [below](#-citing-our-work))
186
191
  **ViSNet (1,172,676 parameters):**
187
192
  | Systems | JAX-MD | ASE |
188
193
  | --------- |-------------:|-------------:|
189
- | 1UAO | 1.9 ms/step | 7.1 ms/step |
190
- | 1ABT | 13.7 ms/step | 30.2 ms/step |
194
+ | 1UAO | 1.6 ms/step | 7.0 ms/step |
195
+ | 1ABT | 9.0 ms/step | 24.0 ms/step |
191
196
 
192
197
  **NequIP (1,327,792 parameters):**
193
198
  | Systems | JAX-MD | ASE |
@@ -2,7 +2,7 @@
2
2
 
3
3
  .. module:: mlip.graph.batching_helpers
4
4
 
5
- Batching Helpers
5
+ Batching helpers
6
6
  ================
7
7
 
8
8
  .. autofunction:: batch_graphs
@@ -0,0 +1,8 @@
1
+ .. _dataset_configs:
2
+
3
+ .. module:: mlip.data.configs
4
+
5
+ Dataset builder config
6
+ ======================
7
+
8
+ .. autoclass:: GraphDatasetBuilderConfig
@@ -16,7 +16,7 @@ This module contains all code related to dataset reading and processing.
16
16
  chemical_systems_readers/index
17
17
  chemical_system
18
18
  dataset_info
19
- dataset_configs
19
+ dataset_builder_config
20
20
  graph_dataset
21
21
  combined_graph_dataset
22
22
  data_prefetching
@@ -1,7 +1,7 @@
1
1
  .. _esen:
2
2
 
3
- ESEN
4
- ======
3
+ eSEN
4
+ ====
5
5
 
6
6
  .. module:: mlip.models.esen.network
7
7
 
@@ -24,3 +24,6 @@ This module contains all code related to simulations (e.g., MD or energy minimiz
24
24
  batched_inference
25
25
  neb_engine
26
26
  neb_config
27
+ metadynamics_engine
28
+ metadynamics_config
29
+ metadynamics_potential_configs
@@ -0,0 +1,10 @@
1
+ .. _metadynamics_config:
2
+
3
+ .. module:: mlip.simulation.metadynamics.config
4
+
5
+ Metadynamics Simulation Config
6
+ ==============================
7
+
8
+ .. autoclass:: MetadynamicsConfig
9
+
10
+ .. autoclass:: JaxMDMetadynamicsSimulationConfig
@@ -0,0 +1,14 @@
1
+ .. _jaxmd_metadynamics_engine:
2
+
3
+ .. module:: mlip.simulation.metadynamics.jax_md_metad_engine
4
+
5
+ Metadynamics Simulation Engine
6
+ ==============================
7
+
8
+ .. autoclass:: JaxMDMetadynamicsSimulationEngine
9
+
10
+ .. automethod:: __init__
11
+
12
+ .. automethod:: run
13
+
14
+ .. automethod:: attach_logger
@@ -0,0 +1,20 @@
1
+ .. _metadynamics_potential_configs:
2
+
3
+ .. module:: mlip.simulation.metadynamics.potential_terms
4
+
5
+ Metadynamics Potential Configs
6
+ ==============================
7
+
8
+ .. autoclass:: DistanceCVConfig
9
+
10
+ .. autoclass:: AngleCVConfig
11
+
12
+ .. autoclass:: DihedralCVConfig
13
+
14
+ .. autoclass:: CoordinationNumberCVConfig
15
+
16
+ .. autoclass:: DistanceWallConfig
17
+
18
+ .. autoclass:: AngleWallConfig
19
+
20
+ .. autoclass:: PositionalRestraintConfig
@@ -12,3 +12,7 @@ Simulation State
12
12
  .. autoclass:: NEBSimulationState
13
13
 
14
14
  .. automethod:: __init__
15
+
16
+ .. autoclass:: mlip.simulation.metadynamics.states.MetadynamicsSimulationState
17
+
18
+ .. automethod:: __init__
@@ -18,6 +18,9 @@ extensions = ["sphinx.ext.autodoc", "sphinx.ext.napoleon", "sphinx_design"]
18
18
  exclude_patterns = []
19
19
  default_role = "code"
20
20
 
21
+ # Suppress cross-reference warnings for attribute names shared across multiple classes.
22
+ suppress_warnings = ["ref.python"]
23
+
21
24
  # -- Options for HTML output -------------------------------------------------
22
25
  # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
23
26
 
@@ -40,8 +40,8 @@ It provides tools for:
40
40
  :link: user_guide/simulations
41
41
  :link-type: doc
42
42
 
43
- Molecular dynamics, energy minimization, and transition state search with
44
- multiple backends
43
+ Molecular dynamics, energy minimization, transition state search, and
44
+ metadynamics with multiple backends
45
45
 
46
46
  .. grid-item-card:: ⚡ State-of-the-art speed
47
47
 
@@ -19,6 +19,9 @@ Use this command instead to install the GPU-compatible version:
19
19
 
20
20
  **This command installs the CUDA 13 version of JAX.**
21
21
 
22
+ Note that the alias `cuda` can be used instead of `cuda13` for backwards compatibility
23
+ with *mlip* v1.
24
+
22
25
  To install the CUDA 12 version instead, run:
23
26
 
24
27
  .. code-block:: bash
@@ -78,6 +78,7 @@ deep-dive tutorials :ref:`below <tutorials>` to help you with getting onboarded
78
78
  * `Addition of new models <https://github.com/instadeepai/mlip/blob/main/tutorials/model_addition_tutorial.ipynb>`_
79
79
  * `Training on Hessian labels <https://github.com/instadeepai/mlip/blob/main/tutorials/hessian_model_training_tutorial.ipynb>`_
80
80
  * `Advanced simulation <https://github.com/instadeepai/mlip/blob/main/tutorials/advanced_simulation_tutorial.ipynb>`_
81
+ * `Metadynamics <https://github.com/instadeepai/mlip/blob/main/tutorials/metadynamics_tutorial.ipynb>`_
81
82
 
82
83
  To run the tutorials, install Jupyter notebooks via pip and launch it from
83
84
  a directory that contains the notebooks: