Skip to main content

Fast likelihood analysis in many dimensions for xenon TPCs

Project description

Flamedisx

Fast likelihood analysis in many dimensions for xenon TPCs.

Build Status

By Jelle Aalbers, Bart Pelssers, and Christian Antiochi

Description

Flamedisx aims to increase the practical number of dimensions (e.g. s1, s2, x, y, z and time) and parameters (g1, g2, recombination model coefficients, electron lifetime, ...) in LXe TPC likelihoods.

Traditionally, we evaluate (the probability density functions used in) our likelihoods using histograms created from high-statistics MC simulations. We precompute these histograms for several parameter combinations, then interpolate between them during inference ("verical template morphing" in collider physics jargon). The precomputation time is exponential in the number of likelihood/histogram dimensions and the number of parameters used.

Flamedisx instead computes the probability density directly at each observed event, without using MC integration (or approximating the model). The commonly used LXe emission model is simple enough that the integral equivalent to an MC simulation can be computed with a few matrix multiplications, at a speed of a few ms -- instead of a high-statistics MC simulation that takes O(minute) or more.

This has several advantages:

  • Each event has its "private" detector model computation at the observed (x, y, z, time), so making the likelihood time- and position dependent incurs no additional computational burden.
  • The likelihood for a dataset takes O(seconds) to compute, so we can do this at each of optimizer's proposed points during inference. We thus remove the precomputaion step exponential in the number of parameters -- and can thus fit a great deal more parameters.
  • Since the likelihood consists of deterministic matrix multiplications, it can be implemented in tensorflow/pytorch. This enables automatic differentiation, which unlocks the gradient during minimizing, drastically reducing the number of needed interations for a fit or profile likelihood.

Note this is under construction, so it probably has numerous bugs and little or no documentation.

0.1.1 / 2019-07-21

  • 5x speedup for Hessian (#9)
  • Fix pip install

0.1.0 / 2019-07-16

  • Batching (#7)
  • Inference (#6)
  • Ported to tensorflow / GPU support (#1, #2, #3, #5)

0.0.1 / 2019-03-17

  • Initial numpy-based version

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

flamedisx-0.1.1.tar.gz (19.1 kB view details)

Uploaded Source

File details

Details for the file flamedisx-0.1.1.tar.gz.

File metadata

  • Download URL: flamedisx-0.1.1.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.7

File hashes

Hashes for flamedisx-0.1.1.tar.gz
Algorithm Hash digest
SHA256 988330c526e8f57fe330477a294912887d8149cb0bf580d54ed06448ea91101c
MD5 e9e3006c309def17bbb77eb6b82b7218
BLAKE2b-256 24a73b77b4bb38246e637b4d5204b3d2c4dcda2a1fe2600c2742c7c665c913b1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page