交互均匀电子气局域场因子的解析模型
项目描述
均匀电子气局域场因子的解析参数化
维护者:Aaron Kaplan
此CC0许可的存储库包含由Aaron Kaplan和Carl Kukkonen开发的Python3库,用于计算均匀电子气(UEG)局域场因子(LFFs),发表在
A.D. Kaplan和C.A. Kukkonen,"均匀电子气QMC一致的静态自旋和密度局域场因子",arXiv:2303.08626(2023)。待《物理评论B》审阅。
请在使用此代码或我们论文的结果时引用之前列出的论文。
拟合LFFs的基本使用方法
要在Python代码中使用拟合的LFFs,请输入from AKCK_LFF.fitted_LFF import g_plus_new, g_minus_new。两个函数g_plus_new和g_minus_new的参数顺序依次是波矢(单位:逆波尔),Wigner-Seitz半径/rs(单位:波尔)。
g_plus_new和g_minus_new都是围绕父结构simple_LFF的包装器。这个函数按顺序接受波矢(单位:逆波尔),WS半径(单位:波尔),系数(无量纲),和变体(字符串,通过设置var == "+"来使用G+,或通过设置var == "-"来使用G-)。var控制使用哪一组渐近系数。
要使用改进的拟合的G-中的相关自旋刚度,请使用可选关键字参数acpars = 'AKCK'。默认情况下,acpars = 'PW92',使用Perdew-Wang表达式。
存储库内容的详细分解
它们按其在Github存储库中出现的顺序列出。除非另有说明,以下使用的单位是hartree原子单位:长度以波尔半径测量,能量以hartree(1 hartree = 2 Ry)测量。
目录
-
data_files
-
形式为 CK_G*_rs_*.csv 的文件包含量子蒙特卡罗(QMC)数据,关于 G+ 和 G- 的波矢(单位:费米波矢)随参考文献1(见下文 参考文献 部分)所示。单个文件对应于固定的WS半径值(单位:波尔)。当文件名中的 _rs_ 前有 plus 时,表格中显示 G+ 的数据。同样,当文件名中的 _rs_ 前有 minus 时,表格中显示 G- 的数据。WS半径的值出现在 _rs_ 之后和 .csv 之前。
-
形式为 MCS_Gplus_rs_*.csv 的文件展示了在固定WS半径值下(与之前命名规则相同)的 G+ 的QMC数据,但来自参考文献2。
-
-
ec_data
-
形式为 eps_c_*.csv 的文件以WS半径为函数(单位:hartree,来自绝热连接涨落耗散定理)列出计算的相关能。一些关键字包括
- COR:Corradini等人[3]的波矢相关(xc)核
- NEW:当前的波矢相关密度LFF,或xc核
- RAD:Richardson-Ashcroft xc核[4]的波矢和频率相关性
- RAS:Richardson-Ashcroft核的静态极限[4],仍然与波矢相关
- RPA:随机相近似,xc核设置为0
- rMCP07:Kaplan等人[5]的波矢和频率相关的修订MCP07核
- 后缀 _GKQ 表示全局自适应高斯-克朗罗德求积的结果,而没有后缀表示使用RPA截止值的结果
-
RPA_cutoffs.csv 包含工作中描述的数值RPA截止值
-
eps_c_err.pdf 是正文中的图2
-
RPA_sanity.tex 是补充材料表S2
-
-
figs 包含正文和补充材料的图
-
figs_from_fit 包含与稿件中类似的图,但是在拟合过程之后立即生成的。这些图可能使用LFF中的参数,这些参数未截断为固定数量的数字。
-
fitted_LFF_pars 包含LFF中的拟合参数,既有CSV格式也有LaTeX格式的表格。参数的初始猜测包含在 optpars_g*.csv 中。
-
quad_grids 由 gauss_quad.py 生成,包含高斯求积的网格点和权重
- GKQ 表示高斯-克朗罗德求积
- GLQ 表示高斯-勒让德求积
-
stiffness_refit 包含相关自旋刚度的修订参数(alphac_pars_rev.tex),以及表格形式(chi_enhance.tex)和图形形式(suscep_enhance.pdf)的磁化率增强
Python文件
-
PW92.py 包含了Perdew-Wang对UEG相关能[6]的参数化(在 ec_pw92 中),以及UEG在位配对分布函数[7]的Pade逼近(在 g0_unp_pw92_pade 中)
-
PZ81.py 包含了Perdew-Zunger对UEG相关能[8]的参数化(在 ec_pz81 中)和关联自旋刚度(在 alpha_c_pz81 中)
-
QMC_data.py 包含了先前工作中计算出的UEG相关能。文件中给出了引用。此文件在 stiffness_refit.py 中使用。
-
alda.py 提供了仅依赖于WS半径的绝热局域密度近似xc核。此文件由作者维护的先前存储库中的文件修改而来,https://github.com/esoteric-ephemera/tc21/tree/master/dft 注意,函数 alda 因此需要一个包含密度 n、费米波矢 kF、WS半径 rs 和WS半径平方根 rsh 的键的字典条目。可能的可选关键字包括仅交换(默认:False)和核的参数化(默认:PZ81,PW92是另一个可能选项)。
-
alpha_c_c1.py 重新计算关联自旋刚度的次高阶项在高度膨胀中的值,如公式(19)所示。要调用其功能,请使用 from AKCK_LFF.alpha_c_c1 import integrate_funs,并简单地运行 integrate_funs()。
-
asymptotics.py 在 get_g_plus_pars 中提供了 G+ 的渐近展开系数,它仅以 WS 半径作为输入,并在 get_g_minus_pars 中提供了 G- 的渐近展开系数,它以 WS 半径和相对自旋极化为输入。
-
corr.py 计算了各种密度 LFF 的关联能,如图 2 所示。要生成图 2,请运行 corr_plots()。 corr_plots 可以接受一个可选的关键字参数,gpl(列表)。要修改使用的内核/LFF,请使用上述 ec_data/eps_c_*.csv 文件中相同的键。
-
fit_LFF.py 是这里使用的主体拟合程序。其使用语法是 from AKCK_LFF.fit_LFF import fitparser,fitparser(routine,manip,rs=None)。运行此文件需要次要选项
- routine(字符串)
- init:为 WS 半径的选定值生成初始参数
- manip:允许用户手动操作 LFF 中的参数
- main:主要拟合程序,提供文本中的参数
- var(字符串)是 LFF 的变体,可以是 +(用于 G+)或 -(用于 G-)。
- 可选关键字参数 rs(浮点数/整数)
- 可选关键字参数 acpars(字符串),默认为 'PW92',使用 Perdew-Wang 关联自旋刚度的参数化。使用 acpars = 'AKCK' 使用关联自旋刚度的改进拟合。
- routine(字符串)
-
fit_RPA_cutoffs.py 为关联能拟合数值 RPA 截止值,如补充材料中所述。运行 gen_RPA_cutoffs()(无参数)。
-
fitted_LFF.py 在 基本使用拟合 LFF 部分中描述。
-
g_corradini.py 包含 Corradini 等人 [3] 的密度 LFF G+,在 g_corradini 中。此函数需要波矢(单位:逆波尔)和一个类似于 alda 的密度字典作为输入。
-
gauss_quad.py,从 https://github.com/esoteric-ephemera/tc21/tree/master/ 修改而来,是一个使用自适应网格细化的通用数值积分器。
-
mcp07_static.py 包含 Ruzsinszky 等人 [9] 改进的 CP07 内核的静态极限,在 mcp07_static 中。此函数以波矢和密度字典作为输入。一个可选关键字,param(默认 PZ81)可以使用 Perdew-Zunger [8](PZ81)或 Perdew-Wang [6](PW92)参数化的 UEG 关联能作为输入。
-
plot_LFFs.py 生成论文中所示的 G+(gplus_plots)和 G-(gminus_plots)的绘图。这两个函数都不需要参数。
-
rMCP07.py 包含 Kaplan 等人 [5] 的波矢和频率相关的密度 LFF 的 g_rMCP07。请注意,此函数 假设 频率是纯虚数。此函数以波矢、频率的虚部(作为实数输入)和密度字典作为输入。
-
ra_lff.py 包含 Richardson 和 Ashcroft [4] 的各种 LFF。要使用他们的密度 LFF G+,请调用 g_plus_ra;要使用他们的自旋 LFF G-,请调用 g_minus_ra。两者都接受波矢(单位:波尔)和频率的虚部(单位:逆哈特里能量),以及 WS 半径(单位:波尔)作为输入。 两者都假设频率是纯虚数。
-
stiffness_refit.py 使用 PW92 框架重新拟合关联自旋刚度。要调用其功能,请使用 fit_alpha_c_new()(无参数)。
-
surf_plots.py 生成补充材料中的表面图。调用 surf_plots()(无参数)。
参考文献
-
库科宁和陈,物理评论B 104,195142 (2021)。DOI:10.1103/PhysRevB.104.195142
-
莫罗尼,塞佩利,塞纳托雷,物理评论快报 75,689 (1995)。DOI:10.1103/PhysRevLett.75.689
-
科拉迪尼,德尔索莱,奥尼达,帕鲁莫,物理评论B 57,14569 (1998)。DOI:10.1103/PhysRevB.57.14569
-
理查德森,阿什克罗夫特,物理评论B 50,8170 (1994)。DOI:10.1103/PhysRevB.50.8170
-
卡普兰,内泊尔,鲁兹辛斯基,巴拉涅,佩德韦,物理评论B 105,035123 (2022)。DOI:10.1103/PhysRevB.105.035123
-
佩德韦和汪,物理评论B 45,13244 (1992)。DOI:10.1103/PhysRevB.45.13244
-
佩德韦和汪,物理评论B 46,12947 (1992)。DOI:10.1103/PhysRevB.46.12947,以及勘误 Phys. Rev. B 56, 7018 (1997)。DOI:10.1103/PhysRevB.56.7018
-
佩德韦和宗,物理评论B 23,5048 (1981)。DOI:10.1103/PhysRevB.23.5048
-
鲁兹辛斯基,内泊尔,皮塔尔克,佩德韦,物理评论B 101,245135 (2020)。DOI:10.1103/PhysRevB.101.245135
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。
源分布
构建分布
AKCK_LFF-1.0.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 13575036226f70d99ffe2e1be3d9284501f4606e7d128ce9f74c393edb6d5122 |
|
MD5 | 27d361dfade3be5ddfa7ae0eb5e03948 |
|
BLAKE2b-256 | 8899e08796b7389f2dfbd737a25c820b8ed34863216b0cbcf1af7b87b7a95315 |
AKCK_LFF-1.0.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 63695ce128ee349f783563c9611bbe67c5fcb04c0836b835796231aad3f1f1bc |
|
MD5 | 8df90e74afb962f3b6adf1897ad76b7c |
|
BLAKE2b-256 | 4a9918befab283785b6dc39f7367bd26d72d88d16204a5cc57c6fe742614902b |