Skip to content

PES2MP: Get radial coefficients from PES via multipole expansion

License

Notifications You must be signed in to change notification settings

QuantumDynamicsLab/PES2MP

Repository files navigation

DOI
📬 dhilip@iitrpr.ac.in

PES2MP (Potential Energy Surface Mapping to Multipole Expansion Series)

2D and 4D multipole expansion code (using Legendre polynomials and Spherical Harmonics respectively) for fitting Potential Energy Surface (PES) into radial coefficients ($V_\lambda$ / $V_{\lambda1}V_{\lambda2}V_{\lambda}$) are provided as user-friendly jupyter-notebook files.
Both codes (2D/4D) use least squares fit, achieved by taking the pseudo-inverse of Legendre/Spherical-Harmonics coefficients, which are saved as a 2D numpy matrix for future use. The codes are useful while studying collisional 💥 dynamics of one or both species at cold ❄️ and ultracold ⛄ temperatures.

The code is currently limited to rigid rotor - atom (2D) and rigid rotor - rigid rotor (4D) collision. For theoretical details please follow the paper N. Sathyamurthy, “Computational fitting of ab initio potential energy surfaces,” _Comput. Phys. Rep._ 3, 1–69 (1985). link 🧐

For any queries ✉️ Dr. T. J. Dhilip Kumar cc: Apoorv Kushwaha

Installation Instructions:

The makefiles (inside make_scripts folder) are tested on Linux and MacOS. The quick install files do not use conda install (where solving environments can take hours), instead, it uses python -m pip. However, all 4 files create separate environments and can be run without clashing with each other. To understand more read 🐍

Install Anaconda

  • Install anaconda
  • Open conda prompt

For code 0-1: (requiring PES-Learn library that uses python3.6)

  • run chmod +x install_peslearn_quick.sh (recommended) or chmod +x install_peslearn.sh {See manual for more information}
  • run ./install_peslearn_quick.sh

For code 2-4:

  • run chmod +x install_pes2mp_quick.sh (recommended) or chmod +x install_pes2mp.sh {See manual for more information}
  • run ./install_pes2mp_quick.sh
Running PES2MP:

Running PES2MP

Since the ML model generating library PES-Learn uses python 3.6 separate environments are created to aviod clashes and error. After installing both files (quick or non-quick versions as it suits).

For code 0-1:

  • run conda activate peslearn_quick or peslearn for the conda installed version
  • run jupyter-notebook

For code 2-4:

  • run conda activate pes2mp_quick or pes2mp for the conda installed version
  • run jupyter-notebook

⚠️ The ML generating jupyter files (CODE 0-1) requires python 3.6 and cannot be installed with pyshtools (4D CODE 2 and 3). Use peslearn_quick environment for CODE 0-1 and pes2mp_quick environment for the rest of the codes.

Update History: ### Update 2023.1.0 - ! Upcoming !

Update V2

  • Code 0-1 are for augmenting PES data using ML package PESLearn,
  • Code 2 and 3 are for fitting PES to radial coefficients and vice-versa (to calculate fitting error),
  • Code 4 is a template to fit radial coefficients into molscat readable functions.

V1

  • The original code has been broken into 5 parts (Code_0-4),

  • The old codes published in Supplementary Information (links to articles are provided below) can be accessed via following link.

2D PES (Atom - Rigid Rotor collision):

2D PES (Atom - Rigid Rotor collision)

File 2: CODE_2_PES2MP_2D.ipynb
Uses [scipy.special] for Legendre coefficient

Link: [Link to paper: See Supplementary Information]

# Bibtex citation for 2D code: multipole expansion of 2D Potential Energy Surface
@article{Kushwaha2023Jan,
	author = {Kushwaha, Apoorv and Kumar, Thogluva Janardhanan Dhilip},
	title = {{Benchmarking PES-Learn's machine learning models predicting accurate potential energy surface for quantum scattering}},
	journal = {Int. J. Quantum Chem.},
	volume = {123},
	number = {1},
	pages = {e27007},
	year = {2023},
	month = jan,
	issn = {0020-7608},
	publisher = {John Wiley {\&} Sons, Ltd},
	doi = {10.1002/qua.27007}
}
4D PES (Rigid Rotor - Rigid Rotor collision):

4D PES (Two Rigid Rotors)

Uses [pyshtools] for calculating spherical harmonics (need separate installation: Instructions are provided in jupyter-notebook file)

File 2: CODE_2_PES2MP_4D.ipynb

Link: [Link to paper: See Supplementary Information]

# Article citation for 4D code: multipole expansion of 4D Potential Energy Surface
@article{Kushwaha2023Aug,
	author = {Kushwaha, Apoorv and Dhilip Kumar, T. J.},
	title = {{4D potential energy surface of NCCN{\textendash}H2 collision: Rotational dynamics by p-H2 and o-H2 at interstellar temperatures}},
	journal = {J. Chem. Phys.},
	volume = {159},
	number = {7},
	year = {2023},
	month = aug,
	issn = {0021-9606},
	publisher = {AIP Publishing},
	doi = {10.1063/5.0161335}
}

Manual: 📖 Upcoming !

- Under Preparation