Skip to content
Nick Papior edited this page Sep 21, 2015 · 3 revisions

The SuperCell object handles settings of a unit cell. Only the lattice vectors and their corresponding super cell is contained in this object.

The super cell can be understood as a unit cell object with attached auxilliary information about its super cell range.

Creating a super cell

Super cells are created simply by passing either of 3 cell options:

  1. Pass a cell 3x3 matrix where cell[i,:] is the _i_th lattice vector.
  2. Pass a cell vector of length 3 which corresponds to a diagonal Cartesian unit cell with the diagonal elements.
  3. Pass a cell vector of length 6 which corresponds to a skewed unit cell with a, b, c, alpha, beta, gamma as commonly defined.

The object also contains information regarding the size of the auxiliary super cell. I.e. it knows the number of neighbouring interaction cells. When creating an object an optional keyword (nsc=[<int>]*3) is allowed which describes the total number of interaction cells. Initialising a SuperCell([5,10,20],[5,3,1]) yields a super cell as shown below.

Note that the integers describe the total number of auxiliary cells and not only in one direction. This means that nsc must only contain uneven numbers (an error is raised if any even integers are used).

Clone this wiki locally