计算化学公社

标题: 如何从cp2k的输出画态密度图DOS [打印本页]

作者
Author:
wudazhuang509    时间: 2017-5-29 20:33
标题: 如何从cp2k的输出画态密度图DOS
如题,我在用cp2k计算态密度,现在获得一些*.pdos文件,但是不知道该怎样画图,求大神指导

如果用Multiwfn,导入文件输入10之后就会退出

如果用orgin等画图软件直接画图,画出来的图是一个又一个的尖峰,因为得到的能量数据是不连续的。


作者
Author:
sobereva    时间: 2017-5-30 10:14
2021-Feb-9补充:下面的说法已过时。2021年2月的Multiwfn已经支持直接基于CP2K的molden文件绘制TDOS和PDOS,见18L


Multiwfn本来就不支持CP2K的输出文件
此文件里记录的应当是各个能级位置s,p,d轨道产生的贡献,需要用Gauss函数展宽,然后再绘制成曲线图。
展宽可以借助Multiwfn,改写成Multiwfn能认的格式即可,见手册3.12.2节的格式说明。例如此附件里把s轨道的数据改写了成了Multiwfn可认的格式
(, 下载次数 Times of downloads: 155)
载入Multiwfn,选10,恰当设置横坐标范围,然后选0,就绘制出来了s的PDOS
(, 下载次数 Times of downloads: 107)




作者
Author:
wudazhuang509    时间: 2017-5-30 11:58
本帖最后由 wudazhuang509 于 2017-5-30 13:00 编辑
sobereva 发表于 2017-5-30 10:14
Multiwfn本来就不支持CP2K的输出文件
此文件里记录的应当是各个能级位置s,p,d轨道产生的贡献,需要用Gauss ...

谢谢老师,可以画s轨道的PDOS了。

我现在把各个数据通过Multiwfn转出来,然后用gnuplot画在一起了,不知道能不能用Multiwfn把s,p,d各个轨道画在一起?

单个的轨道输入文件格式可以写成
energy occ strength
如果想要在一个图里面画出s,p,d各个轨道的PDOS是不是可以写成
energy occ strength1 strength2 strength3?


作者
Author:
wudazhuang509    时间: 2017-5-30 14:06
sobereva 发表于 2017-5-30 10:14
Multiwfn本来就不支持CP2K的输出文件
此文件里记录的应当是各个能级位置s,p,d轨道产生的贡献,需要用Gauss ...

