Note
Click here to download the full example code or to run this example in your browser via Binder
Infrared spectrum of AlAsΒΆ
This example shows how to plot the infrared spectrum of a polar semiconductor (AlAs) from the DDB file See tutorial/lesson_rf2.html
For a command line interfase, use:
abiview.py ddb_ir in_DDB
Out:
[33mCreating temporary file: /var/folders/nc/k69spyd12qv2tk3stk2xrxg40000gr/T/tmpt9h2ow_9mp-7000_DDB[0m
ANADDB INPUT:
# ANADDB input for phonon frequencies for a list of q-points generated by AbiPy.
ifcflag 0
asr 2
chneut 1
dipdip 1
nph1l 1
qph1l
0 0 0
1
dieflag 1
workdir: /var/folders/nc/k69spyd12qv2tk3stk2xrxg40000gr/T/tmp7j0zqn0o
================================= Structure =================================
Full Formula (Si3 O6)
Reduced Formula: SiO2
abc : 4.949906 4.949906 5.440897
angles: 90.000000 90.000000 120.000000
Sites (9)
# SP a b c
--- ---- -------- -------- --------
0 Si 0.528855 0 0.833333
1 Si 0.471145 0.471145 0.5
2 Si 0 0.528855 0.166667
3 O 0.413167 0.147706 0.620242
4 O 0.852294 0.265462 0.953576
5 O 0.734538 0.586833 0.286909
6 O 0.265462 0.852294 0.046424
7 O 0.147706 0.413167 0.379758
8 O 0.586833 0.734538 0.713091
Abinit Spacegroup: spgid: 0, num_spatial_symmetries: 6, has_timerev: True, symmorphic: True
============================ Oscillator strength ============================
Real part in Cartesian coordinates. a.u. units; 1 a.u. = 253.2638413 m3/s2. Set to zero below 1.00e-06.
xx yy zz yz xz xy
mode
0 0.0 0.0 0.0 0.0 0.0 0.0
1 0.0 0.0 0.0 0.0 0.0 0.0
2 0.0 0.0 0.0 0.0 0.0 0.0
3 0.0 0.0 0.0 0.0 0.0 0.0
4 0.0 0.0 0.0 0.0 0.0 0.0
5 0.0 0.0 0.0 0.0 0.0 0.0
6 4.424721071887155e-06 0.0 0.0 0.0 0.0 0.0
7 0.0 4.4247210721060125e-06 0.0 0.0 0.0 0.0
8 0.0 0.0 0.0 0.0 0.0 0.0
9 0.0 0.0 0.00011308265177993414 0.0 0.0 0.0
10 6.992796119441694e-05 0.0 0.0 0.0 0.0 0.0
11 0.0 6.992796120317467e-05 0.0 0.0 0.0 0.0
12 0.0 0.00019407121095825906 0.0 0.0 0.0 0.0
13 0.00019407121096247612 0.0 0.0 0.0 0.0 0.0
14 0.0 0.0 0.0 0.0 0.0 0.0
15 0.0 0.0 0.0002088048331944179 0.0 0.0 0.0
16 0.0 1.3565145055186532e-05 0.0 0.0 0.0 0.0
17 1.35651450549781e-05 0.0 0.0 0.0 0.0 0.0
18 0.0 0.0 7.53302028638474e-05 0.0 0.0 0.0
19 0.0 8.105029357467735e-05 0.0 0.0 0.0 0.0
20 8.105029357316916e-05 0.0 0.0 0.0 0.0 0.0
21 0.0 0.0009908321002341537 0.0 0.0 0.0 0.0
22 0.0009908321002363605 0.0 0.0 0.0 0.0 0.0
23 0.0 0.0 0.00104343737460126 0.0 0.0 0.0
24 0.0 0.0 0.0 0.0 0.0 0.0
25 1.2586418339120033e-05 0.0 0.0 0.0 0.0 0.0
26 0.0 1.2586418336794277e-05 0.0 0.0 0.0 0.0
============================= Dielectric Tensors =============================
Electronic dielectric tensor (eps_inf) in Cartesian coordinates. Set to zero below 1.00e-03.
x y z
x 2.45581 0.00000 0.000000
y 0.00000 2.45581 0.000000
z 0.00000 0.00000 2.486826
Zero-frequency dielectric tensor (eps_zero) in Cartesian coordinates. Set to zero below 1.00e-03.
x y z
x 4.564213 0.000000 0.000000
y 0.000000 4.564213 0.000000
z 0.000000 0.000000 4.783768
import os
import abipy.data as abidata
from abipy import abilab
# Open DDB file for alpha-SiO2 taken from https://materialsproject.org/materials/mp-7000/
filepath = os.path.join(abidata.dirpath, "refs", "mp-7000_DDB.bz2")
ddb = abilab.abiopen(filepath)
# Invoke anaddb to compute dielectric tensor and oscillator strength.
tgen = ddb.anaget_dielectric_tensor_generator(asr=2, chneut=1, dipdip=1, verbose=1)
print(tgen)
# Set phonon damping factor in eV (full width).
gamma_ev = 1e-3
# Plot IR spectrum in Cartesian coordinates.
tgen.plot_all(gamma_ev=gamma_ev, title="Diagonal and off-diagonal components")
tgen.plot(component="diag", reim="re", gamma_ev=gamma_ev, title="Real part, diagonal components")
tgen.plotly(component="diag", reim="re", gamma_ev=gamma_ev, title="Real part, diagonal components")
tgen.plot(component="diag", reim="im", gamma_ev=gamma_ev, title="Imaginary part, diagonal components")
tgen.plotly(component="diag", reim="im", gamma_ev=gamma_ev, title="Imaginary part, diagonal components")
ddb.close()
Total running time of the script: ( 0 minutes 2.067 seconds)