Fortran + Gnu 批量计算
这篇博客主要介绍如何利用Fortran与Gunplot结合进行批量计算,主要针对模型研究时连续改变某个参数,批量的绘制想要结果图,这可以节省很多的时间,主要是在利用Fortran计算的时候,将相应参数绘图的gnuplot绘图代码写入相应文件,之后进行快速执行.{:.info}做模型研究的时候,通常会调节一个模型的很多参数来研究这些参数变化时某些量是如何演化的,这就涉及到批量计算绘图的问题,我是习惯用Fortran了,因为计算速度比较快,而且自己也比较熟悉了,结合gnuplot可以快速的将不同数据对应的结果进行作图.这里的有些内容可以参考做数值计算好用的软件及杂项整理这篇中的内容,废话不多说,直接上代码进行解释. Fortran + Gnuplot...
Non-Hermitian介绍
这里整理了一下之前组会介绍非厄米的PPT,之前一次自己想在非厄米中做点工作,就去学习了一下基本的知识,但中间因为一些原因搁置了,最近就将之前学习的内容整成完整的PPT,方便自己之后再进行学习.{:.info} PPT PPT使用Latex制作的,源代码可以点击这里下载 参考1.Edge States and Topological Invariants of Non-Hermitian Systems 2.Non-Hermitian Chern Bands 3.Non-Hermitian Physics 公众号相关内容均会在公众号进行同步,若对该Blog感兴趣,欢迎关注微信公众号。{:.info} Email yxliphy@gmail.com
Topological insulators with inversion symmetry
这里整理一下当拓扑绝缘体存在时间反演对称之后,$\mathcal{Z}_2$拓扑不变量可以只通过在时间反演不变动量点$\Gamma_i$计算宇称,这极大的简化了$\mathcal{Z}_2$的计算,而且在材料计算中也有很重要的作用. 首先通过时间反演极化这篇博客,先了解了时间反演不变的系统中,可以通过定义$\mathcal{Z}_2$拓扑不变量来表征系统的拓扑性质,但是真实的计算$\mathcal{Z}_2$的过程中会涉及到复杂的规范选择问题,而且通常这个规范是不容易找到的,如果系统存在反演对称时,$\mathcal{Z}_2$的计算就会得到极大的简化. $\mathcal{Z}_2$ invariant with inversion symmetry假设系统存在一个反演中心${\bf r}=0$,且满足反演对称性 [\mathcal{H},P]=0\qquad H(-{\bf k})=PH({\bf k})P^{-1}\qquad P\rvert {\bf r},s_z\rangle=\rvert {\bf -r},s_z\rangle这里${\bf r}$是三维空间坐标,$s_z$表示自旋,因为自旋是赝矢量,所以在空间反演下是不会改变的. 当系统存在时间反演时贝利矢势满足$\mathcal{F}({\bf -k})=-\mathcal{F}({\bf k})$,存在空间反演时$\mathcal{F}({\bf -k})=\mathcal{F}({\bf k})$,贝利曲率为$\nabla_k\times \mathcal{A}({\bf k})$ \mathcal{A}({\bf k})=-i\sum_{n=1}^{2N}\langle u_{n,{\bf k}}\rvert\nabla_k\rvert u_{n,{\bf k}}\rangle这里需要对所有的占据态求和$2N$,从上面可以知道,当同时存在空间反演与时间反演时$\mathcal{F}({\bf k})=0$,则可以选择一个全局连续的”横场”规范$\mathcal{A}({\bf k})=0$. 在任意规范下,考虑一个$2N\times 2N$的矩阵 v_{mn}({\bf k})=\langle u_{m,{\bf k}}\rvert P\Theta\rvert u_{n,{\bf...
晓看天色暮看云
忙里偷闲的时光.{:.info}
VASP+Phonopy计算声子谱
这篇博客是我学习声子谱计算的一些笔记,因为通常在判断一个体系是否具有稳定性的时候,需要计算其声子谱,最近也在慢慢摸索第一性计算的相关工具和知识,就一起整理出来. Phonopy 安装VASP的安装这里就不多说了,可以参考VASP编译安装这篇博客中的内容,这里主要先整理如何安装Phonopy, 完全参考的是官网上的教程,从官网上的安装教程来看,最好是先安装好Ananconda,关于Ananconda的安装可以参考做数值计算好用的软件及杂项整理这篇博客中的内容.在安装好了Ananconda之后,开始安装Phonopy1conda install -c conda-forge phonopy我是在Linux服务器上安装的,所以在安装Ananconda与Phonopy时都是以root用户进行的,中间只会简单的进行库函数的更新与Phonopy的安装,过程耗时非常少,耐心等待几分钟即可. 自洽首先在计算声子谱的时候,要先保证完成了结构优化,因为我对结构优化还不是很熟悉,所以我在这里整理的只是如何正确的完整声子谱计算的整个流程,我是利用一个已知的结构,在自洽计算的结果上进行声子谱计算的.{:.warning}下面是我做自洽计算的VASP输入文件 INCAR 1234567891011121314151617181920212223242526272829303132333435363738394041424344Global ParametersISTART = 1 (Read existing wavefunction; if there)ISPIN = 2 (Spin polarised DFT)ICHARG = 2 (Non-self-consistent: GGA/LDA band structures)LREAL = .FALSE. (Projection operators: automatic)ENCUT = 400 (Cut-off energy for plane wave basis set, in eV)PREC = Normal (Precision level)LWAVE = .TRUE. (Write...
时间反演极化
满足时间反演不变的体系, Chern数为0, 但是可以通过$Z_2$拓扑不变量描述, 任然可以通过一个物理图像来理解这个不变量和某一种极化之间的对应关系, 这里整理一下时间反演极化与$Z_2$拓扑不变量之间的联系. 虽然存在时间反演不变时, Berry曲率是个奇函数, 对BZ的积分为0, 但是任然可以通过$Z_2$拓扑不变量进行描述, 这里主要整理一下如何通过时间反演极化, 将一个具体的物理图像和$Z_2$拓扑不变量联系起来.{:.info} 考虑一个1D能带结构, 它是具有$\frac{1}{2}$自旋满足时间反演对称的系统, 此时可以不用在考察整个BZ, 而只需要考虑半个BZ即可, 另外一半可以通过时间反演联系起来. 体系存在时间反演对称性时, 能带总是成对出现的, 系统整体的性质可以通过只考虑布里渊区中Kramers对中的一支即可. 时间反演对称将$k$的能带$\alpha$变换到$-k$的能带$\beta$,这里的$\alpha,\beta$是Kramers对,它们之间会相差一个位相因子 \rvert u^\alpha_{-k,a}\rangle=e^{i\chi_{k,a}}T\rvert u^\beta_{k,a}\rangle\label{2}时间反演操作算符$T$作用后 T\rvert u^\alpha_{-k,a}\rangle=Te^{i\chi_{k,a}}T\rvert u^\beta_{k,a}\rangle=e^{-i\chi_{k,a}}T^2\rvert u^\beta_{k,a}\rangle=-e^{-i\chi_{k,a}}\rvert u^\beta_{k,a}\rangle所以可以得到 \rvert u^\beta_{-k,a}\rangle=-e^{-i\chi_{-k,a}}T\rvert u^\alpha_{k,a}\rangle从上面可以看出, 在$\rvert u_{k,n}\rangle=\sum_mU_{mn}\rvert u_{k,m}\rangle$变换下它们并不是规范不变的表示,为了计算的目的, 将要找到一个规范不变的表示进行计算. 首先对时间反演不变Kramers对中的每一支来计算计算极化 P^s=\frac{1}{2\pi}\int_{-\pi}^{\pi}dkA^s(k)\qquad...