SIESTA (Spanish Initiative for Electronic Simulations with Thousands of Atoms) is both a method and its computer program implementation, to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. SIESTA’s efficiency stems from the use of strictly localized basis sets and from the implementation of linear-scaling algorithms which can be applied to suitable systems. A very important feature of the code is that its accuracy and cost can be tuned in a wide range, from quick exploratory calculations to highly accurate simulations matching the quality of other approaches, such as plane-wave and all-electron methods.
- SIESTA was born as a collaborative project.
- SIESTA is in continuous development.
- SIESTA has become very popular, being increasingly used by researchers in geosciences, biology, and engineering (apart from those in its natural habitat of materials physics and chemistry).
Since the 13th of May 2016, with the 4.0 version announcement, SIESTA was released under the terms of the GPL open-source license. Source packages and access to the development versions can be obtained from the new development and distribution platform.
SIESTA main characteristics are:
- It uses the standard Kohn-Sham selfconsistent density functional method in the local density (LDA-LSD) and generalized gradient (GGA) approximations, as well as in a non local functional that includes van der Waals interactions (VDW-DF).
- It uses norm-conserving pseudopotentials in their fully nonlocal (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 for calculating the Hamiltonian and overlap matrices in O(N) operations.
- Projects the electron wavefunctions and density onto a real-space grid in order 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).
Since its implementation, SIESTA has been applied to a large variety of systems including surfaces, adsorbates, nanotubes, nanoclusters, biological molecules, amorphous semiconductors, ferroelectric films, low-dimensional metals, etc.
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.
- 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)
A number of post-processing tools for SIESTA have been developed. These programs can be helpful to process SIESTA output, or to supplement the functionalities of the program.
SIESTA’s main strengths are:
- Flexible code in accuracy.
- It can tackle computationally demanding systems (systems currently out of the reach of plane-wave codes).
- High efficient parallelization.
- Support for professional use.
The use of linear combination of numerical atomic orbitals makes SIESTA a flexible and efficient DFT code. SIESTA is able to produce very fast calculations with small basis sets, allowing computing systems with a thousand of atoms. At the same time, the use of more complete and accurate bases allows to achieve accuracies comparable to those of standard plane waves calculations, still at an advantageous computational cost.
Figure: Schematic representation of SIESTA flexibility.
SIESTA can tackle computationally demanding systems. High efficient parallelization.
- Matrix elements: The calculation of the H and S matrix elements is always done with an O(N) method.
- Solution. SIESTA can use different methods:
- Standard Diagonalization: Cubic scaling with the size. O(N3) Cubic scaling minimization (OMM). O(N3) (F. Corsetti. Comput. Phys. Commun. 185, 873 (2014)).
- SIESTA-PEXSI. The actual computational cost depends on the dimensionality of the system. 1D: O(N) / 2D: O(N1.5) / 3D: O(N2) (metals and insulators).
- Linear scaling. It only works for systems with clearly separated occupied and empty states. O(N) (insulators).
In SIESTA it is possible to parallelize over the orbitals or over K points. K point diagonalization is close to perfectly parallel, however, should be chosen when the number of K points is much larger than the number of cores.
The strong scaling is defined as the wall time speedup obtained for a simulation of fixed size over a range of number of cores. A study made on a system consisting of water molecules have shown the parallelization efficiency for the SIESTA, which turns out to be comparable with the one of other codes in the market.
 Fabiano Corsetti, “Performance Analysis of Electronic Structure Codes on HPC Systems: A Case Study of SIESTA”, doi: 10.1371/journal.pone.0095390
How much computing power do I need?
That basically depends on the system that you want to consider. An analysis of the performance of the parallelization of the SIESTA code has been made on a system consisting of water molecules. In the study the SIESTA code was run on six High-Performance Computers (HPC) with different architectures.
Although the performance of a code depends on the platform where the code is running, on the system considered in the simulation and on the accuracy of the calculation it is possible to estimate the optimal number of cores needed for systems with different number of electrons. For systems
Open source code with professional support and warranty
In 2015, SIMUNE established a strategic partnership with SIESTA. SIMUNE offers training, support and further development of the SIESTA code in order to facilitate materials design challenges.
SIMUNE has received funds to develop the project: SIESTA-PRO – Spanish Initiative for Electronic Simulations with Thousands of Atoms: Open Source code with professional support and warranty.
Implemented Solutions in SIESTA; overcoming the Density Functional Theory limitations
SIESTA is Density Functional Theory (DFT) method, thus it presents the limitations intrinsically associated with DFT. A clear understanding of such limitations from the most basic principles enables the development of tailored solutions and approximations. SIESTA is in continuous development since it was implemented in 1996.
The main solutions implemented in the current version (SIESTA 4.) are:
- Non-collinear calculations magnetic systems
- TranSIESTA module transport calculations
- Van der Waals functional weak VdW interactions
The following features will be included in the next version of SIESTA:
- On-site Coulomb corrections (DFT+U) description of strong localized electrons
- Spin-orbit coupling (SOC) Topological insulator Time dependent density functional theory (TDDFT) Excitations energies, frequency-dependent response properties, photoabsorption spectra, etc
- Density Functional Perturbation Theory (DFPT) Polarisabilities, raman intensities, band gap photoemision, etc
Who are the users of SIESTA?
The widely used DFT performs reasonably well for the determination of structural properties of many materials, and is successfully applied in simulations throughout engineering and sciences. As said before, the accuracy and cost of the DFT code SIESTA can be tuned in a wide range, from quick exploratory calculations to highly accurate simulations. The possibility of treating large systems opens up new opportunities in many disciplines. SIESTA has become quite popular, being increasingly used by researchers in geosciences, biology, and engineering (apart from those in its natural habitat of materials physics and chemistry) Currently there are several thousand users all over the world.
- Artacho, E. , Sánchez‐Portal, D. , Ordejón, P. , García, A. and Soler, J. M. (1999), Linear‐Scaling ab‐initio Calculations for Large and Complex Systems. phys. stat. sol. (b), 215: 809-817. doi:10.1002/(SICI)1521-3951(199909)215:1<809::AID-PSSB809>3.0.CO;2-0
- Emilio Artacho, E. Anglada, O. Diéguez, J. D. Gale, A. García, J. Junquera, R. M. Martin, P. Ordejón, J. M. Pruneda, D. Sánchez-Portal and J. M. Soler, The SIESTA method; developments and applicability. Journal of Physics: Condensed Matter, 20 (6), 064208, (2008), url: https://stacks.iop.org/0953-8984/20/i=6/a=064208
- José M Soler, Emilio Artacho, Julian D Gale, Alberto García, Javier Junquera, Pablo Ordejón and Daniel Sánchez-Portal, Journal of Physics: Condensed Matter, 14 (11), (2002), url: https://iopscience.iop.org/article/10.1088/0953-8984/14/11/302