QCLAB is an object-oriented MATLAB toolbox for creating, representing and simulating
quantum circuits. QCLAB can be used for rapid prototyping and testing of
quantum algorithms, and allows for fast algorithm development and discovery.
QCLAB provides I/O through openQASM making it compatible with quantum hardware.
Furthermore, QCLAB can draw circuit diagrams to the MATLAB command window
and save the circuit diagrams to LaTeX source files. Please refer to the
examples/
directory for example use cases.
The QCLAB Toolbox is implemented using MATLAB object oriented functionalities and is compatible with MATLAB R2020b or newer.
-
Clone repository:
git clone https://github.com/QuantumComputingLab/qclab.git
-
Add all files from qclab directory to MATLAB path to install QCLAB:
addpath(qclabroot); savepath;
-
Run tests in MATLAB:
cd test/ runTests.m
-
Generate documentation with doxygen. Requires doxygen and doxymatlab. Adjust tags
FILTER_PATTERNS
andFILTER_SOURCE_PATTERNS
indoxygen/Doxyfile.dox
to localm2cpp.pl
script.cd doc/doxygen/ doxygen Doxyfile.dox
- Daan Camps (Lawrence Berkeley National Laboratory) - [email protected]
- Sophia Keip (FernUniversität in Hagen) - [email protected]
- Roel Van Beeumen (Lawrence Berkeley National Laboratory) - [email protected]
The QCLAB project is supported by the Laboratory Directed Research and Development Program of Lawrence Berkeley National Laboratory under U.S. Department of Energy Contract No. DE-AC02-05CH11231.
QCLAB Copyright (c) 2021, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy). All rights reserved.
If you have questions about your rights to use or distribute this software, please contact Berkeley Lab's Intellectual Property Office at [email protected].
NOTICE. This Software was developed under funding from the U.S. Department of Energy and the U.S. Government consequently retains certain rights. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, distribute copies to the public, prepare derivative works, and perform publicly and display publicly, and to permit others to do so.