1、1 第10章 复杂体系的O(N)算法 1。引言 2。O(N)算法的物理基础 量子力学局域性 3。O(N)算法的基本策略 4。DFT框架下的O(N)算法 5。计算流程和主要步骤 2 1。引言 Order-N算法或O(N)算法的必要性 目前,DFT第一性原理计算方法,如fplapw, fplmto, Car- Parrinello, 从头赝势以及许多量子化学计算方法,对于由大 量原子组成的复杂体系已经不能满足需要。 原因是以上传统方法的数值运算工作量(操作数)Nat3。 即体系的原子数增加一倍,必须消耗8倍cpu时间。 研究计算操作数与体系原子数成比例的方法,即O(N)算法对 于研究复杂体系十分迫
2、切。 本章着重与分析O(N)算法的物理基础、实现O(N)算法的基 本策略以及把O(N)算法纳入DFT框架的方法。 3 2。O(N)算法的物理基础 量子力学局域性 1.Kohn的“近视原理(near-sightedness principle)” (Kohn, PRL 76, 3168 (1996) Kohn证明了如下原理:多电子体系的某部分的物理性质 ,不因远离它的区域有势的变化而受影响。 r v(r) r 考虑一个量子多粒子系,在r处的静态物理性质为F,它依赖 于r周围线度为的体积内的坐标,为de Broglie波长量级。 Kohn证明,F对于r处势的变化v(r)是不敏感的。所以, r处的势
3、保持不变,但比更远的区域会变。 v(r)=0 4 量子力学局域性 例:大多数量子力学静态性质有局域性: 1.分子或固体中的化学键 2.局域态密度 3.电荷密度分布 4.局域磁矩 5.结合能,。 它们都只依赖于几个近邻原子“壳层”内的局域环境。 2。局域性的描述 主要方案:采用局域化的Wannier函数和密度矩阵方法。 Wannier函数的衰减行为: 有带隙的绝缘体(1D, 3D, 无序,团簇,缺陷和表面),都有 指数衰减行为 5 局域性的描述 一般采用广义Wannier函数(GWF,wi, 非周期系 的局域Wannier函数)构造密度矩阵: N是体系每个自旋的电子数。因为wi是局域化的,将按|
4、r-r|衰 减。对于绝缘体和金属, |r-r|都表现出指数衰减率。T0时, 衰减甚至更迅速。 在DFT下,核心问题是使成为一个投影算符,其作用是把它 投射到占有态空间。这在数学上等价于要求 必须是等幂的 (Idempotent),即要求其本征值在(0,1)区间。 如何把一个接近等幂的密度矩阵 变为等幂矩阵将在下面 介绍。 (10.1) 6 3。O(N)算法的基本策略 如何实现O(N)算法? vi vi 根据Kohn近视原理,把体积为V的体系分成N个子体积vi(i-1.N) vi3. 在vi处取体积为vi的区域,它包括vi和一个缓冲区,然后 解出每一个vi的性质。如果vivi,那么vi内的性质是
5、相当精确 的。由于计算每一个vi的工作量完全独立于体系的大小,只要知 道vi内的资料即可。整个体系的大小vi的数目N, 于是得到线性 标度算法。 V=N*vi 7 O(N)算法的基本策略 考虑到处理波函数和密度矩阵的具体要求 ,已经提出了多种O(N)算法方案: 1. Fermi算符展开方法(FOE) 2. Fermi算符投影方法(FOP) 3. 分治(Divide and conquer, D&C)方法 4. 密度矩阵最小化方法(DMM) 5. 轨道最小化方法(OM) 6. 优化基密度矩阵最小化方法(OBDMM) 采用Chebyshev多 项式将DM展开 杨伟涛教授 与DFT密切结合 8 Mc
6、Weeny净化算法 McWeeny提出一种将接近等幂的密度矩阵 变换为更接 近等幂的密度矩阵的算法: 用和 分别表示和 的本征值,这两个本征值的关系 是 可见 所以,这种映射迭代将驱使本征值趋于0或1,由此得到符合 等幂要求的。 (10.2) (10.3) 9 LNV密度矩阵最小化方法 Li, Nunes, Vanderbilt (LNV)提出DMM方法,文 献上常称LNV方法。它所采用的净化方法有完全 不同的方式。其线性标度是通过对密度矩阵的空 间截断得到的。 Ref. Li, Nunes, Vanderbilt : Phys. Rev. B47, 10891 (1993) LNV方法已经在
7、TB方法的框架下得到广泛应用。 采用化学势固定使总能最小的方法。(后来发现, 固定化学势方法在实际计算上并不是最方便的)。 Ref. Nunes, Vanderbilt : Phys. Rev. B50, 17611 (1994) 10 线性标度的HGG方法-1 HGG(Hernndez-Gillan-Goringe)方法属于自 洽第一性原理方法,并与LNV方法密切相关。 方法的特点: 1.基态的描述:把DFT中关于总能Etot是KS占有轨 道i 或电子密度的泛函,等价地表述为密度矩阵 的泛函。并要求密度矩阵是等幂的。 2.采用局域化支持函数(support function)i和 空有限的分
8、参数矩Lij来表示密度矩。 3.用分法求能关于支持函数和Lij 均最小。 HGG方法采用的是固定子数而不是固定化学 。算上更方便。 11 线性标度的HGG方法-2 用KS占有轨道定义密度矩阵 由Etot关于最小化求基态,条件是(r,r)为等幂及电子数固 定。即 可以应用McWeeny净化方法,使密度矩阵达到等幂要求。 对于实际的第一原理计算,初始的 必须做成可分离 形式,HGG用支持函数i和局域变分参数Lij表示为 和 (10.4) (10.5) (10.6) (10.7) 12 线性标度的HG方法-3 净化之后称为等幂的密度矩阵 上式矩阵K与L的关系是: K = 3LSL - 2LSLSL
9、S 是交叠矩阵 为了实现线性标度算法,要求: 1。支持函数i 0, 只在某局域空间范围(称为支持区)之内。 2。Lij 0,只有当相应的区域以 截断距离Rcut被分离时。 由于密度矩阵的衰减行为上述条件一般都能满足。 (10.8) (10.9) (10.10) 13 线性标度的HG方法-4 以下的步骤就是采用变分法,在电子数固 定的条件下,求总能关于支持函数和L矩阵 为最小,由此得到真正基态能量的上限。 目前的O(N)算法,仅限于基态性质的研究 。 14 4。DFT框架下的O(N)算法 以上基本原理的实际执行,可以在LDA近似下采用 赝势法。但是,是在实空间的网格点上计算。 以每一个原子为中心
10、,取半径为Rreg的球作为支持区 。每一个支持区包含一定数量v的支持函数,并且各 区的v都一样。 实际执行表明,支持函数的总数 0.5Nel(val)。 在原来的方法中,每一个支持函数i(r)都用它在该 区的网格点rl 上之值i(rl)表示。后来发现这一方法 在动能计算精度及不同的网格点总能出现不连续性 等问题。新方法中采用一种局域函数将i展开。 15 支持函数的表达式 支持函数用局域化的基函数展开,他们称这种基函数为“ 视点函数(blip function)”。 Rin是第i个原子的支持区内的视点网格点(blip-grid)的位置。 在实际计算中,对i的变分采用对bin的变分。 计算方法中的
11、一个关键部分是对在积分网格上一组rl点的i(r) 计算。这些计算结果将用于矩阵元的计算。 从blip-grid上bin之值变换为积分网格上i(r)之值的效率是 借助于将视点函数写成如下乘积实现的: 其中x, y, z 是r的直角坐标,(x)被选择用B-spline工作。 (10.11) (10.12) 16 DFT框架下的O(N)算法-2 主要计算公式: 其中,动能(对所有网格点求和): 其它三个能量全部依赖于rl 点上的电子密度 具体计算并不涉及特殊技巧,例如LDA交换关联能可对 求和得到。 (10.13) (10.14) (10.15) 17 DFT框架下的O(N)算法-3 通过变分法使总
12、能最小,在HGG方法中,采用共 轭梯度近似,涉及如下解析式: (10.16) (10.17) (10.18) (10.19) 18 以及 (10.20) (10.21) (10.22) (1023) 19 矩阵乘积中Hij是支持函数i 和j之间的 KS-Hamiltonian矩阵元。 线性标度来自支持函数的空间局域性。因 为支持函数之间的距离 超过某一截断距离时,H和S都将0。 20 DFT框架下的O(N)算法-4 用以上截断值到矩阵L上,Etot及其微商的 表达式中的所有矩阵都是稀疏矩阵。 稀疏矩阵的非0矩阵元的数目原子数(成 线性比例)。由此得到线性标度的算法。 O(N)算法正成为研究大原
13、子数复杂体系的 有力工具。 21 5。计算流程和主要步骤 1. 计算流程图 2. 主要计算步骤 22 1. General computational strategy . 计算E和dE/dL 选择L空间的搜索方向 E关于L最小化计算 检查E关于 L是否收敛 检查E关于 是攀眀愀瀀瀀栀琀洀氀冻洦栀浳5iwap前台访问/tag/lishixueshishime.html220.181.108.1080鵨崀礀眀愀瀀琀愀最焀椀猀栀椀稀栀椀渀愀栀琀洀氀冻栀5wap前台访问/tag/shandongchunkaoshuxuezhenti.html116.179.32.1050勈証鵨最眀愀瀀瀀栀琀洀氀冻栀
14、5Sqwap前台访问/p-3450885.html220.181.108.1150鵨%糓匀洀眀愀瀀瀀栀琀洀氀冻梊5Sqwap前台访问/d-3114459.html220.181.108.1870勈証鵨犰匀漀眀愀瀀瀀栀琀洀氀冻栀5Sqwap前台访问/p-3449765.html220.181.108.1020勈証鵨銰匀焀眀愀瀀瀀栀琀洀氀冼栀/Mg前台访问/p-3071587.html207.46.13.1450勈証鵨匀漀眀愀瀀瀀栀琀洀氀冼梊涒5Sqwap前台访问/p-3448955.html220.181.108.1740勈証鵨犰匀洀眀愀瀀瀀栀琀洀氀冼梊/Mi前台访问/p-3444734.htm
15、l220.181.108.860鵨焀褀唀猀攀爀愀渀愀最攀挀稀开琀漀渀最氀攀开爀攀猀甀氀琀愀猀瀀砀冼钊/Mi前台访问/d-3251948.html112.126.73.1290裴麔挀紀唀猀攀爀愀渀愀最攀挀稀开琀漀渀最氀攀愀猀瀀砀冼吅稀鐱/Ma前台访问/d-3452075.html49.7.20.840麔欀搀栀琀洀氀冼鐀/Mc前台访问/d-2878609.html49.7.21.1110麔挀搀栀琀洀氀冼开/Mi前台访问/d-2027979.html106.38.241.1740开搀栀琀洀氀冼堅/I_前台访问/p-24105.html49.7.21.1250挀瀀栀琀洀氀冼擲/So前台访问/order
16、-324014.html123.183.224.710%莠挀瀀栀琀洀氀冼/Mk前台访问/p-2919102.html123.183.224.1160勈証銰槬挀瀀栀琀洀氀冼/Ka前台访问/d-945006.html49.7.21.1270%莠愀瀀栀琀洀氀冼/Mi前台访问/p-3459812.html106.38.241.1050赠欀瀀栀琀洀氀冼擲/K_前台访问/p-134277.html49.7.21.660磍鯡愀瀀栀琀洀氀冼鄅悳/Mg前台访问/p-2192972.html207.46.13.1450勈証最瀀栀琀洀氀冼/Mc前台访问/p-3447190.html49.7.20.1580最茀眀愀瀀
17、漀漀欀刀攀愀搀愀猀瀀砀椀搀冼/Ic前台访问/d-84672.html116.23.65.1810糓椀瀀栀琀洀氀冼/y前台访问/c-00004-65-393779-0-0-0-0-9-0-1.html49.82.145.200最蔀眀愀瀀漀漀欀刀攀愀搀愀猀瀀砀椀搀冼/Mk前台访问/p-3461975.html121.226.149.1820勈証欀瀀栀琀洀氀冼5gwap前台访问/BookRead.aspx?id=3449765111.206.198.880最茀眀愀瀀漀漀欀刀攀愀搀愀猀瀀砀椀搀冼钒/Mi前台访问/p-2459465.html116.179.32.1400儹最茀眀愀瀀漀漀欀刀攀愀搀愀猀瀀
18、砀椀搀冼5ewap前台访问/BookRead.aspx?id=141360101.89.19.1970匀焀眀愀瀀瀀栀琀洀氀冼/Mk前台访问/p-3267040.html123.183.224.1610匀欀眀愀瀀搀栀琀洀氀冼諲5gwap前台访问/BookRead.aspx?id=3448266111.206.221.390勈証劰最茀眀愀瀀漀漀欀刀攀愀搀愀猀瀀砀椀搀冼/q前台访问/c-0-7-3310412-0-0-0-0-9-0-1.html49.74.23.2250勈証氛甀謀挀栀琀洀氀冼鍒/Mk前台访问/d-3392119.html111.202.101.1300眀鄀挀栀琀洀氀冼/前台访问/c-0000400004-1-118509-0-0-0-0-9-0-1.html114.239.63.1680衖甀褀挀栀琀洀氀冼舅悲炍/q前台访问/c-0-416-92131-0-0-0-0-2-0-1.html207.46.13.800匀焀眀愀瀀瀀栀琀洀氀冼瀀/Mk前台访问/p-2004968.html220.181.108.159