skillfed

qutip

QuTiP: The Quantum Toolbox in Python

qutip v5.3.1 266.0K downloads/30d#8,311 on PyPI
Permissive license BSD-3-Clause Active released

What it is and what it does

QuTiP is a Python library for simulating quantum mechanical systems, both closed (isolated) and open (interacting with an environment). It provides numerical solvers for time-evolution problems, supporting Hamiltonians and collapse operators that can vary arbitrarily with time. The library is built on NumPy and SciPy for computational efficiency and includes support for a wide range of quantum mechanical problems commonly encountered in physics research and education.

The package is designed for researchers and students exploring quantum dynamics, offering user-friendly APIs alongside efficient numerical backends. It runs on Unix-based platforms and Windows, and is maintained by an active community affiliated with Unitary Fund and numFOCUS. Installation is straightforward via pip or conda, with pre-built wheels available for modern Python versions on multiple architectures.

Use it for:

  • Simulate time-evolution of quantum states under time-dependent Hamiltonians in open quantum systems.
  • Model quantum optical systems with cavity decay, spontaneous emission, and other dissipative processes.
  • Solve master equations and Lindblad equations for open quantum dynamics in research.
  • Explore quantum mechanics concepts interactively in educational settings with demonstration notebooks.
  • Analyze quantum information protocols and quantum computing gate operations.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

QuTiP simulates the dynamics of closed and open quantum systems using numerical backends (NumPy, SciPy) and supports Hamiltonians and collapse operators with arbitrary time-dependence.

Yes. QuTiP is a mature, actively maintained library (release 10 days old) with permissive licensing, no known vulnerabilities, and broad platform support. It is the standard tool for quantum dynamics simulation in Python and is well-suited for both research and education. Medium install friction is typical for scientific packages with compiled extensions and is not a barrier.

Install

qutip on PyPI

pip

pip install qutip

uv

uv add qutip

poetry

poetry add qutip

Installing qutip

Before you install

Medium install friction due to compiled extensions across multiple platforms (wheels provided for Python 3.11–3.14 on macOS, Linux, Windows, and ARM architectures). Active maintenance with a release 10 days old; requires Python ≥3.11.

License in practice

BSD-3-Clause (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for research and classroom use.

Quickstart

pip install qutip

import qutip as qt

# Create a simple quantum state and evolve it
H = qt.sigmaz()  # Hamiltonian
psi0 = qt.basis(2, 0)  # Initial state
times = [0.0, 1.0]
result = qt.mesolve(H, psi0, times, [], [])  # Master equation solver

Requires Python ≥3.11; compiled extensions may require a C compiler if building from source rather than using pre-built wheels.

Verify before relying

  • Whether the package includes optional dependencies (mentioned as 'qutip[full]' in docs) and what they provide.
  • Performance characteristics for large-scale quantum systems or specific problem classes.
  • Whether Matplotlib is required for all use cases or only for graphical output.

Package facts

License BSD-3-Clause (permissive)
Python support supports the current Python release (>=3.11)
Install friction medium — platform-specific wheel
Runtime dependencies 3 — numpy, scipy, packaging
Maintenance actively maintained — 10 days since the last release
First released
Downloads 266,017/month — #8,311 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: qutip-5.3.1-cp311-cp311-macosx_10_9_x86_64.whl; qutip-5.3.1-cp311-cp311-macosx_11_0_arm64.whl; qutip-5.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; qutip-5.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; qutip-5.3.1-cp311-cp311-win_amd64.whl; qutip-5.3.1-cp311-cp311-win_arm64.whl; qutip-5.3.1-cp312-cp312-macosx_10_13_x86_64.whl; qutip-5.3.1-cp312-cp312-macosx_11_0_arm64.whl; qutip-5.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; qutip-5.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; qutip-5.3.1-cp312-cp312-win_amd64.whl; qutip-5.3.1-cp312-cp312-win_arm64.whl; qutip-5.3.1-cp313-cp313-macosx_10_13_x86_64.whl; qutip-5.3.1-cp313-cp313-macosx_11_0_arm64.whl; qutip-5.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; qutip-5.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; qutip-5.3.1-cp313-cp313-win_amd64.whl; qutip-5.3.1-cp313-cp313-win_arm64.whl; qutip-5.3.1-cp314-cp314-macosx_10_15_x86_64.whl; qutip-5.3.1-cp314-cp314-macosx_11_0_arm64.whl

Keywords: quantum, physics, dynamics

Development Status :: 5 - Production/StableIntended Audience :: Science/ResearchOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Scientific/Engineering

Tags

quantum system simulationopen quantum dynamicsquantum mechanics solverHamiltonian evolutionquantum toolbox pythonquantum state dynamicscollapse operator simulation
quantum-computingscientific-simulationphysics

More Scientific/Engineering packages