Skip to main content

MLatom

PyPI version Downloads Downloads per month License: Apache 2.0 Documentation

MLatom

MLatom is an open-source package for atomistic simulations with machine learning and quantum chemical methods — DFT, wavefunction-based, and semi-empirical approximations. Use it as a Python library, through input files, or from the command line — run it locally, or online with no installation.

Website · Documentation · Protomia · Aitomistic Hub · Aitomistic Lab@XMU · Releases

Run online — no installation

Run MLatom in your browser on either online platform — both powered by Protomia, with an AI assistant for autonomous atomistic simulations:

Local installation

The easiest way to run MLatom is online — no installation. To install locally:

python3 -m pip install -U mlatom

That pulls in the required dependencies automatically (including the PyTorch/TorchANI and geometry-optimization backends the AIQM2 quick start uses). A few features need one more package — install only what you use:

for install
PySCF methods: single point, TDDFT, frequencies and thermochemistry, densities, Raman pip install pyscf
AIMNet2 models pip install aimnet
format conversions (SMILES to xyz and back) conda install -c conda-forge openbabel
the ASE interface (ASE optimizers and dynamics) and MACE pip install ase
KREG_API backend (ml_program='MLatomF' needs none of this) conda install -c conda-forge mkl mkl-service
MDtrajNet / MLTPA / DMC / hyperparameter search pip install e3nn / rdkit / pyvibdmc / hyperopt

AIQM2 additionally needs the DFT-D4 program, installed via conda:

conda install -c conda-forge 'dftd4==3.6.0'   # the version MLatom is tested against
export dftd4bin=$(which dftd4)   # point MLatom at the dftd4 executable

See the installation guide for the full dependency list and other methods.

Quick start

Optimize the geometry of a water molecule with AIQM2 — an AI-enhanced quantum-mechanical method (native to MLatom, CHNO elements) that reaches beyond-DFT accuracy at semi-empirical cost:

import mlatom as ml

mol = ml.data.molecule.from_xyz_string('''3

O    0.00000    0.00000    0.11779
H    0.00000    0.75545   -0.47116
H    0.00000   -0.75545   -0.47116
''')
aiqm2 = ml.methods(method='AIQM2')
opt = ml.optimize_geometry(model=aiqm2, initial_molecule=mol).optimized_molecule
print(opt.energy)          # optimized energy in hartree (≈ -76.3838)

The same calculation as an input file (geomopt.inp, with init.xyz holding the geometry):

AIQM2               # method
geomopt             # task: geometry optimization
xyzfile=init.xyz    # input geometry
optxyz=opt.xyz      # output geometry
mlatom geomopt.inp

Prefer zero setup? Run these online on the Aitomistic Hub or Aitomistic Lab@XMU (both powered by Protomia) — no installation needed.

Features & documentation

Full manuals and tutorials are at mlatom.com/docs — begin with installation and get started.

How to cite

If you use MLatom in scientific work, please cite:

Pavlo O. Dral et al. 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

Feature-specific references appear in the program output and in CITATION.cff. The full list with BibTeX is on the License and citations page.

Ecosystem

  • MLatom Skills — agent skills for MLatom (new and growing rapidly).
  • Aitomic add-ons — cutting-edge methods (e.g. AIQM3), free for academic, non-commercial use.
  • Aitomia — an AI assistant for autonomous atomistic simulations with MLatom.

Recent releases

Full release notes · CHANGELOG.md

  • 3.25 — fine-tuning of the universal models on your own data: ANI, AIQM1, AIQM2, AIQM3, UAIQM, OMNI-P1 and OMNI-P2x all through the same train() call, with dispersion handled on both sides so the fine-tuned model keeps the long-range behaviour.
  • 3.23 — AIQM3 public add-on (pip install aitomic-addons); direct Gaussian workflows; version/commit/build-date banner with a daily update check.
  • 3.22 — OMNI-P2x model; faster nonadiabatic dynamics.
  • 3.21 — refactored ORCA interface supporting many more excited-state methods.
  • 3.18 — FSSH; MDtrajNet-1 (directly predicting MD trajectories); KRR in Julia; ECTS diffusion model for transition states.

Contributing

Contributions are welcome — see CONTRIBUTING.md and the Code of Conduct. Report bugs and request features via GitHub issues. You may also create your own private derivatives by following the license requirements.

Stay updated

Don't miss MLatom updates — subscribe to the Aitomistic email newsletter and social channels.

About

MLatom was founded by Pavlo O. Dral on 10 September 2013, who continues to lead its development. It is open-source under the Apache License 2.0 and supported by Aitomistic.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mlatom-3.25.2.tar.gz (61.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mlatom-3.25.2-py3-none-any.whl (61.9 MB view details)

Uploaded Python 3

File details

Details for the file mlatom-3.25.2.tar.gz.

File metadata

  • Download URL: mlatom-3.25.2.tar.gz
  • Upload date:
  • Size: 61.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.16

File hashes

Hashes for mlatom-3.25.2.tar.gz
Algorithm Hash digest
SHA256 9d17bc07ad739fb5446e46e05b10bc3228978dcf5921b34339fdac939a2122ac
MD5 bea23a225573e6678df3b0afaf649136
BLAKE2b-256 0f05a12e93f8e990cb77fcb6c14e264a04476e169ca0edfbf0400b807a184cf9

See more details on using hashes here.

File details

Details for the file mlatom-3.25.2-py3-none-any.whl.

File metadata

  • Download URL: mlatom-3.25.2-py3-none-any.whl
  • Upload date:
  • Size: 61.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.16

File hashes

Hashes for mlatom-3.25.2-py3-none-any.whl
Algorithm Hash digest
SHA256 742144d8ae59f60b54332d55313417cbe1aa558dbaff8a66082bcb0b007790b3
MD5 b5c1de2ddf2269b3430fa8b0d4a3f140
BLAKE2b-256 7c60c9c8f56212ae65da9debeed6b15b2c701246c8e095cf58b758f8c8b84861

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page