铁电 BaTiO3 的自发极化
铁电(FE)材料具有自发电极化的特性,可以通过施加外部电场实现逆转。FE 材料可应用于电容器、铁电随机存取存储器(RAM),最近在铁电隧道结(FTJ)中展示出巨电阻效应[1] [2]。
研究最多的 FE 材料之一是钛酸钡(BaTiO3),也就是本教程的主题。在继续计算之前,让我们先简要总结一些核心理论概念。
FE 材料的理论认识由所谓的电极化现代理论来描述[3]。通常将材料的极化分成电子和离子两部分。后者可以使用简单的经典静电点电荷求和计算获得。
$$\mathbf{P}_i = \frac{|e|}{\Omega}\sum_\nu Z^\nu_\mathrm{ion} \mathbf{r}^\nu,$$
$Z^\nu_\mathrm{ion}$ 和 $\mathbf{r}^\nu$ 是原子 $\nu$ 的价电荷和位置矢量,$\Omega$ 为单胞体积,求和范围为单胞里的所有离子。
电子对电极化的贡献可从如下公式得到[3]:
$$\mathbf{P}_e = -\frac{2|e|i}{(2\pi)^3}\int_A d\mathbf{k}_\bot\sum_{n=1}^M\int_0^{G_\parallel}\langle u_{\mathbf{k},n}| \frac{\partial}{\partial k_\parallel}|u_{\mathbf{k},n}\rangle dk_\parallel,$$
这里的求和范围为所有的占据能带,$k_\parallel$ 平行于极化方向,$G_\parallel$ 为相同方向上的倒易晶格矢量。$|u_{\mathbf{k},n}\rangle$ 态为Bloch 函数的晶胞周期性部分,$\psi_{\mathbf{k},n}(\mathbf{r}) = u_{n,\mathbf{k}}(\mathbf{r})e^{i\mathbf{k}\cdot\mathbf{r}}$。最后一个积分被称为贝利相位。 垂直方向上的积分易与几个 k 点交叉。而平行方向上的 k 点数量应该更大。
总的电极化为简单地电子贡献部分和离子贡献部分的加和,
$$\mathbf{P}_t = \mathbf{P}_i + \mathbf{P}_e.$$
参考文献[3]中的一个重要发现为电极化是一个多值函数,而实际上形成了一个晶格。原因在于电子极化 $\mathbf{P}_e$ 是由对 $2\pi$ 取模计算得到的贝利相位确定的。同样地,如果所有的离子在任一方向上被晶格常数取代,离子贡献部分 $\mathbf{P}_i$ 就会得到一个不同的值。
因此,电极化是一个周期函数,周期称为极化量子,$\mathbf{P}_q^j=\frac{|e|\mathbf{R}^j}{\Omega}$,$e$ 是电子电荷,$\mathbf{R}^j$ 是指晶格矢量 $j$,$\Omega$ 为单胞体积。
鉴于极化的多值性,只有极化差异也许并不奇怪,两个不同结构之间的 $\Delta \mathbf{P}$ 是具有明确性的。
ATK 分别计算和报告电子贡献部分和离子贡献部分,还有极化量子。
注意,该操作对于金属系统不起作用,并且在可能的情况下应该优选正交晶胞。在 2D 系统和非正交单元中使用时应彻底地测试使用的设置和结果。
本教程使用特定版本的QuantumATK创建,因此涉及的截图和脚本参数可能与您实际使用的版本略有区别,请在学习时务必注意。
钛酸钡(BaTiO3)室温下为四方晶体结构,单胞在 c 方向上略微伸长。内应力进一步使 c 方向上的分数坐标偏离其高对称位置。在本教程中,我们使用从 Inorganic Crystal Structure Database (ICSD)中获得的实验晶格常数和坐标。以下 QuantumATK 格式给出的结构如下[4]
# Set up lattice lattice = SimpleTetragonal(3.9945*Angstrom, 4.0335*Angstrom) # Define elements elements = [Barium, Titanium, Oxygen, Oxygen, Oxygen] # Define coordinates fractional_coordinates = [[ 0. , 0. , 0. ], [ 0.5 , 0.5 , 0.51427 ], [ 0.5 , 0.5 , 0.974477], [ 0.5 , 0. , 0.487618], [ 0. , 0.5 , 0.487618]] # Set up configuration bulk_configuration = BulkConfiguration( bravais_lattice=lattice, elements=elements, fractional_coordinates=fractional_coordinates )
在本节,您将为计算 BaTiO3 晶体电极化设置采用 局域密度近似(LDA)的 DFT 计算。您将使用 QuantumATK 进行计算,建议先参阅 QuantumATK tutorial 熟悉基本工作流程。
启动 QuantumATK,为本例创建一个新项目,用一个新的空目录。选择上面 python 脚本中的 BaTiO3 结构文本并拖拽到 Script Generator 按钮 上。该工具将解译脚本并打开导入的结构。
或者,您可以将脚本保存到项目目录中,然后将文件从 QuantumATK 主窗口拖放 Script Generator。
接下来的步骤如下:
BaTiO3_lda.nc
。现在双击“Script”面板上的 New Calculator 模块打开计算器窗口。
设置 k 点取样为 5×5×5,其他选项按照默认设置就可以了。
下一步要为极化分析调整参数。双击 Polarization 模块。
将对角线上的 k 点数目增加到 20。这是沿着积分线的k点数,需要相对较高。您应该始终通过比较具有不同k点数的计算来检验收敛。其他的 k 点值取 5 对应于横向 k 点数目以用于在布里渊区平均。相对于横向 k 点的数目,极化值收敛地相对较快,因此我们使用默认值。
您现在已经完成了脚本设置。保存脚本为“BaTiO3_lda.py”。发送脚本到 Job Manager,运行作业。几分钟后计算完成,您就可以检查结果了。
请向下滚动日志文件到末尾,检查报告计算得到的极化,您将找到如下所示的报告。
+------------------------------------------------------------------------------+ | Polarization | +------------------------------------------------------------------------------+ | Electronic fractional polarization. | | Values wrapped to the interval [-0.5,0.5] | | [ -1.25164671e-15 ] | | Pe= [ -6.42868666e-16 ] | | [ -4.71901310e-01 ] | +------------------------------------------------------------------------------+ | Ionic fractional polarization. | | Values wrapped to the interval [-0.5,0.5] | | [ 0.00000000e+00 ] | | Pi= [ 0.00000000e+00 ] | | [ -2.44642000e-01 ] | +------------------------------------------------------------------------------+ | Total fractional polarization. Pt = Pe + Pi. | | Values wrapped to the interval [-0.5,0.5] | | [ -1.25164671e-15 ] | | Pt= [ -6.42868666e-16 ] | | [ 2.83456690e-01 ] | +------------------------------------------------------------------------------+ | Total cartesian polarization. | | [ -1.24465114e-15 ] | | Pt= [ -6.39275613e-16 ] C/Meter**2 | | [ 2.84624464e-01 ] | +------------------------------------------------------------------------------+ | Polarization quantum. | | [ 9.94410906e-01 ] | | Pq= [ 9.94410906e-01 ] C/Meter**2 | | [ 1.00411976e+00 ] | +------------------------------------------------------------------------------+
您也可以选中 LabFloor 上“BaTiO3_lda.py”文件里的极化数据块,点击 Show Text Representation… 以检查结果。
输出应该包含以下 5 个计算值:
依据极化现代理论[3],只有两种构型的极化差异才是明确的特性。为了计算四方 BaTiO3 的自发极化,因此也需要计算出以下中心对称无畸变结构的极化:
# Set up lattice lattice = SimpleTetragonal(3.9945*Angstrom, 4.0335*Angstrom) # Define elements elements = [Barium, Titanium, Oxygen, Oxygen, Oxygen] # Define coordinates fractional_coordinates = [[ 0.0 , 0. , 0. ], [ 0.5 , 0.5 , 0.5 ], [ 0.5 , 0.5 , 1.0 ], [ 0.5 , 0. , 0.5 ], [ 0.0 , 0.5 , 0.5 ]] # Set up configuration bulk_configuration = BulkConfiguration( bravais_lattice=lattice, elements=elements, fractional_coordinates=fractional_coordinates )
您可以重复以上步骤计算该结构的极化。结果是所有的极化组分都为 0。四方 BaTiO3 的自发极化符合以上报告的无序结构之值。
计算得到在 z 方向上的总笛卡尔电极值 $\mathbf{P}_t(z)=0.284 $ C/m2 与实验数据 0.26 C/m2 吻合较好[5]。