Quantities

Computators in WfBase can be used to store a lot of data. Information about this data can be accessed using the info function. Below is an example code that computes various data, stores it into a computator comp, and then accesses information about all of this data.

Here you can find more information about the structure of the computator object.

# Copyright under GNU General Public License 2024
# by Sinisa Coh (see gpl-wfbase.txt)

import wfbase as wf

db = wf.load("data/au_fcc.wf")

# create computator with all basic quantities
comp = db.do_mesh(to_compute = ["psi", "A", "S", "dEdk"])

# get some additional quantities
comp.compute_occupation("f")
comp.compute_occupation_derivative("dfdE")
comp.compute_kronecker("d", "E", 1)
comp.compute_identity("one", 3)
comp.compute_photon_energy("hbaromega")
comp.compute_orbital_character("O")
comp.compute_optical_offdiagonal("L", "hbaromega")
comp.compute_optical_offdiagonal_polarization("R", "hbaromega", "x + i y")
comp.compute_hbar_velocity("hbarv")

# evaluate some user-specified quantity
comp.evaluate("sigma_oij <= (j / (numk * volume)) * (f_km - f_kn) * \
         Real((E_km - E_kn) / (E_km - E_kn - hbaromega_o - j*eta)) * \
         A_knmi * A_kmnj")

# now get all the information about it
comp.info(show_code = True)

Below is the output generated by the python code above.

==============
 Quantity *A*
==============

:Shape:
    (512, 18, 18, 3)

