GithubHelp home page GithubHelp logo

photonlib's Introduction

Documentation Status

Photon Library

This is a python API to use Photon Library. This README describes how to install and where to find tutorials. For users, you might find a complimentary documentation at the ReadTheDocs. For developers, make sure you read the Contribution Guide.

Installation

Once git clone this repository, go inside and:

pip install .

After installation, you may need to download a data file and a tutorial notebook. These supportive materials are gathered in a publicly accessible folder in this google drive link.

Downloading a data file

As explained below, Photon Library is a look-up table. To use, you have to download the table content data file. You can download and use the ICARUS data file as an example. After installation, executing the command below will download this datafile plib.h5 in your current path:

download_icarus_plib.sh

Simple tutorial

Notebook is coming soon...

What is Photon Library?

Photon Library refers to the technique used by neutrino experiments with Liquid Argon Time Projection Chambers (LArTPCs). Physics events (signal) in a LArTPC produce lots of photons (~20k/MeV) isotropically, and some of them are observed by optical detectors.

A typical physics event produces 100 million or sometimes more than billions of photons. Modeling the transportation of every single photon from the production point to individual optical detector with a monte-carlo simulation (i.e. calculating every possible physics processes explicitly) take prohibitive amount of time.

Instead, experiments pre-calculate the visibility, namely the probability for a photon produced at a position R to be observed by an optical detector D. Photon Library is a look-up table that stores the visibility values for the detector volume and all optical detectors in the detector. In this scheme, when simulating physics events, we can immediately estimate how many photons are detected by skipping calculating explicit physics processes.

As it is a table, Photon Library discretizes positions in the detector and this means it loses some spatial resolution. We cal each entity a "voxel" (volume-pixel). The sides of each voxel is uniform along each axis, and typically the same across axis (i.e. a voxel is typically a cube). For example, in the ICARUS experiment, a voxel is a cube of 5 cm.

How is Photon Library generated?

coming soon

photonlib's People

Contributors

drinkingkazu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.