Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] adxh_v3_0.tar.gz(716 Kbytes)
Manuscript Title: QCWAVE - A MATHEMATICA QUANTUM COMPUTER SIMULATION UPDATE
Authors: Frank Tabakin, Bruno Juliá-Díaz
Program title: QCWAVE
Catalogue identifier: ADXH_v3_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 182(2011)1693
Programming language: Mathematica 7.0.
Computer: Any supporting Mathematica.
Operating system: Any operating system that supports Mathematica; tested under Microsoft Windows XP, Macintosh OSX, and Linux FC4.
Has the code been vectorised or parallelized?: Utilises Mathematica's (7.0 and 8.0) parallel computing feathures.
Keywords: Quantum computation, Mathematica, Quantum simulation, Quantum algorithms.
Classification: 4.15.

Does the new version supersede the previous version?: Yes. This version supersedes all prior versions of QDENSITY.

Nature of problem:
Simulation of quantum circuits, quantum algorithms, noise and quantum error correction.

Solution method:
A Mathematica package containing commands to create and analyze quantum circuits is upgraded and extended, with emphasis on state amplitudes. Several Mathematica notebooks containing relevant examples are explained in detail. The parallel computing feature of Mathematica is used to develop a multiverse approach for including noise and forming suitable ensemble averaged density matrix evolution. Error correction is simulated.

Reasons for new version:
The new version updates QDENSITY to run on Mathematica 7.0 and 8.0 and makes it compatible with our extension QCWAVE. QCWAVE emphasizes wavefunctions with efficient gate operations and also extends the code to use the parallel computing features of Mathematica 7.0-8.9. Circuit diagram and amplitude display are new features.
Dirac display of states is also provided.

Summary of revisions:
The revisions include working with state vectors and the implementation of efficient Op1, Op2 and Op3, one, two, three gate operators. Parallel processing is used to form a multiverse approach for simulating noise effects and error corrections in quantum operations. Drawing circuit diagrams and displaying amplitude evolution has been added. A simple Dirac display feature DForm has also been provided.

Running time:
The notebooks provided in the distribution package take only a matter of minutes to execute.