mcsqs编译

 

1.官网地址:

http://www.brown.edu/Departments/Engineering/Labs/avdw/atat/

 

2. atat编译环境

Intel Compiler /GNU Compiler  + MPI Compiler

g++&g++

1.sudo apt install gcc

2. sudo apt-get install build-essential

build-essential是一整套工具,gcc,libc等。通过“g++ -v”可以查看g++版本。

修改安装目录 vim makefile——BINDIR=/home/zhaoxi/bin

报错:/bin/csh cannot be found.   

安装 csh,sudo apt-get install csh,报错提示:E: Unable to locate package

解决办法:

 sudo apt-get update

 sudo apt-get install csh tcsh

make all 正常运行

make install 安装

修改home下  .bashrc 文件

末尾增加路径:export PATH=$PATH:/home/zhaoxi/bin

source .bashrc  #编译路径,注意source后加空格

3.编译atat

tar atat3_23.tar.gz
cd atat
vim makefile
  #BINDIR=$HOME/bin
  BINDIR="/home/zhaoxi/bin"  # 修改安装目录

  #for g++ compiler on all platforms
  #CXX=g++
  CXX=icpc # 修改编译器

  #for MPI: limited implementation at this point
  #MPICXX=mpiCC -DATAT_MPI
  MPICXX=mpicxx -DATAT_MPI # 修改编译器

make all
make install
————————————————
版权声明:本文为CSDN博主「MrZhengGang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sowhatgavin/article/details/71157641

 4.mcsqs生成

   rndstr.in:与SQS最终形状无关,只是提供所有必要的对称输入信息

   corrdump -l=rndstr.in -ro -noe -nop -clus -2=1.1 

 #(-2的取值应大于原子最邻近距离,小于次临近距离,否则系统报错:(Segmentation fault(core dumped))

mcsqs -n XX

 修改参数后正常运行

5. example

   以5元bcc合金为例

   rndstr.in文件:

1 1 1 90 90 90
0.5  0.5  0.5
0.5 -0.5  0.5
0.5  0.5 -0.5
0    0    0   Ti=0.30,Zr=0.20,Nb=0.20,Ta=0.20,Sn=0.10

 运行代码:

corrdump -l=rndstr.in -ro -noe -nop -clus -2=1.3 -3=1.4

-2的取值取决于the second nearest neighbor distance is 1.0 , and the third nearest neighbor distance is 1.5^.5=1.2 . So, the cutoff should be any value between 1.0 and 1.2 if the first two shells of nearest neighbors are to be considered for pair correlation functions.

Similar to the “ -2 ” parameter, there are “ -3 ” and above parameters for triplet correlation functions or more.

生成sqs,运行代码:

mcsqs -n 20

输入文件bestsqs.out:

1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
0.500000 1.500000 -1.500000
-0.000000 1.000000 2.000000
2.000000 -1.000000 0.000000
1.000000 2.000000 0.000000 Zr
0.500000 1.500000 0.500000 Ta
2.500000 1.500000 0.500000 Nb
0.500000 0.500000 0.500000 Nb
1.000000 1.000000 1.000000 Ti
1.500000 1.500000 -0.500000 Zr
1.500000 0.500000 1.500000 Ti
0.500000 1.500000 -0.500000 Sn
0.500000 0.500000 -0.500000 Zr
1.000000 1.000000 0.000000 Ta
1.500000 1.500000 0.500000 Nb
1.000000 -0.000000 -0.000000 Ti
1.500000 0.500000 0.500000 Ti
2.000000 1.000000 1.000000 Sn
2.000000 1.000000 -1.000000 Nb
2.000000 -0.000000 1.000000 Ti
1.000000 1.000000 -1.000000 Zr
1.500000 0.500000 -0.500000 Ta
2.000000 1.000000 -0.000000 Ta
2.000000 -0.000000 -0.000000 Ti

运行 ./sqs2poscar bestsqs 生成POSCAR

POSCAR
3.2
  0.50000000  1.50000000 -1.50000000
  0.00000000  1.00000000  2.00000000
  2.00000000 -1.00000000  0.00000000
  Zr  Ta  Nb  Ti  Sn
   4   4   4   6   2
Direct
  1.00000000  0.75000000  0.25000000
  1.00000000  0.50000000  0.50000000
  0.40000000  0.05000000  0.15000000
  0.80000000  0.10000000  0.30000000
  0.60000000  0.70000000  0.10000000
  0.60000000  0.45000000  0.35000000
  0.60000000  0.20000000  0.60000000
  0.80000000  0.60000000  0.80000000
  1.00000000  1.00000000  1.00000000
  0.20000000  0.40000000  0.20000000
  0.80000000  0.85000000  0.55000000
  1.00000000  0.25000000  0.75000000
  0.40000000  0.80000000  0.40000000
  0.20000000  0.90000000  0.70000000
  0.20000000  0.15000000  0.45000000
  0.40000000  0.55000000  0.65000000
  0.20000000  0.65000000  0.95000000
  0.40000000  0.30000000  0.90000000
  0.80000000  0.35000000  0.05000000
  0.60000000  0.95000000  0.85000000

  

备注:

1. 查能带、布里渊区、对称性,原胞晶胞转换 AFlow - Automatic - FLOW for Materials Discovery (aflowlib.org)

2. 关于晶格常数的问题

 

  不论原胞如何取,其体积是不变的,晶格常数可以用体积计算;

posted @ 2021-07-21 16:31  ZHAO_X  阅读(2391)  评论(0)    收藏  举报