目录

光谱极限最大效率SLME

misaraty 更新 | 2026-03-14
前言
下载:SLME

一、程序简介

SLME_v2.py是一个用于计算Spectroscopic Limited Maximum EfficiencySLME,光谱极限最大效率)的Python脚本,在SL3ME的基础上进行了修改。SLME是对传统 Shockley–Queisser极限效率的改进指标,通过引入材料的实际吸收系数谱,能够更加真实地评估半导体材料在太阳能电池中的理论效率。

该脚本以材料的吸收系数数据(ABSORPTION.dat)为输入,并结合AM1.5G太阳光谱(am1.5G.dat)计算材料在不同厚度下的SLME。程序首先读取材料吸收谱并插值到太阳光谱波长范围,然后根据Beer–Lambert定律计算不同波长下的光吸收率,再通过积分得到短路电流Jsc和辐射复合电流J0,并通过数值优化确定最大功率点,从而得到SLME

此外,脚本还会扫描不同薄膜厚度(10-8–10-4 m)下的效率变化,并绘制SLME随厚度变化的曲线,最终输出高分辨率图像SLME_thickness.jpg。该程序适用于基于第一性原理计算得到吸收光谱的光伏材料(如CdTe、CZTS、钙钛矿等)的理论效率评估。

二、使用说明

1. 准备输入文件

需要准备两个输入文件:

(1)ABSORPTION.dat

该文件为材料吸收谱数据,可通过VASP光学性质计算获得。需要在INCAR中设置:

1
LOPTICS = .TRUE.

通常建议使用HSE06等更准确的电子结构参数进行计算,以获得更可靠的光吸收谱。

VASP计算完成后,可使用VASPKIT对光学计算结果进行后处理,提取吸收系数数据并生成ABSORPTION.dat文件。

文件格式示例:

1
2
3
4
5
6
 #energy          xx(cm^-1)       yy(cm^-1)       zz(cm^-1)       xy(cm^-1)       yz(cm^-1)       zx(cm^-1)
  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
  0.45000000E-02  0.49790876E+04  0.49792610E+04  0.49797164E+04  0.15547450E+03  0.42994138E+03  0.54052647E+03
  0.89000000E-02  0.69632953E+04  0.69635378E+04  0.69641746E+04  0.21743110E+03  0.60127306E+03  0.75592631E+03
  0.13400000E-01  0.85602803E+04  0.85605820E+04  0.85613630E+04  0.26735249E+03  0.73916417E+03  0.92926781E+03
...

第一列:能量(eV),第二到四列:x、y、z三个方向的吸收系数。

(2)am1.5G.dat

该文件为AM1.5G太阳光谱数据

2. 运行程序

1
python SLME_v2.py

程序将执行以下步骤:读取 ABSORPTION.datam1.5G.dat,计算材料的SLME,扫描不同厚度下的效率变化,在屏幕上输出SLME百分数,生成效率随厚度变化的图像。

屏幕输出示例

1
2
File: ABSORPTION.dat
Standard SLME: xx.xx%

输出文件

程序会生成SLME_thickness.jpg,展示SLME随材料厚度变化的关系曲线。

在AM1.5G太阳光谱条件下,基于光学吸收谱并采用Beer–Lambert吸收模型计算得到的吸收层厚度与光谱极限最大效率(SLME)之间的关系。

三、注意事项

1. 吸收系数单位

脚本参数:

1
absorbance_in_inverse_centimeters=True

表示程序默认认为ABSORPTION.dat中的吸收系数单位为cm^-1,程序会自动将其转换为m^-1以满足计算需要。

2. 吸收谱方向平均

ABSORPTION.dat中通常包含三个方向的吸收系数:alpha_xalpha_yalpha_z,脚本会自动对三个方向取平均:alpha = (alpha_x + alpha_y + alpha_z) / 3,以获得各向同性平均吸收系数用于SLME计算。

3. 带隙参数设置

脚本中的参数:

1
2
material_direct_allowed_gap
material_indirect_gap

分别表示材料的:

  • 直接带隙(eV)

  • 间接带隙(eV)

如果材料为直接带隙半导体,可以设置为material_direct_allowed_gap = material_indirect_gap

4. 厚度范围

程序默认扫描的材料厚度范围为10-8–10-4 m,绘图时会转换为μm,用于分析薄膜太阳能电池中材料厚度对效率的影响。