计算化学公社

标题: 一键绘制自由能台阶图的脚本 [打印本页]

作者
Author:
wsz    时间: 2024-3-28 17:47
标题: 一键绘制自由能台阶图的脚本
(未经授权,禁止转载)

写了一个绘制自由能台阶图的脚本,见附件,对于电催化反应,可以设定电压直接进行修正。

参数说明:
      delatG2G函数:将ΔG转换为G,默认初态能量为0,电压为0
            输入参数:delta_G:计算得到的ΔG
                            initialEnergy:初态能量
                            voltage:电压修正
     PlotFreeEnergy函数:绘制自由能台阶图
            输入参数:FreeEnergy:自由能
                                     color:颜色

使用方法:
      使用时直接将delta_G数据 (第40行) 替换为自己计算的数据即可,如果有多种催化剂进行对比,直接复制第40~42行,修改对应的值即可。
      最后记得将labels (第49行) 和legend (第54行) 修改为自己的反应路径和体系。

(, 下载次数 Times of downloads: 20)

(, 下载次数 Times of downloads: 140)




作者
Author:
ddddnight    时间: 2024-3-31 16:34
这个需要安装绘图程序吗
作者
Author:
wsz    时间: 2024-4-1 10:07
ddddnight 发表于 2024-3-31 16:34
这个需要安装绘图程序吗

需要带有matplotlib的Python3环境,直接装个Anaconda比较省事
作者
Author:
ddddnight    时间: 2024-4-1 22:47
wsz 发表于 2024-4-1 10:07
需要带有matplotlib的Python3环境,直接装个Anaconda比较省事

好的,感谢!
作者
Author:
mywai520    时间: 2024-5-10 22:23
谢谢提供的脚本,这里有个问题想讨论一下,OER应该是H2O OH* O* OOH* O2。另外能否提供HER的脚本,谢谢!
作者
Author:
wsz    时间: 2024-5-11 10:42
mywai520 发表于 2024-5-10 22:23
谢谢提供的脚本,这里有个问题想讨论一下,OER应该是H2O OH* O* OOH* O2。另外能否提供HER的脚本,谢谢!

不好意思,标签写反了,感谢指正。
HER就参考使用方法把对应的值替换一下即可,例如:

(1~37行,同上)
# HER1
delta_G1 = [-0.2, 0.2]
G1 = deltaG2G(delta_G1)
line1 = PlotFreeEnergy(G1, color='r')

# HER2
delta_G2 = [-0.1, 0.1]
G2 = deltaG2G(delta_G2)
line2 = PlotFreeEnergy(G2, color='b')

x = [2*i+0.5 for i in range(len(delta_G1)+1)]
print(x)
labels = ['*', r'*H', r'*']

plt.xlabel('Reaction Coordinate', fontsize=28)
plt.ylabel('Free Energy (eV)', fontsize=28)
plt.xticks(x, labels)
plt.legend([line1, line2], [r'HER1', r'HER2'], fontsize=24)

plt.show()
plt.savefig('Free energy diagram.png', dpi= 300, transparent=True)







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