Skip to main content

Utility package to work with equivariant matrices and graphs.

Project description

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 :)

Project details


Download files

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

Source Distribution

graph2mat-0.0.10.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

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

graph2mat-0.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (431.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

graph2mat-0.0.10-cp312-cp312-macosx_11_0_arm64.whl (354.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

graph2mat-0.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (425.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

graph2mat-0.0.10-cp311-cp311-macosx_11_0_arm64.whl (355.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

graph2mat-0.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (429.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

graph2mat-0.0.10-cp310-cp310-macosx_11_0_arm64.whl (357.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

graph2mat-0.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

graph2mat-0.0.10-cp39-cp39-macosx_11_0_arm64.whl (358.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file graph2mat-0.0.10.tar.gz.

File metadata

  • Download URL: graph2mat-0.0.10.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.13

File hashes

Hashes for graph2mat-0.0.10.tar.gz
Algorithm Hash digest
SHA256 dc2c05549f3003766d00d67d9a9ea9874743d44b1347ae3c0a48658b54abfafc
MD5 d3d05f2125c85bb5dc6d05ce34c3a845
BLAKE2b-256 fce3bb560fcffda169f2cbe931661fd5a3c9423aae79eb7a8277ad14b770fdd9

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1c23c5cb80d302f41a5d5fd09e449b9cdc2d98b0960c490bc636b7d5c0a6383
MD5 b9496ea26a2e0b2a7bef2a32365ff17d
BLAKE2b-256 684d46275ae31aef34668c25b236457fbf24d276ab3efb73cd04012e1217bd38

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3311d7bdc0903d4ecf0d7cbacf3d98de4cd267b742bdfbc8703c7a588c463c2e
MD5 1600f2a7bccacced604a690519166fd6
BLAKE2b-256 04b88f5fc086757739d518194b034d582297b4a53db0cdb1af30ee865030ac43

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee128c23b2a0f90ea20613b52d2ba4e40bd09230d6fccce4463300b03b06b704
MD5 fbade6ca0983254fc1dbdc8e3d9af7ff
BLAKE2b-256 81b968c44583c8cbc344cbbe1906a6d8f8d05e379dadc99e1c1bd3c70bed29c2

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7651542b0b476fbc09a4f788be9b98cbf546fef4448a5ad35a6803d1685f76f
MD5 ec3e5c6b3db47c95223f5b7c852890bd
BLAKE2b-256 f0cf0d9ee0ac72ee0ddd911e32f9ce470ac244a277bfa1715082bc66aeaef823

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c142bf1b1cb51ff309f68424473877b2188f0cb1cd3b60ac39df594b8d0018e9
MD5 ba4d4eb725efd67e3dd7f2e4332ff546
BLAKE2b-256 05fb77f7d84e97f6775b3820bcf9f26c18f0174d0611d8e643ef1d167c705404

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2f8f03b0cd50fd2f6e1dcaa487007a651805546612df81728767ed7a8d9874ab
MD5 072e319e7e5b42d7422b3d67c4022c2c
BLAKE2b-256 d393deb0e3cf43b71c2a4b570c99980d748dbbffb8e92540cfa898c05f6fa189

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b0d7d3311d2d094eb473895ee9a7da3afbf0e333195405ca89f8f0986984bb97
MD5 e3a6e3a49ff8c9b470762b35d409515b
BLAKE2b-256 dbceece1d41fd5f41476d59548b5e1249a61f52361810c0dd49607694ccb3106

See more details on using hashes here.

File details

Details for the file graph2mat-0.0.10-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for graph2mat-0.0.10-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 79c14894f5680b7dd97f3484c08894a1a1d5866c0f3aadbcb5f7690a07e27c83
MD5 9d100f0daef24646948b38e474e85b8b
BLAKE2b-256 d8bb634ce2d497ea77f406343828ba920a59bcf48b3d73d9e7a8af270d0774d5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page