Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/f-fathurrahman/ffr-electronicstructure.jl

Electronic structure calculations using Julia
https://github.com/f-fathurrahman/ffr-electronicstructure.jl

band-structure density-functional-theory electronic-structure-calculations julia lagrange-basis-expansion plane-wave-expansion

Last synced: about 2 months ago
JSON representation

Electronic structure calculations using Julia

Awesome Lists containing this project

README

        

# ffr-ElectronicStructure.jl

**This is not (yet) a proper Julia package**

Simple electronic structure calculations implemented in
Julia programming language.

Many of the codes here are inspired from [Prof. Tomas Arias' Practical DFT course](http://jdftx.org/PracticalDFT.html)
especially the example problem for Poisson equation and minimization algorithms.

Although written in Julia, I have tried to avoid using advanced language
features of Julia. I mainly used Julia for rapid prototyping.
I have chosen to make the Julia code easy to port to Fortran, which is the
main language I used for the implementation.

I found Julia is very pleasing to work with, as compared to MATLAB, Octave or
Python (Numpy).
The main reason is that the loop structure can be made very similar to
Fortran without having to worry about worse performance. In MATLAB or Octave
I have to avoid this loop and find a way to vectorize the loop operation.

## TODO

- Numerical methods:
- minimization (SD and CG)
- iterative diagonalization: Lanczos, band-by-band CG, Davidson, and LOBPCG

- Longer term: Finite difference, Lagrange basis, and Gaussian basis