Python Rapid Artificial Intelligence Ab Initio Molecular Dynamics

Related tags

Deep LearningPyRAI2MD
Overview

Python Rapid Artificial Intelligence Ab Initio Molecular Dynamics

                              /\
   |\    /|                  /++\
   ||\  /||                 /++++\
   || \/ || ||             /++++++\
   ||    || ||            /PyRAI2MD\
   ||    || ||           /++++++++++\                    __
            ||          /++++++++++++\    |\ |  /\  |\/| | \
            ||__ __    *==============*   | \| /--\ |  | |_/

                          Python Rapid
                     Artificial Intelligence
                  Ab Initio Molecular Dynamics



                      Author @Jingbai Li
               Northeastern University, Boston, USA

                          version:   2.0 alpha
                          

  With contriutions from (in alphabetic order):
    Jingbai Li                 - Fewest switches surface hopping
                                 Zhu-Nakamura surface hopping
                                 Velocity Verlet
                                 OpenMolcas interface
                                 OpenMolcas/Tinker interface
                                 BAGEL interface
                                 Adaptive sampling
                                 Grid search
                                 Two-layer ONIOM (coming soon)
                                 Periodic boundary condition (coming soon)
                                 QC/ML hybrid NAMD

    Patrick Reiser             - Neural networks (pyNNsMD)

  Special acknowledgement to:
    Steven A. Lopez            - Project directorship
    Pascal Friederich          - ML directoriship>

Features

  • Machine learning nonadibatic molecular dyanmics (ML-NAMD).
  • Neural network training and grid search.
  • Active learning with ML-NAMD trajectories.
  • Support BAGEL, Molcas for QM, and Molcas/Tinker for QM/MM calculations.
  • Support nonadibatic coupling and spin-orbit coupling (Molcas only)

Prerequisite

  • Python >=3.7 PyRAI2MD is written and tested in Python 3.7.4. Older version of Python is not tested and might not be working properly.
  • TensorFlow >=2.2 TensorFlow/Keras API is required to load the trained NN models and predict energy and force.
  • Cython PyRAI2MD uses Cython library for efficient surface hopping calculation.
  • Matplotlib/Numpy Scientifc graphing and numerical library for plotting training statistic and array manipulation.

Content

 File/Folder Name                                  Description                                      
---------------------------------------------------------------------------------------------------
 pyrai2md.py                                       PyRAI2MD interface                              
 PyRAI2MD                                          source codes folder
  |--variables.py                                  PyRAI2MD input reader                           
  |--method.py                                     PyRAI2MD method manager                         
  |--Molecule                                      atom, molecule, trajectory code folder
  |   |--atom.py                                   atomic properties class                         
  |   |--molecule.py                               molecular properties class                      
  |   |--trajectory.py                             trajectory properties class                     
  |   |--pbc_helper.py                             periodic boundary condition functions           
  |    `-qmmm_helper.py                            qmmm functions                                  
  |
  |--Quantum_Chemistry                             quantum chemicial program interface folder
  |   |--qc_molcas.py                              OpenMolcas interface                            
  |   |--qc_bagel.py                               BAGEL interface                                 
  |    `-qc_molcas_tinker                          OpenMolcas/Tinker interface                     
  |
  |--Machine_Learning                              machine learning library interface folder
  |   |--training_data.py                          training data manager                           
  |   |--model_NN.py                               neural network interface                        
  |   |--hypernn.py                                hyperparameter manager                          
  |   |--permutation.py                            data permutation functions                      
  |   |--adaptive_sampling.py                      adaptive sampling class                         
  |   |--grid_search.py                            grid search class                               
  |   |--remote_train.py                           distribute remote training                      
  |    `-pyNNsMD                                   neural network library                         
  |
  |--Dynamics                                      ab initio molecular dynamics code folder
  |   |--aimd.py                                   molecular dynamics class                        
  |   |--mixaimd.py                                ML-QC hybrid molecular dynamics class           
  |   |--single_point.py                           single point calculation                        
  |   |--hop_probability.py                        surface hopping probability calculation         
  |   |--reset_velocity.py                         velocity adjustment functions                   
  |   |--verlet.py                                 velocity verlet method                          
  |   |--Ensembles                                 thermodynamics control code folder
  |   |   |--ensemble.py                           thermodynamics ensemble manager                 
  |   |   |--microcanonical.py                     microcanonical ensemble                         
  |   |    `-thermostat.py                         canonical ensemble                              
  |   |
  |    `-Propagators                               electronic propagation code folder
  |       |--surface_hopping.py                    surface hopping manager                         
  |       |--fssh.pyx                              fewest switches surface hopping method          
  |       |--gsh.py                                generalized surface hopping method              
  |        `-tsh_helper.py                         trajectory surface hopping tools                
  |
   `-Utils                                         utility folder
      |--aligngeom.py                              geometry aligment and comparison functions      
      |--coordinates.py                            coordinates writing functions                   
      |--read_tools.py                             index reader                                    
      |--bonds.py                                  bond length library                            
      |--sampling.py                               initial condition sampling functions            
      |--timing.py                                 timing functions                                
       `-logo.py                                   logo and credits                                    

