Geodite

Geodite is an equivariant message-passing architecture for universal machine-learned interatomic potentials (MLIPs) that eliminates expensive Clebsch-Gordan tensor products while incorporating physical constraints. By avoiding tensor products, Geodite achieves computational efficiency without sacrificing accuracy or physical consistency.

Below we provide an overview of the Geodite architecture. For more information we refer to our preprint and code.

Usage

Installation

git clone https://github.com/IBM/materials.git
cd materials/models/pos_egnn/mlip
uv pip install -e .

Inference with ASE

from geodite.calculator import GeoditeCalculator
from ase.build import bulk, make_supercell
import numpy as np

# Load the Geodite-MP model
geodite = GeoditeCalculator(
    "Geodite-MP.ckpt",  
    device="cuda:0", 
    compute_stress=True
)

# Create an atomic structure
atoms = bulk("Al", "fcc", a=4.063)
atoms = make_supercell(atoms, np.eye(3) * 2)
atoms.calc = geodite

# Calculate properties
print("Potential Energy:", atoms.get_potential_energy())
print("Forces:\n", atoms.get_forces())
print("Stress:\n", atoms.get_stress())

Citation

If you use this model, please consider citing our paper:

TODO

Contact

For more information or if you would like to contribute, please reach out to:

License

This model is released under the Apache 2.0 License.

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train ibm-research/materials.geodite