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

Uploaded Source

Built Distributions

AnalysisG-4.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.6 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.8 MB view details)

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

File details

Details for the file analysisg-4.5.6.tar.gz.

File metadata

  • Download URL: analysisg-4.5.6.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for analysisg-4.5.6.tar.gz
Algorithm Hash digest
SHA256 33708a489d79acdc0c9b1843dc041b43767f1e575ab93e52e6b247af9e816152
MD5 b961701cb425cbce8e560adace2ce760
BLAKE2b-256 e653698e4fb2dd71c01678dff5aa6c020f33510e74b4c9d06965971d6b23387e

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4609576bddef845ea32cf074e500a7f8b64f52e95934d3226cccab26de519969
MD5 8ea264dd8983141e8547d624b8576184
BLAKE2b-256 4b709604173583f003fc7d34a3395a6267ff86e9485fbf5d104469bd97fbd111

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c01ab2ea2cc64d4243ce4f7e121a7efe2327a07bd69e4084a27176cf686c668c
MD5 9638a17c79c1cad888f06c7413d13b93
BLAKE2b-256 91282b46b7db1d75f57e16018a3ec42178946587ac2354a7adac9588130dd115

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 35cf25316cd54bbccdeadf3a2a40176d5648cb5743b3bd69088b442b656039ca
MD5 1cbcef20a82b0e6e79cc460203e2fd79
BLAKE2b-256 03e39f9827eec27ebcf03964b02f988cdea6d43518c50931c39de08d882c763c

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 23d5baf2e1930888158d506eb82f1e9f94496a3012f4043478c88ee7289c30a6
MD5 9427987cc228fccab085bbc8de7da491
BLAKE2b-256 c04b0ae9760a37155dec43413a0995530fcd17d989eab1602f55b3375bcf0efb

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4ac338465899bdd33e295c9cfef8cba509c5631d560154d7f82c548315f386ef
MD5 645cd279fc52b9e22ad0b7973a16b4a3
BLAKE2b-256 a583105070f8bfb3bb0b9311e928f9ef46473063150ff71d83971258b701603d

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