Installation

Download the repository

git clone https://github.com/lopez-lab/PyRAI2MD.git

Specify environment variable of PyRAI2MD

export PYRAI2MD=/path/to/PyRAI2MD

Test PyRAI2MD

Copy the test script and modify environment variables

cp $PYRAI2MD/Tool/test_PyRAI2MD.sh .
bash test_PyRAI2MD.sh

Or directly run if environment variables are set

$PYRAI2MD/pyrai2md.py quicktest

Run PyRAI2MD

$PYRAI2MD/pyrai2md.py input

User manual

We are currently working on the user manual.

Cite us

  • Jingbai Li, Patrick Reiser, Benjamin R. Boswell, André Eberhard, Noah Z. Burns, Pascal Friederich, and Steven A. Lopez, "Automatic discovery of photoisomerization mechanisms with nanosecond machine learning photodynamics simulations", Chem. Sci. 2021. DOI: 10.1039/D0SC05610C
  • Jingbai Li, Rachel Stein, Daniel Adrion, Steven A. Lopez, "Machine-learning photodynamics simulations uncover the role of substituent effects on the photochemical formation of cubanes", ChemRxiv, preprint, DOI:10.33774/chemrxiv-2021-lxsjk
Download and preprocess popular sequential recommendation datasets

Sequential Recommendation Datasets This repository collects some commonly used sequential recommendation datasets in recent research papers and provid

125 Dec 06, 2022
A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization components are included and optional.

Description A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization co

AoxiangFan 9 Nov 10, 2022
Instance Segmentation in 3D Scenes using Semantic Superpoint Tree Networks

SSTNet Instance Segmentation in 3D Scenes using Semantic Superpoint Tree Networks(ICCV2021) by Zhihao Liang, Zhihao Li, Songcen Xu, Mingkui Tan, Kui J

83 Nov 29, 2022
School of Artificial Intelligence at the Nanjing University (NJU)School of Artificial Intelligence at the Nanjing University (NJU)

