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.
- {mlip-0.2.0 → mlip-0.2.2}/CHANGELOG +38 -0
- mlip-0.2.2/Dockerfile +19 -0
- {mlip-0.2.0 → mlip-0.2.2}/PKG-INFO +18 -9
- {mlip-0.2.0 → mlip-0.2.2}/README.md +8 -3
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/batching_helpers.rst +1 -1
- mlip-0.2.2/docs/source/api_reference/data/dataset_builder_config.rst +8 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/index.rst +1 -1
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/esen.rst +2 -2
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/index.rst +3 -0
- mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_config.rst +10 -0
- mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_engine.rst +14 -0
- mlip-0.2.2/docs/source/api_reference/simulation/metadynamics_potential_configs.rst +20 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/simulation_state.rst +4 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/conf.py +3 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/index.rst +2 -2
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/installation/index.rst +3 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/index.rst +1 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/simulations.rst +233 -33
- {mlip-0.2.0 → mlip-0.2.2}/pyproject.toml +9 -6
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/hdf5_reader.py +14 -6
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/graph_dataset.py +4 -5
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/combined_graph_dataset.py +5 -1
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/hessian_utils.py +48 -16
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/single_graph_dataset_builder.py +17 -6
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/batching_helpers.py +27 -15
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/inference/batched_inference.py +15 -12
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/blocks.py +19 -16
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/config.py +10 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/esen_helpers.py +10 -11
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/layer.py +4 -2
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/moe.py +4 -2
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/network.py +2 -0
- mlip-0.2.2/src/mlip/models/esen/quaternion/custom_coefficients.npz +0 -0
- mlip-0.2.2/src/mlip/models/esen/quaternion/utils.py +165 -0
- mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_custom.py +272 -0
- mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_general.py +763 -0
- mlip-0.2.2/src/mlip/models/esen/quaternion/wigner_hybrid.py +159 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss_term.py +1 -1
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/blocks.py +9 -2
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/config.py +14 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/layer.py +68 -20
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/network.py +7 -1
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mlip_network_v1.py +1 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/predictor_v1.py +14 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/ase_montecarlo_barostat.py +19 -5
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/ase_simulation_engine.py +55 -27
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/mlip_ase_calculator.py +14 -10
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/simulation_config.py +12 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/enums.py +3 -0
- mlip-0.2.2/src/mlip/simulation/jax_md/auxiliary_properties.py +66 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/graph_creation.py +1 -1
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/helpers.py +21 -5
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/jax_md_simulation_engine.py +109 -30
- mlip-0.2.2/src/mlip/simulation/jax_md/jaxmd_utils.py +231 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/npt_montecarlo_langevin.py +9 -4
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/states.py +2 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/config.py +131 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/helpers.py +133 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/jax_md_metad_engine.py +397 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/__init__.py +37 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/bias.py +118 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/collective_variables.py +355 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/restraints.py +166 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/potential_terms/walls.py +232 -0
- mlip-0.2.2/src/mlip/simulation/metadynamics/states.py +87 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/state.py +4 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/conftest.py +17 -1
- mlip-0.2.2/tests/data/helpers/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_graph_dataset_builders.py +57 -4
- {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph_helpers.py +27 -1
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/esen/test_esen_blocks.py +0 -5
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/esen/test_esen_layer.py +6 -12
- mlip-0.2.2/tests/models/esen/test_esen_quaternion.py +82 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_loss.py +1 -1
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/visnet/test_visnet_layer.py +6 -3
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_batched_inference.py +55 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_visnet_inference.py +68 -17
- mlip-0.2.2/tests/sample_data/alanine_dipeptide_vacuum.xyz +24 -0
- mlip-0.2.2/tests/simulation/metadynamics/test_jax_md_metad_engine.py +159 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_energy_minimization.py +13 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_simulation.py +87 -84
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_npt_montecarlo_langevin.py +9 -2
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_simulation.py +101 -58
- {mlip-0.2.0 → mlip-0.2.2}/tutorials/advanced_simulation_tutorial.ipynb +48 -54
- {mlip-0.2.0 → mlip-0.2.2}/tutorials/hessian_model_training_tutorial.ipynb +142 -144
- mlip-0.2.2/tutorials/metadynamics_tutorial.ipynb +536 -0
- mlip-0.2.0/Dockerfile +0 -15
- mlip-0.2.0/src/mlip/simulation/jax_md/jaxmd_utils.py +0 -142
- {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/deploy_docs.yaml +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/publish.yaml +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/.github/workflows/tests_and_linters.yaml +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/.pre-commit-config.yaml +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/LICENSE +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_system.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/ase_atoms_reader.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/chemical_systems_reader.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/extxyz_reader.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/hdf5_reader.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/chemical_systems_readers/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/combined_graph_dataset.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/data_prefetching.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/data_split.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/dataset_configs.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/dataset_info.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph_dataset.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/graph_dataset_builder.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/helper_functions.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/data/single_graph_dataset_builder.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/blocks.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/conservative_predictor.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/force_field.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/hessian_predictor.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/inference_context.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/io.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/loss.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/mace.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/mlip_network.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/nequip.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/options.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/prediction.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/predictor.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/properties.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/readout.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/models/visnet.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_calculator.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_engine.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/ase_sim_config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/batched_inference.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/enums.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/graph_creation_jaxmd.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/jaxmd_engine.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/jaxmd_sim_config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/neb_config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/neb_engine.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/sim_config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/simulation_engine.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/simulation/temperature_scheduling.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/ema.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/evaluation.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/finetuning.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/optimizer.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_io_handling.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_loop.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_loop_config.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_state.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/training/training_step.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/utils/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/api_reference/utils/multihost.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/migration_guide/index.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/data_processing.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/finetuning.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/inference.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/models.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/docs/source/user_guide/training.rst +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/ruff.toml +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_system.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/ase_atoms_reader.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/chemical_systems_reader.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/defaults.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/extxyz_reader.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/chemical_systems_readers/type_aliases.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/configs.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/dataset_info.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/graph_dataset_builder.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/atomic_energies.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/data_prefetching.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/data_split.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/dummy_init_graph.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/dynamically_batch.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/exceptions.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/filtering_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/neighbor_analysis.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/data/helpers/type_aliases.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/graph.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/mask_helpers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/graph/neighborhood.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/inference/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/charge_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/Jd.npz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/coefficient_mapping.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/eulers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/esen/normalisation.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/force_field.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/gaunt_tensor_product.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/inference_context.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/default_losses.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/eval_metrics.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/loss/loss_helpers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/layer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/network.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mace/symmetric_contraction.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/message_passing.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/mlip_network.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/model_io.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/layer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/nequip_helpers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/nequip/network.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/options.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/params_loading.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/params_transfer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/conservative_predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/energy_heads.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/hessian_predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/predictors/predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/radial_embedding.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/readout.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models/visnet/visnet_helpers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/atomic_energies.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/message_passing.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/models.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/mace/symmetric_contraction.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/models.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/nequip/nequip_helpers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/options.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/radial_embedding.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/version_compatibility.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/models_v1/visnet/models.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ase/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/ase_config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/jax_md_config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/configs/neb_config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/exceptions.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/jax_md/__init__.py +0 -0
- {mlip-0.2.0/tests/data → mlip-0.2.2/src/mlip/simulation/metadynamics}/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/montecarlo_barostat.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/simulation_engine.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/temperature_scheduling.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ts_search/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/ts_search/neb_simulation_engine.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/simulation/utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/checkpointer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/ema.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/evaluation.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/metrics_reweighting.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/optimizer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/optimizer_config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_io_handler.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loggers.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loop.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_loop_config.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_state.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/training/training_step.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/fields.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/prediction.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/properties.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/typing/signatures.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/dict_flatten.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/jax_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/multihost.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/safe_norm.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf001.00003 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf002.00006 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf003.00008 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf004.00014 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf005.00018 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf006.00026 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf007.00032 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf008.00042 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf009.00050 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf010.00062 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf011.00072 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf012.00086 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf013.00098 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf014.00114 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf015.00128 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/sf016.00146 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss001.00002 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss003.00006 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss005.00012 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss007.00032 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss009.00048 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss011.00070 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss013.00094 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/data/ss015.00120 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/src/mlip/utils/spherical_designs/spherical_designs.py +0 -0
- {mlip-0.2.0/tests/data/helpers → mlip-0.2.2/tests/data}/__init__.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_atomic_energies_removal.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_dummy_init_graph.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_dynamically_batch.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/helpers/test_filtering_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_chemical_system.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_data_processing.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_dataset_info.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_extxyz_reader.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_graph_dataset.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_hdf5_reader.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/data/test_hessian_processing.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/graph/test_graph_neighborhood.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/mace/test_mace_layer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/nequip/test_nequip_layer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_conservative_predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_energy_heads.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_force_field.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_hessian_predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/predictors/test_predictor.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_charge_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_eval_metrics.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_gaunt_tensor_product.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_inference_context.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_message_passing.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_model_io.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_node_masking.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_params_transfer.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/test_readout.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models/visnet/test_visnet_blocks.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_core/test_symmetric_contraction.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_esen_inference.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_esen_moe.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_mace_inference.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/models_inference/test_nequip_inference.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/Dimethyl_sulfoxide.xyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/SPICE_small_with_charges.xyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/mace_test_params.pkl +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/mace_test_params_3_heads.pkl +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/nequip_test_params.pkl +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_test.xyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_test_unseen_atoms.xyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_aspirin_with_charge_spin.xyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/small_materials_test.extxyz +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/spice2-1000_429_md_0-1.hdf5 +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/sample_data/visnet_test_params.pkl +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_ase_montecarlo_barostat.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_jax_md_energy_minimization.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_log_outputs.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_montecarlo_barostat.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_neb.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/simulation/test_simulation_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_mid_epoch_checkpoint.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_training.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/training/test_training_io_handler.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tests/utils/test_jax_utils.py +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tutorials/model_addition_tutorial.ipynb +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tutorials/model_training_tutorial.ipynb +0 -0
- {mlip-0.2.0 → mlip-0.2.2}/tutorials/moe_training_and_inference_tutorial.ipynb +0 -0
- {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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
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.
|
|
246
|
-
| 1ABT |
|
|
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
|
|
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.
|
|
190
|
-
| 1ABT |
|
|
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 |
|
|
@@ -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
|
|
@@ -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,
|
|
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:
|