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:

The framework and tutorials are outlined within read the docs. 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.2.7.tar.gz (2.0 MB view details)

Uploaded Source

Built Distributions

AnalysisG-4.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.4 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.6 MB view details)

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

File details

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

File metadata

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

File hashes

Hashes for AnalysisG-4.2.7.tar.gz
Algorithm Hash digest
SHA256 9193e561e957cbef3a073df2c572801ed4f96ab588a2760f047319829701455d
MD5 45e9e8de4dc8a4693c0c04d9960dc6ae
BLAKE2b-256 22f67ecb408d0735c71fbc7cfe9db7a7f8b484aa30c1f51194c5e315bb894a4c

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 540eb2dfe133dfbf1a6c10b76272280739d89113c21f5045e95520037c047228
MD5 7f64ba7cb737cea3886ca2123c2a6645
BLAKE2b-256 c68754e447a3f024a6cac0fba8355f55b9bbc9787e868e2291e31fdf5129aa9b

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 09e0adbd80b5547e12912c7b723d54ee5db8f4663adab8cdf0f42542d98dd3a2
MD5 b3a6d09ce502e41d38c0a1d002ae5341
BLAKE2b-256 47195ec1d210a3218a115cf25c2ad2cb1df55980295ab8a26d5c9f31472e68a7

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ffe5f11f58be55547965213504d5e173438364fe2920543d639d54c6d42ab33c
MD5 2e1a28c66eb4e42ebe0583c40f08bee8
BLAKE2b-256 eef63545b461695451597e699d0b952b4af9eab3e5f12b140241defe683c92b3

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77248012182ca3eb3b2fa8e06617c569622b25457fe7056be09d4c7dc07ebe2b
MD5 ee742505227e3b6540056a0da053f9de
BLAKE2b-256 9fa9b846bab1a9e47d1bf6499b888c3adc046b0e823ced78f60f0e38e706f396

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5e4482ef451ac0ffca3343e065e55fce5374df208f2c5f72b96896109c00bcbb
MD5 657db0e27272495394c8cc4819b03224
BLAKE2b-256 998d4b9dac9c3819efda86d6656231d5cd006dfee417859df570583a6fc9caec

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