因为主题并非量子力学,所以这里只是简要介绍,更详细的内容可以买本书来看。然后还可以参考

@sym cheng

好久以前的Live(这篇文章大约是知乎Live刚出现的时候写的)

量子力学的基本假设

类似于其它的物理理论(比如分析力学的最小作用量原理),量子力学也有一些基本的假设:

原理一:描写微观系统状态的数学量是Hilbert (希尔伯特)空间中的矢量。相差一个复数因子的两个矢量,描述同一状态。我们用归一化的右矢量或左矢量表示系统的状态,这个希尔伯特空间称为态空间

原理二

  1. 描写微观系统的物理量是Hilbert空间中的Hermitian(厄米)算符,也就是说一个Hermitian算符就代表了一个微观系统的物理量
  2. 物理量所能取的值,是相应算符的本征值
  3. 物理量在状态中取各值的概率,与态矢量按照的归一化本征矢量的展开式中的系数(一般我们称为概率幅)的复平方成正比。

原理三

  • 微观系统中每个粒子的广义坐标(不理解换成直角坐标也行)下的位置算符,与相应的正则动量算符有下列对易关系: 其中当且仅当的时候为,其余时候都是都是
  • 粒子的自旋角动量算符各分量之间的对易关系为:,并且各分量与粒子的位置和动量算符都对易

原理四:微观系统的状态随时间变化的规律是薛定谔方程,这里是一个常数(实数),称为这个系统的Hamiltonian(哈密顿量)

原理五:描写全同粒子系统的态矢量,对于任意一对粒子的对调是对称的(对调前后完全相同)或者反对称的(对调前后差一个负号),前者称为玻色子,后者称为费米子。这里全同粒子系统是指由同一种粒子组成的系统,这些粒子每个都是一样的。

量子计算机的运行就是基于以上五个基本原理。关于基本原理是否正确,以及以上的称述方式是否严格我们不在这里讨论,在具体实现的时候我们更关心这些原理是否能够帮助我们预测微观系统的行为。毕竟对于量子力学的诠释,除了最经典的哥本哈根诠释,还有诸如流体力学诠释,Bohm理论(在非局域的情况下依然能用),随机诠释等等。我们还没有找到在实验中能直接否定它们的方法,所以目前来说信哪个是一种信仰...

从经典的哈密顿量到量子力学的哈密顿量

从经典的哈密顿量到量子力学的哈密顿量是有一些固定的方法的,我们在这里也不关心这背后的原理具体是什么,如果对这里感兴趣,可以参看本章的参考文献。这个具体的方法就是用算符替换经典系统里的动量,角动量等符号,比如在经典力学中的动量将被替换为动量算符

在量子计算中,我们暂时不关心量子力学到底是怎么回事儿(当然有一些人实际上也在利用量子计算机研究量子力学基础,这里就不展开了),我们更加关心的是,一个人造的微观(量子)结构如何按照预想的方式进行演化。除了我们熟悉的(可能现在还不那么熟悉的)解析的数学方法,数值计算往往是一个(相对)简单暴力直接的工具,很多时候很有用。所以首先先介绍一下怎么数值解一个含时的薛定谔方程。下面的代码将用Julia语言编写。

我们要求解的问题是这样的,有这样一个哈密顿量

其中是总的演化时间,是,我们将的本征矢量记为。这个系统的演化就满足薛定谔方程

而由于是这个Hilbert空间的本征矢量,总可以表示为它们的线性组合

注意这个Hamiltonian是不显含时间变量的,那么我们就可以分离变量,使得在很小的时间里,下面的式子成立

这是因为在很小的时间里,我们可以把随时间的变化忽略(当然这么说是不严格的),把看做常数就有

可以解得

所以对于这样一个问题,我们就可以用很小的来进行数值计算。代码如下

