whatisgithub

What is materialdft-demo?

szailab/materialdft-demo — explained in plain English

Analysis updated 2026-05-18

18C++Audience · researcherComplexity · 5/5Setup · hard

In one sentence

An independently written DFT physics simulation library that reads and writes the same file formats as VASP, letting researchers run static PBE calculations without a VASP license.

Mindmap

mindmap
  root((MaterialDFT))
    What it does
      Runs DFT calculations
      Matches VASP file formats
      Predicts electron structure
    Tech stack
      C++ core
      Python via pybind11
      FFTW3 and LAPACK
      Libxc functional library
    Use cases
      Materials research
      VASP-free calculations
      Benchmarking against VASP
    Audience
      Researchers
      Computational chemists

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run static, non-spin PBE calculations on metals and semiconductors without a VASP license.

USE CASE 2

Reuse existing VASP input files (INCAR, POSCAR, KPOINTS) with a different backend.

USE CASE 3

Compare energy convergence results against VASP baselines for research validation.

USE CASE 4

Study an open reference implementation of a single DFT calculation path.

What is it built with?

C++Pythonpybind11CMakeFFTW3LAPACKLibxc

How does it compare?

szailab/materialdft-demodiskclaw/sslclaweversinc33/karyo
Stars181917
LanguageC++C++C++
Setup difficultyhardeasyhard
Complexity5/52/55/5
Audienceresearcherdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a C++17 toolchain, CMake, FFTW3, LAPACK/BLAS, and Libxc, plus a separately licensed POTCAR file set from VASP for full comparison.

So what is it?

MaterialDFT is an experimental scientific computing library that performs quantum mechanical calculations for materials research, specifically using a method called Density Functional Theory (DFT). DFT is a widely used computational approach in physics and chemistry that predicts how electrons are arranged in a material, which in turn reveals properties like energy, stability, and electronic structure. Researchers use it to study metals, semiconductors, and other materials without needing to run physical experiments for every scenario. The distinctive feature of this project is that it is built to accept the same input files and produce the same output files as VASP, a widely used commercial DFT software package. This means a researcher who already has VASP input files (the INCAR configuration file, POSCAR crystal structure file, and KPOINTS file) can run them through MaterialDFT without changing anything. The outputs land in familiar formats like OUTCAR, EIGENVAL, and DOSCAR, making comparison straightforward. VASP itself is closed-source and requires a paid license, so this project is an independently written alternative built from public documentation, academic papers, and other open-source DFT implementations. The current scope is narrow by design. The library only covers one specific calculation path: static, non-spin-polarized PBE calculations on a single CPU thread. PBE is a particular flavor of the exchange-correlation functional that DFT calculations depend on. More complex calculation types, parallel execution, and relaxation runs are not yet supported targets. Benchmark results show the library reaches agreement with VASP in the range of 0.00001 to 0.001 electron-volts of error for simpler systems like small metal unit cells and basic semiconductors, but errors can reach around 0.01 eV on more complex or low-symmetry structures. The code is organized as a C++ core with a Python interface layer built using pybind11. Building it requires a C++17 compiler, CMake, FFTW3 for fast Fourier transforms, LAPACK and BLAS for linear algebra, and the Libxc library for the exchange-correlation functional. The repository does not include POTCAR files, which are the pseudopotential data files that VASP uses and distributes under a separate commercial license.

Copy-paste prompts

Prompt 1
Explain how MaterialDFT reproduces VASP's static PBE non-spin calculation path in C++.
Prompt 2
Walk me through building MaterialDFT's C++ core with Libxc and running a sample case.
Prompt 3
Show me how MaterialDFT's INCAR parameter mapping compares to VASP's original settings.
Prompt 4
Help me interpret MaterialDFT's benchmark report comparing its OSZICAR output to VASP.

Frequently asked questions

What is materialdft-demo?

An independently written DFT physics simulation library that reads and writes the same file formats as VASP, letting researchers run static PBE calculations without a VASP license.

What language is materialdft-demo written in?

Mainly C++. The stack also includes C++, Python, pybind11.

How hard is materialdft-demo to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is materialdft-demo for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.