量子蒙卡SSE演算法是什麼?
12-30
我只是個小本科生,對於SSE連入門都算不上,這個回答權當是拋磚引玉,還請各位有經驗的前輩給出更加準確的回答。
〇、簡介
Stochastic Series Expansion(SSE)是一種處理自旋體系和玻色子系統的量子蒙特卡洛演算法。如果只是想大致的了解SSE是什麼和它可以處理什麼問題,可以直接跳到最後總結的部分。可能有些不做數值的同學對於數值計算的幾種常用方法不是很熟悉,我就先簡單的介紹一下:
在複雜的量子多體問題中,特別是強關聯體系,一般的解析方法,例如平均場,並不能得到令人信服的結論;另一方面,由於系統粒子數的增多會導致整個系統的維度指數級的增加,例如計算系統的配分函數:一、蒙卡權重公式
對玻爾茲曼係數進行泰勒展開可以得到: 選定一組完備基配分函數可以寫作:為了簡便的計算矩陣元,對哈密頓量進行分解:其中標記算符的種類,標記算符具體作用在哪些格點上面。對於大多數沒有符號問題(Sign Problem)的系統,總可以保證對於任意的基矢,有
配分函數現在的形式為:為了進行實際的計算,必須對展開的階數進行截斷,使之變為有限的求和。此外,假設截斷的階數為,對於的展開項,加入個恆等算符,記為。這樣對於每階展開,都有相同數量的算符矩陣元,配分函數可以寫成統一的求和形式: 注意此時的可以看作是非恆等算符的數目。如果將個態和個算符的特定組合看作是系統的一個狀態(configuration),記為,則配分函數可以寫成下面的形式:由配分函數的這種形式可以得到:如果把 看作是系統處於狀態下的權重,就可以進行類似於經典蒙特卡洛模擬的過程,對於某一個算符,它的系綜平均為:即按照算符在系統某個狀態下的值以為權重進行蒙卡取樣。
二、蒙卡取樣方式一般而言,蒙卡取樣只要滿足細緻平衡條件(Detailed Balence)和遍歷性(Ergodicity)都是可行的,但是也要考慮狀態更新(Update)的效率,這就要求取樣的方式要精心的設計,很多時候要設計一些整體更新的方法(Global Update)。這是一個非常subtle的問題,也是量子蒙卡一個很重要的難點。SSE的一大優勢就是對常見的格點模型有很高效的整體更新方法,但是在這裡展開的話免不了長篇大論,我在這裡提供一些參考文獻,如果有疑問的話歡迎和我私下討論。- Loop Update for Heisenberg Model, Phys. Rev. B 59, R14157(R) (1999)
- Directed-Loop Update for XXZ Model, Phys. Rev. E 66, 046701 (2002)
- Cluster-Loop Update for Ising Model, Phys. Rev. E 68, 056701 (2003)
- XY Model/J-K Model, Phys. Rev. E 72, 026702 (2005)
此外,Prof. Anders Sandvik教授的個人主頁上有自旋1/2海森堡模型的FORTRAN代碼Programs,我自己也用C++實現了絕大多數模型,歡迎大家交流。
三、可以計算的物理量除了通過系統的狀態可以直接得到的物理量,例如磁化強度,關聯長度,之外- SSE可以相當高效的計算系統的能量。
- SSE可以很方便的計算系統的Spin Stiffness。
- SSE還可以計算系統的Topological Entanglement Entropy。(其實這個我不是非常的了解,可以參考Prof. Roger Melko的論文Topological entanglement entropy of a Bose-Hubbard spin liquid : Nature Physics : Nature Research,Phys. Rev. B 82, 100409(R) (2010)以及該論文的參考文獻)
四、總結
Stochastic Series Expansion(SSE)是一種處理不含阻挫(Frustration)自旋體系和玻色子系統的量子蒙特卡洛演算法,通過對量子統計中玻爾茲曼係數泰勒級數展開的方式進行蒙特卡洛取樣。現在主要的用途是計算二維格點模型,例如它們的相變過程和各個態的特性。目前SSE可以實現對於XXZ/Heisenberg model, XY/t-J model, Ising model, J-Q model的計算,可以很高效的計算系統的能量,關聯長度,Spin Stiffness等物理量。SSE已經成功的處理了很多有關量子自旋體系的問題,例如給出了Deconfined Critical Point存在的可能性,而且最近也有一些很重要的進展http://science.sciencemag.org/content/352/6282/213。目前我了解到在該領域比較活躍的人物:
北美:Anders Sandvik(Boston University)Roger Melko(PI/ University of Waterloo)國內:Daoxin Yao(中山大學)Wenan Guo(北京師範大學)Ling Wang(北京科學計算中心)另外給出一些學習SSE以及QMC很好的參考資料:- https://arxiv.org/abs/1101.3281 Sandvik寫的一個Lecture Notes
- http://physics.bu.edu/~sandvik/programs/ssebasic/ssebasic.html Sandvik主頁上關於海森伯模型計算的說明,寫的比較詳細
- 講蒙卡取樣方式那部分中提到的幾篇論文
- World-line and Determinantal Quantum Monte Carlo Methods for Spins, Phonons and Electrons Assaad關於World Line和DQMC的綜述,雖然寫的比較難懂,但是值得參考。
不過最好的學習方式還是自己去實現某一個模型。
暫時只想到這麼多,答案裡面肯定有很多疏漏,希望各位批評指正。
希望這些可以幫到題主。推薦閱讀:
※為什麼感性負載容易產生電弧?
※量子計算機具體結構、如何產生控制量子態?
※在沒有電力供應的情況下,如果要給筆記本充電,如何製作出來一台發電機?
※如何評價墨子號量子科學實驗衛星實現 1203 公里量子糾纏?
※熵與溫度有什麼關係?