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。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