# SIESTA (computer program)

SIESTA (Spanish Initiative for Electronic Simulations with Thousands of Atoms) is an original method and its computer program implementation, to efficiently perform electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. SIESTA uses strictly localized basis sets and the implementation of linear-scaling algorithms. Accuracy and speed can be set in a wide range, from quick exploratory calculations to highly accurate simulations matching the quality of other approaches, such as the plane-wave and all-electron methods.
SIESTA's backronym is the Spanish Initiative for Electronic Simulations with Thousands of Atoms.
Since 13 May 2016, with the 4.0 version announcement, SIESTA is released under the terms of the GPL open-source license. Source packages and access to the development versions can be obtained from the DevOps platform on GitLab. The latest version, Siesta 5.2.2, was released on 4 February 2025.

## Features

SIESTA has these main characteristics:
* It uses the standard Kohn-Sham self-consistent density functional method in the local density (LDA-LSD) and generalized gradient (GGA) approximations, as well as in a non-local function that includes van der Waals interactions (VDW-DF).
* It uses norm-conserving pseudopotentials in their fully non-local (Kleinman-Bylander) form.
* It uses atomic orbitals as a basis set, allowing unlimited multiple-zeta and angular momenta, polarization, and off-site orbitals. The radial shape of every orbital is numerical, and any shape can be used and provided by the user, with the only condition that it has to be of finite support, i.e., it has to be strictly zero beyond a user-provided distance from the corresponding nucleus. Finite-support basis sets are the key to calculating the Hamiltonian and overlap matrices in O(N) operations.
* Projects the electron wave functions and density onto a real-space grid to calculate the Hartree and exchange-correlation potentials and their matrix elements.
* Besides the standard Rayleigh-Ritz eigenstate method, it allows the use of localized linear combinations of the occupied orbitals (valence-bond or Wannier-like functions), making the computer time and memory scale linearly with the number of atoms. Simulations with several hundred atoms are feasible with modest workstations.
* It is written in Fortran 95 and memory is allocated dynamically.
* It may be compiled for serial or parallel execution (under MPI).
SIESTA routinely provides:
* Total and partial energies.
* Atomic forces.
* Stress tensor.
* Electric dipole moment.
* Atomic, orbital, and bond populations (Mulliken).
* Electron density.
And also (though not all options are compatible):
* Geometry relaxation, fixed or variable cell.
* Constant-temperature molecular dynamics (Nose thermostat).
* Variable cell dynamics (Parrinello-Rahman).
* Spin-polarized calculations (collinear or not).
* k-sampling of the Brillouin zone.
* The local and orbital-projected density of states.
* COOP and COHP curves for chemical bonding analysis.
* Dielectric polarization.
* Vibrations (phonons).
* Band structure.
* Ballistic electron transport under non-equilibrium (through TranSIESTA)

## Strengths of SIESTA

SIESTA's main strengths are:
* Flexible accuracy and speed.
* It can tackle computationally demanding systems (systems currently out of the reach of plane-wave codes).
* Efficient parallelization.
The use of a linear combination of numerical atomic orbitals makes SIESTA a DFT code. SIESTA can produce very fast calculations with small basis sets, allowing the computation of systems with thousands of atoms. Alternatively, the use of more complete and accurate bases achieves accuracies comparable to those of standard plane wave calculations, with competitive performance.

## Implemented Solutions

SIESTA is in continuous development since it was implemented in 1996. The main solutions implemented in the current version are:
* Collinear and non-collinear spin-polarised calculations
* Efficient implementation of Van der Waals functional
* Wannier function implementation
* TranSIESTA/TBTrans module with any number of electrodes N>=1
* On-site Coulomb corrections (DFT+U)
* Description of strongly localized electrons, transition metal oxides
* Spin-orbit coupling (SOC)
* Topological insulator, semiconductor structures, and quantum-transport calculations
* NEB (Nudged Elastic Band) (interfacing with LUA)

## Solutions under development

* GW approximation
* Time Dependent DFT (TDDFT)
* Hybrid Functionals
* Band unfolding
* Poisson solver in real space

## Post-processing tools

Several post-processing tools for SIESTA have been developed. These programs process SIESTA output or provide additional features.

## Applications

Since its implementation, SIESTA has been used by researchers in geosciences, biology, and engineering (extending beyond materials physics and chemistry) and has been applied to a large variety of systems including surfaces, adsorbates, nanotubes, nanoclusters, biological molecules, amorphous semiconductors, ferroelectric films, low-dimensional metals, etc.