/ml_tps_si

Collection of tools/codes/data used in the article 10.26434/chemrxiv-2024-8w526

Primary LanguagePythonMIT LicenseMIT

🚀 ABOUT

This repo contains Supporting Materials for the article "Challenges and Opportunities for Machine Learning Potentials in Transition Path Sampling: Alanine Dipeptide and Azobenzene Studies" by Nikita Fedik, Wei Li, Nicholas Lubbers, Benjamin Nebgen, Sergei Tretiak, Ying Wai Li

📄 PREPRINT on ChemRxiv - v2 uploaded
📄 Final article on publisher site - will be added after publication

If you have any comments/questions/requests, feel free to contact me:
✉️ nfedik@lanl.gov
🌐 nikitafedik.github.io


Favicon ML interatomic potentials

HIP-NN-TS potential:
hippynn - official github repo of HIP-NN-TS code
HIP-NN - original paper
HIP-NN-TS [tensor-sensitive] - new paper

HIP-NN-TS trained to ANI-1x in TPS article
best model used for all results except active learning section: models/hipnnts_data_ani1x_only_before_al_seed533257

HIP-NN-TS trained to ANI-1x + 10800 structures from TPS trajectories in active learning section
path to model: models/hipnnts_data_ani1x_tps_10800_dataseed0_modelseed<x>
path to training script: models/hippnn_ani_al0.py
docs for loading pretrained model

ANI-1X potential
TorchAni - github.com/aiqm/torchani
TorchAni - paper
ANI - original paper

Note

All ANI-1x calculations in the article were done by vanilla TorchANI with parameters defined in https://github.com/aiqm/ani-model-zoo/tree/master/resources/ani-1ccx_8x


Favicon DATA

ANI-1x database
download ANI-1x dataset (5.21 GB)
ANI-1x - "Less is more" paper

alanine dipeptide (AD)
12000 points most visited configurations from TPS trajectories

train data: /data/AD/10800_seed0-<x>.npy
test data: /data/AD/1200_seed0-<x>.npy
where x:

  • E_formatioin_QM_kcal_mol = formation energies (full DFT E - E of all atoms) | kcal/mol
  • G_QM_kcal_mol_A = gradients (not forces) | kcal/mol/A
  • R = atomic positions | Angstrom
  • Z = atomic numbers corresponsing to coordinates in R array

azobenzene (AZ)

full isomzerization path at DFT/UDFT levels
path is a concatenation of (reopt of last + IRC to trans-AD + TS + IRC to cis-AD + reopt of last IRC point)

inversion path | closed-shell DFT: /data/AZ/AD_cs-DFT_inversion_path.xyz
rotation path | open-shell DFT: /data/AZ/AD_os-DFT_rotation_path.xyz

⚙️ OTHER TOOLS:

OpenPathSampling - Python package for TPS
TPS - comprehensive review
ASE - Atomic Simulation Environment