Basic classes
sisl provides basic functionality for interacting with orbitals, atoms, geometries, unit cells and grid functions.
Simple objects
Periodic table for creating an |
|
|
Atomic information for a single atomic species |
|
Efficient collection of |
|
Holds atomic information, coordinates, species, lattice vectors |
|
A cell class to retain lattice vectors and a supercell structure |
|
Enum for boundary conditions |
|
Real-space grid information with associated geometry. |
Orbitals
Each of the following orbitals are specialized for various use cases.
|
Base class for orbital information. |
|
An arbitrary orbital class which only contains the harmonical part of the wavefunction where \(\phi(\mathbf r)=f(|\mathbf r|)Y_l^m(\theta,\varphi)\) |
|
A projected atomic orbital consisting of real harmonics |
|
A hydrogen-like atomic orbital defined by an effective atomic number Z in addition to the usual quantum numbers (n, l, m). |
|
Gaussian type orbital |
|
Slater type orbital |
Advanced classes
The physical matrices used internally in sisl
are constructed
based on these base classes.
However, it may be beneficial to read the specific matrix
in Physical quantites.
|
Quaternion object to enable easy rotational quantities. |
|
A compressed sparse row matrix, slightly different than |
|
Sparse object with number of rows equal to the total number of atoms in the |
|
Sparse object with number of rows equal to the total number of orbitals in the |
Utility classes
A set of classes are utility classes that are used throughout the sisl
code
and using them will be encouraged in combination with sisl.
In particular oplist
is useful when calculating averages in Brillouin zones (see
Brillouin zone).
|
list with element-wise operations |
Simple dictionary which may access items as properties as well |