Skip to main content

Simulate SIS mixer operation

Project description


Quantum Mixing software

PyPI version PyPI - Python Version Build Status Coverage Status License: GPL v3

QMix is used to simulate the quasiparticle tunneling currents in Superconductor/Insulator/Superconductor (SIS) junctions. In radio astronomy, these junctions are used for heterodyne mixing at millimeter and submillimeter wavelengths. QMix can be used to simulate the behavior of SIS mixers, optimize their performance and investigate experimental results.

In order to calculate the quasiparticle tunneling currents, QMix uses multi-tone spectral domain analysis (see references). Among other applications, this makes QMix ideal for simulating power saturation, higher-order harmonics, sub-harmonic pumping, harmonic mixing and frequency multiplication.


Getting Started

The easiest way to install QMix is using pip:

# for latest release
python -m pip install QMix

# for latest commit
python -m pip install git+

Take a look at the QMix website for more information on how to use the QMix package and examples showing how to simulate SIS junctions. If you run into any problems, please create a new issue through the issue tracker with the help wanted or question tag. In your message, make sure to include your operating system, Python version, and package versions for QMix, Numpy, SciPy and Matplotlib.

Contributing to QMix

GitHub issues GitHub commits since latest release

If you would like to contribute to the QMix project, please take a look at the contribution instructions. This document includes information on reporting bugs, requesting new features, creating pull requests and contributing new code.

To get a local copy of QMix running:

# Download QMix
git clone QMix
cd QMix/

# Create a virtual environment using Anaconda
conda env create -f environment.yml
conda activate qmix

# Install QMix
python -m pip install -e .

# Test installation
pytest --verbose --color=yes tests/


QMix can be used to simulate a wide variety of SIS junction behavior. A simple example is shown below for simulating an SIS mixer at 230 GHz. You can find more examples in the QMix/notebooks/ directory or on the QMix website.

Citing QMix

If you use QMix, please cite the following papers:


  author       = {J. D. Garrett and G. Yassin},
  title        = {{QMix: A Python package for simulating the quasiparticle tunneling currents in SIS junctions}},
  publisher    = {Journal of Open Source Software},
  month        = mar,
  year         = 2019,
  volume       = 4,
  number       = 35,
  pages        = 1231,
  doi          = {10.21105/joss.01231},
  url          = {},


  author       = {J. D. Garrett and B.-K. Tan and F. Boussaha and C. Chaumont and G. Yassin},
  title        = {{Simulating the Behavior of a 230-GHz SIS Mixer Using Multitone Spectral Domain Analysis}},
  publisher    = {IEEE Transactions on Terahertz Science and Technology},
  month        = nov,
  year         = 2019,
  volume       = 9,
  number       = 6,
  pages        = {540--548},
  doi          = {10.1109/TTHZ.2019.2938993},
  url          = {},

You can also cite a specific version of QMix by citing the appropriate Zenodo archive:


  author       = {J. D. Garrett and G. Yassin},
  title        = {{garrettj403/QMix  (Version v1.0.4)}},
  month        = apr,
  year         = 2019,
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.2640907},
  url          = {}


QMix is released under a GNU General Public License, Version 3.

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

qmix-1.0.6.tar.gz (77.8 kB view hashes)

Uploaded Source

Supported by

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