Skip to content

1.4 First silicon calculation with LCAO

Version and execution status. Core syntax is checked against the official ABACUS v3.9.0 source documentation and example files, reviewed on 2026-10-05. The release list also contains stable v3.10.1 and 3.11 beta tags; v3.9.0 is this course’s reproducible baseline, not a claim about the newest release. These are unexecuted teaching templates. Initial numerical values are candidates for testing, not certified results. No energies, timings or convergence traces below are measurements.

Overlapping atomic orbitals and the generalized eigenproblem Hc equals epsilon Sc

Open figure at full size

1.4.1 The question: replace the representation, not the crystal

LCAO represents the electronic states using atom-centered numerical functions. In a periodic crystal the basis is combined with Bloch phases, so LCAO is not synonymous with a molecular or Gamma-only calculation. This case repeats the fixed silicon primitive cell from the PW reference with an explicitly matched orbital file. The objective is a controlled representation comparison, not a claim that two total energies must already agree.

Use the same species, LDA UPF, coordinates, cell, spin and k-mesh as the PW parent. The finite orbital basis introduces a separate approximation: its number of radial functions, angular channels and radial extent cannot be increased by merely raising a plane-wave-like integration parameter. Conversely, a large orbital set does not remove the need for an adequate integration grid. Both controls will be scanned in Chapter 2.

1.4.2 Complete LCAO files and external data

INPUT

INPUT_PARAMETERS
suffix si_lcao
calculation scf
basis_type lcao
gamma_only 0
ntype 1
pseudo_dir ../data/pseudo
orbital_dir ../data/orbitals
ecutwfc 60
scf_thr 1e-8
scf_nmax 150
nspin 1
smearing_method fixed
mixing_type broyden
mixing_beta 0.4
out_chg 1 10

STRU

ATOMIC_SPECIES
Si 28.085 Si.pz-vbc.UPF

NUMERICAL_ORBITAL
Si_lda_8.0au_50Ry_2s2p1d

LATTICE_CONSTANT
10.2

LATTICE_VECTORS
0.0 0.5 0.5
0.5 0.0 0.5
0.5 0.5 0.0

ATOMIC_POSITIONS
Direct
Si
0.0
2
0.00 0.00 0.00 0 0 0
0.25 0.25 0.25 0 0 0

KPT

K_POINTS
0
Gamma
4 4 4 0 0 0

The names Si.pz-vbc.UPF and Si_lda_8.0au_50Ry_2s2p1d are taken from the official silicon example: an LDA pseudopotential and an LDA numerical orbital set. PW requires only the UPF; LCAO requires both. These are external assets, not bundled downloads. Obtain the source-matched files needed for your basis, inspect their headers, save their hashes, and place them in ../data/pseudo/ and, for LCAO, ../data/orbitals/. A file with the same name is not proof of the same content. The input intentionally omits dft_functional, allowing the functional recorded in the UPF to be used. Replacing this model with PBE requires a separately documented, mutually consistent PBE pseudopotential/orbital pair for LCAO; setting dft_functional PBE alone does not recreate that pair.

1.4.3 Generalized eigenproblem and basis dimension

Because numerical atomic orbitals are generally not orthogonal, the electronic problem has an overlap matrix:

\[\mathbf{H}(\mathbf{k})\mathbf{c}_{n\mathbf{k}}=\epsilon_{n\mathbf{k}}\mathbf{S}(\mathbf{k})\mathbf{c}_{n\mathbf{k}}.\]

The solver must be compatible with this LCAO representation and the compiled libraries. The template intentionally leaves ks_solver unset: the v3.9.0 reference selects a default according to the build, including serial LAPACK or parallel ScaLAPACK/ELPA configurations. Inspect the actual solver in the log. Do not blindly select lapack in an MPI build, or a GPU solver in a CPU-only binary.

For a header-confirmed 2s2p1d set, the unpolarized basis has 13 functions per silicon atom and 26 per two-atom cell. This count is a check on input reading, not an assurance of completeness. The occupied subspace can fit within the matrix dimension while bonding polarization and unoccupied-band dispersion remain inaccurate. Near-linear dependence can also make an overly redundant orbital set numerically difficult; watch overlap/solver warnings rather than assuming that more functions are always better.

