Skip to main content

No project description provided

Project description

A Graph Neural Network Framework for High Energy Particle Physics

AnalysisG-Coverage-Action

building-analysisG

building-pyc

Publish to PyPI

tox-testing-analysisG

Getting Started:

Either read the docs here: Documentation Status

Introduction:

The aim of this package is to provide Particle Physicists with an intuitive interface to Graph Neural Networks, whilst remaining Analysis agnostic. Following a similar spirit to AnalysisTop, the physicist defines a custom event class and matches variables within ROOT files to objects that they are a representation of. A simple example of this would be a particle, since these generally have some defining properties such as the four vector, mass, type, etc.

From a technical point of view, the particle would be represented by some Python object, where attributes are matched to the ROOT leaf strings, such that framework can identify how variables are matched. A similar approach can be taken to construct event objects, where particle objects live within the event and are matched accordingly to any other particles e.g. particle truth matching. This hierarchical architecture allows for complex event definitions, first basic building blocks are defined and then matched according to some rule (see tutorial below).

To streamline the transition between ROOT and PyTorch Geometric (a Deep Learning framework for Graph Neural Networks), the framework utilizes event graph definitions. These simply define which particles should be used to construct nodes on a PyTorch Geometric (PyG) Data object. Edge, Node and Graph features can be added separately as simple python functions (see tutorial below). Post event graph construction, events are delegated to an optimization step, which trains a specified model with those graphs.

To avoid having to deal with additional boiler plate book keeping code, the framework tracks the event to the originating ROOT file using a hashing algorithm. The hash is constructed by concatenating the directory, ROOT filename and event number into a single string and computing the associated hash. This ensures each event can be easily traced back to its original ROOT file.

Or naviate to the tutorial folder, which outlines a few core concepts of this framework.

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

AnalysisG-4.1.5.tar.gz (1.9 MB view details)

Uploaded Source

Built Distributions

AnalysisG-4.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.6 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

File details

Details for the file AnalysisG-4.1.5.tar.gz.

File metadata

  • Download URL: AnalysisG-4.1.5.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for AnalysisG-4.1.5.tar.gz
Algorithm Hash digest
SHA256 eda849cf9c1cdbcbc886948972463880373276c1de7e5667ef7123ec558fea66
MD5 206bcf55c1772286a372e1c05f15fc73
BLAKE2b-256 996089e332dfacae2335d7367a0942484e5ca4b90ae0554908aa4389381c0d7e

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 42cc53918a6b9db3705beccb4d3426f704bc7e9035408ff8ccd7deb3d8b7cc49
MD5 9f429dba3050809b12b25a33aaead201
BLAKE2b-256 d5257b57f53a73c40ff81f7f720edfd74cf21dfb043e262445bee37173978297

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f28cbcc2e3f164e5ebb30087aa90b8ab54e83d9c4f66b47f65a8bedbb2d85902
MD5 22986efb19a6011a5bd44febc1c4eab5
BLAKE2b-256 935f1afc6cc0a2464f754d1316fc8a6157138a67565ca4b15bc6eea32e7f498d

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9bf75f15dcad96fcddf64bd45c88246409171ce54ac4f7da2eb38bf760a72cc1
MD5 c7c8fdd8f124cbb7cc3f9c86649553e7
BLAKE2b-256 4b11e57bca5d0a9c907497cadbc03efd11551911d7b43801f09a461e89c5f034

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ceebd67bbfc8d9091c958e2709f5ce4c16a02682334e7133ab1b7f0b54001330
MD5 4b71b0523e5b1736f5c2f6f70e17b185
BLAKE2b-256 da2c693ba76baa089a00fe617aaa38b2502b5798697141e37080e721050a76fa

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8aa26a8eafb1ad932cd74f9cbb5c4c846d348b656627b8979d90e2f0e98575c
MD5 1ad8cb72e451c94bd50363cf8547aa36
BLAKE2b-256 8a4cb690a9ea3caf767b7b90e4cb09a48d0b68a34c6b2019a46d5f7371c4ccb3

See more details on using hashes here.

Provenance

Supported by

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