Our version of the NIST-JARVIS ALIGNN optimized in terms of model performance and to some extent reliability, for large-scale deployments over the MPDD infrastructure by Phases Research Lab.
Project description
MPDD - ALIGNN Calculator
This tool is a modified version of the NIST-JARVIS ALIGNN optimized in terms of model performance and to some extent reliability, for large-scale deployments over the MPDD infrastructure by Phases Research Lab.
Critical Changes
Key modifications that were made here:
-
A set of models of interest has been selected and defined in
config.yamlfor consistency, readability, and easy tracking. These are the models which will be populating MPDD. -
Dependency optimizations for running models, skipping by default installation of several packages needed only for training and auxiliary tasks. Full set can still be installed by
pip install "mpdd-alignn[full]". -
The process of model fetching was far too slow using
pretrained.get_figshare_model(); thus, we reimplemented it similar topySIPFENNby multi-threading connection to Figshare viapysmartdl2we maintain, and parallelize the process on per-model basis. Model download is now 7 times faster, fetching all 7 default models in 6.1 vs 41.4 seconds. -
Optimized what is included in the built package. Now, its package size is reduced 33.5 times, from 21.7MB to 0.65MB.
-
Streamlined operation, where we can get results for a directory of POSCARS for all default models in just 3 quick lines
from alignn import pretrained pretrained.download_default_models() result = pretrained.run_models_from_directory('example.SigmaPhase', mode='serial')
Which give us neat:
[ { 'name': '22-Fe10Ni20.POSCAR', 'ALIGNN-Alexandria Bandgap [eV]': 0.001391, 'ALIGNN-Alexandria Formation Energy [eV/atom]': 0.095294, 'ALIGNN-Alexandria Volume Per Atom [A^3]': 11.140231, 'ALIGNN-JARVIS Bulk Modulus [GPa]': 183.945847, 'ALIGNN-JARVIS Exfoliation Energy [meV/atom]': 350.855591, 'ALIGNN-JARVIS Formation Energy [eV/atom]': 0.027578, 'ALIGNN-JARVIS MBJ Bandgap [eV]': 0.017667, 'ALIGNN-JARVIS Shear Modulus [GPa]': 74.540077, 'ALIGNN-MP Formation Energy [eV/atom]': -0.045874, 'ALIGNN-MP PBE Bandgap [eV]': 0.01164, }, { 'name': '2-Fe8Ni22.POSCAR', 'ALIGNN-Alexandria Bandgap [eV]': 0.001679, 'ALIGNN-Alexandria Formation Energy [eV/atom]': 0.25086, 'ALIGNN-Alexandria Volume Per Atom [A^3]': 10.656669, 'ALIGNN-JARVIS Bulk Modulus [GPa]': 187.983017, 'ALIGNN-JARVIS Exfoliation Energy [meV/atom]': 352.69455, 'ALIGNN-JARVIS Formation Energy [eV/atom]': 0.025119, 'ALIGNN-JARVIS MBJ Bandgap [eV]': 0.010531, 'ALIGNN-JARVIS Shear Modulus [GPa]': 80.09848, 'ALIGNN-MP Formation Energy [eV/atom]': -0.042081, 'ALIGNN-MP PBE Bandgap [eV]': 0.019553, }, { 'name': '11-Fe10Ni20.POSCAR', 'ALIGNN-Alexandria Bandgap [eV]': 0.001165, 'ALIGNN-Alexandria Formation Energy [eV/atom]': 0.217117, 'ALIGNN-Alexandria Volume Per Atom [A^3]': 10.583747, ...
ALIGNN Compatibility and Install
In general, we tried to retain full compatibility with the original ALIGNN, so this should be a drop-in replacement. You have to simply:
pip install mpdd-alignn
or (as recommended) clone this repository and
pip install -e .
DGL Issues
On some platforms, pip may struggle to get the dgl from PyPI that is compatible with the torch version you need for other dependencies and so on. In such case, we recommend to install lightweight (CPU) version of torch and matching dgl that should work well together by:
pip install torch==2.3.1 torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
and
pip install dgl -f https://data.dgl.ai/wheels/torch-2.3/repo.html
adjusting the torch version in both to your needs.
Contributions
Please direct all contributions to the ALIGNN repository. We will be synching our fork with them every once in a while and can do it quickly upon reasonable request.
The only contributions we will accept here are:
- Expanding the list of default models.
- Performance improvements to our section of the code.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mpdd_alignn-1.1.0.tar.gz.
File metadata
- Download URL: mpdd_alignn-1.1.0.tar.gz
- Upload date:
- Size: 106.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e54dd7d9a30459ba41a0d6ed554439f3023d84ea6bc963da39216596eed7981
|
|
| MD5 |
82cf40f46207017d6c08f27422e9485a
|
|
| BLAKE2b-256 |
bdeca408f761bda3cd111e8dbde82d2fe6587ad0c97e5fc1035f188cacfd9fa4
|
Provenance
The following attestation bundles were made for mpdd_alignn-1.1.0.tar.gz:
Publisher:
publishToPyPI.yaml on amkrajewski/mpdd-alignn
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mpdd_alignn-1.1.0.tar.gz -
Subject digest:
6e54dd7d9a30459ba41a0d6ed554439f3023d84ea6bc963da39216596eed7981 - Sigstore transparency entry: 256495971
- Sigstore integration time:
-
Permalink:
amkrajewski/mpdd-alignn@6ce57c12047689a2a8e85bb7cc411bf361142dd8 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/amkrajewski
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publishToPyPI.yaml@6ce57c12047689a2a8e85bb7cc411bf361142dd8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mpdd_alignn-1.1.0-py3-none-any.whl.
File metadata
- Download URL: mpdd_alignn-1.1.0-py3-none-any.whl
- Upload date:
- Size: 123.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad995120a0c8d064b3791c853946849fb0eafa825e676f84caa3784769e21e42
|
|
| MD5 |
1ea23af5dd0de84a1d7f947b2fa02e07
|
|
| BLAKE2b-256 |
b625c1f711cc1ecdbbf0edb867b7e7db2f1645498f0549d1d02c6e7f21753ccc
|
Provenance
The following attestation bundles were made for mpdd_alignn-1.1.0-py3-none-any.whl:
Publisher:
publishToPyPI.yaml on amkrajewski/mpdd-alignn
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mpdd_alignn-1.1.0-py3-none-any.whl -
Subject digest:
ad995120a0c8d064b3791c853946849fb0eafa825e676f84caa3784769e21e42 - Sigstore transparency entry: 256495981
- Sigstore integration time:
-
Permalink:
amkrajewski/mpdd-alignn@6ce57c12047689a2a8e85bb7cc411bf361142dd8 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/amkrajewski
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publishToPyPI.yaml@6ce57c12047689a2a8e85bb7cc411bf361142dd8 -
Trigger Event:
push
-
Statement type: