01 基本资料
QC simulators是一个现代C++ 11量子计算程序库。代码提供了CMakeLists.txt和vs2017的工程文件。依赖eigen开源库,并且支持OpenMP。
资料:https://quantiki.org/wiki/list-qc-simulators
开源代码:https://github.com/vsoftco/qpp.git
基本环境:
eigen官网:http://eigen.tuxfamily.org/index.php?title=Main_Page
下载最新稳定版本压缩包:
http://bitbucket.org/eigen/eigen/get/3.3.5.zip
加压到自己的指定目录D:\git\eigen3.3.5
下载最新的qpp代码。
cd d:\git
git clone https://github.com/vsoftco/qpp.git
cd qpp
##02 编译运行
CMakeLists.txt支持Clang,不支持vs。提供了单独的vs项目文件。
用vs2017打开d:\git\Quantum\qpp\VisualStudio\VisualStudio.sln
文件。
修改每个工程的include属性中的eigen引用路径,或者把自己下载的eigen3.3.5解压到c盘根目录 c:\eigen。
工程==>属性==>C/C++>常规>附加包含目录:C:\eigen
修改为自己的eigen解压路径,比如:D:\git\eigen3.3.5
。
把默认启动项修改为测试项qpp_testing。
编译运行。运行结果如下:
#03 用例代码研究
项目核心代码再 qpp\include下面,基本都是头文件。
qpp项目是一个基本使用demo。
qpp\examples下面提供了很多用例。研究代码应该从这些用例开始。
比如:我们可以注释掉qpp工程中qpp.cpp中的main函数
//int main()
//{
// std::cout << "Hello, Quantum++!\nThis is the |0> state:\n";
// std::cout << disp(st.z0) << '\n';
// std::cin.get();
//}
然后引入一个 qpp\examples
中的用例到项目中。比如:quantum_operations.cpp。然后在cpp文件中引入
#include "stdafx.h"
头文件;
并且禁用4996警告。
#pragma warning(disable : 4996)
设置端点,编译运行,如下:
如有错误之处,欢迎批评指正。QQ群:579809480。