Eliashberg functionΒΆ

This example shows how to plot the Eliashberg function a2F(w) and the e-ph coupling strenght in metals.

  • ../_images/sphx_glr_plot_a2f_001.png
  • ../_images/sphx_glr_plot_a2f_002.png
  • ../_images/sphx_glr_plot_a2f_003.png

Out:

================================= File Info =================================
Name: al_888k_161616q_A2F.nc
Directory: /Users/gmatteo/git_repos/abipy/abipy/data/refs/al_eph
Size: 252.30 kb
Access Time: Sat Feb 22 16:01:55 2020
Modification Time: Wed Mar 20 16:53:35 2019
Change Time: Wed Mar 20 16:53:35 2019

================================= Structure =================================
Full Formula (Al1)
Reduced Formula: Al
abc   :   2.806386   2.806386   2.806386
angles:  60.000000  60.000000  60.000000
Sites (1)
  #  SP      a    b    c
---  ----  ---  ---  ---
  0  Al      0    0    0

Abinit Spacegroup: spgid: 0, num_spatial_symmetries: 48, has_timerev: True, symmorphic: False

============================== Electronic Bands ==============================
Number of electrons: 3.0, Fermi level: 7.129 (eV)
nsppol: 1, nkpt: 72, mband: 5, nspinor: 1, nspden: 1
smearing scheme: gaussian, tsmear_eV: 1.088, occopt: 7

================================ Phonon Bands ================================
Number of q-points: 198
Atomic mass units: {13.0: 26.981539}
Has non-analytical contribution for q --> 0: False

============================== E-PH calculation ==============================
K-mesh for electrons:
mpdivs: [12 12 12] with shifts [[0. 0. 0.]] and kptopt: 1

a2f(w) on the [4 4 4] q-mesh (ddb_ngqpt|eph_ngqpt)
Isotropic lambda: 0.22, omega_log: 0.030 (eV), 348.241 (K)

a2f(w) Fourier interpolated on the [16 16 16] q-mesh (ph_ngqpt)
Isotropic lambda: 0.24, omega_log: 0.030 (eV), 343.427 (K)
/Users/gmatteo/git_repos/pymatgen/pymatgen/util/plotting.py:550: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  plt.show()
/Users/gmatteo/git_repos/pymatgen/pymatgen/util/plotting.py:550: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  plt.show()
/Users/gmatteo/git_repos/pymatgen/pymatgen/util/plotting.py:550: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  plt.show()

from abipy import abilab
import abipy.data as abidata

phdos_path = abidata.ref_file("al_161616q_PHDOS.nc")

with abilab.abiopen(abidata.ref_file("al_888k_161616q_A2F.nc")) as ncfile:
    print(ncfile)
    #ncfile.phbands.plot()
    #ncfile.a2f_qintp.plot()
    #with_lambda = False
    #fig = ncfile.a2f_qcoarse.plot_nuterms(with_lambda=with_lambda, show=False)
    #ncfile.a2f_qintp.plot_nuterms(axmat=fig.axes, with_lambda=with_lambda)

    #ncfile.plot()
    ncfile.plot_with_a2f(phdos=phdos_path)

    ncfile.plot_eph_strength(what="gamma")
    #ncfile.plot_eph_strength(what="lambda")

    ncfile.plot_a2f_interpol()

    # Grid with 3 plots (a2F, F, a2F) with F taken from PHDOS file.
    #ncfile.a2f_qintp.plot_a2(phdos_path)

Total running time of the script: ( 0 minutes 4.611 seconds)

Gallery generated by Sphinx-Gallery