The Spinor code has been written in Prof. N. A. Hill's group at UCSB. There are a couple of points that set the Spinor Project apart from similar band theory packages. These differences can be classified as code issues and those concerned with the implemented physical concepts.
- The entire source code is publicly available under the GNU General Public License (GPL) and distribution of the code is encouraged.
- The Spinor Project is designed as a community wide project. We feel that this goal is best aided by the GNU GPL which encourages code modifications, enhancements and redistribution under the requirement that any subsequent developments are made available again under the GNU GPL. This ensures that the whole community profits in the process.
- The departure from the typically closed coding project which is tightly bound to a local research group is timely. The internet provides us with the infrastructure necessary for distributed project development, allowing the collaboration of researchers independent of their location. In fact many of the tools the internet rests on were developed in exactly this setting.
- All sources are written in ANSI C. Breaking with the Fortran tradition allows young researchers to quickly contribute to the project in the programming language they are mostly trained in.
Implemented Physical Concepts:
- Spinor rests on the plane wave pseudopotential formulation [Ihm, et al., J. Phys. C: Solid State Phys., 12, 4409 (1979)] of density functional theory [P. Hohenberg and W. Kohn, PR 136, B864 (1964); W. Kohn and L.J. Sham, PR 140, A1133 (1965)].
- The implementation of j-dependent pseudopotentials allows spin-orbit coupling to be taken into account on the same footing as the usual density functional terms [G. Theurich and N. A. Hill, submitted to PRB].
- Both direct and indirect minimization of the total energy functional by conjugate gradient algorithms are implemented [M. C. Payne, et al., Rev. Mod. Phys., 64, 1045 (1992)].
- As an analysis tool the projection of the plane wave Kohn-Sham eigenfunctions onto the pseudo orbital basis and Mulliken population analysis has been implemented [D. Sanchez-Portal, et al., Sol. Stat. Commun., 95, 685 (1995)].
- Partial density of states can be generated using a simple broadening scheme.