一、总体思路

1)写入INCAR;
2)写入POSCAR,就是坐标文件;
3)写入KPOINTS文件,就是K点的选择;
4)写入POTCAR,写入POTCAR(找到势文件,然后按照POSCAR中的元素顺序把Cr和I元素的POTCAR写在一起)
命令如下:(会生成一个POTCAR的势文件)
cat Cr/POTCAR>>POTCAR
cat I/POTCAR>>POTCAR
提交脚本,运行。

二、POSCAR的生成

1.从晶体库中下载POSCAR文件或者先下载CIF文件在用VEST软件转换成POSCAR文件:

https://www.materialsproject.org/

http://aflowlib.org/

http://www.oqmd.org/

2.查到这个物质结构的文献,可从Gemlin和贝尔斯坦数据库得到文献的信息,
然后看这篇文章的Supporting Information,就能找到cif文件了。

3.我们需要得到VASP里计算CrI3所需的POSCAR,主要是晶格的基矢(原胞的三边)和基元中每个原子的位置。
一种方法是手写,根据实验上得到的晶格常数,如 Rhombohedral 惯用晶胞中的 a 和 c 值,去计算得到POSCAR里所需的各个数值。
不过这操作起来可能不太容易。另一种方法就是用已知的,同样的结构的晶格的 POSCAR 修改晶格常数的值来得到

晶体库下载文件及修改实例:
打开 Aflowlib.org 网站,点 advanced search,之后在元素周期表中选中 Bi 和 I 搜索化合物。从结果中找到了 Bi6I3,点开里面有很多有用的信息。
从中找到 VASP-POSCAR文件,下载下来得到 CONTCAR.relax.vasp 文件。可见,晶体点群的确是 Hexagonal Crystal family > Trigonal Crystal system > Rhombohedral Lattice system/Crystal Class.
有了 BiI3 的 POSCAR 以后还需要修改晶格常数得到 CrI3 的POSCAR。我们在最初的 Bi2I6 的 POSCAR 里加入两种元素,同时把 Bi 都改成 Cr;

第一步:将 CONTCAR.relax.vasp 文件拖入 VESTA 软件中,导出 .cif 文件 (File > Export Data > CIF File),得到 CONTCAR.relax.cif;
第二步:将 CONTCAR.relax.cif 拖入 Materials Studio 软件中,在这之前你需要先创建一个 project;
第三步:先把原胞改成惯用晶胞,Build > Symmetry > Find Symmetry > Impose Symmetry,点完之后就得到了惯用晶胞;
第四步:修改惯用晶胞的晶格常数,Build > Symmetry > Lattice Parameters (按照实验数据修改CrI3 惯用晶胞的 a , c );
第五步:将惯用晶胞改成原胞,Build > Symmetry > Rhombohedral Representation;
第六步:从MS导出成 cif 文件,如命名为 POSCAR.relax.cif;
第七步:将 POSCAR.relax.cif 重新拖入 VESTA,并导出成 .vasp 文件,这里有一个选择,Fractional 是分数坐标(以基矢为单位),Cartesian是直接数值直角坐标。

三、POTCAR的生成

找到势文件,然后按照POSCAR中的元素顺序把Cr和I元素的POTCAR写在一起
命令如下:(会生成一个POTCAR的势文件)
cat Cr/POTCAR>>POTCAR
cat I/POTCAR>>POTCAR

四、参考链接

https://www.jianshu.com/p/0d0ce69d701f

https://www.jianshu.com/p/7b2594358fc8

