-
Notifications
You must be signed in to change notification settings - Fork 121
5. Brief description of the library's file structure
Vlad Gheorghiu edited this page Jan 24, 2022
·
10 revisions
A brief description of the Quantum++
file structure is presented below. The directories and
their brief descriptions are emphasized using bold fonts, as well as
the main header file of the library, include/qpp.h
.
File/folder name | Description |
---|---|
cmake/ |
CMake configuration files |
examples/ |
Usage examples |
include/ |
Header files |
include/MATLAB/ |
MATLAB support |
include/MATLAB/matlab.hpp |
Input/output interfacing with MATLAB |
include/classes/ |
Class definitions |
include/classes/circuits/ |
Support for quantum circuits |
include/classes/circuits/circuits.hpp |
Quantum circuit descriptions |
include/classes/circuits/engines.hpp |
Quantum engines, execute quantum circuit descriptions |
include/classes/codes.hpp |
Quantum error correcting codes |
include/classes/exception.hpp |
Exceptions |
include/classes/gates.hpp |
Quantum gates |
include/classes/idisplay.hpp |
Interface for stream extraction |
include/classes/init.hpp |
Initialization |
include/classes/layouts.hpp |
Qudit placement layouts |
include/classes/noise.hpp |
Quantum noise models |
include/classes/random_devices.hpp |
Random devices |
include/classes/reversible.hpp |
Support for classical reversible circuits |
include/classes/states.hpp |
Quantum states |
include/classes/timer.hpp |
Timing |
include/experimental/ |
Experimental/test functions/classes |
include/experimental/experimental.hpp |
Experimental/test functions/classes |
include/internal/ |
Internal implementation details |
include/internal/classes/ |
Internal class definitions |
include/internal/classes/iomanip.hpp |
Input/output manipulators |
include/internal/classes/singleton.hpp |
Singleton pattern via CRTP |
include/internal/util.hpp |
Internal utility functions |
include/constants.hpp |
Constants |
include/entanglement.hpp |
Entanglement functions |
include/entropies.hpp |
Entropy functions |
include/functions.hpp |
General purpose quantum computing functions |
include/input_output.hpp |
Input/output functions |
include/instruments.hpp |
Measurement functions |
include/number_theory.hpp |
Number theory functions (for native types) |
include/operations.hpp |
Quantum operations functions |
include/qpp.h |
Quantum++ main header file (includes others) |
include/random.hpp |
Randomness functions |
include/statistics.hpp |
Statistics functions |
include/traits.hpp |
Type traits |
include/types.hpp |
Type aliases |
libs/ |
Additional dependencies |
libs/pybind11/ |
pybind11 Python wrapping library |
pyqpp/ |
Python wrapper package for Quantum++ |
qasmtools/ |
OpenQASM parser |
stress_tests/ |
Partial stress tests against Qiskit and QuTiP |
unit_tests/ |
Unit testing via Google Test/Mock (source included) |
.appveyor/ |
AppVeyor continuous integration scripts |
.circleci/ |
CircleCI continuous integration configuration |
.clang_format |
clang-format configuration file |
.gitattributes |
git attributes configuration file |
.gitignore |
git configuration file |
.travis.yml |
Travis CI continuous integration config file |
CHANGES |
Cumulative modifications added by each version |
CMakeLists.txt |
CMake config. file for Quantum++ and unit tests |
CODE OF CONDUCT.md |
GitHub's code of conduct |
CONTRIBUTING.md |
GitHub's contributing rules |
Doxyfile |
Doxygen configuration file, needs Graphviz to be run |
INSTALL.md |
Installation guide, also available on the Wiki |
LICENSE |
MIT License |
README.md |
Detailed building/installing instructions |
VERSION |
Version number |
appveyor.yml |
AppVeyor continuous integration (Windows) config file |
prettyprint.sh |
Script for automatic code beautifier via clang-format
|
setup.py |
Installer setup for the pyqpp Python wrapper package |
Copyright (c) 2017 - 2024 softwareQ Inc. All rights reserved.