Skip to content

Using GNN's for event classification at P-One Neutrino Detector

License

Notifications You must be signed in to change notification settings

ArturoLlorente/nemesis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nemesis


Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributing
  4. License
  5. Contact

About The Project

The Pacific Ocean Neutrino Experiment (P-ONE) is an initiative towards constructing a multi-cubic-kilometer neutrino telescope in the Pacific Ocean to expand our observable window of the Universe to the highest energies.

Nemesis is a GNN based classification tool for event classification at P-One. The repository has a set of different models to generate and classify cascades, tracks and starting tracks for different detector topologies and energy configuration.

Usage of this package requires previous knowledge in the use of PyTorch Geometric and PyTorch Lightning, as well as some insights into GNNs.

(back to top)

Getting Started

To be able to run the code you need to have a working installation of PyTorch, PyTorch Geometric and PyTorch Lightning. After that you can clone the repository and install the requirements.

Prerequisites

Before you start to work with this project, Docker has to be installed and all dependencies be provided as described in the following sections.

Install Docker

Check the official Docker documentation for installation instructions.

Installation via Docker Container

How to build a container

Create a working directory and move all necessary file into that folder. Then run:

sudo docker build -f dockerfile -t image-name .

Running a container:

The following command binds ports 8888 and 8008 to the host machine, makes GPUs available and binds the current working directory to /app inside the container:

sudo docker run -p 8888:8888 -p 8008:8008 --gpus all --rm -ti --ipc=host -v "$(pwd)":/app container-name

Shelling into a running container

This command opens a shell inside the first docker container that docker ps lists:

sudo docker exec -it `sudo docker ps | awk 'FNR==2 {print $1}'` /bin/bash

Running a Jupyter Notebook

This command runs a Jupyter Notebook server inside the container:

PYTHONPATH=${PYTHONPATH}:/opt/PROPOSAL/build/src/pyPROPOSAL:/usr/lib/nuSQuIDS/resources/python/bindings/ jupyter lab --port=8888 --no-browser --ip=0.0.0.0 --allow-root --notebook-dir=/app

Running a Tensorboard

This command runs a Tensorboard server inside the container:

tensorboard --port 8008 --logdir=/tmp/tensorboard --bind_all

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the GNU General Public License v3.0. See LICENSE.txt for more information.

(back to top)

Contact

Arturo Llorente - @ArturoLlorente - [email protected]

Project Link: https://github.com/ArturoLlorente/nemesis

(back to top)

About

Using GNN's for event classification at P-One Neutrino Detector

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages