以Ammonia为例,基本翻译自:https://atztogo.github.io/phonopy/procedure.html#tutorial.

1. 结构优化. 输入文件如下:

INCAR
!System settingsSYSTEM = AmmoniaPREC   =  accurate    low, normal, accurateISTART =      0     job   : 0-new  1-cont  2-samecutICHARG =      2     charge: 0-INIWAV 1-CHGCAR 2-atom 10-nonselfISPIN  =      1     spin polarized? 1:no 2:yesINIWAV =      1     0-jellium 1-rand!Electronic RelaxationENCUT  =   200.0 eVNELM   =   1000     max e SCNELMIN =      2     min e SCNELMDL =     -5     non-SC +:every -:firstEDIFF  = 1.0E-6     stopping-criterion for ELMLREAL  =   Auto     real-space projectionALGO   =   fast     normal:38(D) fast:38-48(RMM) all:58 damped:53!IMIX = 4!AMIX = 0.1!BMIX = 0.0001!WC = 1000!INIMIX = 1!MIXPRE = 1!MAXMIX = -45!Ionic relaxationEDIFFG = -0.0005    stopping-criterion for IOM +:energy -:forceNSW    =     500    number of steps for IOM!NBLOCK =      1     inner block ionic cfg-XDATCAR, scale T!KBLOCK =   1000     outer block PCF-PCDAT,DOS-DOSCARIBRION =      2     ionic relax: 0-MD 1-static 2-CG 3-dampedMDISIF   =      2POTIM  =   1.0     time-step for ionic-motion!TEBEG  =  600.0!TEEND  =  600.0     temperature during runSMASS  =     -1     -3:micro -2:const -1:scaled >=0:Nose mass!DOS related values:!EMIN   =  10.00!EMAX   = -10.00     energy-range for DOS!NEDOS = 300ISMEAR =      0     1,2:metal -5,0:sem/insSIGMA  =   0.05     broadening in eV!RWIGS  = -1.0 -1.0 -1.0!NBANDS = 10       actual number of bands in calculation!Write flags!NWRITE =      2     long runs use 0 or 1LWAVE  = .FALSE.     write WAVECARLCHARG = .FALSE.     write CHGCARLVTOT  = .FALSE.    write LOCPOT, local potentialLELF   = .FALSE.    write electronic localiz. function (ELF)!LORBIT = 11!LAECHG = .TRUE.!LADDGRID = .TRUE.!Parallel flagsNPAR   =      8     # of nodesLPLANE =  .FALSE.LSCALU = .FALSE.LSCALAPACK = .FALSE.POSCAR
Ammonia_rlx
1.05.1305  0.0  0.00.0 5.1305 0.00.0 0.0 5.1305N H
4 12
Cart1.0789441   1.0789441   1.07894411.4863058   4.0515558   3.64419413.6441941   1.4863058   4.05155584.0515558   3.6441941   1.48630581.9095721   1.3477823   0.57102461.9942253   3.2209279   3.91303233.1362746   0.6556779   3.78271764.5594753   4.4748221   1.21746761.3477823   0.5710246   1.90957211.2174676   4.5594753   4.47482213.2209279   3.9130323   1.99422530.5710246   1.9095721   1.34778230.6556779   3.7827176   3.13627464.4748221   1.2174676   4.55947533.9130323   1.9942253   3.22092793.7827176   3.1362746   0.6556779KPOINTS
Automatic mesh
0
MP5  5  50  0  0--------------------------------------------------------------------------------

由于声子对结构优化比较敏感,这儿的 PREC=accurate.

2. 构建优化过的单胞

1 cp CONTCAR POSCAR

