Code for the ROACH CUKIDS readout and analysis.
This code is provided in the hope that it may be useful to others, but is still very much a work in progress.
Using the ROACH code requires the FPGA designs available here:
- Simulink .slx files (public): https://github.com/ColumbiaCMB/kid_readout_fpga
- Compiled .bof files (private): https://github.com/ColumbiaCMB/kid_readout_fpga_bof
apps/
Scripts, mostly for acquiring and analyzing datadocs/
Documentationkid_readout/
All library codeinteractive.py
Import * from this for interactive useanalysis/
Resonator fitting, timeseries analysis, experiment info (in resources/)equipment/
Scripts and library code for lab equipmentmeasurement/
Code for organizing collected data and writing it to diskroach/
Communicate with ROACH 1 and 2 boardssettings/
Local variables and settingsutils/
Miscellany, mostly deprecated
ppc/
ROACH PPC code
From the directory where this package was cloned, first create an environment named kid_readout with all dependencies:
conda env create -f environment.yml
Activate the kid_readout environment:
$ source activate kid_readout
At this point, all of the non-hardware tests should pass:
$ nosetests -v
All dependencies should be installed, so it should be possible to install the package in development mode:
$ pip install --no-deps -e .
This is a hack to stop the corr
package from importing lots of things we don't use, one of which raises an error:
$ echo "" > $CONDA_PREFIX/lib/python2.7/site-packages/corr/__init__.py
At this point, all the hardware tests should pass if the corresponding readout hardware is connected:
$ cd kid_readout/roach/tests
$ nosetests -v test_roach2_heterodyne_loopback.py