ATAT 使用

介绍

  • ATAT 官网manual pdfATAT • User Forum(论坛不活跃)

  • 最早开发 CE 的工具,现在使用 ATAT 大多是其 mcsqs 模块,用其处理 CE 的不多(ECI 拟合算法默认为最小二乘法,拟合速度较慢,已有文献中的构型计算数最多也是在 3000 以内)

  • ATAT 模块

    • mmaps (MIT Multicomponent Ab initio Phase Stability code);maps 的多主元(multicomponent)版本
    • memc2 (Multicomponent Eazy Monte Carlo Code);emc2 的多主元版本
    • phb (PHase Boundary code);没有多主元版本;其他工具可以处理多主元体系
    • cvmclus (Cluster Variation Method CLUSter generator code)
    • genstr:枚举结构
    • mcsqs
    • gensqs
    • corrdump

ATAT 和 ICET 枚举得到的结构是一一对应的(相同)

How to use SQS for disordered materials


安装

  • 前提条件:需要有 tcsh/csh Shell

  • 下载、解压安装包

1
2
3
4
5
6
7
8
# 稳定版本
wget http://alum.mit.edu/www/avdw/atat/atat3_36.tar.gz

# 开发版本 有 mmaps -fa=bayesian
wget http://alum.mit.edu/www/avdw/atat/atat3_48.tar.gz

tar -xzvf atat3_48.tar.gz
mv atat atat-348
  • 修改 makefile 中的 BINDIRmake mpi 可以修改 MPICXXMPICXX=mpiicc 会报错)
1
2
3
4
5
BINDIR=$(PWD)/bin/

# for MPI: limited implementation at this point
# MPI 实现有限
MPICXX=mpic++ -DATAT_MPI
  • 编译、安装
1
2
3
4
make       # g++ 版本
make mpi # MPI 版本

make install

使用

工具

1
2
str2poscar < str.out > POSCAR
str2cif < str.out > str.cif
1
enum.x input.file

使用 mmaps 构建 CE

  • 输入文件:lat.in 和 vasp.wrap(类 VASP 的 INCAR 文件中的参数;通常少于 10 行)

image.png

image.png


  • 运行
1
2
3
4
5
6
7
mmaps -d &  # 所有参数均使用默认值; & 使其在后台运行
mmaps -l=lat.in -t=1

mmaps -fa=bayesian # 使用 bayesian 算法
mmaps -l=lat.in -t=1 -fa=bayesian

src/mrefine_skel.c++ # -fa=bayesian 源代码

image.png

1
2
3
4
5
# 执行 VASP 计算
runstruct_vasp &

# 启动任务管理器检测队列情况
pollmach runstruct_vasp

image.png


  • 预期输出文件:
1
2
3
4
5
6
7
8
9
10
11
fit.out

predstr.out

gs.out

eci.out

gs_str.out

clusters.out

image.png

image.png


  • 分析、绘制
1
mmapsrep  # 从 mmaps 得到的 *.out 数据中分析绘制;调用 gnuplot

image.png

image.png


其他

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 定义 coordinate system 
[a] [b] [c] [alpha] [beta] [gamma]
# 或
[ax] [ay] [az]
[bx] [by] [bz]
[cx] [cy] [cz]
# 定义 lattice vectors
[ua] [ub] [uc]
[va] [vb] [vc]
[wa] [wb] [wc]
# 定义 atom positions 和 types
# 空位用 Vac 代替
[atom1a] [atom1b] [atom1c] [atom1types]
[atom2a] [atom2b] [atom2c] [atom2types]

lat.in 文件格式示例

1
2
3
4
5
6
7
8
9
10
11
12
13
# FCC Cu-Au 体系
3.8 3.8 3.8 90 90 90
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
0 0 0 Cu,Au

# BCC 多主元体系
3.31 3.31 3.31 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,Al,Nb,Mo,Zr

vasp.wrap 文件格式示例

1
2
3
4
5
6
7
8
9
10
11
# vasp.wrap
[INCAR]
PREC = high
ISMEAR = 1
SIGMA = 0.1
NSW=41
IBRION = 2
ISIF = 3
KPPRA = 1000
USEPOT = PAWPBE
DOSTATIC

str.out 文件格式

1
2
3
4
n/str.out
Same format as the lattice file, except that
-The coordinate system is always written as 3x3 matrix
-Only one atom is listed for each site.

已有构型、能量数据,如何只进行拟合:准备好 lat.in + n/str.out + n/energy 三种文件,之后直接运行 maps 或 mmaps

image.png

image.png

image.png


1
Unable to read structure xxx due to geometric incompatibilities with the lattice.

maps.out

1

image.png