Ammonia_rlx                             1.00000000000000     5.1304999999999996    0.0000000000000000    0.00000000000000000.0000000000000000    5.1304999999999996    0.00000000000000000.0000000000000000    0.0000000000000000    5.1304999999999996N    H 4    12
Direct0.2173355638189437  0.2173355638189437  0.21733556381894370.2826644166897822  0.7826644166897819  0.71733556381894370.7173355638189437  0.2826644166897822  0.78266441668978190.7826644166897819  0.7173355638189437  0.28266441668978220.3844041525928144  0.2739307062557181  0.12569294443649810.3743070360722207  0.6155958474071853  0.77393070625571810.6256929444364983  0.1155958474071856  0.72606927425300750.8743070360722203  0.8844041525928147  0.22606927425300770.2739307062557181  0.1256929444364981  0.38440415259281440.2260692742530077  0.8743070360722203  0.88440415259281470.6155958474071853  0.7739307062557181  0.37430703607222070.1256929444364981  0.3844041525928144  0.27393070625571810.1155958474071856  0.7260692742530075  0.62569294443649830.8844041525928147  0.2260692742530077  0.87430703607222030.7739307062557181  0.3743070360722207  0.61559584740718530.7260692742530075  0.6256929444364983  0.11559584740718560.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+000.00000000E+00  0.00000000E+00  0.00000000E+00

3. 构建超胞

1 python /home/zjyx/softwares/phonopy-1.10.10/bin/phonopy --vasp -c POSCAR-unitcell -d --dim="4 4 4"

在这一步后,将会产生若干个POSCAR-??? 文件,可以用以下script将其移动到对应的文件夹内以方便后续计算。同时,也需在当前文件夹内准备好待用的其他输入文件。需要改的参数有INCAR里的IBRION, NSW和KPOINTS里的mesh points.

script:

 1 #! /usr/bin/env python
 2
 3 '''
 4     mv all POSCAR-??? files to a new created disps directories, and
 5     copy other inputs files to the all subdirectries
 6 '''
 7
 8 import os
 9 import sys
10 from shutil import copy, move
11
12 other_inp = ['INCAR', 'KPOINTS', 'POTCAR']
13
14 n_disp = 1
15 while True:
16     if os.path.isfile('POSCAR-%03d'% n_disp):
17         n_disp += 1
18     else:
19         break
20
21 if not os.path.isdir('disps'):
22     os.mkdir('disps')
23
24 for i in range(n_disp):
25     ''' disps-000 to store perfect supercell without perturbations'''
26     crt_dir = 'disps'+'/'+'disp-%03d'%i
27     if not os.path.isdir(crt_dir):
28         os.mkdir(crt_dir)
29     for _file in other_inp:
30         copy(_file, crt_dir)
31     if i != 0:
32         copy('POSCAR-%03d'%i, crt_dir+'/'+'POSCAR')
33     else:
34         copy('SPOSCAR', crt_dir+'/'+'POSCAR')

INCAR:

!System settingsSYSTEM = AmmoniaPREC   =  normal    low, normal, accurateISTART =      0     job   : 0-new  1-cont  2-samecutICHARG =      2     charge: 0-INIWAV 1-CHGCAR 2-atom 10-nonselfISPIN  =      1     spin polarized? 1:no 2:yesINIWAV =      1     0-jellium 1-rand!Electronic RelaxationENCUT  =   200.0 eVNELM   =   1000     max e SCNELMIN =      2     min e SCNELMDL =     -5     non-SC +:every -:firstEDIFF  = 1.0E-6     stopping-criterion for ELMLREAL  =   Auto     real-space projectionALGO   =   fast     normal:38(D) fast:38-48(RMM) all:58 damped:53!IMIX = 4!AMIX = 0.1!BMIX = 0.0001!WC = 1000!INIMIX = 1!MIXPRE = 1!MAXMIX = -45!Ionic relaxationEDIFFG = -0.0005    stopping-criterion for IOM +:energy -:force!NSW    =       1    number of steps for IOM!NBLOCK =      1     inner block ionic cfg-XDATCAR, scale T!KBLOCK =   1000     outer block PCF-PCDAT,DOS-DOSCARIBRION =      -1     ionic relax: 0-MD 1-static 2-CG 3-dampedMDISIF   =      2POTIM  =   1.0     time-step for ionic-motion!TEBEG  =  600.0!TEEND  =  600.0     temperature during runSMASS  =     -1     -3:micro -2:const -1:scaled >=0:Nose mass!DOS related values:!EMIN   =  10.00!EMAX   = -10.00     energy-range for DOS!NEDOS = 300ISMEAR =      0     1,2:metal -5,0:sem/insSIGMA  =   0.05     broadening in eV!RWIGS  = -1.0 -1.0 -1.0!NBANDS = 10       actual number of bands in calculation!Write flags!NWRITE =      2     long runs use 0 or 1LWAVE  = .FALSE.     write WAVECARLCHARG = .FALSE.     write CHGCARLVTOT  = .FALSE.    write LOCPOT, local potentialLELF   = .FALSE.    write electronic localiz. function (ELF)!LORBIT = 11!LAECHG = .TRUE.!LADDGRID = .TRUE.!Parallel flags!NPAR   =      8     # of nodesLPLANE =  .FALSE.LSCALU = .FALSE.LSCALAPACK = .FALSE.

