C++/Python software to run Supera
(repository), a library that can generate true labels for a ML based data reconstruction chain called lartpc_mlreco3d
(repository). This repository is dedicated to interface EDepSim and larcv frameworks that input and output information in data files respectively.
Executable scripts are in Python and C++ classes and functions are bound to Python via PyROOT following a pattern used by EDepSim (as opposed to Supera which uses pybind11). This allows both edep2supera and EDepSim methods to access C++ objects within Python in a common manner.
- Use this docker image (or any other container image derived from it) to get the most of required softwares. Only additional item you would need is scikit-build which you can install with
pip
. - Clone this repository (below) or fork-and-clone.
> git clone https://github.com/DeepLearnPhysics/edep2supera
- Build+Install (the example below installs under your
$HOME/.local
path)
> pip install . --user
Simply try:
pytest
at the top-level directory.
- Fork this repository to your personal github account.
- Clone the repository to your local machine. Follow the build/install instruction above and make sure you can set up.
- Create your branch to contain your own development. Code code code.
- When it's ready to be shared, make sure a unit test passes. Then request to merge by sending a pull request.
Optional but strongly recommended: implement a unit test for the added component of your code so that we can reduce chance of someone else breaking in future development.
- Feel free to use github issues! We try to be attentive as much as possible.
- Join our weekly ND Technical Software Meeting (noon PST every Wednesday, here's indico category).
- Join our mailing list [email protected]
- Send an email to [email protected] with an empty title. The body should include this text:
SUBSCRIBE DUNEND-SIMRECO-TECHNICAL FIRST LAST
where you should replace theFIRST
andLAST
with your first and last names respectively.
- Send an email to [email protected] with an empty title. The body should include this text:
- Join our slack channel (contact Kazu).
Milestones
- Fill Supera datatypes from EDepSim datatypes (i.e. TG4Event attributes)
- Implement particle hierarchy tracking algorithm from old Supera
- Implement a python run script to fill input data and run Supera
- Implement a python run script to drive larcv to create an output file and store information from Supera