Skip to content

agriff86/rd-deconvolve

Repository files navigation

Radon Detector Deconvolution (rd-deconvolve)

This can be used to correct the output from a dual-flow-loop two-filter radon detector for the slow time response (~45 minutes) of the detector. It works by deconvolving the detector response from the measured signal.

Instructions

This is a Python library which has grown from experimentation. It does not have a well-planned or stable API. The recommended way to use it is to

  1. clone the repository,
  2. setup a Python environment using conda,
  3. install rd-deconvolve into the environment, and
  4. run or adapt one of the examples in the examples subdirectory

Running an example

These steps have been tested on Ubuntu 18.04.

  1. install Miniconda or Anaconda
  2. Clone this git repository:
git clone https://github.com/agriff86/rd-deconvolve.git
  1. build the environment (from the instructions in the environment file). Alarmingly, this environment is 2.7G in size.
cd rd-deconvolve
./build_conda_env.sh
  1. activate the new environment
conda activate ./env
  1. compile the fast detector model
python setup.py build_ext --inplace
  1. run an example
cd examples/generic-1500l-deconvolution
# reads and pre-processes raw data
python clean_data.py
# outputs deconvolved data to ./data-processed
python run_deconv.py
# generate netCDF files and a plot
python plot_deconv_results.py 

Algorithm

The deconvolution routine, based on emcee and the Boost ODE integrator, is described in this paper. Since the paper was released, we have also experimented with a backend using PyMC3.

Licenses

This library is release under the MIT/X11 license.

Authors

  • Alan Griffiths

About

Deconvolution for the ANSTO dual flow loop two filter radon detectors

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published