AIQM2

AIQM2 is the second generation of our AI-enhanced quantum mechanics methods (AIQM) series. Its high speed, competitive accuracy, and robustness enable organic reaction simulations beyond what is possible with the popular DFT methods. It can be used for transition state (TS) structure search and reactive dynamics, often with chemical accuracy. Except for energies, AIQM2 can also provide other molecular properties, e.g., dipole moment for generating infrared (IR) spectra.

aiqm2

More details can be found in our recent publication on Chemical Science:

The blog post for an overview of AIQM2 is also online.

AIQM2 is already available in our open-source MLatom software. It is also one of the most frequently used methods on the Aitomistic Hub for online simulations via a web browser, including the AI assistant Aitomia.

Although AIQM2 is limited to the CHNO elements, AIQM2@UAIQM is available for all but the 7th row elements. AIQM2 is available via PyPI and on GitHub, AIQM2@UAIQM as described in the UAIQM tutorial.

Prerequisites

If you want to try AIQM2 locally, the following packages are required:

  • MLatom (https://github.com/dralgroup/mlatom, it’s recommmended to use the latest version of MLatom where we improved many functionalities of using AIQM2. The MLatom version should be greater than 3.12.0)

  • DFT-D4 (https://github.com/dftd4/dftd4, please use the pypi version and find the executable dftd4 under /bin folder of the environmnet)

After the installation of DFT-D4, you need to set the environment variable dftd4bin=[your DFT-D4 binary]

As an alternative, you can directly try AIQM2 on our online platform Aitomistic Hub without the need for environment installation. We will show how to run AIQM2 on Aitomistic Hub in the following tutorial. The required scripts are the same if you want to run locally.

Your first try on Aitomistic Hub

Here, we will show step by step on Aitomistic Hub, how to find the transition state (TS) of the typical Diels-Alder reaction with AIQM2:

Typical Diels-Alder reaction

Topics we will cover in this section include:

  • Basic operations on the Hub
    • Visulization of the molecule

    • Job submission

    • Status and output of the jobs

  • How to use AIQM2 to do geometry optimization and frequency calculation

Basics of Aitomistic Hub

First of all, there are four main regions in your workspace.

The core regions of the workspace on Aitomistic Hub

In the file explorer, you can copy, move and create files and folders. By right click on the file or folder, you can choose the options you want. The triangle symbol on the right side of the folder can be used for expansion and collapse.

File Explorer

The opened files will be shown in the editor on the right side. You can directly edit the file there as any normal text editor. The input file or the python script for calculation (we will show how to write them later) can be run by clicking the job submission symbol on the upper left corner. If you open a structure file of molecule (currently only .xyz format is supported), you can directly visualize it by clicking the molecule button on the left corner. There are also some options in the visualization window for you to explore, e.g., the opt and ir.

Editor and visualization panel

The Chat panel with our intelligent assistant Aitomia can be waken up by clicking chat with chatbot on the welcome page or the AITOMIA on the upper right corner. We will also show later the fully autonomous derivation of the reaction properties by Aitomia.

aitomia

Explore reactions with AIQM2

With the above simple introduction to Aitomistic Hub, let’s now use AIQM2 to explore the Diels-Alder reaction. We have provided the initial transition state structure below:

16
ts.xyz
C -0.4154889803 -1.4230046298 0.4914165794
C -1.2714421328 -0.7068920916 -0.3302462784
C -1.2748595730 0.7006702447 -0.3303631561
C -0.4223986696 1.4210749167 0.4911783485
H -0.1284754598 -1.0289393722 1.4569991839
H -0.3497935865 -2.5007558373 0.3945333287
H -1.7811020584 -1.2250035542 -1.1356241613
H -1.7870336076 1.2161650530 -1.1358251637
H -0.1334714665 1.0285808294 1.4568319204
H -0.3619410862 2.4991169969 0.3941076830
C 1.5821961637 0.6990828245 -0.1805625523
C 1.5855716595 -0.6914587859 -0.1804052311
H 2.0580658056 1.2364955663 0.6305385466
H 1.4952914442 1.2373987055 -1.1142543585
H 2.0640419870 -1.2263684332 0.6308226672
H 1.5013121389 -1.2304088475 -1.1139741963

There are two ways to use AIQM2. The easiest way is to create input file like most computational softwares. In our case, we can use input file opt.inp like this:

aiqm2
ts
freq
xyzfile=ts.xyz

The first line AIQM2 tells we want to use AIQM2 to do calculation. ts and freq keywords tells that we will perform transition state geometry optimization and then frequency calculation. xyzfile is used to pass your structure information to MLatom.

The advanced way to use AIQM2 is through python script, where you have more control of the behaviour of AIQM2. You can create a file named opt.py as follows:

import mlatom as ml

# load molecule from xyz file
mol = ml.data.molecule.from_xyz_file('ts.xyz')
# define method
aiqm2 = ml.models.methods(method='AIQM2')

# perform geometry optimization
geomopt = ml.optimize_geometry(
    model = aiqm2,
    initial_molecule = mol,
    ts = True
)

# save optimized geometry
optmol = geomopt.optimized_molecule
optmol.dump('ts_opt.json',format='json')
optmol.write_file_with_xyz_coordinates('optgeoms.xyz')

# perfrom frequency calculation
ml.freq(
    model = aiqm2,
    molecule = optmol
)

# print
print('Frequencies: \n')
print(optmol.frequencies)

Note

The detailed tutorial about using MLatom for geometry optimization can be found here and frequency calculations here. We also have dedicated section for transtion state.

After creating the input file or the python script, you can submit the job by clicking the job submission button. The pumped out terminal space will show the status of the job. You can also check the Job List page:

Job List

Once the calculation is complete, you may find many files under your current working directory. We will gradually remove these files in the future for easier checking. For now, the optimized geometry can be found in optgeoms.xyz. As usual, you can visualize it with visualization button. Any job will produce output file and the name of the output file is in format [job name].[jobid].out.

If you use input file, you will find freq_gaussian1.log file. With it, you can visualize the normal modes and frequencies with Chemcraft. Generating log files that are readable for other visualization software is on the todo list.

Reactive molecular dynamics with AIQM2

This part resembles that in UAIQM tutorial where AIQM2 is selected from the library based on the requested time budget.

IR spectrum with AIQM2

AIQM2 uses its baseline GFN2-xTB to get dipole moment and its derivatives for generating IR spectrum. You can find the detailed tutorial here. The basic usage via input file follows:

ir
AIQM2
xyzfile=opt.xyz

On Aitomistic Hub, you can easily generate the IR spectrum by simply clicking the button on the visualization page

IR with AIQM2 on Aitomistic Hub.

Implicit solvent in AIQM2

Implicit solvent is applied by using keyword baseline_kwargs when defining the method. It can only be used via python script. The available solvents can be found here.

import mlatom as ml

aiqm2 = ml.model.methods(
    method='AIQM2',
    baseline_kwargs={'solvent':'water'})

Citations

If you have used AIQM2, then the following citations are appropriate in your publication:

  • Yuxinxin Chen, Pavlo O. Dral*. AIQM2: Organic Reaction Simulations Beyond DFT. Chem. Sci. 2025, accepted manuscript. DOI: 10.1039/D5SC02802G.

  • IR spectra with AIQM2: Yi-Fan Hou, Cheng Wang, Pavlo O. Dral*. Accurate and Affordable Simulation of Molecular Infrared Spectra with AIQM Models. J. Phys. Chem. A 2025, 129, 3613–3623. DOI: 10.1021/acs.jpca.5c00146.

  • MLatom: Pavlo O. Dral, Fuchun Ge, Yi-Fan Hou, Peikun Zheng, Yuxinxin Chen, Mario Barbatti, Olexandr Isayev, Cheng Wang, Bao-Xin Xue, Max Pinheiro Jr, Yuming Su, Yiheng Dai, Yangtao Chen, Lina Zhang, Shuang Zhang, Arif Ullah, Quanhao Zhang, Yanchi Ou. MLatom 3: A Platform for Machine Learning-enhanced Computational Chemistry Simulations and Workflows. J. Chem. Theory Comput. 2024, 20, 1193–1213. DOI: 10.1021/acs.jctc.3c01203.

  • MLatom: Pavlo O. Dral, Fuchun Ge, Yi-Fan Hou, Peikun Zheng, Yuxinxin Chen, Bao-Xin Xue, Max Pinheiro Jr, Yuming Su, Yiheng Dai, Yangtao Chen, Shuang Zhang, Lina Zhang, Arif Ullah, Quanhao Zhang, Yanchi Ou. MLatom: A Package for Atomistic Simulations with Machine Learning, version [add version number], Xiamen University, Xiamen, China, 2013–2024. MLatom.com.

  • GFN2-xTB* Hamiltonian: C. Bannwarth, S. Ehlert, S. Grimme, J. Chem. Theory Comput. 2019, 15, 1652–1671.

  • xtb program: Semiempirical extended tight-binding program package xtb.https://github.com/grimme-lab/xtb.

  • D4: E. Caldeweyher, C. Bannwarth, S. Grimme, J. Chem. Phys. 2017, 147, 034112.

  • D4 program: E. Caldeweyher, S. Ehlert, S. Grimme, DFT-D4, Version [check your version], (Mulliken Center for Theoretical Chemistry, University of Bonn, [year])

  • ANI model: J. S. Smith, O. Isayev, A. E. Roitberg, Chem. Sci. 2017, 8, 3192

  • TorchANI program: X. Gao, F. Ramezanghorbani, O. Isayev, J. S. Smith, A. E. Roitberg, J. Chem. Inf. Model. 2020, 60, 3408