加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Python量子包QuTip安装及其它

(2017-06-10 19:48:17)
标签:

python

qutip

latex

quantum

gate

QuTip是用于模拟开放量子系统动力学的开源库。QuTip库依赖于的Numpy、Scipy和Cython的数值包。此外,matplotlib提供了图形输出。http://qutip.org/。
python安装比较容易,需要选择一个版本,python2或python3,稍微麻烦的是Scipy。下面的介绍最终成功运行Qutip教程中的实例。
环境:win10,VS2015社区版VC。(注意32位系统使用X86版本)。
1.下载 Anaconda3-4.4.0-Windows-x86_64,https://www.continuum.io/downloads。安装好后基本所需的都有了,包括jupyter-notebook等。
安装QuTip前:conda config --append channels conda-forge
然后:conda install qutip。
QuTip到此就装好了,可以画个布洛赫球看看。深入学习那就研究文档吧。如果你习惯使用eclipse集成开发环境,只需安装PyDev插件,配置Python解释器即可。
以下就为了那个量子门而备。
2.安装Perl。
3. 安装Latex,我选择的版本是:basic-miktex-2.9.6236-x64。完毕后运行MikTex的包管理程序,找到包pdfcrop并安装,可以查看文件夹\MiKTeX 2.9\scripts\中是否有pdfcrop这个文件夹。之后运行MikTex的设置程序,点击Refresh FNDB刷新。
4.安装ImageMagick:版本ImageMagick-6.9.8-9-Q16-x64-static。
5.安装gswin32c.exe:  版本gs921w32.exe。
运行python,输入Toffoli gate to CNOT那段代码,并运行,输出:
'rm' 不是内部或外部命令,也不是可运行的程序或批处理文件。
This is pdfTeX, Version 3.14159265-2.6-1.40.18 (MiKTeX 2.9.6350 64-bit)
entering extended mode
'rm' 不是内部或外部命令,也不是可运行的程序或批处理文件。
PDFCROP 1.38, 2012/11/02 - Copyright (c) 2002-2012 by Heiko Oberdiek.
==> 1 page written on `qcirc-tmp.pdf'.
'mv' 不是内部或外部命令,也不是可运行的程序或批处理文件。
并没有显示门电路,经过分析Eclipse错误提示定位在Qutip的circuit_latex.py。'rm','mv'是UNIX文件操作命令,这段代码并不支持windows。为此,需要把它修改为相应的DOS命令。如下:
def _latex_compile(code, filename="qcirc", format="png"):
    """
    Requires: pdflatex, pdfcrop, pdf2svg, imagemagick (convert)
    """
    os.system("del -f %s.tex %s.pdf %s.png" % (filename, filename, filename))

    with open(filename + ".tex", "w") as file:
        file.write(_latex_template % (_qcircuit_latex_min, code))

    os.system("pdflatex -interaction batchmode %s.tex" % filename)
    os.system("del -f %s.aux %s.log" % (filename, filename))
    os.system("pdfcrop %s.pdf %s-tmp.pdf" % (filename, filename))
    os.system("move %s-tmp.pdf %s.pdf" % (filename, filename))

    if format == 'png':
        os.system("convert -density 100 %s.pdf %s.png" % (filename, filename))

        with open("%s.png" % filename, "rb") as f:
            result = f.read()
注意第60行也修改了一下。打开jupyter_notebook,输入QuTip教程中实例Toffoli gate to CNOT代码并运行,门电路完整显示。

另台电脑: windows7 x86,VC++ for Python 2.7 ,按以上步骤安装
运行那段代码,错误提示:
     This is pdfTeX, Version 3.14159265-2.6-1.40.18 (MiKTeX 2.9.6350)        
     entering extended mode                                                  
     PDFCROP 1.38, 2012/11/02 - Copyright (c) 2002-2012 by Heiko Oberdiek.   
     ==> 1 page written on `qcirc-tmp.pdf'.                                  
     移动了         1 个文件。                                                        
     无效参数 - 100      
大不同,兼容DOS命令。这个100是convert命令的参数,这个x86版imagemagick不直接使用convert,而是magick convert。无效参数是系统磁盘格式转换那个DOS命令的错误提示。解决办法只需修改第60行为:
os.system("magick convert -density %s %s.pdf %s.png" % (100,filename,filename))
就Ok了。        
                                              

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有