MAchine Learning Potential for Landscape Exploration
MAPLE is a computational chemistry toolkit that leverages machine learning potentials for efficient molecular simulations, including structure optimization, transition state searching, and reaction pathway analysis.
| Category | Methods |
|---|---|
| Optimization | LBFGS, RFO |
| Transition State | NEB, CI-NEB, PRFO, Dimer, String (GSM), AFIR |
| Reaction Path | IRC (GS method) |
| Analysis | Frequency, PES Scan, Single Point |
| ML Potentials | AIMNet2, ANI, MACE, UMA |
| Corrections | DFT-D4 dispersion, GBSA solvation |
- Python >= 3.9
- PyTorch >= 2.0
- CUDA-capable GPU (recommended)
git clone https://github.com/ClickFF/maple.git
cd maple
pip install -e .# Core
pip install numpy scipy ase
# PyTorch (CUDA 11.8)
pip install torch --index-url https://download.pytorch.org/whl/cu118
# PyTorch (CPU only)
pip install torch --index-url https://download.pytorch.org/whl/cpu
# ML potentials
pip install fairchem-coremaple input.inp # Output: input.out
maple input.inp result.out # Custom output file
maple --test 1 # Run test casemaple --test 1 # LBFGS optimization
maple --test 2 # NEB transition state
maple --test 3 # String method
maple --test 4 # Dimer method
maple --test 5 # RFO optimization
maple --test 6 # IRC
maple --test 7 # Frequency
maple --test 8 # PES Scan#model=<model> # ML potential: uma, aimnet2, ani, mace
#<jobtype>(options) # Job type with optional parameters
#device=<device> # gpu0, gpu1, cpu
Two ways to specify coordinates:
- Inline XYZ - directly in input file:
#model=uma
#opt(method=lbfgs)
#device=gpu0
C 0.000 0.000 0.000
H 1.089 0.000 0.000
...
- External XYZ file - reference path:
#model=uma
#opt(method=lbfgs)
#device=gpu0
XYZ /path/to/molecule.xyz
For multi-structure jobs (NEB, etc.), use multiple XYZ lines:
XYZ /path/to/reactant.xyz
XYZ /path/to/product.xyz
| Header | Description |
|---|---|
#opt(method=lbfgs) |
Geometry optimization |
#sp |
Single point energy |
#ts(method=neb) |
Transition state search |
#freq |
Frequency analysis |
#irc |
Intrinsic reaction coordinate |
#scan |
PES scan |
| Model | Description |
|---|---|
uma |
UMA (universal materials) |
aimnet2 |
AIMNet2 (general organic) |
ANI-1xnr |
ANI (CHNO molecules) |
mace |
MACE (universal potential) |
#model=uma
#opt(method=lbfgs)
#device=gpu0
C -0.77812600 -1.06756100 0.32105900
C 1.30255300 0.05212000 -0.02829900
...
#model=ANI-1xnr
#ts(method=neb,refine=nebts)
#device=gpu0
XYZ /path/to/reactant.xyz
XYZ /path/to/product.xyz
#model=ANI-1xnr
#freq
#device=gpu0
XYZ /path/to/optimized.xyz
#model=uma
#scan
#device=gpu0
C 0.000 0.000 0.000
...
S 15 31 -0.05 50
S 13 34 -0.05 50
Scan format: S <atom1> <atom2> <step_size> <n_steps>
For detailed architecture and algorithm documentation, see ARCHITECTURE.md.
https://github.com/ClickFF/MAPLE
- Fork the repository
- Create a feature branch
- Make changes with clear commit messages
- Submit a pull request
Version: 0.1.0 | Status: Active Development | Updated: January 2026