Skip to content

jfw96/Dispersions.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Types and standard operation for k grids and tight binding dispersions in solid state theory. This project is inteded to be used as a backend for k grid related operations in order to abstract over the actual k grid logic. For an example usage see LadderDGA.jl

Build Status Coverage Documentation Social
Build Status codecov Stable Gitter

Overview

Interface

  • kG = genKGrid(s, nk) will generate a k grid with nk points in each direction from a configuration string. Examples are s = "2Dsc-1.0" (2D simple cubic with hopping parameter - t = 1.0), s = "p6m-1.0" for a hexagonal lattice.

  • gridshape(kG) returns the shape of a k grid. Example: (4,4) for a lattice generated with genKGrid("2Dsc-1.0", 4)

  • Nk(kG) returns the number of k points for the given grid. Example: 16 for a lattice generated with genKGrid("2Dsc-1.0", 4)

  • gridPoints(kG) returns the k vektors for the given grid.

  • dispersion(kG) returns the dispersion relation, i.e. an array of energy value for each point of gridPoints(kG).

  • grid_type(kG) returns the KGridType of the given grid without the dimension the grid lives on.

  • conv(kG, arr1, arr2) returns the convolution of the arrays arr1 and arr2 (any function evaluated on kG) on kG. This is usefull for the evaluation of expressions like G(q) = sum_k G(q)*G(k+q)

  • conv_fft(kG, arr1, arr2) and conv_fft1(kG, arr1, arr2) are helpers, used when arr1 or both arr1 and arr2 are already fourier transformed (used for repeated evaluation with the same kernel).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 100.0%