FeNNix-Bio1 / README.md
thomasple's picture
Update README.md
c937fe3 verified
---
license: other
license_name: asl
license_link: LICENSE
tags:
- chemistry
---
# FeNNix-Bio1
An efficient machine-learning interatomic potential for molecular dynamics simulations of organic and biological systems trained on an extension of the SPICE2 dataset.
The model comes in two sizes (S and M).
## Model Details
- **Developed by:** T. Plé, O. Adjoua, A. Benali, E. Posenitskiy, C. Villot, L. Lagardère and J.-P. Piquemal
- **License:** Academic Software License (ASL)
- **Repository:** [github.com/FeNNol-tools/FeNNol-PMC/tree/main/FENNIX-BIO1](https://github.com/FeNNol-tools/FeNNol-PMC/tree/main/FENNIX-BIO1)
- **Paper:** [DOI:10.26434/chemrxiv-2025-f1hgn-v4](https://chemrxiv.org/engage/chemrxiv/article-details/69399703bc44e47cf4980c4e)
- **Code:** [github.com/FeNNol-tools/FeNNol](https://github.com/FeNNol-tools/FeNNol)
## Uses
- Molecular dynamics simulations of organic and biological systems
- Geometry optimization
- Scoring (Binding free energy calculations)
## How to Get Started with the Model
Download one of the models from [github.com/FeNNol-tools/FeNNol-PMC/tree/main/FENNIX-BIO1](https://github.com/FeNNol-tools/FeNNol-PMC/tree/main/FENNIX-BIO1).
Install the [FeNNol](https://github.com/FeNNol-tools/FeNNol) library
```bash
pip install fennol[cuda]
```
The model can easily be used with ASE:
```python
from fennol.ase import FENNIXCalculator
import sys
from ase import Atoms
from ase.md.verlet import VelocityVerlet
from ase.io import read
from ase import units
import time
xyz_file = sys.argv[1]
atoms = read(xyz_file)
calc = FENNIXCalculator(model="fennix-bio1M.fnx", gpu_preprocessing=True)
atoms.calc = calc
dyn = VelocityVerlet(atoms, 1.0 * units.fs) # 1 fs time step
nsteps = 100_000
steps_per_print = 100
t0 = time.time()
for step in range(1,nsteps+1):
dyn.run(1)
if step % steps_per_print == 0:
t1 = time.time()
steps_per_second = steps_per_print / (t1 - t0)
print(f"Step: {step:10}, Energy: {atoms.get_potential_energy():15.5f} eV, Steps/s: {steps_per_second:.2f}")
t0 = time.time()
```
For better performance, we recommend directly using FeNNol's MD engine
(see the [example](https://github.com/FeNNol-tools/FeNNol/tree/main/examples/md) directory in FeNNol's github repo)
## Citation
Plé T, Adjoua O, Benali A, Posenitskiy E, Villot C, Lagardère L, Piquemal J-P A Foundation Model for Accurate Atomistic Simulations in Drug Design.
ChemRxiv. 2025; doi:10.26434/chemrxiv-2025-f1hgn-v4
**BibTeX:**
```
@article{Ple-2025,
title={A Foundation Model for Accurate Atomistic Simulations in Drug Design},
DOI={10.26434/chemrxiv-2025-f1hgn-v4},
journal={ChemRxiv},
author={Plé, Thomas and Adjoua, Olivier and Benali, Anouar and Posenitskiy, Evgeny and Villot, Corentin and Lagardère, Louis and Piquemal, Jean-Philip},
year={2025}
}
```