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.9.tar.gz (1.9 MB view details)

Uploaded Source

Built Distributions

AnalysisG-4.1.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.1.9-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.9-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.9.tar.gz.

File metadata

  • Download URL: AnalysisG-4.1.9.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.9.tar.gz
Algorithm Hash digest
SHA256 4a9e0fb9ffea887dee8547fe4d5616b3e4a64e062f463b30d915456085304744
MD5 baa265b74a4315de115925e53695c2f0
BLAKE2b-256 29c1f3e1ca621f8ad5e55dacfecc7a88f0f3926ce26a5a23cac4b74ac5bf84f6

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee034f21e6afb4397a71ad5ace4d726a418e059a40a82acf6e335bd13207ecc8
MD5 ab991af5c2fa0d7ba3dd0775873d978e
BLAKE2b-256 246660533bbd6fafd3dfb00d455e838a9bbcb6f8a437655828235ef081bf2501

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0cb0f44c94086dd698a7cf63c2c9798cf11b2f281441a43795dfae6d6c161517
MD5 ad5017888b8cafeca41279deb942bd57
BLAKE2b-256 b1b2b7dd2dc3ce9390ada9929a3519f24a8e148de552652503e104a9b3654227

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8aa92c00a04434bbdb11fdb29be28e08c9658e6a2700121c197a6359f45fdb4b
MD5 83e9dce24b2913c8849e65adaca1f4eb
BLAKE2b-256 83a7a6016117697dfbb291fad46c8163da9a0497002852fc096f9be0bbc4715e

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c36b67809818e5900b93812f0993292cdde6d15ad224ebd18c4195b98c179ab0
MD5 887437d685d58dc7f9401a2cde263382
BLAKE2b-256 f734b5252f1a90046f19634b011ca3fe13b9cc1ceaf60878e417ff3eb50227aa

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f5028a60fd5ea37e068b6de88e60ee8c5c86d093237b1dd57dafebe8e09ee065
MD5 be3b9935acc36984804e8c428ae3261c
BLAKE2b-256 3b89fc146bf2ec953876c4d24198c27c132db4876c34c421c178334e9c128843

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