Fork me on GitHub


Quantum Toolbox in Python


QuTiP is the original quantum framework written in Python; the most widely used programming language in the quantum sciences. Python's straightforward syntax allows for constructing, manipulating, and evolving quantum objects using QuTiP with just a few lines of code. Easy to learn, and 100% open-source, QuTiP is the ideal toolbox for research or the classroom.

Did you know that you can determine if an operator is Hermitian without performing the conjugate transpose? QuTiP does. In fact, it is just one of many custom algorithms that QuTiP uses to maximize performance. Focusing on sparse matrices, and the means by which to efficiently manipulate these data structures, allows QuTiP to tackle even the largest quantum mechanical calculations.

In addition to custom algorithms, QuTiP is capable of leveraging the multiprocessing power inside every modern computer. Taking advantage of the Python multiprocessing library, OPENMP, SSE3 processor extensions, and the Intel MKL, if available, allows for faster manipulation of quantum objects, and increased performance of evolution equations, without any work at all.

QuTiP includes a variety of builtin solvers for dynamical simulations. In addition to the standard Lindblad and Monte Carlo Solvers, QuTiP includes routines for Bloch-Redfield evolution, periodic systems using the Floquet formalism, and stochastic solvers. Add to this, steady state analysis and non-Markovian techniques, and you have a wide variety of tools from which to explore your systems behavior.

A wide range of time-dependent evolution simulations can be runtime compiled into C++ behind the scenes using Cython. Thus, you get the ease of use of the Python programming language, and the performance of compiled code, all for free. What can be better than that?

Can't express your time-dependence analytically, or need to construct a function from a data set? No problem. QuTiP allows for passing interpolating functions as time-dependent arguments to the evolution solvers. Even better, these interpolating functions can be runtime compiled into C++, and support both real and complex data.

From Bloch spheres to nonlinear colormaps for Wigner functions, QuTiP includes a host of built-in visualization routines that help bring your data to life. Our plotting utilities have been used by Fortune 500 companies, government research labs, and countless research groups around the globe. If you don't look good, we don't look good.

QuTiP is thoroughly tested, both by its thousands of users, and by the large collection of built in test scripts. QuTiP includes over a thousand such tests, covering nearly all of the builtin functions. These tests are run over and over again during development to make sure that the results you get from QuTiP are in fact the correct answers. No other quantum simulation software is as well tested as QuTiP.

No software should be a black box to the user, especially in science. QuTiP is not only completely open-source, but also includes hundreds of pages of documentation, a multitude of tutorial Jupyter notebooks, and a friendly community of users who kindly donate their time to help answer questions.