Chthonic乐队:如何绘制乐队结构 (band structure plot)

我正在使用 pyiron 运行 Vasp 计算。我可以通过访问ElectronicStructureDos对象轻松绘制状态的总密度,例如

from pyiron.project import Project 
pr = Project('tmp')
pr.remove_jobs(recursive=True)
vasp = pr.create_job(pr.job_type.Vasp, 'vasp')
vasp.structure = pr.create_ase_bulk('Al')
vasp.run()
dos = vasp.get_electronic_structure().get_dos()
dos.plot_total_dos()

有没有绘制隐藏在某处的带结构的类似方便的方法?

3

虽然没有直接的绘图函数,但可以使用特征值矩阵绘制频带结构

import matplotlib.pylab as plt
plt.plot(vasp.get_electronic_structure().eigenvalue_matrix);
1

或者手动绘制它,你可以使用:

# The trace is system dependent, in this example we use:
trace = np.array([[0, 0, 0], # Gamma
        [1, 0, 0], # X
        [1, 1, 0], # M
        [0, 0, 0], # Gamma
        [0, 0, 1], # Z
        [1, 0, 1], # R
        [1, 1, 1], # A
        [0, 0, 1]]) # Z
label_ticks = ['$\Gamma$', 'X', 'M', '$\Gamma$', 'Z', 'R', 'A', 'Z']
energy = ham['output/electronic_structure/eig_matrix']
E_f = ham_chg['output/electronic_structure/efermi']
energy -= E_f
n_kpoints = len(energy) 
n_trace = int(n_kpoints / (len(trace)-1))
normal_ticks = [i*n_trace for i in range(len(trace))] 
plt.axhline(y=0, ls='--', color='k')
plt.plot(energy, 'r-')
plt.xlim(normal_ticks[0], normal_ticks[-1])
plt.xticks(normal_ticks, label_ticks)
plt.grid(axis='x')
plt.ylabel("Energy - $E_F$ [eV]")
plt.ylim(-1, 1);

这需要两个 VASP 计算,首先计算电荷密度:

ham_1.write_charge_density = True 

执行此作业后,您可以使用电荷密度通过从上一个作业重新启动来计算带结构:

ham_2 = ham.restart_from_charge_density(job_name="job_band", icharg=11)

但据我所知,我们目前没有自动化功能。

-1

如果您使用 VASP 计算波段结构,一个名为 VASPKIT 的友好工具将帮助您轻松绘制它!这是a link!安装完成后,在文件夹中打开 vaspkit,然后键入:21

211) Band-Structure                                              
212) Projected Band-Structure of Only-One-Selected Atom          
213) Projected Band-Structure of Each Element                    
214) Projected Band-Structure of Selected Atoms                  
215) Projected Band-Structure by Element-Weights                 
216) The Sum of Projected Band for Selected Atoms and Orbitals   

然后,您可以按照提示自动绘制能带图。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(297)
安装程序未能初始化:未能初始化中央 HHBC存储库:未能初始化架构
上一篇
用友财务软件t3:ssh隧道上的Weblogict3/t3s
下一篇

相关推荐

  • docker游戏服务器:如何使用Docker搭建高性能的游戏服务器

    Docker游戏服务器是一种将游戏服务器部署到容器中的方式,它可以帮助游戏开发者快速、轻松地部署游戏服务器,并且可以更轻松地扩展游戏服务器的容量。…

    2023-04-27 09:55:33
    0 20 16
  • win7玩cf卡顿怎么解决:解决Win7环境下CF游戏卡顿问题

    尝试更新系统:可能是由于系统缺少某些补丁或者更新导致CF卡顿,可以尝试在Windows Update中进行检查更新,并安装最新的补丁和更新。更新显卡驱动:可能是由于显卡驱动过旧或者不兼容导致CF卡顿,可以尝试更新显卡驱动,可以到显卡厂商官网下载最新的驱动进行安装。…

    2023-05-27 11:45:17
    0 25 11
  • cv糖醋排骨是弯的吗弯曲的美味

    cv糖醋排骨不是弯的,它是一种制作方法,通常用来制作排骨。代码:…

    2023-04-01 13:03:36
    0 53 97
  • android 视频编码深入理解MediaCodec API

    Android 视频编码是指将原始视频数据经过压缩编码后,生成新的视频数据,以便减少视频文件的体积,提高传输速度,以及更好地在 Android 设备上播放。…

    2023-01-13 10:58:18
    0 14 29
  • java ee eclipse使用:如何使用Java EE Eclipse来开发Web应用

    示例示例Java EE Eclipse使用步骤:安装Eclipse IDE。…

    2023-10-12 04:51:32
    0 14 37
  • javascript数组:排序和搜索

    javascript数组是一种特殊的对象,它可以存储多个值,这些值可以是任何类型的数据。JavaScript数组的元素可以通过索引来访问,数组的索引从0开始,每个元素都有一个索引值。…

    2023-08-28 11:30:24
    0 20 22
  • cookie如何使用:如何使用Cookie来改善用户体验

    Cookie是一种存储在客户端的小型文件,用于记录用户的信息,如访问时间、登录状态等。使用Cookie可以更好地为用户提供服务,比如保存用户的登录状态,记录用户的浏览历史记录等。…

    2023-05-07 02:18:11
    0 28 45
  • cv小敢:如何利用CV小敢提升职业技能?

    cv小敢(Computer Vision Tiny-YOLO)是一种轻量级的物体检测算法,它可以在资源受限的设备上运行,如嵌入式设备、智能手机等。它是基于YOLO(You Only Look Once)算法的一个变体,由Joseph Redmon和Ali Farhadi开发,旨在提高深度学习模型的性能,同时减少模型的大小和计算复杂度。…

    2023-02-09 13:08:59
    0 55 33

发表评论

登录 后才能评论

评论列表(41条)