电子能带结构重构与参数化的集成计算框架
fuller的Python项目详细描述
富勒
基于概率机器学习的电子带结构重构和参数化综合计算框架
简介
这个Python包包含一组工具,用于根据光电发射光谱数据重建和参数化电子带结构(EBS)。它实现了中介绍的马尔可夫随机场模型 Xian & Stimper et al. (2020)在TensorFlow中。在
安装方法
最新版本的软件包可以通过pip安装
pip install --upgrade git+https://github.com/mpes-kit/fuller.git
或者,下载存储库并运行
^{pr2}$直接从PyPI安装
pip install fuller
要求
除了requirements.txt
文件中指定的包之外,tensorflow
是必需的。安装说明可以在official webpage找到。该软件包只与CPU和GPU支持的框架版本一起工作。目前,仅支持TensorFlow1(1.14以后的版本),但我们正在努力将其移植到TensorFlow2。在
示例数据集
作为证明方法有效性的模型系统,我们研究了半导体二硒化钨(WSe2)的三维光电发射数据。它解决了沿x轴和y轴的动量(kx和ky)和能量。在
重建
WSe2的14个价带在数据集中都是可见的。用HSE06混合交换相关函数进行DFT计算。结果如下图所示。在
文件
提供完整的API文档here。在
预处理和重建
等级MrfRec
MrfRec
类对于重建和预处理数据是非常重要的。要重建EBS,请创建一个MrfRec
对象,并使用其方法执行算法并绘制结果。这里,我们列出了类中最重要的方法。有关如何使用该类的进一步说明,请查看示例文件夹中的mpes_reconstruction_mrf.ipynb
笔记本。在
初始化
def__init__(E,kx=None,ky=None,I=None,E0=None,eta=0.1,includeCurv=False,etaCurv=0.1):...
E
:能量为1D numpy数组kx
:沿x轴的动量为1D numpy数组,如果None
设置为0ky
:沿y轴的动量为1D numpy数组,如果None
设置为0I
:根据动量(行)和能量(列)测量的强度,如果None
生成E0
:如果None
取E
的中位数,则带结构能量值的初始猜测eta
:相邻相互作用项的标准差includeCurv
:标志,如果在优化过程中包含真曲率项etaCurv
:曲率项的标准偏差
iter_段落
defiter_para(num_epoch=1,updateLogP=False,use_gpu=True,disable_tqdm=False,graph_reset=False):...
E
:能量为1D numpy数组kx
:沿x轴的动量为1D numpy数组,如果None
设置为0ky
:沿y轴的动量为1D numpy数组,如果None
设置为0I
:根据动量(行)和能量(列)测量的强度,如果None
生成E0
:如果None
取E
的中位数,则带结构能量值的初始猜测eta
:相邻相互作用项的标准差includeCurv
:标志,如果在优化过程中包含真曲率项etaCurv
:曲率项的标准偏差因此,马尔可夫随机场模型的并行优化可以用来重构电子器件 乐队。在
num_epoch
:要执行的时段数updateLogP
:标志,如果真logP每半个epoch更新一次(需要更多的计算)use_gpu
:标志,如果真gpu用于计算(如果可用)disable_tqdm
:标志,优化过程中不显示进度条graph_reset
:标志,如果真张量流图在计算后被重置以减少内存需求
正常化
defnormalizeI(kernel_size=None,n_bins=128,clip_limit=0.01,use_gpu=True,threshold=1e-6):...
它执行多维对比度限制自适应直方图均衡化(MCLAHE),在Stimper et al. 2019中介绍。该方法是TensorFlow implementation of the ^{
kernel_size
:内核大小的元组,维数为x的1/8如果None
n_bins
:直方图中要使用的存储单元数clip_limit
:直方图均衡化中要忽略的相对强度限制use_gpu
:标志,如果真gpu用于计算(如果可用)threshold
:低于该阈值的强度值设置为零
引文
如果您在自己的项目中使用此包,请引用为
R. P. Xian, V. Stimper, M. Zacharias, S. Dong, M. Dendzik, S. Beaulieu, B. Schölkopf, M. Wolf, L. Rettig, C. Carbogno, S. Bauer, and R. Ernstorfer, "A machine learning route between band mapping and band structure," arXiv:2005.10210, 2020.
Bibtex代码
@article{Xian2020,
author={R. P. Xian and V. Stimper and M. Zacharias and S. Dong and M. Dendzik and S. Beaulieu and
B. Schölkopf and M. Wolf and L. Rettig and C. Carbogno and S. Bauer and R. Ernstorfer},
journal={arXiv:2005.10210},
title={A machine learning route between band mapping and band structure},
year={2020},
}
- 项目
标签: