GroupTheory`
GroupTheory`

GTBands

GTBands[Hamiltionian,kpoints,nev]

calculates the lowest nev band energies for a given Hamiltonian at certain kpoints.

Details and Options

  • The Hamiltonian represents a matrix eigenvalue problem resulting from tight-binding or plane wave theory in electronic structure problems or as a result of the master equation in photonics. Also phonons can be considered.
  • GTBands is used to decouple the calculation of the band structure from the plot. This is useful if large matrices have to be diagonalized as it is usually the case for photonic problems.
  • The band structure can be calculated along paths in the Brillouin zone, i.e. data for a band structure plot are generated. On the other hand the eigenvalues on a mesh in the irreducible part of the Brillouin zone can be calculated as a first step to calculate the density of states.
  • The following options can be given:
  • GODecimals 4Controls the number of fractional digits in tables.
    GOEigenvectors FalseControls whether the eigenvectors will be calculated.
    GOPhotonic FalseDistinguishes between photonic and electronic bandstructure calculation.
    GOPlotBands TrueControls calculation of energy bands in the Brillouin zone.
    GOShift 0Shift the energies by a fixed value.
    GOStore 0Controls output of bands and eigenvalues to files.
    GOTbOrthogonal TrueControls if the calculation is a standard or general eigenvalue problem.
    GOVerbose FalseControls the output of additional information.
  • See Possible Issues for a small change in version 1.2.
  • See: W. Hergert, M. Geilhufe, Group Theory in Solid State Physics and Photonics. Problem Solving with Mathematica, chapter 9.6.

Examples

open allclose all

Basic Examples  (1)

First load the package :

The Hamiltonian will be prepared.

A list of k-points will be prepared.

The bands are calculated along the path.

This result can be used immediately to plot the band structure of Cu.

Options  (8)

GOEigenvectors  (1)

The Hamiltonian will be prepared.

With the option GOEigenvectors True the eigenvectors are also calculated.

The eigenvalues as well as the eigenvectors are returned.

GOPhotonic  (1)

Photonic band structures can also be calculated. A circular rod in a quadratic unit cell is defined according to the rules in GTPhDCObjects.

The reciprocal lattice vectors for the quadratic lattice will be calculated.

Now the master equation can be constructed for TE polarization.

The path in the Brillouin zone for the plot of the photonic band structure is calculated.

The photonic bands for TE polarization are calculated and presented.

GOPlotBands  (1)

The Hamiltonian will be prepared.

GOPlotBands is used to indicate, which type of calculation will be done. The option has to be set to False, if a DOS calculation is planned.

GOShift  (1)

Prepare the Hamiltonian:

And a list of k-points:

The whole band structure can be shifted. As default the minimum energy is shifted to zero.

GOStore  (1)

Preparation of data analogous to GOPhotonic.

The results of the calculations can be stored in files for later use.

GOTbOrthogonal  (1)

In a non-orthogonal TB problem the Hamiltonian matrix and the overlap matrix define a general eigenvalue problem. As a simple example the orthogonal eigenvalue problem will be considered as a non-orthogonal one, providing a identity matrix as overlap matrix.

Prepare the correct Hamiltonian:

Plot the structure of the matrices:

The results should be the same as before.

Two matrices are necessary if GTTbOrthogonal is False

GOVerbose  (1)

Prepare the Hamiltonian:

GOVerbose provides additional information. If bands along a BZ path are calculated, a table with the energies at the symmetry points will be presented.

If the eigenvalues are calculated on a mesh, the results at all mesh points are given. Option GOPlotBands has to be used in this case.

GODecimals  (1)

The output in the table can be customized. The number of digits in the table can be used to print larger tables in a handy form for an overview or to get more precise output for only a few numbers.

The Hamiltonian will be prepared.

With the option the output style of the numbers can be changed.

Possible Issues  (1)

In version 1.2. the output into a file is slightly changed, if band structure data are store. Now also the k-path is stored to the file.

The bands are calculated along the path.

The stored data are collected in a list of two parts. the first part contains the band structure as before.

The second part contains information about the k-path. Thus, the stored data have the correct form for a band structure plot.