pw.x

Index

Documentation

QuantumEspressoIO.guess_high_symmetry_kpointsMethod
guess_high_symmetry_kpoints(kpoints; atol)

Guess high symmetry points from kpoint coordinates.

If there is angle between two consecutive kpoints, then it is identified as a high-symmetry kpoint.

Arguments

  • kpoints: kpoints in Cartesian coordinates

Keyword Arguments

  • atol: Absolute tolerance for checking cross product of two vectors

Returns

  • Vector of indices of high-symmetry points

Examples

```jldoctest; setup = (using QuantumEspressoIO: guesshighsymmetrykpoints) kpoints = [ [0.0, 0.0, 0.0], [0.1, 0.0, 0.0], [0.1, 0.1, 0.0], [0.1, 0.1, 0.1], ] guesshighsymmetrykpoints(kpoints)

output

[1, 3, 4]

source
QuantumEspressoIO.read_band_datMethod
read_band_dat(io)

Read QE bands.x output data file.

The band data file is generated by bands.x with the following parameters:

&BANDS
    filband = 'band.out'
/

The data file has format

 &plot nbnd=  20, nks=   380 /
           -0.500000  0.500000  0.500000
   -3.320   -0.666    5.173    5.173    7.994    9.725    9.725   14.147   16.993   16.993
   17.841   17.841   17.902   19.666   25.961   26.563   28.186   28.186   28.368   28.368
           -0.495000  0.495000  0.495000
   -3.322   -0.664    5.173    5.173    7.994    9.725    9.725   14.148   16.980   16.980
...

Returns

  • kpoints: Vector of kpoints in Cartesian coordinates, but scaled by QE alat
  • eigenvalues: Vector of eigenvalues for each kpoint

Examples

```jldoctest; setup = (using QuantumEspressoIO: readbanddat) io = IOBuffer("""&plot nbnd= 2, nks= 11 / 0.0 0.0 0.0 -1.0 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 """) kpoints, eigenvalues = readbanddat("band.out") println(kpoints) println(eigenvalues)

output

[[0.0, 0.0, 0.0]] [[-1.0, 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]]

source