Post

AIRSS keyword list

AIRSS keyword list

The official documentation site of AIRSS only offers an incomplete collection of keywords. Therefore, with the help of CodeX 5.6 Sol, a complete keyword list is reported in this post, which was traced from source code of the ‘buildcell’ executable of AIRSS 0.9.4, the latest version by Oct. 2026. Also thanks to Mr F. Lei for offering an overview of AIRSS-EDDP.

Sources

The following public sources were used to clarify intended usage and terminology.

About AIRSS

The introduction of AIRSS is available on its documentation site. Among various executables and scripts of AIRSS package, the buildcell utility plays a central role in random structure generation. In short, buildcell acts as the structure generation engine, which reads the input setups and generates one sensible structure, while the upper-layer airss.pl manages the massive and parallel generation process by repeatedly calling buildcell, as well as solvers (CASTEP, for example) behaviors.

buildcell reads CASTEP-formatted input file (.cell) with additional keywords. The compatibility with CASTEP I/O is ensured following such convention:

InputCASTEPAIRSS
KEYWORDValid keywordCASTEP keyword, geometry-related keywords are read
# KEYWORDCommentValid buildcell keyword
## KEYWORDCommentComment
! KEYWORDCommentUnrecognized, can lead to interpreting issues within input blocks

The input keywords for buildcell are listed below. Instructions for the command line options of airss.pl are available via airss.pl -h, which are omitted here.

Modelling

KeywordMeaningAllowed valuesDefault
SUPERCELLSupercell expansion1 / 3 / 9 ints1
TIGHTAllow for more compact structure for initial separation checks (disabled)
SPINSet the mean net spin and absolute spin per atomnet absolute 0 0
COMPACTNiggli reduction for the final cell (enabled for unconstrained cells only)
NOCOMPACTDisable Niggli reduction for the final cell (disabled)
FLIPMulti-atom units have a 50% chance of being mirrored (for chirality) (disabled)

Variable compositions and defects

KeywordMeaningAllowed valuesDefault
NATOMTotal number of atoms when SPECIES is usedGiven or a range of positive ints(implied by SPECIES)
SPECIESAtoms from a comma-separated species listElement with optional %NUM=<int/range>(disabled)
NFORMNumber of formula units of the input compositionGiven or a range of positive ints(determined by symmetry)
FOCUSSearch for structures with specified distinct species onlyPositive int(disabled)
VACANCIESRandomly remove specified number of atoms of the specified species<Positive int>@<species>(disabled)
PERMUTERandomly permute species among atomic positionsNo input or #PERMUTE=<species>(disabled)
PERMFRACFraction of shuffled specifies A when #PERMUTE=A0 – 11 if PERMUTE enabled

Isolated systems

KeywordMeaningAllowed valuesDefault
CLUSTERNon-periodic atomic cluster and geometry handling based on point group (disabled)
SLABz-symmetric slab with layer operations (disabled)
SURFACEz-asymmetric slab with layer operations (disabled)
VACUUMVacuum padding along z for crystal or 3-dimensions for cluster with SPHEREPositive real in $\AA$0

Constraints for structural perturbations

Lattice constraints

KeywordMeaningAllowed valuesDefault
SYSTEMCrystal system constraint, conflicts with CELLCONTric, Mono, Hexa, Rhom, Trig, Orth, Tetr, Cubi(unconstrained)
CELLCONLattice parameter constraint vector, conflicts with SYSTEM0 (free), positive real in deg (angle), -1 (equivalent lengths)(unconstrained)
ABFIXFix lattice vectors a, b, inside the LATTICE_* block (unconstrained)
CFIXFix the lattice vector c, inside the LATTICE_* block (unconstrained)
FIXFix the cell, inside the LATTICE_* block (unconstrained)
CONSMin cell aspect ratio constraint (see the note below)0 (free) – 1 (equiaxial)0.4
ACONSMin normalized volume factor constraint (see the note below)0 (free) – 1 (orthogonal)0.5
CELLAMPMax fractional amplitude to perturb the current cell for new cells0 – 1(from scratch)
TARGVOLVolume constraint, scaled for atom countsGiven or a range of positive real(from cell matrix or estimate from atomic radii)
VARVOLCenter of volume constraint range, with variation of 95%-105%, scaled for atom countsPositive real(disabled)

Notes

  1. The actual minimum aspect ratio is implied as $CONS/(2-CONS)$, applied to all three axes and six facets.
  2. The normalized volume factor is:
\[f=\frac{V}{abc} =\sqrt{1-\cos^2\alpha-\cos^2\beta-\cos^2\gamma+2\cos\alpha\cos\beta\cos\gamma}\]

$f=1$ for orthogonal cell; $f\rightarrow0$ for flat cell.

Internal coordinate constraints

