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.9.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.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (427.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

graph2mat-0.0.9-cp312-cp312-macosx_11_0_arm64.whl (351.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

graph2mat-0.0.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (421.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

graph2mat-0.0.9-cp311-cp311-macosx_11_0_arm64.whl (351.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

graph2mat-0.0.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (424.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

graph2mat-0.0.9-cp310-cp310-macosx_11_0_arm64.whl (353.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

graph2mat-0.0.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (425.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

graph2mat-0.0.9-cp39-cp39-macosx_11_0_arm64.whl (354.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: graph2mat-0.0.9.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.9.tar.gz
Algorithm Hash digest
SHA256 d2326aa2660b0f3f87cfb0421aff9636089b5bfb1f8cce44940c432f4487d264
MD5 6e8980d7e2cd73ed72f8df273404c661
BLAKE2b-256 f83a6b76e499e42ce17bc89cee75e8b875cf1d0b9a55eb892d7688869bd74bd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cc8efdb2c80fae8e592cf4c113e672aa2da938ec420c65f6f47635c323d4a8be
MD5 cc61e90f971d396cc9619c9862a2f4e5
BLAKE2b-256 1c5e2d37b020b4d41f5ede942ae6a966d8bc640a934afcc61160d5cb5fdb0ca1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 407b2402990cb344900b9b13e8ce4d1786545c02100a10cb9ee7e03b9d82a413
MD5 795531df4ea26a212322875c83d857c8
BLAKE2b-256 4545b624a0f626db38848380eb18261692922773bc69584482e4ead446df3083

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 901b1bf3444b37c716257bc4c6ed9dc60684bb93621f5a921d489256e798ded4
MD5 8c0b64ab14bc000fb5763626af4e4707
BLAKE2b-256 8ac1173fad19a35e86b942c531e7328f5d2272a464bef15c874ce88d6ee12ef5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3e67f6299f8e58a83019f8b172f4d7e0400a8a159427a52bfd061e85bf49c331
MD5 b06e4b17123cd76b86728ae2321ff972
BLAKE2b-256 111f8227fc56927da6d7b5a12137fae0225419cbf76482bd0ebfe8d21c589ccc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 35b9d38e9e3e140e5a5c4235d014d8d1d88a8ed17450e1e773ee482ad02fef5e
MD5 a1b553f9edb77b87d3d5d579dc60a3f0
BLAKE2b-256 25361dc6d46165f4894027007fecc9dbe6870020f26e160dd18847caef04b9c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b3509e3757933ada59e5a0d338e651a444cd4b90b93c5712cf597e27421819c
MD5 19ea7d64b59355acfe83ecc5c1cf41ce
BLAKE2b-256 2ed82f0b4fb91dfe32923ebdd995498f09c94423c7df238000f7db9395116913

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a3079b83adccbcff92c352218356c98038cfa8260035a8f9ea855b6020e6c4f6
MD5 b121aeb7b380b37d296b291508029984
BLAKE2b-256 f4c6bf95465cac58e5753e1689d739de83de9e45a3ee98786f7f752c9e8483b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graph2mat-0.0.9-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2c18f6fdcccfe398e7a37c19b90517bd69d80bcbe01b4eb280705ca48aa328ed
MD5 4a514f01a47abb297f5cdfb34c129efd
BLAKE2b-256 50b71d3dec79f2238a56f4e43dbdbfd40a1558fef38358c08759b0082017b0c9

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