SIRIUS 7.5.0
Electronic structure library and applications
Welcome to SIRIUS

SIRIUS is a domain specific library for electronic structure calculations. It implements pseudopotential plane wave (PP-PW) and full potential linearized augmented plane wave (FP-LAPW) methods and is designed for GPU acceleration of popular community codes such as Exciting, Elk and Quantum ESPRESSO. SIRIUS is written in C++11 with MPI, OpenMP and CUDA/ROCm programming models. SIRIUS is organised as a collection of classes that abstract away the different building blocks of DFT self-consistency cycle.

For a quick start please refer to the main development page at GitHub.

The generated Fortran API is described in the file sirius.f90.

The frequent variable names are listed on the page Standard variable names.

We use the following Coding style.

The library files and directories are organised in the following way:

  • apps -
    • atoms - utility program to generate FP-LAPW atomic species files
    • bands - band plotting
    • cif_input - CIF parser
    • mini_app - DFT miniapp
    • hydrogen - solve hydrogen-like atom using Schrödinger equation
    • tests - tests of various functionality
    • timers - scripts to analyze timer outputs
    • unit_tests - unit tests
    • upf - scripts to parse and convert UPF files
    • utils - utilities to work with unit cell
  • ci - directory with Jenkins, Travis CI and GitHub action scripts
  • cmake - directory with CMake scripts
  • doc - this directory contains configuration file for Doxygen documentation and PNG images
  • examples - examples of input files for pseudopotential and full-potential calculations
  • python_module - Python interface module
  • reframe - ReFrame regression tests description
  • src - main directory with the source code
  • verification - verification tests
  • .clang-format - source code formatting rules
  • CMakeLists.txt - CMake file of the project
  • check_format.py, check_format.x - scripts to check source code formatting
  • clang_format.x - script to apply Clang format to a file