qutip
QuTiP: The Quantum Toolbox in Python
Decision gist · record as of 2026-08-14
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.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python ≥3.11; compiled extensions may require a C compiler if building from source rather than using pre-built wheels.
- 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 · maintenance · safety
BSD-3-Clause (permissive) — BSD-3-Clause (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for research and classroom use.
last release 2026-08-04 (10 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 266,017 downloads/mo, #8,311 on PyPI
Alternatives
Verify before relying
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- 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.
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 on it.
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
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.
Requires Python ≥3.11; compiled extensions may require a C compiler if building from source rather than using pre-built wheels.
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
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 packagesnumpyscipypackaging |
| 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 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: Science/ResearchOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Scientific/Engineering |
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
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “open quantum dynamics”
- qutipQuTiP simulates the dynamics of closed and open quantum systems using…
- cudensitymat-cu13cuDensityMat provides GPU-accelerated density matrix operations for…
- quimbQuimb provides Python tools for quantum information and many-body…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also openfermion · cudensitymat-cu13 · qiskit · quimb · attoworld · qiskit-terra · mqt.qcec · qualang-tools · cirq · tidy3d