Skip to main content

A Materials Foundation Model via Hybrid Invariant-Equivariant Architectures

[preprint]

The official implementation for the HIENet model from our preprint "A Materials Foundation Model via Hybrid Invariant-Equivariant Architectures"

cover

Installation

Requirements

  • Python >= 3.8
  • PyTorch >= 1.12.0

We have tested the model with the following configuration:

  • Python 3.9
  • PyTorch 2.1.2

After installing PyTorch, you can install HIENet from source:

git clone https://github.com/divelab/AIRS.git
cd AIRS/OpenMat/HIENet
pip install .

Usage

ASE Calculator

HIENet provides an interface with the Atomic Simulation Environment (ASE) through its calculator implementation. You can use the pretrained model as follows:

from hienet.hienet_calculator import HIENetCalculator
from ase.io import read

# Load a structure from a file
atoms = read('your_structure.cif')

# Initialize the calculator with default settings
# This will use the pretrained model on the available device (GPU if available)
calc = HIENetCalculator()

# Attach the calculator to the atoms object
atoms.calc = calc

# Calculate energy, forces, and stress
energy = atoms.get_potential_energy()
forces = atoms.get_forces()
stress = atoms.get_stress()

Using a specific checkpoint

You can also load a specific model checkpoint:

# Load from a specific checkpoint file
calc = HIENetCalculator(model='path/to/your/checkpoint.pth')

# Specify device
calc = HIENetCalculator(device='cuda:0')  # or 'cpu' for CPU only

We provide a pretrained HIENet checkpoint under the checkpoints/ folder.

Citation

Please cite our preprint if you use our model or benchmark results. Thank you!

@misc{yan2025materialsfoundationmodelhybrid,
      title={A Materials Foundation Model via Hybrid Invariant-Equivariant Architectures}, 
      author={Keqiang Yan and Montgomery Bohde and Andrii Kryvenko and Ziyu Xiang and Kaiji Zhao and Siya Zhu and Saagar Kolachina and Doğuhan Sarıtürk and Jianwen Xie and Raymundo Arroyave and Xiaoning Qian and Xiaofeng Qian and Shuiwang Ji},
      year={2025},
      eprint={2503.05771},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2503.05771}, 
}

Acknowledgement

This project builds upon SevenNet as starter code, which is licensed under the GNU General Public License v3.0. In addition to adding our own files, we made significant changes to the following files to implement HIENet architecture within the SevenNet's training pipeline:

  • hienet/model_build.py
  • hienet/nn/linear.py
  • hienet/nn/edge_embedding.py
  • hienet/train/loss.py
  • hienet/train/optim.py

We have also adjusted function and file names and made other slight changes in other files for consistency

K.Y., M.B., A.K. and S.J. acknowledge partial support from National Science Foundation (NSF) under grant IIS-2243850, ARPA-H under grant 1AY1AX000053, and National Institutes of Health under grant U01AG070112. K.Z., S.K. and X.F.Q. acknowledge partial support from NSF under awards CMMI-2226908 and DMR-2103842 and the donors of ACS Petroleum Research Fund under Grant 65502-ND10. R.A. and D.S. acknowledge support from ARO through Grant No. W911NF-22-2-0117. R.A., X.N.Q. and S.Z. acknowledge NSF through Grant No. 2119103 (DMREF). Z. X. and X.N.Q. acknowledge support from NSF through grants SHF-2215573 and IIS-2212419. Some computations were carried out at the Texas A&M High-Performance Research Computing (HPRC) facility. We gratefully acknowledge the support of Lambda Inc. for providing computing resources.

Lambda-logo

Contact

If you have any question, please contact keqiangyan@tamu.edu.

Download files

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

Source Distribution

hienet-1.0.2.tar.gz (83.4 MB view details)

Uploaded Source

Built Distribution

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

hienet-1.0.2-py3-none-any.whl (83.4 MB view details)

Uploaded Python 3

File details

Details for the file hienet-1.0.2.tar.gz.

File metadata

  • Download URL: hienet-1.0.2.tar.gz
  • Upload date:
  • Size: 83.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for hienet-1.0.2.tar.gz
Algorithm Hash digest
SHA256 75250da2914b09a906bc055513dcddd0353f68a76f1f638ad305d584f4b8fa4d
MD5 f507528bc9a64ab14edc1cae9c954cd8
BLAKE2b-256 530070b62f4a1e10ff5e0c59a5cfc92cec7190fe69141dab6cfa0eadb01f46ae

See more details on using hashes here.

File details

Details for the file hienet-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: hienet-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 83.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for hienet-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 82008feab56628beffec49200f6a09ed428a62a600bfa5ba451abeb9dab8633d
MD5 471c7dd1a12c51ca7cc765b4716d787e
BLAKE2b-256 82c327c3ebc43e7e74fa6bb8ed73becbb290a421e64f30ef3d585f674ce4b936

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 files

1.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page