Geometry

Let us start with are few examples showing how to define the geometry of your system in BAND.

Sodium chloride crystal:

Units
  length Angstrom
End

Lattice
  0.00 2.82 2.82
  2.82 0.00 2.82
  2.82 2.82 0.00
End

Atoms
  Na  0.00 0.00 0.00
  Cl  2.82 2.82 2.82
End

Graphene (2D slab):

Units
  length Angstrom
End

Lattice
  2.46 0.0     0.0
  1.23 2.13042 0.0
End

Atoms
  C  0.0  0.0     0.0
  C  1.23 0.71014 0.0
End

Water molecule:

! Notes:
! - If you leave out the Lattice key, BAND will not use periodic boundary condition
! - the default unit of length is Bohr

Atoms
  O  0.0  0.0   0.0
  H  0.0  1.446 1.137
  H  0.0 -1.446 1.137
End

Units

Geometric data (atomic positions and lattice vectors) are by default understood to be in atomic units (Bohr). Alternatively, one may supply data in Angstroms via the Units block key (Each of the subkeys is optional, as is the key Units itself):

Units
  {Length [Bohr|Angstrom]}
  {Angle [Degree|Radian]}
End
Length
(Default: Bohr) Units of length.
Angle
(Default: Degree) Units of angle.

Lattice vectors

Lattice (block-type)

Vectors (Cartesian coordinates x,y,z) defining the Bravais lattice, one vector per line. The number of lines defines the periodicity of the system: 1: polymer, 2: slab, 3: bulk crystal. If the Lattice block is omitted, no periodic boundary conditions will be used.

For 1D periodic systems (polymers) the lattice vector must be aligned with the x-axis

! This is OK (lattice vector aligned with the x-axis):

Lattice
  2.0 0.0 0.0
End
! This is WRONG (lattice vector not aligned with the x-axis):

Lattice
  1.0 1.0 0.0
End

For 2D periodic systems (slabs) the lattice vectors must be on the xy-plane:

! This is OK (lattice vectors in the xy-plane):

Lattice
  2.0 0.0 0.0
  1.0 1.0 0.0
End
! This is WRONG (lattice vector not in the xy-plane):

Lattice
  2.0 0.0 0.0
  0.0 0.0 2.0
End

Coordinates of atoms in the unit cell

Atoms (block-type)

There exist two different styles which allow a compact or a type-specific formulation of the atom positions.

The compact format (ADF-like)

Atoms
  H  x1 y1 z1
  O  x2 y2 z2
  H  x3 y3 z3
End

The chemical symbol, preceding the Cartesian or natural coordinates, defines the atom type. Choosing the ADF-like style allows only one Atoms block in the input. One has to be aware that BAND will automatically reorder the atoms, so that atoms of the same type are in a block.

In case of Regions and Types

Atoms H
   x1 y1 z1
End
Atoms O
   x2 y2 z2
End
Atom H
   x3 y3 z3
End

The chemical symbol must be given on the keyword-line. The data-records contain the Cartesian or natural coordinates, one atom per line. The atoms key is allowed to appear more than once for an atom type. These multiple occurrences are then treated as different types. This is useful to define different basis sets for different types (example BasisDefaults), manipulate the spin (example BetaIron) or the potential (e.g. NiO Hubbard) of a certain type.

You can add the following subkeys which override the behavior of the BasisDefaults key

BasisType This overrides the setting of the BasisDefaults%AtomType key for this atom type.

Core This overrides the setting of the BasisDefaults%Core key.

File Specify an absolute path to a basis set file.

Natural coordinates

Coordinates
The only sensible value for this key is natural, which specifies that nuclear coordinates (key atoms) are given as expansions in the Bravais lattice vectors, rather than in a Cartesian representation. See the NaCl example.

Selected atoms

SelectedAtoms

With this key you can select atoms. This has an effect on a couple of options, like for instance the Gradients, Hessian (FREQUENCIES), NMR, and EFG options. In these cases, the properties will only be calculated for the selected atoms, which can make the job faster.

SelectedAtoms n1, n2, n...

The numbers of the atoms are as on input. If the selection breaks the symmetry the program will stop. Leaving out this key in general selects all atoms.