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

Uploaded Source

Built Distributions

AnalysisG-4.1.8-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.8-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.8-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.8-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.8-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.8.tar.gz.

File metadata

  • Download URL: AnalysisG-4.1.8.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.8.tar.gz
Algorithm Hash digest
SHA256 37e088ea001dfa24da55d6d228f18d8fb3ee69a80f327509afc4156301dcc11c
MD5 a8ec1d9b26188c1d5ed88156fc9e9597
BLAKE2b-256 85b5b71838d5ac9f8220a07796ea69cd41893858bad982e8806bf436fa0e16f1

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8cb998cc225d0583123131faf7ea506b8d5e9f1b7a62cfbb774d44dd914a15a0
MD5 76cc3d398c7c2c5d9970db43e62dc8e1
BLAKE2b-256 00cd84c42eafe84fe9b3daf9422c569148f736f0690e66d8022d4f2d93e8aedc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ddbe915dc1eeed59c6fddefa3af4c9f8f06672025cf443989e1824d9fc445274
MD5 c64560fc8f913597ab31c2d08dc9bae9
BLAKE2b-256 3cc21580ed3d5b68104fa1cfd3ff81d3d671c5169db774032fd2ed6a67b9f67e

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5202374e60d9c0f4a4e1118f802424748c1eb25d501fa8c3cd3c25bb2050f77b
MD5 300ed94c6f64f708457b8b00b4f8fdb4
BLAKE2b-256 d2720ed8140f593a9b6d2d8d19d08c24115dc29fedbc821a2509aaffd9e29dac

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7a5a60e6c7a57a47542c8a37f2d916e05aa4f55f0c09f88b6c5387c117b29888
MD5 9a4ff8c3cee84dad4d8ed0924dccfa8f
BLAKE2b-256 48d0a22f1afad3d160f0213cf1a0d04f9007886c2100c830c94a6cb0a489a2bc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.1.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9837bbd55dc76b295382ec49a247e54cfb18cd365e8e89d1f0eaa3597135528
MD5 9b4969ce1fa1d17443c5713bd1bc4cf7
BLAKE2b-256 71a7adae90c585a7c068616e12ac492fef874f59239836b44abb6d69db797c0f

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