Ivano E. Castelli, Mohnish Pandey, Kristian S. Thygesen, and Karsten W. Jacobsen
Bandgap Engineering of Functional Perovskites Through Quantum Confinement and Tunneling
Phys. Rev. B 91, 165309.
We investigate the band gaps and optical spectra of functional perovskites composed of layers of the two cubic perovskite semiconductors BaSnO3-BaTaO2N and LaAlO3-LaTiO2N.
Ivano E. Castelli, Mohnish Pandey, Kristian S. Thygesen, and Karsten W. Jacobsen
Bandgap Engineering of Functional Perovskites Through Quantum Confinement and Tunneling
Phys. Rev. B 91, 165309.
key |
description |
unit |
---|---|---|
|
Direct bandgap GLLB-SC |
eV |
|
Indirect bandgap GLLB-SC |
eV |
|
Derivative discontinuity GLLB-SC |
eV |
|
Bandgap at Gamma GLLB-SC |
eV |
|
Cubic perovskite labeled as A-combination |
|
|
Cubic perovskite labeled as B-combination |
|
|
Sequence of A and B layers |
|
|
GLLBSC Gamma-gap |
Here, we plot the band gaps at
# creates: gaps.svg
import numpy as np
import matplotlib.pylab as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.cm as cm
import ase.db
con = ase.db.connect('funct_perovskites.db')
comb_A = 'BaSnO3'
comb_B = 'BaTaO2N'
gaps = []
for nA in range(1, 7):
for nB in range(1, 7):
name = nA * 'A' + nB * 'B'
row = con.get(comb_A=comb_A, comb_B=comb_B, sequence=name)
gaps.append(row.gllbsc_gamma_gap)
colors = []
for gap in gaps:
c = cm.jet(int(gap / max(gaps) * 255))
colors.append([c[0], c[1], c[2]])
x, y = np.meshgrid(range(1, 7), range(1, 7))
x = x.flat
y = y.flat
z = np.zeros_like(x)
dx = dy = 0.5 * np.ones_like(x)
dz = gaps
fig = plt.figure()
ax = Axes3D(fig, auto_add_to_figure=False)
fig.add_axes(ax)
plt.xlabel('nB, B = ' + comb_B)
plt.ylabel('nA, A = ' + comb_A)
ax.set_zlabel('Bandgap [eV]')
ax.bar3d(x, y, z, dx, dy, dz, color=colors)
plt.savefig('gaps.svg')