这样画出来的s,p,d轨道的图都是一样的,导出来的数据也完全相同(设定了相同的energy range[-3.0:1.0:0.5],FWHM[0.05],scale ratio for DOS[0.1]),怎样表现s,p,d的贡献不同呢?
作者
Author:
sobereva    时间: 2017-5-30 14:12
wudazhuang509 发表于 2017-5-30 14:06
这样画出来的s,p,d轨道的图都是一样的,导出来的数据也完全相同(设定了相同的energy range[-3.0:1.0:0 ...

不可能是一样的,你的pdos文件里s,p,d都是不同的
作者
Author:
sobereva    时间: 2017-5-30 14:16
wudazhuang509 发表于 2017-5-30 11:58
谢谢老师,可以画s轨道的PDOS了。

我现在把各个数据通过Multiwfn转出来,然后用gnuplot画在一起了,不 ...


手册里没说能够energy occ strength1 strength2 strength3这么写
绘制哪个,就把哪个的数据从pdos里拷到Multiwfn输入文件里
后处理界面可以导出曲线数据,把s,p,d的曲线数据分别得到并导出,都放到Origin里一起作图就完了
作者
Author:
wudazhuang509    时间: 2017-5-30 14:33
sobereva 发表于 2017-5-30 14:16
手册里没说能够energy occ strength1 strength2 strength3这么写
绘制哪个,就把哪个的数据从pdos里拷 ...

谢谢老师,分开用Multiwfn导出来的数据是一模一样的,这是为什么呢?
作者
Author:
wudazhuang509    时间: 2017-5-30 15:30
sobereva 发表于 2017-5-30 14:12
不可能是一样的,你的pdos文件里s,p,d都是不同的

卢老师好,找到问题了,输入文件第一行写错了,所以没有识别strength


作者
Author:
panger    时间: 2017-6-5 16:51
sobereva 发表于 2017-5-30 14:12
不可能是一样的,你的pdos文件里s,p,d都是不同的

sob老师,我也是有同样的问题。导出的数据的确不一样,可是用multiwfn作图都一样。您能受累帮忙看看吗?谢谢。
作者
Author:
sobereva    时间: 2017-6-5 19:19
panger 发表于 2017-6-5 16:51
sob老师,我也是有同样的问题。导出的数据的确不一样,可是用multiwfn作图都一样。您能受累帮忙看看吗? ...


文件格式不合要求。
你当前文件里第一行第二个数字是1,此时程序只会读取能量和占据数,默认强度是1,由于你的两个文件前两列是一样的,所以作图结果一样。
只有第一行第二个数字是2的时候,才会把强度(第三列)和FWHM(第四列,你当前文件里没写)从文件中读入。
注意阅读3.12.2节的格式说明
作者
Author:
panger    时间: 2017-6-5 22:42
sobereva 发表于 2017-6-5 19:19
文件格式不合要求。
你当前文件里第一行第二个数字是1,此时程序只会读取能量和占据数,默认强度是1, ...

谢谢sob老师
作者
Author:
Xuyujia    时间: 2018-5-30 21:09
按手册上说的,只导入能量,占据数,强度和FWHM的话,那各个s,p,d轨道的密度怎么办?画出的图根本显示不出来啊!
作者
Author:
wudazhuang509    时间: 2018-6-10 18:22
Xuyujia 发表于 2018-5-30 21:09
按手册上说的,只导入能量,占据数,强度和FWHM的话,那各个s,p,d轨道的密度怎么办?画出的图根本显示不出 ...

因为我用的是cp2k的输出文件,然后自己修改了格式放入multiwfn画图的,不知道你所说的什么意思。multiwfn也是可以画比如orca等输出的spd等分轨道,具体手册你看下,我没用过,所以不好意思
作者
Author:
sobereva    时间: 2018-6-11 05:56
Xuyujia 发表于 2018-5-30 21:09
按手册上说的,只导入能量,占据数,强度和FWHM的话,那各个s,p,d轨道的密度怎么办?画出的图根本显示不出 ...

你得说明你用的是什么程序。对于量化程序,绘制PDOS图在手册4.10节有的是例子。
2019-May-15注:Multiwfn绘制DOS图已有了专门的博文
使用Multiwfn绘制态密度(DOS)图考察电子结构
http://sobereva.com/482http://bbs.keinsci.com/thread-13242-1-1.html

若你是从符合格式要求的普通文本文件里直接导入能级数据在Multiwfn里绘图,绘制出来的是什么曲线,完全取决于你的“普通文本文件”里记录的是什么。如果比如这个文件里的强度一列对应于s轨道对相应能级的贡献率,则绘制出来的就是s的PDOS。

作者
Author:
weichengdo    时间: 2020-8-18 20:56
请把输入文件贴一下,看看。我想知道用哪个section可以得到PDOS和TDOS,谢谢.
作者
Author:
Penson    时间: 2020-8-19 16:51
weichengdo 发表于 2020-8-18 20:56
请把输入文件贴一下,看看。我想知道用哪个section可以得到PDOS和TDOS,谢谢.

多看官网的练习教程:https://www.cp2k.org/exercises:2018_uzh_cmest:pdos
&PRINT
         &PDOS
            # print all projected DOS available:
            NLUMO -1
            # split the density by quantum number:
            COMPONENTS
&END
基本上在DFT的PRINT里面设好NLUMO和COMPONENETS元素就可以输出PDOS了,TDOS要自己加,没有直接获取的办法。
作者
Author:
weichengdo    时间: 2020-8-21 18:57
Penson 发表于 2020-8-19 16:51
多看官网的练习教程:https://www.cp2k.org/exercises:2018_uzh_cmest:pdos
&PRINT
         &PDOS

好的,感谢分享
作者
Author:
sobereva    时间: 2021-2-10 03:53
weichengdo 发表于 2020-8-18 20:56
请把输入文件贴一下,看看。我想知道用哪个section可以得到PDOS和TDOS,谢谢.

可以用Multiwfn载入CP2K的molden文件(产生方式看Multiwfn手册2.9.2节。CP2K计算时记得在$SCF里用ADDED_MOS关键词指定算一些低阶空轨道),然后在Multiwfn的主功能10里可直接绘制TDOS,详见
使用Multiwfn绘制态密度(DOS)图考察电子结构
http://sobereva.com/482http://bbs.keinsci.com/thread-13242-1-1.html

如果修改molden文件并加入晶胞信息(详见Multiwfn手册2.9.2节),在Multiwfn的DOS界面里定义片段后还可以绘制PDOS,步骤同上。

作者
Author:
TJU_RYC    时间: 2024-4-15 10:45
Penson 发表于 2020-8-19 16:51
多看官网的练习教程:https://www.cp2k.org/exercises:2018_uzh_cmest:pdos
&PRINT
         &PDOS

老师,您好,我CP2K可以计算自旋向上和自旋向下的态密度吗?
作者
Author:
madhatter    时间: 2024-4-27 21:18
sobereva 发表于 2021-2-10 03:53
可以用Multiwfn载入CP2K的molden文件(产生方式看Multiwfn手册2.9.2节。CP2K计算时记得在$SCF里用ADDED_M ...

sob老师,我计算了两种复合材料(周期性),想通过这种绘制TDOS的方法来比较两者的导电性差异,可以用HOMO能级对应的数值大小,来说明导电能力吗?或者需要参考哪个位置的数值来比较。萌新不太懂固体物理,所以不太想用第一性作DOS。
作者
Author:
sobereva    时间: 2024-5-1 22:32
TJU_RYC 发表于 2024-4-15 10:45
老师,您好,我CP2K可以计算自旋向上和自旋向下的态密度吗?

CP2K+Multiwfn可以
作者
Author:
sobereva    时间: 2024-5-1 22:35
madhatter 发表于 2024-4-27 21:18
sob老师,我计算了两种复合材料(周期性),想通过这种绘制TDOS的方法来比较两者的导电性差异,可以用HOMO ...

“用第一性作DOS” 完全语义不明
如果你用CP2K做计算,本来CP2K就是第一性原理程序




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3