Skip to main content

graph2mat: Equivariant matrices meet machine learning

graph2mat_overview

The aim of graph2mat is to pave your way into meaningful science by providing the tools to interface to common machine learning frameworks (e3nn, pytorch) to learn equivariant matrices.

Documentation

It also provides a set of tools to facilitate the training and usage of the models created using the package:

  • Training tools: It contains custom pytorch_lightning modules to train, validate and test the orbital matrix models.
  • Server: A production ready server (and client) to serve predictions of the trained models. Implemented using fastapi.
  • Siesta: A set of tools to interface the machine learning models with SIESTA. These include tools for input preparation, analysis of performance...

The package also implements a command line interface (CLI): graph2mat. The aim of this CLI is to make the usage of graph2mat's tools as simple as possible. It has two objectives:

  • Make life easy for the model developers.
  • Facilitate the usage of the models by non machine learning scientists, who just want good predictions for their systems.

Installation

It can be installed with pip. Adding the tools extra will also install all the dependencies needed to use the tools provided.

pip install graph2mat[tools]

If you want to use graph2mat with e3nn you can also ask for the e3nn extra dependencies:

pip install graph2mat[tools,e3nn]

What is an equivariant matrix?

water_equivariant_matrix

Contributions

We are very open to suggestions, contributions, discussions...

We are looking forward to your contributions!

The graph2mat package was originally created by Peter Bjørn Jorgensen (@peterbjorgensen) and Pol Febrer (@pfebrer) in the frame of a collaboration to machine learn density matrices.

Since then, the following users have contributed to the code:

Citation

If you use graph2mat for one of your works, please cite our original paper:

@article{febrer2025graph2mat,
  title={Graph2Mat: universal graph to matrix conversion for electron density prediction},
  author={Febrer, Pol and J{\o}rgensen, Peter Bj{\o}rn and Pruneda, Miguel and Garc{\'\i}a, Alberto and Ordej{\'o}n, Pablo and Bhowmik, Arghya},
  journal={Machine Learning: Science and Technology},
  volume={6},
  number={2},
  pages={025013},
  year={2025},
  publisher={IOP Publishing}
}

We'll be very happy to see what you have done with it :)

Metadata

Release files for graph2mat 0.0.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for graph2mat 0.0.13
File Size Uploaded
graph2mat-0.0.13.tar.gz 1.3 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for graph2mat 0.0.13
File
graph2mat-0.0.13-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
graph2mat-0.0.13-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
graph2mat-0.0.13-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
graph2mat-0.0.13-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
graph2mat-0.0.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
graph2mat-0.0.13-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
graph2mat-0.0.13-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
graph2mat-0.0.13-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
graph2mat-0.0.13-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
graph2mat-0.0.13-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details

Total release size: 5.3 MB

Release files / graph2mat-0.0.13.tar.gz

Download URL graph2mat-0.0.13.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
23f251ec044e0cc79c126c3cc687ada17708f316265d69f75d3ab76a14591a03
BLAKE2b-256 checksum
How to use checksums
9c37bf1deadade49d409d17c549f50b76f3f8de0c810817b49005dfc966c9f89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL graph2mat-0.0.13-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 445.3 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
12f7697491a7b526485e4c136b0b5634f96b755495aae77b468a930dfbaac239
BLAKE2b-256 checksum
How to use checksums
ee079c857c0d3ca21a553b4e80869f1145469f5ffa0b34d775a095a3fec81d21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp313-cp313-macosx_11_0_arm64.whl

Download URL graph2mat-0.0.13-cp313-cp313-macosx_11_0_arm64.whl
Size 363.5 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e010c75262b4fc5ff7dd1bf90b22d67c4ea4bc0d83a8a3c3507d4a8d2e3e79e0
BLAKE2b-256 checksum
How to use checksums
5e51a28401d4be00822f81557d47c14b8f2c344a866865081b336d24d2bc5c4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL graph2mat-0.0.13-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 444.2 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6a5eb39e897a39f53cc510e992afb1becdbe52a23cf9c487ebdc1164163ab752
BLAKE2b-256 checksum
How to use checksums
e186a990e6340b06f366180007bdfbeadb3868b935834c159c2e9878f70a80a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp312-cp312-macosx_11_0_arm64.whl

Download URL graph2mat-0.0.13-cp312-cp312-macosx_11_0_arm64.whl
Size 365.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
da7d7bd08d65506957c1d369b2640d84c37894af7ed8ba78a1bcd29d07671549
BLAKE2b-256 checksum
How to use checksums
a0ec6766f2b92138563a73678ce96c61a5decf2e12cd5cedbe0f390c43a682b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL graph2mat-0.0.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 450.7 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
350bbd488c75ffdf4821ad98cbbc1f05db1b0fd80f67dc0aa75028355e501ad7
BLAKE2b-256 checksum
How to use checksums
5469d0916760e124f23ecd407c58428b3b9f00709897008cfdf5602b1525f9bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp311-cp311-macosx_11_0_arm64.whl

Download URL graph2mat-0.0.13-cp311-cp311-macosx_11_0_arm64.whl
Size 363.9 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bfb9c25cb2aea6edd8f365355c81589558bcd7a6f734b626842995a6449ebd0e
BLAKE2b-256 checksum
How to use checksums
9c8b7ebe6acdbd2bd8623a7014d411d4b447d8d6fa3994bfa16fae2b9fa39787
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL graph2mat-0.0.13-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 458.3 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1b79e408e7dfc3a34b25c4192543bb3d72dc92667c6cf83284e96d68baf1db01
BLAKE2b-256 checksum
How to use checksums
bc8f749bd5ad91eb19d7b50090f4c95449b2d25d7cd173045040835e005d52a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp310-cp310-macosx_11_0_arm64.whl

Download URL graph2mat-0.0.13-cp310-cp310-macosx_11_0_arm64.whl
Size 365.3 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5d968d70c27f9848b1ce16a0c391d25584258686144654bb2d8db85b98f09eaa
BLAKE2b-256 checksum
How to use checksums
1ac2304f73ec41ff86c83f08217ec09415f3156747847513195354713c21c35c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL graph2mat-0.0.13-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 458.7 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f67e3aef71939bfdeffe1c40bc0112003f54619938c1dd21aefd26dd3b34fe17
BLAKE2b-256 checksum
How to use checksums
c4bdfa40138b7d9743784a93ec30393fde14677e6a240e235e2d8f830b1a2e34
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release files / graph2mat-0.0.13-cp39-cp39-macosx_11_0_arm64.whl

Download URL graph2mat-0.0.13-cp39-cp39-macosx_11_0_arm64.whl
Size 365.8 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
766de08db8370e8166f9f372adee1d6a269b8df19f0c080926ef7df0f0073b42
BLAKE2b-256 checksum
How to use checksums
ebc464d070288c2765c12e22dde5046be25fb54de9368dc21ebbca2cb92eefcf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.14

Release history Release notifications | RSS feed

This release

0.0.13 This release

11 release files

0.0.10

9 release files

0.0.9

9 release files

0.0.8

1 release file

0.0.7

9 release files

0.0.6

1 release file

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