F-Principle This is an exercise problem of the digital signal processing (DSP) course at School of Artificial Intelligence at the Nanjing University (

Thyrix 5 Nov 23, 2022
ALIbaba's Collection of Encoder-decoders from MinD (Machine IntelligeNce of Damo) Lab

AliceMind AliceMind: ALIbaba's Collection of Encoder-decoders from MinD (Machine IntelligeNce of Damo) Lab This repository provides pre-trained encode

Alibaba 1.4k Jan 01, 2023
[ACM MM 2021] Yes, "Attention is All You Need", for Exemplar based Colorization

Transformer for Image Colorization This is an implemention for Yes, "Attention Is All You Need", for Exemplar based Colorization, and the current soft

Wang Yin 30 Dec 07, 2022
Codes for TS-CAM: Token Semantic Coupled Attention Map for Weakly Supervised Object Localization.

TS-CAM: Token Semantic Coupled Attention Map for Weakly SupervisedObject Localization This is the official implementaion of paper TS-CAM: Token Semant

vasgaowei 112 Jan 02, 2023
PRIME: A Few Primitives Can Boost Robustness to Common Corruptions

PRIME: A Few Primitives Can Boost Robustness to Common Corruptions This is the official repository of PRIME, the data agumentation method introduced i

Apostolos Modas 34 Oct 30, 2022
Adversarial Texture Optimization from RGB-D Scans (CVPR 2020).

AdversarialTexture Adversarial Texture Optimization from RGB-D Scans (CVPR 2020). Scanning Data Download Please refer to data directory for details. B

Jingwei Huang 153 Nov 28, 2022
FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation.

FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation [Project] [Paper] [arXiv] [Home] Official implementation of FastFCN:

Wu Huikai 815 Dec 29, 2022
A lossless neural compression framework built on top of JAX.

Kompressor Branch CI Coverage main (active) main development A neural compression framework built on top of JAX. Install setup.py assumes a compatible

Rosalind Franklin Institute 2 Mar 14, 2022
PyTorch implementation of the paper Dynamic Data Augmentation with Gating Networks

Dynamic Data Augmentation with Gating Networks This is an official PyTorch implementation of the paper Dynamic Data Augmentation with Gating Networks

九州大学 ヒューマンインタフェース研究室 3 Oct 26, 2022
Codes for the ICCV'21 paper "FREE: Feature Refinement for Generalized Zero-Shot Learning"

FREE This repository contains the reference code for the paper "FREE: Feature Refinement for Generalized Zero-Shot Learning". [arXiv][Paper] 1. Prepar

Shiming Chen 28 Jul 29, 2022
Fast, modular reference implementation of Instance Segmentation and Object Detection algorithms in PyTorch.

Faster R-CNN and Mask R-CNN in PyTorch 1.0 maskrcnn-benchmark has been deprecated. Please see detectron2, which includes implementations for all model

Facebook Research 9k Jan 04, 2023
Code for CVPR 2021 oral paper "Exploring Data-Efficient 3D Scene Understanding with Contrastive Scene Contexts"

Exploring Data-Efficient 3D Scene Understanding with Contrastive Scene Contexts The rapid progress in 3D scene understanding has come with growing dem

Facebook Research 182 Dec 30, 2022
Graph Regularized Residual Subspace Clustering Network for hyperspectral image clustering

Graph Regularized Residual Subspace Clustering Network for hyperspectral image clustering

Yaoming Cai 5 Jul 18, 2022
This is the official code for the paper "Ad2Attack: Adaptive Adversarial Attack for Real-Time UAV Tracking".

Ad^2Attack:Adaptive Adversarial Attack on Real-Time UAV Tracking Demo video 📹 Our video on bilibili demonstrates the test results of Ad^2Attack on se

Intelligent Vision for Robotics in Complex Environment 10 Nov 07, 2022
Spline is a tool that is capable of running locally as well as part of well known pipelines like Jenkins (Jenkinsfile), Travis CI (.travis.yml) or similar ones.

Welcome to spline - the pipeline tool Important note: Since change in my job I didn't had the chance to continue on this project. My main new project

Thomas Lehmann 29 Aug 22, 2022
Simple codebase for flexible neural net training

neural-modular Simple codebase for flexible neural net training. Allows for seamless exchange of models, dataset, and optimizers. Uses hydra for confi

Jannik Kossen 7 Apr 05, 2022
Deep Sea Treasure Environment for Multi-Objective Optimization Research

DeepSeaTreasure Environment Installation In order to get started with this environment, you can install it using the following command: python3 -m pip

imec IDLab 6 Nov 14, 2022