Back to main menu

Mode: create


atomsk --create <lattice> <a> [<c>] <sp1> [<sp2> <sp3>...] [orient (hkl)X (hkl)Y (hkl)Z] [options] <outputfile> [<formats>]

Special syntax for nanotubes:

atomsk --create nanotube <a0> <m> <n> <sp1> [<sp2>] [options] <outputfile> [<formats>]


This mode allows to create an atomic structure from scratch. For now, only a small number of very basic lattices can be created (see table below). By default the base vectors of the cubic systems created are X=[100], Y=[010] and Z=[001], but that can be changed (see below). Hexagonal lattices can also be oriented, with restrictions detailed below. For other systems, other orientations are not implemented yet.

The parameters associated with the create mode are:

The table below shows the acceptable entries for <lattice>, and the corresponding number of lattice constants and atom species that must be specified. For bcc lattice, entering two atom species will produce an interpenetrating simple cubic (aka "caesium chloride") lattice. For fcc lattice, entering two atom species will create an alloy of the two elements. For diamond lattice, entering two species will create a zincblende lattice; for zincblende, entering only one species will create a diamond lattice.

<lattice> N. of lattice constants N. of atom species
Cubic lattices
Simple cubic sc 1 1
Body-centered cubic
Cesium chloride
1 1 or 2
Face-centered cubic fcc 1 1 or 2
L12 cubic L12, L1_2 1 2
Fluorite fluorite 1 2
diamond, dia
zincblende, zb
1 1 or 2
Cubic rock-salt rocksalt 1 2
Cubic perovskite perovskite, per 1 3
C15 Laves phase C15 1 2
Tetragonal lattices
Simple tetragonal st 2 (a and c) 1
Body-centered tetragonal bct 2 (a and c) 1 or 2
Face-centered tetragonal or L10 fct, L1_0 2 (a and c) 1 or 2
Hexagonal lattices
Hexagonal close-packed hcp 2 (a and c) 1 or 2
Wurtzite wurtzite, wz 2 (a and c) 2
Graphite graphite 2 (a and c) 1 or 2
C14 Laves phase C14 2 (a and c) 2
C36 Laves phase C36 2 (a and c) 2
Other structures
Nanotube nanotube, NT 1 + m,n 1 or 2

Unit cells of cubic systems can be created with a given crystallographic orientation, if the keyword "orient" is appened after the atom species and is followed by the Miller indices hkl of the lattice in each cartesian direction X, Y and Z (see how to specify Miller indices). Indices are automatically divided by their greatest common divisor: for example the [220] direction is replaced by [110], the [224] direction is replaced by [112], and so on. When possible, Atomsk takes lattice symmetry into account and uses the shortest lattice vector along the following directions: in bcc lattice, directions of type ⟨hkl⟩ where h, k and l are all odd are replaced by ½⟨hkl⟩  (for example [111] is remplaced by ½[111], [351] becomes ½[351], etc.); in fcc, diamond, zincblende and rocksalt lattices, directions of type ⟨hkl⟩ where h and k are odd and l is even are replaced by ½⟨hkl⟩ (e.g. [110] is remplaced by ½[110], [211] becomes ½[211], etc.). The goal is to provide the smallest unit cell with the specified crystal directions. Note that the keyword "orient" must always appear immediately after the atom species, and should not be mistaken with the option -orient.

Unit cells of hexagonal lattices can also be oriented, but this has a different meaning. First of all, for hexagonal systems, the Miller vectors must contain four integers [hkil], and satisfy h+k+i=0. Three vectors must be provided after the keyword "orient". These three vectors will define the new unit cell. They do not have to be orthogonal (contrary to cubic systems), however they must be linearly independent. In the end, Atomsk will align the first vector with the Cartesian X direction, the second vector will belong to the XY plane, and the third vector will point out of the XY plane. So, contrary to cubic systems, the three provided crystallographic directions will not be aligned with Cartesian directions (except for the first vector), and the final cell will not be orthogonal. To obtain an orthogonal box, you may use the option -orthogonal-cell afterwards.

For creating a nanotube one has to specify one lattice parameter (that corresponds to the first neighbours distance), followed by the chiral indices m and n which must be integers. The unit cell of a nanotube is defined unambiguously only along the nanotube, which is along the Z axis here. In the other directions, Atomsk defines the lattice so that periodic replica form an hexagonal pattern as it is observed experimentally. You can tune the distance between periodic replica by changing the cell parameters. Note that the center of the nanotube is at (0,0) so it is easy to create multiwall nanotubes (create several nanotubes and merge them).

The name of the <outputfile> can be specified either before or after the mode. If no output file is specified but only output format(s) then the output file(s) will be named after the atom species.

If you use this mode with one or several options, then they will apply to the created system.

Note that Atomsk does not contain a database of lattice parameters for various materials. It is up to you to provide the lattice constants that you want to work with. The system created with this mode is a perfect lattice, it is not relaxed nor optimized.


Back to main menu