24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 4157  |  回复: 17
【奖励】 本帖被评价12次,作者nkleof增加金币 10.8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

nkleof

银虫 (正式写手)


[资源] 【分享】态密度处理程序

之前发过一个简单版本的态密度处理程序,这次更新一下。

split_dos.ksh是根据JMS NRL的脚本改的,其它程序是我自己写的。

用法:只能在linux系统下,键入各个程序名称运行就可以,如果遇到平台问题,sumdos程序无法执行,可以用
gcc -lm sum.c
编译源文件产生可执行程序。

运行split_dos.ksh会读取DOSCAR,并生成总的态密度DOS0和各个原子的各轨道态密度DOS1~DOSn。(这里注意在计算DOS时INCAR文件里的NEDOS不要设置为>9999,五位数的NEDOS值会造成错误)
然后运行sumdos可以产生按照特定原子特定轨道模式生成的态密度和(注意:适用于ISPIN=2的计算结果,即DOSCAR里面共有有20列数据)。
例:
sumdos name -t 1 2 3
sumdos是程序名称,name是一个自定义字符串,会加在生成的文件名里,可以作为说明(但是长度只有8个字符),-t表示生成各个轨道的态密度和,(还有两种模式: -n 表示不加和各轨道态密度,仍旧生成从s到d各个轨道的态密度; -d 表示把p轨道,eg轨道,t2g轨道各自加和。!!仍然注意,和上次一样,这里的eg指的是第14、15和18、19列数据,t2g是剩下的3列数据,如果有各个d轨道不是按照这样排列的情形则生成的就不是eg和t2g),后面的数字表示要加和的原子标号。上面的例子就是把第1、2、3号原子的所有轨道的态密度全部加起来。程序支持采用 n~m 形式表示要处理的第n到m个标号连续的原子,例如要处理13到26号原子时,不需要一个一个写出原子标号,只需要写 13~26 就可以。

附送一个将CONTCAR文件转换为可导入Materials Studio的cif文件的程序,使用很简单,只需要在linux下,vasp任务的计算文件夹下,运行exe_Ctocif,程序会自动寻找CONTCAR和POTCAR,并生成cif文件。另外也支持在只有POSCAR文件时转换为cif,但这时需要手动输入元素名称。(!!注意:如果是vasp5版本的CONTCAR,请先删除其中的元素符号那一行。)
例如:
exe_Ctocif
exe_Ctocif POSCAR Si O
这两种方式都可以,前一种自动从赝势里找元素名称,后一种手动输入元素名。
http://ishare.iask.sina.com.cn/f/9316742.html

[ Last edited by nkleof on 2010-8-16 at 11:10 ]
回复此楼

» 收录本帖的淘帖专辑推荐

材料计算模拟实用技巧 材料计算模拟软件 理论计算及软件的使用 Materials-studio

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nkleof

银虫 (正式写手)


引用回帖:
Originally posted by vaspnew at 2010-08-16 10:57:56:
试了一下exe_Ctocif 出现 浮点数例外的问题!

这个忘了说了,由于vasp5的CONTCAR里面包含一行元素符号,而程序设计时没有考虑,所以如果是vasp5的CONTCAR,请在执行转换前,删除那一行。
3楼2010-08-16 11:09:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 18 个回答

vaspnew

金虫 (小有名气)


试了一下exe_Ctocif 出现 浮点数例外的问题!
2楼2010-08-16 10:57:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lono75

铁杆木虫 (著名写手)


★★★★★ 五星级,优秀推荐

支持原创
谢谢分享
5楼2010-08-16 12:02:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

★★★★★ 五星级,优秀推荐

支持分享和原创。

split_dos源代码中的逻辑关系理清楚没?form=0/1,

# Total is first DOS
if [ $form -eq 0 ]; then
i=0
else
i=0
fi
这个没理解为什么要这样写。

还有后面的
while [ $i -le 0 ]; do

            #echo $i $start $end

        if [ $i -gt 0 ]; then
            sed -n ''$i' p' tmp.dat2 >| DOS$i
        fi

        if [ $i -gt 0 ]; then
这个循环从i<=0开始,但是上面无论怎样,看起来i的初值是0呢。为什么这样做循环呢?奇怪,好像可以大量简化,即删掉while [ $i -le 0 ]这段循环。
你说呢?
6楼2010-08-16 14:38:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料专硕调剂 +10 椰椰。 2026-03-29 10/500 2026-03-30 14:15 by 1939136013狗壮
[考研] 求调剂 +7 研研,接电话 2026-03-24 8/400 2026-03-30 14:14 by 白云朵朵飞
[考研] 284求调剂 +14 junqihahaha 2026-03-26 15/750 2026-03-30 14:12 by 探123
[考研] 求调剂 +7 青春裁为三截 2026-03-29 7/350 2026-03-30 13:14 by laoshidan
[论文投稿] arxiv背书人邮件求助 20+3 redcom 2026-03-25 7/350 2026-03-30 10:56 by bobvan
[考研] 375求调剂 +6 雨夏整夜 2026-03-29 6/300 2026-03-30 10:21 by herarysara
[考研] 281求调剂 +4 亚克西good 2026-03-26 6/300 2026-03-29 21:06 by 啊李999
[考研] 化学0703 调剂 306分 一志愿211 +7 26要上岸 2026-03-28 7/350 2026-03-29 20:04 by 无际的草原
[考研] 329求调剂,一志愿西北工业大学,材料工程(085601) +4 小小机灵虫 2026-03-29 10/500 2026-03-29 18:20 by 无际的草原
[考研] 2026年华南师范大学欢迎化学,化工,生物,生医工等专业优秀学子加入! +3 llss0711 2026-03-28 6/300 2026-03-29 10:26 by llss0711
[考研] 本科新能源科学与工程,一志愿华理能动285求调剂 +3 AZMK 2026-03-27 5/250 2026-03-28 16:19 by xxxsssccc
[考研] 求调剂 +6 芦lty 2026-03-25 7/350 2026-03-28 13:13 by 唐沐儿
[考研] 070300化学求调剂 +4 起个名咋这么难 2026-03-27 4/200 2026-03-27 21:39 by 83503孙老师
[考研] 085600,材料与化工321分,求调剂 +9 大馋小子 2026-03-27 9/450 2026-03-27 14:30 by mmm just
[论文投稿] Journal of Mechanical Science and Technology +3 Russ_ss 2026-03-25 5/250 2026-03-27 10:49 by 陆小果画大饼
[考研] 324求调剂 +5 hanamiko 2026-03-26 5/250 2026-03-27 10:33 by wangjy2002
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-26 3/150 2026-03-26 19:57 by nihaoar
[考研] 085602 289分求调剂 +8 WWW西西弗斯 2026-03-24 8/400 2026-03-26 16:33 by 不吃魚的貓
[考研] 一志愿 南京邮电大学 288分 材料考研 求调剂 +3 jl0720 2026-03-26 3/150 2026-03-26 13:39 by zzll406
[考研] 化学调剂一志愿上海交通大学336分-本科上海211 +4 小鱼爱有机 2026-03-25 4/200 2026-03-26 10:19 by aa331100
信息提示
请填处理意见