Basis sets
SIESTA uses a numerical atomic orbital (NAO) basis set. The Basis Set panel in the studio lets you choose the size and shape of the basis for each species.
Basis size
The most common choices are:
- SZ (single-zeta) — minimal basis, fast but less accurate.
- DZ (double-zeta) — two radial functions per orbital, better convergence.
- DZP (double-zeta polarized) — adds polarization orbitals; the recommended default for most calculations.
- TZP / TZDP — triple-zeta variants for high-accuracy work.
Per-species customization
In the basis panel you can override the basis size or energy shift per species.
Advanced users can edit the %block PAO.BasisSizes block directly in the FDF
preview.
Ghost atoms
A ghost is a species with a negative atomic number, such as Si_ghost. The
Defect Builder's Keep as Ghost (basis only) makes one, and so does a vacancy
path in the NEB builder. SIESTA places a ghost's orbitals but gives it no
nucleus and no electrons.
The studio writes every ghost with its element's shells and each cutoff radius
1 Bohr shorter. The ghost then has orbitals of its own. Without that, a ghost
that sits on an atom of its element, as in the first and last images of a
vacancy NEB path, has exactly the same orbitals as that atom, and SIESTA stops
with cdiag: Error in Cholesky factorisation.
The shorter radii need the element's radii. With a basis size and an energy shift, SIESTA works the radii out only when it runs, so you get them from a short run first:
- When the structure has ghosts, Basis Set shows a Ghost atoms: basis box. Click Download basis probe (.fdf). The probe is one atom of each element in a box, with your basis settings and functional.
- Run it with SIESTA in a folder with the calculation's pseudopotentials:
siesta < <label>-basis.fdf > <label>-basis.out. It takes a few seconds. - Click Import radii from SIESTA output and choose that
.out. The radii become the custom basis of each element, and the FDF you write gives the ghosts the same shells 1 Bohr shorter.

Until the radii are imported, Diagnostics reports a ghost that sits on an atom of its element as an error, because SIESTA cannot run it, and a ghost on an empty site as a warning: it runs, but the ghost has its element's orbitals unchanged. Once imported, the radii define the basis of those elements: a later change to the basis size or energy shift no longer changes them, so download and run a new probe if you want radii for other settings. The box lists the elements with explicit radii; Use automatic radii again removes them.
SIESTA reads a ghost's pseudopotential from a file named after its label, for
example Si_ghost.psml. The pseudopotential download includes that copy.