Simulation of quantum mechanics
Welcome
The latest news from libquantum | |
2013-01-29 | Release of libquantum 1.1.1 |
2010-03-20 | A Rydberg quantum simulator |
2008-09-09 | Release of libquantum 1.1.0 and 1.0.0 |
libquantum is a C library for the simulation of quantum mechanics, with a special focus laid to quantum computing. It started as a pure quantum computer simulator, but support for general quantum simulation has been recently added.
Quantum computing
Based on the principles of quantum mechanics, libquantum provides an implementation of a quantum register. Basic operations for register manipulation such as the Hadamard gate or the Controlled-NOT gate are available through an easy-to-use interface. Measurements can be performed on either single qubits or the whole quantum register.
General quantum simulation
Besides quantum computing, libquantum is able to compute the time-evolution of arbitrary Hamiltonians, including time-dependent ones. This is done via numerical integration of the Schrödinger equation. Computing the time-evolution for time-independent Hamiltonians via exact diagonalization is also possible.
Features
- Simulation of arbitrary quantum algorithms is possible
- High performance and low memory consumption
- Optional time-evolution using fourth-order Runge-Kutta or exact diagonalization, including optimizations for sparse Hamiltonians
- Decoherence support for realistic quantum computation
- Interface for quantum error correction (QEC)
- Supports the density operator formalism
- Implementations of Shor's factoring algorithm and Grover's search algorithm are included
- libquantum is available as Free Software under the terms of the GNU General Public License (GPL), version 3. See the file COPYING for further details.
Requirements
libquantum requires a C compiler with complex number support. The simulator has been reported to work on the following platforms:
- GNU/Linux (This is the main development platform)
- FreeBSD
- OpenBSD
- NetBSD
- Mac OS X
- HP Tru64 UNIX
- AIX
Awards
- Official SPEC CPU2006 benchmark
- Jugend forscht Baden-Württemberg 2003 runner-up
Authors
libquantum has been written by Björn Butscher and Hendrik Weimer. The authors can be contacted at libquantum@libquantum.de.