mutable struct QuSystem
    H::Function
    current_state::Vector
    current_time::Float64
    dt::Float64    function QuSystem(
    end
endfunction evolute!(sys::QuSystem)
    sys.current_state = expm(
    sys.current_time += sys.dt
end# 初态
initial_state = [1/sqrt(2), 1/sqrt(2)]
# 总的演化时间
T = 1e2
# 定义哈密顿量
Hamiltonian(t) = 0.5*[1 -1;-1 1]*(1-t/T)+[1 0;0 0]*t/T
# 构造这个量子系统,为了节约时间把dt设成1吧,这个步长没有明显的误差
qs = QuSystem(Hamiltonian, initial_state, dt=1.0)# 打印一下初态,看看初态是什么
@show qs.current_state#开始演化
for i = 1:1e2
    evolute!(qs)
end# 打印演化结束的态
@show qs.current_state

这是用Julia语言写的,因为中文文档比较落后,如果你不想看英文文档可以先看我写的这个比较简单的教程。

实际上,这只是数值求解微分方程的方法中最简单的一种,在JuliaQuantum开源组织的QuDynamics.jl中已经封装好了很多来自于ODE.jl和Expmv.jl的其它数值方法。这里就暂且不详细介绍了,等到后面介绍量子计算的模拟的时候具体说明。

原文发布时间为:2018-03-12
本文作者:罗秀哲
本文来源:创见,如需转载请联系原作者。

量子计算笔记|可能会涉及一点点高量的量子力学基础(一)相关推荐

  1. R语言使用dplyr包的group_by函数和summarise函数基于分组变量计算分析中涉及的所有协变量的均值(Difference in means of covariates)

    R语言使用dplyr包的group_by函数和summarise函数基于分组变量计算分析中涉及的所有协变量的均值(Difference in means of covariates) 目录

  2. 简明量子力学的学习 量子计算 笔记量子概念

    序 <量子力学>学习笔记 仅仅是摘要而已.大家要学习,可以去看老师的视频.链接在我另外一篇博客. 看完人都傻了,但是对量子的一些基本概念,特性有大致的了解.比如量子门,量子态,可观测量,本 ...

  3. 量子计算笔记序章---双缝实验

    量子力学及量子计算的学习笔记 自我学习入门笔记,是根据伯克利的教授在YouTube上的quantum mechanics & quantum computation系列的记录并扩展学习.笔者非 ...

  4. AI公开课:19.05.15施尧耘-达摩院量子实验室主任《量子计算:前景与挑战》课堂笔记以及个人感悟

    AI公开课:19.05.15施尧耘-达摩院量子实验室主任<量子计算:前景与挑战>课堂笔记以及个人感悟 导读         施尧耘1997年本科毕业于北京大学,后在普林斯顿大学取得计算机科 ...

  5. 量子计算:下一个大风口,还是一个热炒概念?

    量子计算作为一种前沿的技术,是近年来备受瞩目的新兴领域.你可以从以下维度谈谈你对这项新技术的看法.. 一.量子计算为何可能会成为一个风口?(其作用及重要性) 随着科技的不断进步,全球经济正在迈向一个全 ...

  6. 太多人关注,太少人理解,这就是“量子计算”

    <量子计算公开课:从德谟克利特.计算复杂性到自由意志>译后感. "将计算.物理.数学和哲学整合成一种连贯的世界图景的探索,可能永远不会结束." 图片来自网络,侵删 我在 ...

  7. 量子计算竞速时代,如何拨动时间的指针

    在摩尔定律逐渐失效的今天,我们该怎样看待量子计算的发展?科技巨头如何把控.跟踪量子计算的时代脉搏?下一个十年里,华为又如何更新知识结构,在量子浪潮中仍然屹立于前沿? 走近量子计算 量子计算(quant ...

  8. 量子计算:当前阶段仍属于热炒概念

    一.量子计算为何可能会成为一个风口? 量子计算是利用量子力学原理进行计算的新型计算方式.与传统的经典计算机不同,量子计算机利用量子比特(qubits)进行信息处理,由于量子比特可以处于叠加态,这使得量 ...

  9. 量子计算:揭开未来计算世界的面纱

    随着科技的飞速发展,计算能力的提升成为人们关注的焦点之一.而在这个领域中,量子计算正逐渐成为备受瞩目的新星.量子计算利用了量子力学的原理,与传统计算方式有着根本的不同.在传统计算中,信息以比特的形式表 ...

最新文章

  1. 【C++】C++11新增关键字详解
  2. OS / 线程哪些内容是私有的和共享的?
  3. 【Python面试】 说说Python模块主要分哪三类?
  4. IIS,apche,nginx,301域名重定向设置
  5. hdu 2821 Pusher (dfs)
  6. sdut 2074 区间覆盖问题(贪心)
  7. -bash: composer: command not found解决办法
  8. android 仿直播点赞,Android-DivergeView
  9. Jade/Pug模板引擎
  10. 吴恩达深度学习4.1练习_Convolutional Neural Networks_Convolution_model_StepByStep_1
  11. 智能语音识别系统-解决方案.pdf
  12. 实战案例:贷款分析之plotly VS ggplot2
  13. eclipse换炫酷主题
  14. 西门子PLC S7-200数字量扩展模块
  15. VIT实战总结:非常简单的VIT入门教程,一定不要错过
  16. qq分享提示设备未授权_友盟微信、QQ等分享提示未验证应用配置
  17. 利用requests库获取cookie的两种方式
  18. Java 代码精简之道 侵删
  19. 什么是单细胞?(一)
  20. Witt向量简介 §2.1:整数环Z关于p-进赋值的完备化的Z_p表示法

热门文章

  1. 报错:The Legacy Build System will be removed in a future release
  2. Python自动化操作PPT看这一篇就够了
  3. 基于Simulink的六足机器人运动控制仿真
  4. B站宣布收购网易漫画资产 加强ACG生态布局
  5. Apache Atlas 2.3.0 安装部署
  6. Python-Level1-day08:函数
  7. PostMessage与SendMessage区别
  8. 基于matlab进行一致性检验(ICC)
  9. FairyGUI-帧动画MoveClip
  10. 如何删除CSDN博客