Skip to content

nickjamesr/qy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

##Qy for Python

Quantum libraries all in one place. Control and automation, DAQ, IO, simulation, graphics, GUI, analysis.

###Installing qy depends on numpy and matplotlib. I am trying to avoid dependency on SciPy, but some functions still need it. You will need cython and SWIG if you want to compile from source.

####Windows I am periodically building windows installers. You can download them here. Under windows using mingw32, the following commands seem to do the job when building from source:

> python setup.py build --compiler mingw32
> python setup.py install

####Linux Under linux, this is the command that I am using to compile/build and install qy:

$ python setup.py  install --user

The --user is optional.

Contents

qy is broken into six sub-packages, for analysis, input/output, simulation of linear optics and quantum information, interfaces to various bits of lab hardware and DAQ, graphical user interfaces, and miscellaneous stuff.

####Analysis Post-processing and analysis tools.

  • Quantum metrics: quantum state fidelity, process fidelity, CHSH ...
  • Classical metrics: Trace distance, statistical fidelity ...

####IO Interface to non-standard binary formats.

  • Fast interface to binary .counted files from DPC-230 timetagger

####Simulation Optimized code for simulating linear quantum optics and quantum information, some of which is written using cython.

  • Optimized linear optics simulator. p photons in m modes. Reck schemes, quantum walks, interferometers, random unitaries.
  • Optimized permanent in cython.
  • Optimized factorials and combinatorics
  • Detection model for fan-out pseudo number-resolving detectors
  • QI fundamentals: Qubit bases, Pauli operators, two-qubit gates...

####Hardware Python drivers for various pieces of hardware.

  • Motor controllers
  • FPGA-based counting systems
  • Lasers
  • DAC (NI etc)
  • ...

####GUI Useful wrappers for various bits of wxPython.

####Miscellaneous useful things

  • Easier file access, numpy tools, command line tools...

###TODO

  • Get rid of Scipy ($ grep -rl "scipy" ./)
  • Stress test cython code in linear_optics
  • Tidy up hardware modules, get code from other people e.g. PicoHarp

About

All your CQP quantum libraries in one place. Control, automation, DAQ, graphics, simulation, analysis.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published