# Mathematical notation convention

In `sisl`

we strive to make the documentation as consistent
as possible.
This should make reading different parts of the documentation
simple to understand.

Here is a list of rules that sisl will strive to adhere to. If you find any inconsistencies in the documentation, please let us know!

upper case characters such as \(I\) and \(J\) refer to atomic indices

lower case characters such as \(i\) and \(j\) refer to orbital indices, e.g. \(i\in I\)

scalars are represented via lower case italics, such as \(a\)

vectors are represented via lower case bold faced, such as \(\mathbf a\)

One may use \(\hat{\mathbf a}\) to signal normal vectors

dot-products between vectors should be explicit \(\mathbf a\cdot\mathbf b\)

matrices are represented via upper case bold faced, such as \(\mathbf A\)

vector-matrix products are implicit \(\mathbf a\mathbf B\)

matrix-matrix products are implicit \(\mathbf A\mathbf B\)

Greek letters are used for other indices, such as spin (\(\sigma\)), Cartesian or lattice vectors.

range of indices are denoted with \(\{ \}\), such that, \(\{i\}\) is an orbital index range, \(\{I\}\) is an atomic index range and \(\{\alpha\}\) refers to some

*other*range which should be inferred from the context