KPOINTS:

Automatic mesh
0
MP1  1  10  0  0

4. 用VASP做超胞计算.

5. 计算Force Sets

 1 #! /usr/bin/env python
 2
 3 # calculate force costant matrix
 4
 5 import os
 6 import sys
 7
 8 i = 1
 9 width = 3
10
11 if os.path.isfile('qe.in'):
12     mode = 'pwscf'
13     post_filename = '.00.out'
14     pre_pathname = "supercell"
15     supercell_dir = "supercells"
16 elif os.path.isfile('rmg.in'):
17     mode = 'rmg'
18     post_filename = '.in.00.log'
19     pre_pathname = "supercell"
20     supercell_dir = "supercells"
21 elif os.path.isfile('SPOSCAR'):
22     mode  = 'vasp'
23     post_filename = 'vasprun.xml'
24     pre_pathname = "disp"
25     supercell_dir = "disps"
26 else:
27     print "Error: unitcell not found, exit."
28     sys.exit(1)
29
30 force_cmd = 'python /home/zjyx/softwares/phonopy-1.10.10/bin/phonopy --%s -f'% mode
31
32 while True:
33     path_tmp = '{pre_pathname}-{0:0{width}}'.format(i,
34                                              pre_pathname=pre_pathname,
35                                              width=width)
36     pathname = supercell_dir + ('/%s'% path_tmp)
37     if os.path.exists(pathname):
38             i += 1
39             force_cmd += ' %s/%s'%(pathname, post_filename)
40     else:
41         break
42
43 try:
44     os.system('%s'% force_cmd)
45 except:
46     print "Error: cannot operate command, exit."
47     sys.exit(1)
48 else:
49     print ('Force sets done!\n')
50     print ('    total files: %d\n'%(i-1))

这样当前目录下会出现FORCE_SETS文件。

6. 计算Band structure

 1 #!/bin/bash
 2
 3 # plot band structure
 4
 5 if [ -e rmg.in ]; then
 6     mode=rmg
 7     input=rmg.in
 8 elif [ -e qe.in ]; then
 9     mode=pwscf
10     input=qe.in
11 elif [ -e POSCAR-unitcell ]; then
12     mode=vasp
13     input=POSCAR-unitcell
14 else
15     echo -e "No default unitcell file found.\n"
16     exit 1
17 fi
18
19 python /home/zjyx/softwares/phonopy-1.10.10/bin/phonopy --$mode -c $input -s -p band.conf
20
21 exit 0

其中band.conf 文件如下:

DIM = 4 4 4
PRIMITIVE_AXIS = 1.0 0.0 0.0  0.0 1.0 0.0  0.0 0.0 1.0
BAND = 0.0 0.0 0.0  0.0 0.5 0.0  0.5 0.5 0.0  0.5 0.5 0.5
BAND_LABELS = \Gamma X M R

转载于:https://www.cnblogs.com/zjyx/p/6614383.html