gamma_only 0 retains the KPT mesh. In the baseline, gamma_only 1 requests a specialized LCAO Gamma algorithm and can overwrite KPT; it is therefore inappropriate for this small primitive bulk reference. This distinction matters when importing large-supercell examples.

1.4.4 Integration cutoff, logs and density

Prepare a new case directory and retain the three original inputs. On an already configured local Linux installation, a possible launch is shown below. Adapt the executable and MPI launcher to the installed build; this command is an instruction for the learner, not something run in preparing this course. Never submit an unfamiliar example directly to a production queue.

OMP_NUM_THREADS=1 mpirun -np 2 abacus > screen.log 2>&1

Read screen.log and OUT.<suffix>/running_scf.log. Confirm the actual version, basis, cell, species, pseudopotential, occupation method and electronic iteration status before collecting a final energy. In this baseline the final-energy marker is !FINAL_ETOT_IS, reported in eV. Its presence alone is insufficient: an unsuccessful SCF can still leave an energy-like value. Retain the complete electronic trace and any warnings. out_chg 1 10 requests a real-space density cube at ten-digit output precision; it does not tighten the electronic convergence. For the non-spin-polarized examples, inspect SPIN1_CHG.cube only after convergence has been established.

In LCAO, ecutwfc still controls numerical ingredients associated with grids and the pseudopotential representation. It is not an orbital-zeta selector. The source orbital name contains 50 Ry as generation metadata while the initial integration choice is 60 Ry; neither value certifies convergence. Keep the orbital file fixed while checking integration cutoff, then keep a converged grid while checking orbital quality.

Compare the LCAO and PW charge densities on appropriately matched cells and grids before interpreting visual differences. A cube’s smooth appearance is not evidence of accurate energy. For quantitative density subtraction the grid dimensions, origin, cell and density units must agree; use the dedicated density-difference lesson later instead of subtracting arbitrary voxel arrays.

1.4.5 A comparison ledger

Quantity PW reference LCAO trial Required check
UPF SHA-256 fill after audit same hash identical Hamiltonian asset
Orbital SHA-256 not applicable fill after audit source-matched set
Electron count fill after run fill after run same physical system
Energy/atom, eV blank blank both SCFs and numerical scans passed
Selected energy difference blank blank compare balanced quantities
Force/stress diagnostic blank blank units and tolerances declared

Leave numerical fields empty until actual runs. The absolute LCAO-to-PW offset is useful for basis assessment under one Hamiltonian, but many applications depend on energy differences across geometries. A roughly constant absolute offset may cancel, whereas environment-dependent basis errors do not. Test at least one strained geometry if the eventual goal is elasticity or equation-of-state fitting; perfect equilibrium silicon alone is a narrow validation domain.

1.4.6 Pitfalls and exercises

The most important trap is changing pseudopotential, functional and basis simultaneously. Another is assuming the orbital filename’s generation cutoff is the only grid value worth testing. A third is interpreting an LCAO total-energy difference without checking that PW and LCAO have the same electron count and occupation model. An input that merely runs is not a controlled comparison.

  1. Matrix exercise. Count the functions for the verified source set and explain why solving a standard eigenproblem that assumes \(\mathbf{S}=\mathbf{I}\) is generally incorrect. Answer guidance: 26 functions in the unpolarized two-atom example; the atomic functions overlap, so normalization and orthogonality use the S metric. The count changes for a different actual orbital header or spinor representation.
  2. Control exercise. Design two separate scans to decide whether an error comes from integration or orbital incompleteness. Answer guidance: hold the exact orbital hash fixed while raising ecutwfc; then fix the converged grid and compare documented orbital families while keeping UPF, geometry and k-mesh unchanged. Tighten SCF first so electronic noise is below the desired comparison accuracy.

Continue to numerical orbital convergence for a validation protocol across radial ranges and basis multiplicities.

1.4.7 Official references and provenance

These references establish file grammar and available options. The explanations, comparison designs, algebraic exercises and figures are original teaching material; no published example energy is presented as a result of this course. Additional learning resources are collected in the course hub references section. The university-linked 2024 guide is supplementary teaching, not a substitute for the pinned input reference.