请选择 进入手机版 | 继续访问电脑版

计算化学公社

 找回密码
 现在注册!
查看: 3332|回复: 4

[Multiwfn资源与经验] 用Multiwfn+VMD做RDG分析时的一些要点和常见问题

[复制链接]

1万

帖子

25

威望

1万

eV
积分
26294

管理员

公社社长

发表于 2015-6-2 19:51:02 | 显示全部楼层 |阅读模式
用Multiwfn+VMD做RDG分析时的一些要点和常见问题

文/Sobereva(3)
First release: 2015-Jun-2  Last update: 2017-Apr-4


用Multiwfn (http://sobereva.com/multiwfn)结合VMD绘制RDG填色等值面图是研究弱相互作用的必不可少的利器,广为流行,详见《使用Multiwfn图形化研究弱相互作用》(http://sobereva.com/68)。这里说几点RDG分析经常被问到的一些问题。


1 和改进图像质量有关的问题

这里的例子用的是大家习惯用的白背景(设置方法:Graphics-Color-Display-Background-white)。

1.1 关掉Depth cueing

默认情况下VMD是开着Depth cueing的,这可以使距离观测者越远的部分被雾化得越重,以突出离屏幕较近的部分。但是对于白背景的情况,在绘制RDG图时会使得图像变得有些朦胧,很多人都没注意到这个问题。如下图
1.png

建议选择Display-Depth cueing将这个设定关掉,图像就鲜艳、通透多了,如下所示
2.png


1.2 抗锯齿

VMD显示的图形在白背景下边缘的锯齿看起来往往比较明显,建议开启抗锯齿。如果Display里能选Antialiasing,点它就行了。如果这是灰色的,可以在显卡的驱动面板里强行开启抗锯齿(具体操作视显示芯片而定)。还一种方法就是用Tachyon渲染器渲染,也能起到抗锯齿的效果(具体步骤见第1.4节)。下图左边是默认情况,右边是用Tachyon渲染后有抗锯齿效果的情况,图片进行了放大,可见边缘圆润多了。

3.png

另外顺带一提,也可以先获得没有抗锯齿的大尺寸的图像,然后用ps等程序把尺寸缩小,在这个重新采样的过程中也会等效地实现抗锯齿效果。


1.3 光源

默认光源设定下,有些等值面可能看起来偏黑,不好看甚至影响对颜色的判断。此时可以选Display里面的Light 2或3开启没使用的光源,以使得暗处被照亮。还可以用Mouse-Move-Light,然后在图形窗口中拖动来自行移动光源。上图把Light 3开启后,可见左侧苯环中央的梭型等值面从原来的暗红变成鲜红了。
4.png


1.4 图像尺寸与渲染器

很多人都是直接用键盘的printscreen键直接截图再粘贴,或者用File-render-Snapshot再点Start Rendering来得到图像的bmp文件,得到的效果都一样,都是屏幕上实际看到的。图像尺寸取决于窗口的尺寸,把窗口拉大,或者在窗口里把分子放大,都可以让图像中的体系更大(注意如果在窗口里把分子放得过太大,边缘区域会有透视畸变)。以这样的方式获得图像,显然图像的最大像素取决于屏幕的分辨率,屏幕分辨率低的话自然就不能得到高像素的图像文件。

VMD还可以用File-render-POV-Ray产生著名的POV-Ray渲染器的输入文件.pov,再用POV-Ray渲染,这样可以抗锯齿,也可以任意指定分辨率。但是需要独立安装POV-Ray,而且POV-Ray没法结合VMD渲染出RDG等值面图的填色效果(会看到等值面上都是灰白色),所以这里就不多说了。

做RDG图我比较推荐用Tachyon渲染。Tachyon是个渲染器,VMD已经将它附带了,不需要额外安装,只要选File-Render-Tachyon (interal, in-memory rendering),点Start Rendering,就可以直接调用Tachyon渲染当前窗口里的图像,得到.tga文件,可以用IrfanView等看图程序或ps等图像编辑程序打开。用Tachyon渲染的图像默认就有抗锯齿效果。另外,如果显卡比较老或者驱动有兼容性问题,没法开启Display-Rendermode-GLSL的话,很多VMD里的效果都没法正确显示,比如最基本的透明效果,而使用Tachyon渲染则所有效果都可以正确表现出来。

按上述的方法调用Tachyon渲染出的图像和窗口尺寸相同。如果想渲染出更大尺寸的图像可按照此步骤:进入File-render,选择Tachyon,点Start Rendering,在VMD目录下就得到了Tachyon渲染器的输入文件vmdscene.dat。然后在VMD目录下建立一个文本文件,后缀为.bat,内容为
tachyon_WIN32.exe vmdscene.dat -aasamples 24 -mediumshade -trans_vmd -res 1024 768 -format BMP -o vmdscene.bmp
双击运行此bat文件就重新渲染得到了vmdscene.bmp。Tachyon命令行参数中-res控制分辨率。-aasamples越大锯齿越不明显。若想调节图像内体系的尺寸,修改vmdscene.dat里的zoom,越大则图像里的物体越大。



2 其它问题

2.1 等值面边缘有锯齿怎么办?
增加格点精度(即使用更小的格点间距)。也可以略微提升RDG等值面数值,这样等值面会扩大,往往能弥补锯齿或者孔洞,但是设得过大可能会导致和弱相互作用无关区域出现,应反复调节(更严格的做法是绘制散点图,看看如果画一条横线,最高提升到多少可以只穿越spike而不穿越其它点)

2.2 色彩刻度的选择有任意性,如何设定合理?
任意性很大这是RDG的一个弱点。一般建议用-0.035~0.02,或者-0.03~0.02。下限越接近0,则吸引作用区域越容易显蓝色,反之越容易显绿色。虽然-0.04~0.02很常用,但这样设定下比如一些偏弱的氢键的区域就不怎么显蓝色了。

2.3 如何将不同体系的散点图用不同颜色作到一起?
对每个体系分别计算sign(lambda2rho)和RDG数据,在Multiwfn后处理界面选2 Output scatter points to output.txt将散点数据导出,后两列数据就是作当前体系散点图需要用的x,y数据。对多个体系都这样得到散点数据。然后把这些数据都导入到Origin里,作散点图,设定多个Layer,一个Layer对应一个体系即可,并用不同颜色区分。

2.4 体系比较大,可否分别计算体系的几个部分,然后同时显示出来?
可以。计算的时候通过合理设定格点数据的计算范围就可以只计算不同区域。VMD中显示多少填色等值面都行,互不冲突,作为不同的id即可。Multiwfn提供的作图脚本只能绘制一对儿func1.cub vs func2.cub对应的填色等值面图,若要同时绘制很多个,可以自己重新编写脚本,如果不会,建议还是在图形界面操作。已提供的那个RDG绘图脚本里的每一行命令都对应于图形界面的一个操作,只要自己弄会了怎么通过手动在图形界面操作来显示填色等值面图,就自然而然明白怎么再显示更多的填色等值面。简单来说,计算体系一部分后,得到func1.cub和func2.cub,把func2.cub拖进VMD,会产生一个id,然后载入func1.cub,载入的时候选择载入到func2.cub那个id里。然后进graphics-representation,点Create Rep新建一个等值面的层,将Drawing method改成isosurface,设置好isovalue(一般为0.5),Show设成Isosurface,Draw设成Solid Surface,然后Coloring method设为Volume,选择func1.cub,然后在Trajectory标签页把Color Scale Date Range设为合适的色彩刻度。类似地,计算体系的其它部分,得到func1.cub和func2.cub,将func2.cub拖进VMD自动又产生一个新id,之后也是如上操作就行了。这样多个id对应的填色等值面就可以显示体系的不同区域了。

2.5 散点图中有一些spike并未完全戳到底(虽然离底部很近),合理么?有物理意义么?
合理,这些spike一般也是有意义的。用AIM分析无法展现这些spike对应的作用,不会出现临界点,但是用RDG方法可以表现出来,照样可以显示出对应的等值面。一些弱相互作用不一定有对应的BCP,但用RDG方法可以被展现出来,这是RDG方法相对于AIM的一个优势。可以参看此文J. Chem. Theory Comput., 9, 3263-3266 (2013)。

2.6 RDG分析能定量化么?
要想定量讨论,就看spike的位置,或者结合AIM定量分析。虽然也有人提出积分RDG等值面内部区域的做法(dx.doi.org/10.1021/jp204278k),但我觉得并不可靠。

2.7 能绘制周期性体系的RDG图么?
撰文时Multiwfn最新版本3.3.8(dev)不支持周期性计算的程序(除非用Gaussian颇慢的PBC计算得到的fch/wfn文件)。但是可以基于promolecular近似来做RDG图,者只需要坐标信息就够了。也就是用周期性计算程序优化好结构后,直接把得到的结构输出为.pdb、.xyz等普通的记录坐标的格式,载入到Multiwfn里,然后基于promolecular近似来做RDG分析。虽然结果肯定不如基于波函数时准确,但是肯定是定性正确的,起码值得一试。

2.8 体系比较大,RDG等值面太多,怎么只考察部分区域?
用Multiwfn的主功能13处理一下RDG格点数据把不感兴趣的部分屏蔽掉。参见Multiwfn手册4.13.4节的实例。

2.9 一个体系有好多种相互作用,散点图上有好多spike,怎么区分哪个相互作用对应哪个spike?
区分方法有三:
(1)用Multiwfn做AIM分析(见http://sobereva.com/108),可以得到各个弱相互作用区域对应的BCP的sign(lambda2)rho值,然后跟散点图对照一下,就知道哪个spike对应什么位置了。
(2)设定格点数据计算范围的时候,让计算的盒子中心处在某个弱相互作用区域中央,适当调节盒子的延展范围,让计算的空间区域恰好囊括那个弱相互作用区域。然后得到的散点图的spike就只对应那个弱相互作用了。
(3)从散点图中可以看到每个spike对应的sign(lambda)2rho范围。假设一个spike大约在-0.034到-0.03,想弄清楚这个spike对应哪个RDG等值面,就可以选-3 Set function2 value where the value of function1 is out of a certain range,然后输入-0.034,-0.03,然后输入一个很大的值比如100。这样sign(lambda)2rho小于-0.034或大于-0.03的格点的RDG值就被设为了100,再做RDG等值面图的时候,就只出现这个弱相互作用对应的等值面了,其它弱相互作用区域的等值面就被屏蔽掉了。(顺带一提,利用这个屏蔽方法去掉无关区域,往往可以使得RDG值设定得较高也不会出现其它无关区域,这样RDG等值面可以变得比丰满,从而减少锯齿、窟窿现象)

2.10 老师,您看我的散点图(发来图片...),能说明其中有弱相互作用么?
不要光看散点图!要先看RDG填色等值面,弱相互作用在什么位置、什么形式一目了然。需要定量考察、对比的时候再结合散点图一起看。

2.11 能用其它程序做RDG图么?
只有VMD作出来的RDG填色等值面图才是最好,而且最方便的。Chemcraft也能作填色等值面图,但是难看多了。其它程序,gview、molekel之类的,只能显示RDG等值面而没法把sign(lambda2)rho投影上去。Jmol和Gabedit等其它一些程序也开始支持绘制RDG填色等值面图了,但是比VMD效果差得太远,而且计算速度也远不如Multiwfn快,也没法给出散点图、屏蔽等值面、利用promolecular近似等等。Multiwfn+VMD是RDG分析的黄金组合。

2.12 作图时往往看到里面蓝外面红的环状等值面,是怎么回事?
此图是一个典型情况:
5.png

这种情况一般出现在相互作用很强的两个原子间。settings.ini文件的默认设置是RDG_maxrho=0.05,这即是说将电子密度大于0.05的区域屏蔽掉,因为这样就可以只把体系中弱相互作用区域,也就是电子密度较小的区域展现出来。但是有些弱相互作用其实强度已经甚强了,甚至已经不属于弱相互作用的范畴,而是较弱化学键的范畴,这种情况下两个原子相互作用区域的中央部分电子密度会超过0.05,而在外围部分电子密度小于0.05,因此默认情况下这块相互作用区域的RDG等值面的中间部分就会被屏蔽掉,而只剩下周围一圈。这种环状区域往往看着很碍眼,可以直接ps掉,也可以索性把RDG_maxrho设为0,不对任何区域进行屏蔽,此时就会看到完整的圆片型等值面了。

2.13 为什么有的弱相互作用区域没显示出来?
有些弱相互作用实际上强度很强,比如那种键能都能超过100kJ/mol的共价成分已经较明显的氢键,其相互作用区域电子密度已经很大了,这时候默认的RDG_maxrho=0.05太小,会导致这些地方被屏蔽掉。适当调大RDG_maxrho,重新作图即可。记住,使用RDG方法前一定要优化结构,对于从晶体中截取的结构,氢原子的位置是不准的,若不优化氢,可能会由于氢的位置距离氢键受体原子太近从而没能出现它们之间的等值面(即这部分的电子密度被严重高估了)。

评分

参与人数 5eV +25 收起 理由
张福荔 + 4 谢谢分享
chrischen1128 + 6 赞!
vangogh + 5 群主辛苦了!
huanyizhen + 5 好物!最近问的比较多这方面的问题,sob老.
captain + 5 谢谢

查看全部评分

北京科音自然科学研究中心:http://www.keinsci.com  不定期开办各层次量子化学、分子动力学、Multiwfn程序培训
思想家公社的门口Blog:http://sobereva.com
Multiwfn量子化学波函数分析程序主页:http://sobereva.com/multiwfn
计算化学公社论坛:http://bbs.keinsci.com
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明研究方向,否则一概不批。

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

183

帖子

0

威望

2214

eV
积分
2397

Level 5 (御坂)

发表于 2015-6-2 21:14:20 | 显示全部楼层
另外 建议把分子结构显示成棍式或管式 如VMD中的Licorice模式
而象上帖图中的CPK模式 如果分子中原子较多的话就比较乱了 RDG面就不容易观察了
这也是本人投稿时审稿人提的问题
计算化学与分子模拟

1万

帖子

25

威望

1万

eV
积分
26294

管理员

公社社长

 楼主| 发表于 2015-6-3 06:23:03 | 显示全部楼层
captain 发表于 2015-6-2 21:14
另外 建议把分子结构显示成棍式或管式 如VMD中的Licorice模式
而象上帖图中的CPK模式 如果分子中原子较多 ...


这个就纯凭自己喜好了。我文献作图时一般也用Licorice(e.g. Struct Chem (2014) 25:1521–1533)
Wavefunction and reactivity study of benzo[a]pyrene diol epoxide and its enantio.png
北京科音自然科学研究中心:http://www.keinsci.com  不定期开办各层次量子化学、分子动力学、Multiwfn程序培训
思想家公社的门口Blog:http://sobereva.com
Multiwfn量子化学波函数分析程序主页:http://sobereva.com/multiwfn
计算化学公社论坛:http://bbs.keinsci.com
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明研究方向,否则一概不批。

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

270

帖子

0

威望

2340

eV
积分
2610

Level 5 (御坂)

发表于 2015-6-3 07:46:59 | 显示全部楼层

1万

帖子

25

威望

1万

eV
积分
26294

管理员

公社社长

 楼主| 发表于 2016-2-10 17:26:40 | 显示全部楼层
今日增加了2.12节
北京科音自然科学研究中心:http://www.keinsci.com  不定期开办各层次量子化学、分子动力学、Multiwfn程序培训
思想家公社的门口Blog:http://sobereva.com
Multiwfn量子化学波函数分析程序主页:http://sobereva.com/multiwfn
计算化学公社论坛:http://bbs.keinsci.com
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明研究方向,否则一概不批。

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!
您需要登录后才可以回帖 登录 | 现在注册!

本版积分规则

Archiver|手机版|小黑屋|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949-1号 )

GMT+8, 2017-12-15 12:20 , Processed in 0.100881 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表