KeywordMeaningAllowed valuesDefault
COORDAtom coordination constraint, outside (overall) or inside (per unit) the POSITIONS_* blockGiven or a range of positive int(unconstrained)
MAXBANGLEMax bond angle when COORD is active0 – 180180
MINBANGLEMin bond angle when COORD is active0 – 1800
MINSEPMin interatomic distanceSee belowSum of atomic radii
RADHard atomic radii, outside (overall) or inside (per unit) the POSITIONS_* blockPositive real in $\AA$(separation-based)
SLACKRelax interatomic distance and bond angle constraints by fraction0 – 10
AUTOSLACKIncrease SLACK stepwise when cell is re-initialized (due to overly tight constraints)0 – 1(disabled)
MOLECULESConstrain intramolecular configurations for molecular crystals/clusters, disabled for the current version(disabled)(disabled)
OCTETValence-electron count must be a multiple of eight (octet rule) (disabled)
POSAMPMax radial displacement, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in $\AA$(unconstrained)
MINAMPMin radial displacement, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in $\AA$0
XAMP$[-XAMP/2, XAMP/2]$ around the center, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in $\AA$(unconstrained)
YAMP$[-YAMP/2, YAMP/2]$ around the center, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in $\AA$(unconstrained)
ZAMP$[-ZAMP/2, ZAMP/2]$ around the center, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in $\AA$(unconstrained)
ANGAMPMax rotation, outside (overall from geometrical center) or inside (per unit from initial position) the POSITIONS_* blockPositive real in deg(unconstrained)
CYLINDERCylindrical confinement / potential along zPositive real in $\AA$ for confinement;Negative real for strength(unconstrained)
SPHERESpherical confinementPositive real in $\AA$ for radius; Negative real for radius scaling with the total number of atoms N^(1/3)(unconstrained)
SHIFTThe center of slab confinement normal to zPositive real in $\AA$0
WIDTHThe width of slab confinement normal to zPositive real in $\AA$(disabled)

Note

Accepted values of MINSEP:

  • Given or a range of positive real
  • Specific element pairs, #MINSEP=1.0 C-H=1.1 or #MINSEP=1.0 C-H=1.0-1.2
  • AUTO, AUTOVOL estimated based on volume

Symmetry constrains

KeywordMeaningAllowed valuesDefault
SYMMSpace / point group constraint by HM / Schoenflies symbols, ‘~’ enables approx matchingGroup nameP1 or C1
SYMMNOGroup symmetry constraint by number, ‘~’ enables approx matchingGiven, a range of, or comma-separated ints1
SYMMOPSTotal number of symmetry operations, ‘~’ enables approx matching1,2,3,4,6,8,12,16,24,48 for space groups, 1,2,3,4,5,6,7,8,9,10,11,12,24 point groups, or ranges between allowed endpoints(disabled)
SYMMORPHICRestrict the selected symmetries to symmorphic groups, with no fractional translations (disabled)
SGRANKRestrict the selected symmetry to the SGRANK most common space groupsInt 1 – 230230
BREAKAMPMax random displacement to break symmetryPositive real in $\AA$(disabled)
REMOVERemove overlapped atoms within 0.001 $\AA$, do not re-initialize the cell (for high-symmetry positions) (disabled)
ADJGENAdd symmetrically inequivalent sites, usually at high-symmetry positionsGiven or a range of ints0

Computational control

KeywordMeaningAllowed valuesDefault
MAXTIMEMax CPU time per structure generation stepPositive real in s1.0
NOPUSHDisable the default push-apart step that maintains the distance and coordination constraint (disabled)
OVERLAPEnable the hard-sphere optimization and set the max atom overlap thresholdPositive real(disabled)
CELLADAPTConstant-volume optimization based on the hard-sphere potential, conflict with FIX (disabled)
THREECutoff for the three-body term of hard-sphere potential, disabled for the current version(not allowed)(disabled)
RASHEnable the relax-and-shake algorithm for hard-sphere optimization (disabled)
RASH_ANGAMPMax angular shake of RASHPositive real in deg30
RASH_POSAMPMax translational shake of RASHPositive real in $\AA$1

Notes for hard-sphere optimization

After random structures generated, AIRSS performs the separation check and utilizes the default push-apart method to meet geometry constraints. Then, optionally, the structure can be optimized with the hard-sphere potential to minimize the artificial total energy and interatomic forces for a geometrically reasonable candidate.

Notes for RASH algorithm

The concept of RASH algorithm has been introduced in AIRSS examples, but at the ‘buildcell’ stage, RASH is performed based on hard-sphere potential, instead of physical-property calculators. Therefore it should be regarded as an alternative technique to minimize the artificial energy.

Unavailable or potentially buggy keywords

For the latest AIRSS 0.9.4, some keywords in the list are disabled or can be potentially buggy without specific formatting, which are collected below.

  • MOLECULES: Disabled.
  • OCTET: Disabled. Calling it terminates the program with valence not known.
  • THREE: Disabled. Calling it terminates the program.
  • ADJGEN: Using a range of ints can be buggy. The lower bound is read from the wrong variable, use with caution.
  • NOPUSH: Case-sensitive. Use exactly upper cases.
  • MINSEP: A global value must be given prior to pairwise overriden.
This post is licensed under CC BY 4.0 by the author.