Lindbladmpo
A matrix-product-operators solver for the dynamics of interacting qubits modeled by a Lindblad master equation, written in C++ and wrapped with an easy-to-use Python interface.
Install / Use
/learn @qiskit-community/LindbladmpoREADME
Introduction
This package contains a solver simulating the time evolution of an open quantum system of coupled two-level qubits, modeled by a Lindblad master equation.
The code uses matrix-product-state (MPS) and matrix-product-operator (MPO) data structures, implemented in C++ (using the ITensor library) for maximizing the performance with multithreaded computations, and wrapped by a Python layer with an easy-to-use interface and rich plotting features. The solver integrates in fixed time steps the Markovian master equation for the density matrix,
\frac{\partial}{\partial t}\rho = -\frac{i}{\hbar}[H,\rho]+\mathcal{D}[\rho].
The solver supports various initial states and observables, with the Hamiltonian and dissipator terms having time-independent coefficients;
{H}/{\hbar} = \sum_{i}\frac{1}{2}\left(h_{z,i}\sigma_i^z + h_{x,i}\sigma_i^x + h_{y,i}\sigma_i^y\right) + \frac{1}{2}\sum_{i}^N\sum_{ j\neq i}^N \left(J_{ij}\sigma^x_i \sigma^x_{j} + J_{ij}\sigma^y_i \sigma^y_{j} + J_{ij}^z \sigma^z_i \sigma^z_{j}\right) ,
\mathcal{D}[\rho] = \sum_i g_{0,i}\left(\sigma_i^+ \rho\sigma_i^- - \frac{1}{2} \{\sigma_i^- \sigma_i^+,\rho\}\right) + \sum_i g_{1,i}\left( \sigma_i^-\rho \sigma_i^{+}-\frac{1}{2}\left\{\sigma_i^{+}\sigma_i^-,\rho\right\}\right) + \sum_i g_{2,i} \left(\sigma_i^z \rho\sigma_i^z - \rho\right).
How to cite: The following paper introduces the solver and presents a research performed using this solver:
H. Landa and G. Misguich, Nonlocal correlations in noisy multiqubit systems simulated using matrix product operators, SciPost Phys. Core 6, 037 (2023).
Verifying numerical simulations: The above paper also explains in detail how to construct and verify numerical results with multiqubit simulations. We recommend users of the package to familiarize themselves with different approaches to verify their numerical simulations, such as those explained in this paper. The sources used to perform this research are included in the detailed examples.
Further research using the solver:
Dissipative Dynamics of Graph-State Stabilizers with Superconducting Qubits, Liran Shirizly, Grégoire Misguich, Haggai Landa, arXiv:2308.01860, Phys. Rev. Lett. 132, 010601 (2024) with open-source code in https://github.com/haggaila/graph-state-dynamics
A solvable model for graph state decoherence dynamics, Jérôme Houdayer, Haggai Landa, Grégoire Misguich arXiv:2305.17231
Note that the C++ binaries of the solver must be built locally - see the installation guide.
For more information, tutorials, and detailed examples check the documentation:
Table of Contents
- Installation guide
- Tutorial: Solving the Lindblad dynamics of a qubit ring (go here for a basic example)
- Background and literature on the solver method
- Supported model
- Python interface (API documentation of the Python input, output, and call interface)
- Simulation examples (advanced Python examples for research using the solver)
- C++ solver interface (only relevant for an advanced, low-level usage)
- C++ code structure (only relevant for contributing to the C++ code)
Related Skills
node-connect
349.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.7kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
