Repository logo

Modular implementation of the linear- and cubic-scaling orbital minimization methods in electronic structure codes using atomic orbitals.

Published version

Repository DOI



Change log


We present a code modularization approach to design efficient and massively parallel cubic- and linear-scaling solvers for electronic structure calculations using atomic orbitals. The modular implementation of the orbital minimization method, in which linear algebra and parallelization issues are handled via external libraries, is demonstrated in the SIESTA code. The distributed block compressed sparse row (DBCSR) and scalable linear algebra package (ScaLAPACK) libraries are used for algebraic operations with sparse and dense matrices, respectively. The MatrixSwitch and libOMM libraries, recently developed within the Electronic Structure Library, facilitate switching between different matrix formats and implement the energy minimization. We show results comparing the performance of several cubic-scaling algorithms, and also demonstrate the parallel performance of the linear-scaling solvers, and their supremacy over the cubic-scaling solvers for insulating systems with sizes of several hundreds of atoms.



code modularization, density functional theory, linear-scaling methods

Journal Title

R Soc Open Sci

Conference Name

Journal ISSN


Volume Title



The Royal Society
Horizon 2020 Framework Programme (2019215186, 824143)
Ministerio de Ciencia, Innovación y Universidades (CEX2019-000917-S, PGC2018- 096955-B-C43, PGC2018-096955-B-C44, CEX2020-001038-M)
Generalitat de Catalunya (CERCA programme, 2017SGR1506)
Ministerio de Ciencia e Innovación (PID2019-107338RB- C61/AEI/10.13039/501100011033)
Ministerio de Economía y Competitividad (SEV-2017-0706)
Consorci de Serveis Universitaris de Catalunya (FI-2022-1-0023, FI-2022-2-0035)