张量网络算法基础(五、TEBD算法和DMRG算法)


我是一只正在不断学习、希望早日成为小白的小小白,有什么错误欢迎大家批评指正,喜欢的请点个赞哦!
在这里插入图片描述

一、TEBD算法

定义

给定一个张量网络,把所有的指标求和,得出求和的结果。例如一个由 W×H 个张量组成的张量网络,如下图。该张量网络由三种不等价张量构成,该三种不等价张量为:在四个角上的张量为二阶张量、在边上的张量为三阶张量、在内部的张量为四阶张量。把该张量所有的指标求和,得出的结果是一个标量。

在这里插入图片描述

TEBD(time-evolving block decimation)算法为一种基于矩阵乘积态的、近似收缩张量网络的数值算法。要是忘记了什么是矩阵乘积态,戳这里:矩阵乘及态

TEBD算法是从处于边界的张量构成的MPS开始,一行一行或一列一列地收缩张量网络的算法。以下图的收缩为例,把张量网络沿水平方向从中间分成两部分,右图以下部分为例,下边界的张量也就是橙色的部分组成一个长度为W的MPS态,我们把它记为 ∣ φ D 0 ⟩ \left| { {\varphi }^{ { {D}_{0}}}} \right\rangle φD0,中间的每一层张量也就是蓝色的部分构成作用在 ∣ φ D 0 ⟩ \left| { {\varphi }^{ { {D}_{0}}}} \right\rangle φD0上的算符,记为 ρ ^ \hat{\rho } ρ^。看到这再结合之前学过的多体算符作用到多体态上的内容,有没有思绪万千?我们继续往下看。
在这里插入图片描述

TEBD的做法就是把上面这一层一层的张量 ρ ^ \hat{\rho } ρ^和MPS态 ∣ φ D 0 ⟩ \left| { {\varphi }^{ { {D}_{0}}}} \right\rangle φD0进行收缩,如下图所示。每收缩一层就会产生一个新的MPS态,整个下半部分收缩的结果为另一个MPS态,记为 ∣ φ D ⟩ \left| { {\varphi }^{D}} \right\rangle φD,易得
∣ φ D ⟩ = ρ ^ H 2 − 1 ∣ φ D 0 ⟩ \left| { {\varphi }^{D}} \right\rangle \text{=}{ {\hat{\rho }}^{\frac{H}{2}-1}}\left| { {\varphi }^{ { {D}_{0}}}} \right\rangle φD=ρ^2H1φD0

在这里插入图片描述
下半层同理,类似地定义 ∣ φ U ⟩ =( ρ ^ T ) H 2 − 1 ∣ φ U 0 ⟩ \left| { {\varphi }^{U}} \right\rangle \text{=(}{ {\hat{\rho }}^{T}}{ {)}^{\frac{H}{2}-1}}\left| { {\varphi }^{ { {U}_{0}}}} \right\rangle φU=(ρ^T)2H1φU0,所以整个张量网络收缩的结果为
Z = ⟨ φ U ∣ φ D ⟩ = ⟨ φ U 0 ∣ ρ ^ H − 2 ∣ φ D 0 ⟩ Z=\left\langle { {\varphi }^{U}} \right.\left| { {\varphi }^{D}} \right\rangle \text{=}\left\langle { {\varphi }^{ { {U}_{0}}}} \right|{ {\hat{\rho }}^{H-2}}\left| { {\varphi }^{ { {D}_{0}}}} \right\rangle Z=φUφD=φU0ρ^H2φD0

一切看起来都那么的简单,但是如果我们只进行收缩其它什么操作都没有,那么们我们就会遇见一个问题,每次收缩都会使MPS态的辅助指标扩大D倍( ρ ^ \hat{\rho } ρ^水平方向指标的维数),所以此时需要引入MPS的最优裁剪,设置截断维数 χ \chi χ,如下图的操作。也就是在收缩的过程中,我们收缩一层,得到一个新的MPS态,通过中心正交形式计算MPS纠缠谱,将多于截断维数的奇异值和对应的奇异向量进行裁剪,最后将辅助指标的维数裁剪为 χ \chi χ

注意:这种收缩、裁剪的方式很重要,后面的学习还会涉及,理解还不够透彻可以再回顾下上篇博客有关MPS的内容TT分解和MPS态
在这里插入图片描述

TEBD算法计算一维格点模型基态

考虑N个自旋构成的一维海森堡模型:
H ^ = ∑ ⟨ i , j ⟩ H ^ i j , H ^ i j = ∑ α = x , y , z s ^ i α s ^ j α \widehat{H}=\sum_{\langle i, j\rangle} \widehat{H}_{i j}, \quad \widehat{H}_{i j}=\sum_{\alpha=x, y, z} \hat{s}_{i}^{\alpha} \hat{s}_{j}^{\alpha} H =i,jH ij,H ij=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值