# atom keywords

System descriptors

## atom.element

Point every atoms to an element defined in element. Generated
automatically if atom.xyz is a string pointing to an xyz file.

**type**: `array`

**size**: `[inf,1]`

**example**: `atom.element = [1;1]`

## atom.fracxyz

Direct coordinates of every atoms; atom.fracxyz may be an array passed
from MATLAB, in which case atom.element must be provided by the user;
atom.fracxyz may be a string containing the path to an xyz file, in
which case atom.element is extracted from the first column.

**type**: `array, string`

**example**:
`atom.fracxyz = [0 0 0; 0.25 0.25 0.25]; atom.fracxyz = 'si.xyz'`

## atom.magmom

Initial magnetic moment of every atom if doing a non-collinear spin
calculation. The moment is expressed in spherical coordinates
(r,polar,azimuth). The units are Bohr magneton and radiant. If
atom.magmom is a char array, then the string must be the path of an XZY
file. The fifth column of the XYZ file is the spin in collinear spin
calculations, and the fifth, sixth and seventh columns of the XYZ file
are the spin coordinates (r,polar,azimuth) in non-collinear spin
calculations.

**type**: `array, string`

**size**: `[inf 1]`

**example**: `atom.magmom = [5 pi/2 pi;5 pi/4 0;5 7*pi/12 0];`

## atom.magmomd

Initial magnetic moment of every atom if doing a non-collinear spin
calculation. The moment is expressed in spherical coordinates
(r,polar,azimuth). The units are Bohr magneton and degree. If
atom.magmomd is a char array, then the string must be the path of an XZY
file. The fifth column of the XYZ file is the spin in collinear spin
calculations, and the fifth, sixth and seventh columns of the XYZ file
are the spin coordinates (r,polar,azimuth) in non-collinear spin
calculations.

**type**: `array`

**size**: `[inf 1]`

**example**: `atom.magmomd = [5 90 179.9;5 45 0.1;5 135 0.1];`

## atom.magmomcart

Initial magnetic moment of every atom if doing a non-collinear spin
calculation. The moment is expressed in Cartesian coordinates (x,y,z).
The units are Bohr magneton. If atom.magmomcart is a char array, then
the string must be the path of an XZY file. The fifth column of the XYZ
file is the spin in collinear spin calculations, and the fifth, sixth
and seventh columns of the XYZ file are the spin coordinates (x,y,z) in
non-collinear spin calculations.

**type**: `array`

**size**: `[inf 1]`

**example**:
`atom.magmomcart = [2.3766 0.1071 2.0362; 2.8785 2.5474 2.2732; 1.9672`
2.8020 2.2294\];

## atom.nvalence

atom.nvalence determines the number of valence electrons in
self-consistent calculations. The valence is intrinsically linked to the
density. By default, atom.nvalence is determined such that the system is
charge neutral. It is however possible to choose a value whereby the
system is non-neutral.

**type**: `scalar`

**example**: `atom.nvalence = 63`

## atom.xyz

Cartesian coordinates of every atoms; atom.xyz may be an array passed
from MATLAB, in which case atom.element must be provided by the user;
atom.xyz may be a string containing the path to an xyz file, in which
case atom.element is extracted from the first column.

**type**: `array, string`

**example**: `atom.xyz = [0 0 0; 0.25 0.25 0.25]; atom.xyz = 'si.xyz'`