VASP学习笔记--简单的VASP运行实例:CrI3做非磁的优化的更多相关文章

  1. OGG学习笔记02-单向复制配置实例

    OGG学习笔记02-单向复制配置实例 实验环境: 源端:192.168.1.30,Oracle 10.2.0.5 单实例 目标端:192.168.1.31,Oracle 10.2.0.5 单实例 1. ...

  2. IIC驱动学习笔记,简单的TSC2007的IIC驱动编写,测试

    IIC驱动学习笔记,简单的TSC2007的IIC驱动编写,测试 目的不是为了编写TSC2007驱动,是为了学习IIC驱动的编写,读一下TSC2007的ADC数据进行练习,, Linux主机驱动和外设驱 ...

  3. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  4. python3.4学习笔记(十一) 列表、数组实例

    python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...

  5. VASP学习笔记--输入输出文件

    一.VASP 全称Vienna Ab-initio Simulation Package,是维也纳大学Hafner小组开发的进行电子结构计算和量子力学-分子动力学模拟软件包. 它是目前材料模拟和计算物 ...

  6. Android(java)学习笔记160:Framework运行环境之 Android进程产生过程

    1.前面Android(java)学习笔记159提到Dalvik虚拟机启动初始化过程,就下来就是启动zygote进程: zygote进程是所有APK应用进程的父进程:每当执行一个Android应用程序 ...

  7. Linux简易APR内存池学习笔记(带源码和实例)

    先给个内存池的实现代码,里面带有个应用小例子和画的流程图,方便了解运行原理,代码 GCC 编译可用.可以自己上网下APR源码,参考代码下载链接: http://pan.baidu.com/s/1hq6 ...

  8. HMM模型学习笔记(前向算法实例)

    HMM算法想必大家已经听说了好多次了,完全看公式一头雾水.但是HMM的基本理论其实很简单.因为HMM是马尔科夫链中的一种,只是它的状态不能直接被观察到,但是可以通过观察向量间接的反映出来,即每一个观察 ...

  9. Android(java)学习笔记103:Framework运行环境之 Android进程产生过程

    1. 前面Android(java)学习笔记159提到Dalvik虚拟机启动初始化过程,就下来就是启动zygote进程: zygote进程是所有APK应用进程的父进程:每当执行一个Android应用程 ...

随机推荐

  1. mysql 函数GROUP_CONCAT(temp.amount SEPARATOR ',')的用法

    mysql 函数GROUP_CONCAT(temp.amount SEPARATOR ',')的用法 使用场景:例如:想要查询用户的最喜欢购买的几种商品,这个时候就需要使用group_concat(字 ...

  2. java软件设计模式只单例设计模式

    概述 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计 ...

  3. python程序超时处理 timeout_decorator

    如下两个例子,实现对某个函数的超时处理(其实就是加了一个装饰器timeout): 成功例子: 代码: import time import timeout_decorator @timeout_dec ...

  4. VMware虚拟机中CentOS/redhat设置固定IP

    你的笔记本中的VMware中redhat或centOS系统,如果想在上面建站,而又如果你需要在家里和公司都能访问该站(至少希望你自己的笔记本能访问),那么就需要将虚拟机IP设置为固定IP了.以下介绍两 ...

  5. 安装Python包报错——ReadTimeoutError

    一.问题:安装python包的时候报错ReadTimeoutError——Read time out. 二.解决办法三种方法,一是切换下载源:二是下载相应平台的安装包后安装:三是下载源码编译安装:  ...

  6. RPC框架pigeon源码分析

    Pigeon是一个分布式服务通信框架(RPC),是美团点评最基础的底层框架之一.已开源,链接:https://github.com/dianping/pigeon 从接下来三个方面来分析pigeon的 ...

  7. 【CF896C】Willem, Chtholly and Seniorious

    ODT模板题,ODT适合随机数据下具有维护区间推平操作的序列维护题目,时间复杂度较为玄学.. 代码如下 #include <bits/stdc++.h> #define pb push_b ...

  8. 用java写一个死锁

    什么是死锁? 多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放.由于线程被无限期地阻塞,因此程序不可能正常终止. 不适当的使用“synchronized”关键词来管理线程对特定对象的访问 ...

  9. linux 上搭建sftp服务

    原文链接:https://www.cnblogs.com/yanduanduan/p/9046723.html sftp和ftp的区别 FTP是一种文件传输协议,一般是为了方便数据共享的.包括一个FT ...

  10. Nginx模块开发实验

    工作原理: 当nginx接到 一个http请求之后,会找通过查找配置文件,并在配置文件中找到相应的地址映射,该地址也叫location block,而location中配置的文件会启动 相应的bloc ...