VASP+FDM+Phonopy 计算声子过程相关推荐

  1. Quantum Espresso + Phonopy 计算声子过程

    以Ammonia (N4H12) 为例. 第一步: 松弛结构/ Geometry Optimization Input: &controlcalculation = 'relax',nstep ...

  2. VASP+phonopy计算声子群速与数据导出

    经验分享 在材料计算中声子谱是一种常用手段来评估材料的动力学稳定性,声子谱的计算大多采用vasp+phonopy的计算方式.通常在声子计算中声子群速等也具有一定的分析意义,笔者在翻阅一些相关内容的经验 ...

  3. vasp phonopy 计算声子(有限位移法)

    1.扩胞并分别做静态计算 先对原始数据进行静态计算 得到较为准确的结构CONTCAR 在完成静态计算的文件夹下创建phono文件夹 mkdir phono 将CONTCAR文件复制到phono文件夹下 ...

  4. 基于VASP+phonopy+shengbte计算声子相干的热学性质

    声子相干的热学性质在计算材料领域有着非常重要的地位,我们可以通过第一性原理计算得到任一种晶体的热力学性质,但是很多小伙伴尤其是初学者还比较陌生,本文介绍基于DFT计算与声子相关的性质,是用VASP+p ...

  5. vasp 模拟退火_VASP 计算问题小结

    本文转载自博主一个人就是一个叠加态,有部分删减修改,文中对相关概念方法做了详细的总结,留坑待填... 1. 第一原理计算的一些心得 1. 第一性原理 第一性原理其实是包括基于密度泛函的从头算和基于Ha ...

  6. phonopy计算模式格林艾森常数

    ​经验分享 格林艾森常数(Grüneisen parameters)为表示声子非简谐效应的参数.phonopy计算模式格林艾森参数方式如下. http://phonopy.github.io/phon ...

  7. VASP载流子有效质量计算

    VASP载流子有效质量计算 在计算完能带之后,可以对载流子(电子+空穴)的有效质量进行计算,考察其光电性质.以Si的能带结构为例,如图所示,其价带顶位于高对称点Gamma处,导带底大约位于X处. 由图 ...

  8. 设计计算机程序时 要考虑计算的过程,算法和程序设计练习题复习课程(6页)-原创力文档...

    算法和程序设计练习题 一.选择题: 1.使用计算机解题的步骤,以下描述正确的是:__ B__. A .正确理解题意→设计正确算法→寻找解题方法→编写程序→调试运行 B .正确理解题意→寻找解题方法→设 ...

  9. Java中在时间戳计算的过程中遇到的数据溢出问题

    背景 今天在跑定时任务的过程中,发现有一个任务在设置数据的查询时间范围异常,出现了开始时间戳比结束时间戳大的奇怪现象,计算时间戳的代码大致如下. package com.lingyejun.authe ...

最新文章

  1. LeetCode简单题之只出现一次的数字
  2. CUDA Samples: image normalize(mean/standard deviation)
  3. jmeter启动警告项解决方案
  4. 为什么“我”只给iOS做了应用?
  5. 实践 config drive - 每天5分钟玩转 OpenStack(170)
  6. Intel格式和ATT格式汇编区别
  7. matlab 实现行归一化和列归一化
  8. 在基于数据库的任务派发系统中利用SQL Server 2005 中新的查询提示来提高系统的效率...
  9. 面试今日头条Android开发,结束时我问了面试官是否有女朋友,结果你猜?
  10. liunx 系统下面安装jdk
  11. 异步将远程链接上的内容(图片或内容)写到本地--微信头像
  12. Python基础—文件操作
  13. PHP调用MYSQL存储过程实例
  14. 三菱plc控制步进电机实例_三菱FX3U的plc通过手摇轮,如何手动控制步进电机
  15. Linux高级应用(三)液晶屏显示图片
  16. c#打印星星图案。打印的行数n由键盘输入,下面例图中 n=5
  17. java计算机毕业设计列车票务信息管理系统源程序+mysql+系统+lw文档+远程调试
  18. 在vop中重构transform节点(一)
  19. Gitte (https://gitee.com/) 常用git指令--实例
  20. IOS 图片拉伸不变形

热门文章

  1. 精髓,深入浅出剖析11个Zookeeper知识点,没有很难
  2. 响铃:重拾经典设计,见了真章的15如何带领魅族突围?
  3. (指针处理)有一字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串。
  4. 容器环境JVM内存配置最佳实践
  5. 3D视觉应用案例:法兰件/引擎盖/控制臂上料,轮毂抓取上架
  6. 蓝牙电话之PBAP协议的连接
  7. Mifare One 非接触式IC卡介绍
  8. QGis二次开发基础 -- 根据属性查询要素
  9. 2023新华为OD机试题 - 单词接龙(JavaScript) | 刷完必过
  10. 弘辽科技:淘宝平台如何处理商家sku作弊问题?有哪些处罚?