:Value:
    [[[[ 4.244e-16-1.319e-17j -8.514e-17-4.097e-18j -2.467e-16+1.063e-18j]
       [-6.511e-17-1.307e-18j  2.178e-17+1.325e-16j  1.562e-16-8.918e-17j]
       [-3.424e-16+3.200e-16j -3.840e-16-3.446e-16j  4.196e-17-2.152e-16j]
       ...
       [ 3.834e-03+5.141e-04j  1.108e-03-3.306e-03j  2.775e-03+3.185e-04j]
       [ 3.891e-04-4.802e-05j  5.738e-04-5.171e-04j  2.762e-03-7.757e-04j]
       [ 1.405e-03+3.526e-04j -4.172e-03-3.285e-04j  2.433e-04+1.968e-03j]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    Ang

:Origin story:
    This is the Berry connection that can be used to compute the optical matrix
    elements and other related quantities.

:Indices:
    This quantity has these indices
    [k, n, m, a]

    Definition of the quantity in terms of the same indices as above
    < u_kn | i delk_a | u_km >

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the bra state
    #2 index "m" corresponds to the electron band index of the ket state
    #3 index "a" corresponds to the k-derivative in Cartesian axes (0 for x, 1 for y, 2 for z)




================
 Quantity *Ang*
================

:Shape:
    ()

:Value:
    1.0

:Units:
    Ang

:Origin story:
    Constant equal to 1 angstrom.



==============
 Quantity *E*
==============

:Shape:
    (512, 18)

:Value:
    [[-9.411 -9.411 -5.133 ... 24.963 24.963 24.963]
     [-8.904 -8.904 -5.131 ... 22.698 24.517 24.517]
     [-7.702 -7.702 -5.049 ... 20.445 23.1   23.1  ]
     ...
     [-6.944 -6.944 -5.182 ... 16.089 22.222 22.222]
     [-8.122 -8.122 -5.252 ... 19.069 24.047 24.047]
     [-8.904 -8.904 -5.131 ... 22.698 24.517 24.517]]

:Units:
    eV

:Origin story:
    Band energies E computed from Wannier interpolation. The Fermi level was
    computed on a DFT coarse mesh and then bands were shifted so that the Fermi
    level was set to zero. If you use a very fine k-mesh then the Fermi level
    will have to be recomputed for your k-mesh, but it will likely still be
    close to zero. Note: due to the nature of the Wannier interpolation, some of
    the bands far above the Fermi level do not correspond to the actual bands
    computed in the DFT. Typically this is not a problem as one usually cares
    about states close to the Fermi level. All electron states around the Fermi
    level, as well as in the valence bands should be well reproduced. Quantities
    "reliableminenergy" and "reliablemaxenergy" give you an energy window in
    which band energies are reliable. Similarly, due to the nature of
    pseudopotential calculations, these band structures do not contain deep core
    states, but again, these are often not needed.

:Indices:
    This quantity has these indices
    [k, n]

    Definition of the quantity in terms of the same indices as above
    H_k u_kn = E_kn u_kn

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index




==============
 Quantity *L*
==============

:Shape:
    (512, 18, 18, 3, 31)

:Value:
    [[[[[ 0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j ...
          0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j]
        [ 0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j ...
          0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j]
        [ 0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j ...
          0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j]]

       [[ 2.313e-31+4.643e-33j  1.983e-31+3.980e-33j  1.735e-31+3.482e-33j ...
    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    eV

:Origin story:
    Off-diagonal matrix element for electron-light interaction. Diagonal
    elements of this matrix are set to zero by hand. The maximal electric field
    strength of the incoming light is set to 1 V/Ang. The unit of the matrix
    element is therefore energy (eV).

:Indices:
    This quantity has these indices
    [k, n, m, d, o]

    Definition of the quantity in terms of the same indices as above
    0.5 (E_kn - E_km) < u_kn | i del_k_d | u_km > / hbaromega_o

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the bra state
    #2 index "m" corresponds to the electron band index of the ket state
    #3 index "d" corresponds to the direction of the E-field of light in Cartesian (0 for x, 1 for y, 2 for z)
    #4 index "o" corresponds to the index for photon energy hbaromega




==============
 Quantity *O*
==============

:Shape:
    (512, 18, 18)

:Value:
    [[[2.202e-04 1.664e-01 2.202e-04 ... 1.231e-32 1.312e-31 6.845e-33]
      [1.664e-01 2.202e-04 1.664e-01 ... 2.232e-33 2.039e-32 2.784e-33]
      [6.800e-05 2.610e-03 6.800e-05 ... 8.753e-02 3.009e-02 3.374e-02]
      ...
      [3.711e-03 1.554e-01 3.711e-03 ... 3.902e-32 4.087e-32 4.554e-32]
      [3.242e-01 3.695e-03 3.242e-01 ... 8.633e-33 3.113e-33 3.584e-33]
      [2.999e-03 2.263e-02 2.999e-03 ... 6.998e-31 3.068e-31 1.243e-32]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    1

:Origin story:
    Approximate orbital character of wavefunction in terms of localized atomic-
    like function. The sum over orbitals adds up to 1. The description of
    localized orbitals are given by quantity *orbitallabels* (available only if
    your database was loaded from the WfBase's database).

:Indices:
    This quantity has these indices
    [k, n, m, d, o]

    Definition of the quantity in terms of the same indices as above
    || < W_m | u_kn > ||^2

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index
    #2 index "m" corresponds to the localized orbital index




==============
 Quantity *R*
==============

:Shape:
    (512, 18, 18, 31)

:Value:
    [[[[ 0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j ...
         0.000e+00+0.000e+00j  0.000e+00+0.000e+00j  0.000e+00+0.000e+00j]
       [-2.394e-31+8.201e-32j -2.052e-31+7.030e-32j -1.795e-31+6.151e-32j ...
        -4.224e-32+1.447e-32j -4.103e-32+1.406e-32j -3.989e-32+1.367e-32j]
       [ 2.939e-15-3.012e-15j  2.519e-15-2.582e-15j  2.204e-15-2.259e-15j ...
         5.187e-16-5.315e-16j  5.039e-16-5.163e-16j  4.899e-16-5.020e-16j]
       ...
       [-1.813e-02+2.042e-02j -1.554e-02+1.751e-02j -1.360e-02+1.532e-02j ...
    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    eV

:Origin story:
    Off-diagonal matrix element for electron-light interaction for a circular
    x+jy polarization of light. Diagonal elements of this matrix are set to zero
    by hand. The maximal electric field strength of the incoming light is set to
    1 V/Ang. The unit of the matrix element is therefore energy (eV).

:Indices:
    This quantity has these indices
    [k, n, m, o]

    Definition of the quantity in terms of the same indices as above
    0.5 (E_kn - E_km) < u_kn | i delk_x+jy | u_km > / hbaromega_o

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the bra state
    #2 index "m" corresponds to the electron band index of the ket state
    #3 index "o" corresponds to the index for photon energy hbaromega




==============
 Quantity *S*
==============

:Shape:
    (512, 18, 18, 3)

:Value:
    [[[[ 7.082e-02-8.669e-19j  1.619e-02+1.516e-18j  9.974e-01-2.789e-17j]
       [ 9.723e-01-2.229e-01j  2.223e-01+9.748e-01j -7.264e-02+3.293e-16j]
       [ 1.967e-10-4.731e-11j -4.630e-10-1.542e-09j -3.587e-09+1.293e-09j]
       ...
       [ 2.406e-17+5.520e-18j -6.789e-17+2.327e-16j -3.050e-16+7.181e-17j]
       [ 3.729e-17+5.032e-17j -4.716e-17+3.486e-17j  1.617e-16-5.337e-17j]
       [-1.443e-17+1.786e-16j -3.718e-17+4.263e-17j  1.957e-16-7.266e-17j]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    muB

:Origin story:
    Matrix elements of the spin magnetic moment operator.

:Indices:
    This quantity has these indices
    [k, n, m, a]

    Definition of the quantity in terms of the same indices as above
    < u_kn | Mspin_a | u_km >

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the bra state
    #2 index "m" corresponds to the electron band index of the ket state
    #3 index "a" corresponds to the direction of spin in Cartesian axes (0 for x, 1 for y, 2 for z)




=====================
 Quantity *atomname*
=====================

:Shape:
    (1,)

:Value:
    ['Au']

:Units:
    1

:Origin story:
    Array of names of atoms in the computational unit cell.

:Indices:
    This quantity has these indices
    [j]

    #0 index "j" corresponds to the index of the atom in the unit cell




====================
 Quantity *atomred*
====================

:Shape:
    (1, 3)

:Value:
    [[0. 0. 0.]]

:Units:
    1

:Origin story:
    Reduced coordinates of atom positions.

:Indices:
    This quantity has these indices
    [j, r]

    #0 index "j" corresponds to the index of the atom in the unit cell
    #1 index "r" corresponds to the reduced coordinates axis




=================
 Quantity *cell*
=================

:Shape:
    (3, 3)

:Value:
    [[-2.077 -0.     2.077]
     [ 0.     2.077  2.077]
     [-2.077  2.077  0.   ]]

:Units:
    Ang

:Origin story:
    Computational unit cell vectors.

:Indices:
    This quantity has these indices
    [i, a]

    #0 index "i" corresponds to the index of the cell vector
    #1 index "a" corresponds to the Cartesian axis (0 for x, 1 for y, 2 for z)




========================
 Quantity *coarsekmesh*
========================

:Shape:
    (3,)

:Value:
    [8 8 8]

:Units:
    1

:Origin story:
    The size of the coarse k-mesh used to create Wannier functions

:Indices:
    This quantity has these indices
    [r]

    #0 index "r" corresponds to the reduced reciprocal axis




==============
 Quantity *d*
==============

:Shape:
    (18, 18)

:Value:
    [[1. 0. 0. 0. 0. 0. 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. 0. 0. 0. 0.]
     [0. 0. 1. 0. 0. 0. 0. 0. 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. 0. 0.]
     [0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 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.]
     [0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
     [0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    1

:Origin story:
    Kronecker delta. Equals one when two indices are the same (on the diagonal)
    and equals zero otherwise.

:Indices:
    This quantity has these indices
    [x, y]

    #0 index "x" corresponds to the same as index #1 of quantity *E
    #1 index "y" corresponds to the same as index #1 of quantity *E




=================
 Quantity *dEdk*
=================

:Shape:
    (512, 18, 3)

:Value:
    [[[ 4.685e-15+1.945e-17j  4.875e-15-4.045e-17j  7.085e-16-1.063e-15j]
      [-2.007e-16-1.497e-15j  6.088e-15-8.788e-16j  1.825e-16-1.084e-15j]
      [ 6.303e-18+1.733e-17j  9.097e-17+4.826e-18j -1.563e-16-9.542e-17j]
      ...
      [-8.513e-15+9.319e-16j  3.652e-15+7.982e-16j -5.413e-15-1.614e-16j]
      [ 5.544e-16+1.825e-16j  3.968e-15+9.920e-17j  6.170e-16+2.614e-16j]
      [ 1.388e-16+1.260e-16j -4.318e-15+1.796e-16j  5.144e-15-1.061e-15j]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    eV Ang

:Origin story:
    This is hbar times the Fermi velocity.

:Indices:
    This quantity has these indices
    [k, n, a]

    Definition of the quantity in terms of the same indices as above
    d E_kn / d k_a  (= hbar Vfermi_kna)

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index
    #2 index "a" corresponds to the k-derivative in Cartesian axes (0 for x, 1 for y, 2 for z)




=================
 Quantity *dfdE*
=================

:Shape:
    (512, 18)

:Value:
    [[-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]
     [-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]
     [-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]
     ...
     [-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]
     [-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]
     [-7.44e-43 -7.44e-43 -7.44e-43 ... -7.44e-43 -7.44e-43 -7.44e-43]]

:Units:
    eV^(-1.0)

:Origin story:
    Derivative of the Fermi-Dirac occupation factor.

:Indices:
    This quantity has these indices
    [k, n]

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index




===============
 Quantity *eV*
===============

:Shape:
    ()

:Value:
    1.0

:Units:
    eV

:Origin story:
    Constant equal to 1 eV.



===============
 Quantity *ef*
===============

:Shape:
    ()

:Value:
    0.0

:Units:
    eV

:Origin story:
    This is the Fermi level. It is set to zero as we subtract the DFT-computed
    Fermi level on a coarse mesh from the Hamiltonian in the Wannier basis.
    Note: if you compute band structure on a very fine mesh, and then recompute
    the Fermi level from that band-structure, you will likely get a Fermi level
    that is not exactly zero. This is to be expected, as the Fermi level will be
    somewhat sensitive on the k-mesh you choose and the smearing you use for the
    occupations. However, one can expect that 0.0 is a good approximation of the
    Fermi level for any k-mesh you use, but you may need to check this on your
    own for a very fine mesh.



================
 Quantity *eta*
================

:Shape:
    ()

:Value:
    0.1

:Units:
    eV



==============
 Quantity *f*
==============

:Shape:
    (512, 18)

:Value:
    [[1. 1. 1. ... 0. 0. 0.]
     [1. 1. 1. ... 0. 0. 0.]
     [1. 1. 1. ... 0. 0. 0.]
     ...
     [1. 1. 1. ... 0. 0. 0.]
     [1. 1. 1. ... 0. 0. 0.]
     [1. 1. 1. ... 0. 0. 0.]]

:Units:
    1

:Origin story:
    Has an entry equal to 1 for all entries where E < ef otherwise it is 0.

:Indices:
    This quantity has these indices
    [k, n]

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index




======================
 Quantity *hbaromega*
======================

:Shape:
    (31,)

:Value:
    [0.5   0.583 0.667 0.75  0.833 0.917 1.    1.083 1.167 1.25  1.333 1.417 1.5
     1.583 1.667 1.75  1.833 1.917 2.    2.083 2.167 2.25  2.333 2.417 2.5   2.583
     2.667 2.75  2.833 2.917 3.   ]

:Units:
    eV

:Origin story:
    Photon energies hbar*omega on an equidistant mesh of values.

:Indices:
    This quantity has these indices
    [o]

    #0 index "o" corresponds to the index of the photon energy




==================
 Quantity *hbarv*
==================

:Shape:
    (512, 18, 18, 3)

:Value:
    [[[[ 4.685e-15+1.945e-17j  4.875e-15-4.045e-17j  7.085e-16-1.063e-15j]
       [-4.643e-33+2.313e-31j  4.707e-31-7.737e-32j -3.168e-31-5.549e-31j]
       [ 1.369e-15+1.465e-15j -1.474e-15+1.643e-15j -9.207e-16-1.795e-16j]
       ...
       [ 1.767e-02-1.318e-01j -1.136e-01-3.810e-02j  1.095e-02-9.539e-02j]
       [-1.651e-03-1.337e-02j -1.777e-02-1.973e-02j -2.666e-02-9.492e-02j]
       [ 1.212e-02-4.831e-02j -1.129e-02+1.434e-01j  6.766e-02-8.365e-03j]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    eV Ang

:Origin story:
    Matrix element of hbar*velocity operator. Includes both diagonal elements
    (computed from the Fermi velocity) and off-diagonal elements (computed from
    the Berry connection).

:Indices:
    This quantity has these indices
    [k, n, m, d]

    Definition of the quantity in terms of the same indices as above
    [if n == m]  (d E_kn / d k_d) delta_nm
    [if n != m]  i (E_kn - E_km) < u_kn | i del_k_d | u_km >

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the bra state
    #2 index "m" corresponds to the electron band index of the ket state
    #3 index "d" corresponds to the direction of velocity in Cartesian (0 for x, 1 for y, 2 for z)




================
 Quantity *muB*
================

:Shape:
    ()

:Value:
    1.0

:Units:
    muB

:Origin story:
    Constant equal to 1 bohr magneton.



=================
 Quantity *numk*
=================

:Shape:
    ()

:Value:
    512

:Units:
    1

:Origin story:
    Total number of k-points in the mesh.



====================
 Quantity *numwann*
====================

:Shape:
    ()

:Value:
    18

:Units:
    1

:Origin story:
    The number of Wannier bands. Also, the number of electron states that are
    computed at each k-point.



================
 Quantity *one*
================

:Shape:
    (3, 3)

:Value:
    [[1.+0.j 0.+0.j 0.+0.j]
     [0.+0.j 1.+0.j 0.+0.j]
     [0.+0.j 0.+0.j 1.+0.j]]

:Units:
    1

:Origin story:
    Identity matrix.

:Indices:
    This quantity has these indices
    [x, y]

    #0 index "x" corresponds to the generic index.
    #1 index "y" corresponds to the generic index.




==========================
 Quantity *orbitallabels*
==========================

:Shape:
    (18,)

:Value:
    ['\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{-{\\rm x}}^{\\uparrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{-{\\rm x}}^{\\downarrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{+{\\rm x}}^{\\uparrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{+{\\rm x}}^{\\downarrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{-{\\rm y}}^{\\uparrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{-{\\rm y}}^{\\downarrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{+{\\rm y}}^{\\uparrow}'
     '\\left( {\\rm s}{\\rm p}^3{\\rm d}^2 \\right)_{+{\\rm y}}^{\\downarrow}'
    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    1

:Origin story:
    Array of names of localized atomic-like orbitals used in the decomposition
    of the wavefunction *psi*. Uparrow and downarrow refer to spin angular
    momentum (opposite to the spin magnetic moment). All orbitals are centered
    on the atom at the origin. Directions x, y, and z are along Cartesian
    directions. Spin axis is along the z-axis. There are six sp3d2 hybrids
    orbitals (six for each spin). These orbitals have center-of-mass weight
    displaced along +/-x, +/-y, or +/-z axes.

:Indices:
    This quantity has these indices
    [p]

    #0 index "p" corresponds to the localized orbital index




================
 Quantity *psi*
================

:Shape:
    (512, 18, 18)

:Value:
    [[[ 1.484e-02+0.000e+00j -3.977e-01-9.095e-02j  1.484e-02+1.450e-17j ...
       -6.324e-17+9.117e-17j  1.496e-16+3.299e-16j -4.463e-17-6.967e-17j]
      [ 4.080e-01-0.000e+00j  1.446e-02+3.308e-03j  4.080e-01+4.962e-18j ...
        6.334e-18+4.682e-17j -1.637e-17-1.418e-16j  2.260e-18-5.272e-17j]
      [ 8.246e-03+0.000e+00j -4.902e-02+1.440e-02j  8.246e-03+2.233e-18j ...
        2.554e-02+2.947e-01j -1.277e-02-1.730e-01j -1.134e-02+1.833e-01j]
      ...
      [ 6.092e-02+0.000e+00j -3.691e-01-1.385e-01j -6.092e-02+1.391e-16j ...
    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    1

:Origin story:
    This is the electron wavefunction written in terms of the localized Wannier
    state. The approximate atomic-like orbital characters of these localized
    Wannier states are given by quantity *orbitallabels* (available only if your
    database was loaded from the WfBase's database).

:Indices:
    This quantity has these indices
    [k, n, p]

    Definition of the quantity in terms of the same indices as above
    psi_knp = < W_p | psi_kn >

    #0 index "k" corresponds to the index of a k-point
    #1 index "n" corresponds to the electron band index of the state
    #2 index "p" corresponds to the localized orbital index




==================
 Quantity *recip*
==================

:Shape:
    (3, 3)

:Value:
    [[-1.513 -1.513  1.513]
     [ 1.513  1.513  1.513]
     [-1.513  1.513 -1.513]]

:Units:
    Ang^(-1.0)

:Origin story:
    Reciprocal unit cell vectors.

:Indices:
    This quantity has these indices
    [i, a]

    #0 index "i" corresponds to the index of the reciprocal cell vector
    #1 index "a" corresponds to the Cartesian axis (0 for x, 1 for y, 2 for z)




==============================
 Quantity *reliablemaxenergy*
==============================

:Shape:
    ()

:Value:
    10.951839332415805

:Units:
    eV

:Origin story:
    Due to the nature of the Wannier interpolation, the electronic properties
    are well reproduced for the valence band, up to some energy around the Fermi
    level. This number gives you a maximal energy up to which you should trust
    the electronic properties. For a lot of calculations, one does not need to
    worry about the states that are too far from the Fermi level. The energy of
    this window includes the fact that the Fermi level is set to zero.



==============================
 Quantity *reliableminenergy*
==============================

:Shape:
    ()

:Value:
    -9.61084045035559

:Units:
    eV

:Origin story:
    Similarly to reliablemaxenergy, parameter reliableminenergy gives you the
    minimal energy for the range with reliable band properties. States below
    reliableminenergy, such as core states, are given by Wannier interpolation.
    The interaction of valence with core and semi-core states is included, of
    course, but the energies of core states themselves will not show up here.



==================
 Quantity *sigma*
==================

:Shape:
    (31, 3, 3)

:Value:
    [[[-1.470e-19-2.358e-02j -3.258e-18+1.711e-18j -3.065e-17-6.410e-18j]
      [ 3.143e-18+4.233e-18j -9.175e-20-2.358e-02j -2.493e-17-1.700e-18j]
      [ 3.062e-17-1.048e-17j  2.496e-17-3.409e-18j  1.623e-20-2.358e-02j]]

     [[-1.741e-19-2.780e-02j -3.075e-18+9.940e-19j -3.202e-17-9.555e-18j]
      [ 2.800e-18+3.722e-18j -1.087e-19-2.780e-02j -2.523e-17-2.555e-18j]
      [ 3.204e-17-1.093e-17j  2.551e-17-3.274e-18j  1.747e-20-2.780e-02j]]

    ... cutting long output ... set parameter "full" to True to get complete output.

:Units:
    Ang^(-1.0)

:Origin story:
    This quantity was computed by parsing the following string

        sigma_oij <= (j / (numk * volume)) * (f_km - f_kn) * Real((E_km - E_kn)
        / (E_km - E_kn - hbaromega_o - j*eta)) * A_knmi * A_kmnj

:Python code:

##################################################################################
def evaluate_directly(__object):
    import numpy as np
    from opt_einsum import contract as opteinsum

    _orig_shp = {}
    _f = []
    _s = {}
    __brod00 = np.copy(__object["f"])
    __brod00 = __brod00[:,:,None] - (__object["f"])[:,None,:]
    __brod01 = np.copy(__object["E"])
    __brod01 = __brod01[:,:,None] - (__object["E"])[:,None,:]
    __brod02 = np.array(complex(1.0j))
    __brod02 = __brod02 * (__object["eta"])
    __brod03 = np.copy(__object["E"])
    __brod03 = __brod03[:,:,None,None] - (__object["E"])[:,None,:,None]
    __brod03 = __brod03.squeeze(axis = (3,))
    __brod03 = __brod03[:,:,:,None] - (__object["hbaromega"])[None,None,None,:]
    __brod03 = __brod03 - (__brod02)
    __brod04 = np.copy(__brod01)
    __brod04 = __brod04[:,:,:,None] * ((1.0/(__brod03)))[:,:,:,:]
    __mult00 = opteinsum(",,,kmn,kmno,knmi,kmnj->oij",\
                         complex(1.0j),\
                         (1.0/(__object["numk"])),\
                         (1.0/(__object["volume"])),\
                         __brod00,\
                         np.real(__brod04),\
                         __object["A"],\
                         __object["A"])
    __value = __mult00
    return __value
##################################################################################

:LaTeX:
    $\sigma_{oij} \Leftarrow \displaystyle\sum_{ kmn } \frac{ i }{ N_{\rm k} \,
    V_{\rm c} } \, \left( f_{km} - f_{kn} \right) \, {\rm Re} \left( \frac{
    E_{km} - E_{kn} }{ E_{km} - E_{kn} - \hbar \omega_{o} - i \, \eta } \right)
    \, \langle u_{kn} \lvert i \partial_{k_{i}} \rvert u_{km} \rangle \, \langle
    u_{km} \lvert i \partial_{k_{j}} \rvert u_{kn} \rangle$



===================
 Quantity *volume*
===================

:Shape:
    ()

:Value:
    17.91516228544604

:Units:
    Ang^3.0

:Origin story:
    The volume of the computational unit cell.