Geometry¶
Let us start with a 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:
Atoms O 0.0 0.0 0.0 H 0.0 1.446 1.137 H 0.0 -1.446 1.137 End
Notes:
- If you leave out the
Lattice
key block, BAND will not use periodic boundary condition - The default unit of length is Bohr
- If you leave out the
- Geometry from an external file:
GeometryFile /SomePath/diamond.xyz
Units¶
The default unit for geometric data (atomic positions and lattice vectors) is Bohr (atomic units). You can change the input units via the optional block key Units
:
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 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¶
The chemical symbols and coordinates of the atoms in the unit cell must be defined in the Atoms
block key:
Atoms
O x1 y1 z1
H x2 y2 z2
H x3 y3 z3
End
The chemical symbol, preceding the coordinates, defines the atom type. Be aware that internally BAND will reorder the atoms, so that atoms of the same type are consecutive.
You may want atoms of the same element to belong to different atom types. This can be done by appending a user defined name to the element symbol, using .
as a separator. Example:
Atoms
O x1 y1 z1
H.my_name_1 x2 y2 z2
H.my_name_2 x3 y3 z3
End
This can be useful if you want to:
- Define different basis sets and numerical accuracy for different types, see the Basis set section and the examples BasisDefaults and Multiresolution
- Manipulate the spin, see the BetaIron example
- Define different isotopes for the same element
- Mark fragments in PEDA and PEDANOCV calculations (see also the PEDA and PEDANOCV examples)
Fractional coordinates¶
Coordinates Fractional
- Including this key in the input 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 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.
Atomic masses (AtomProps)¶
The default atomic masses used in BAND are taken from Nuclear Physics A 565, 1-65 (1993).
The atomic masses of selected atom types can be redefined via the AtomProps
block key:
AtomProps
Symbol m=mass
...
End
Symbol
- Symbol defining the atom type, as defined in the Atoms block key. Here, mass defines the new atomic mass (in unified atomic mass unit).
Example with three different hydrogen isotopes:
Atoms
N 0.000000 0.000000 0.010272
H -0.471582 -0.816803 0.407861
H.D 0.943163 0.000000 0.407861
H.T -0.471582 0.816803 0.407861
End
AtomProps
H.D m=2.01410
H.T m=3.01605
End
Only the following properties depend on the atomic masses:
Ghost atoms¶
A ghost atom represents only the basis set of an atom, there is no nucleus at that position. Ghost atoms are defined by prepending “Gh.” to the element name. In the case of a frozen core, the core orbitals of the ghost atoms are added to the valence space.
Example The dimer N-H including basis functions of two hydrogens:
Atoms
N 0.000000 0.000000 0.010272
H -0.471582 -0.816803 0.407861
Gh.H 0.943163 0.000000 0.407861
Gh.H -0.471582 0.816803 0.407861
End
Geometry from file¶
Instead of specifying the geometry of your system in the input file via the Atoms, Lattice and Units block keys, the geometry can be read from an external file
GeometryFile file
file
- The absolute path of the file containing the geometry information of the system. The only format currently supported is .xyz. The default unit is Angstrom.
Notes
The standard .xyz file format does not include lattice vectors. However, we support lattice vectors in .xyz files; our convention is to specify the lattice vectors at the end of the .xyz file via the keys
VEC1
,VEC2
andVEC3
. For 1D periodic systems only VEC1 is needed. For 2D periodic systems onlyVEC1
andVEC2
are needed. Example: .xyz file for graphene:2 C 0.0 0.0 0.0 C 1.23 0.71014 0.0 VEC1 2.46 0.0 0.0 VEC2 1.23 2.13042 0.0
If you specify the geometry via the
GeometryFile
key, the following keys must not appear in the input: Atoms, Lattice and Units.