class RandomSpin(scaled_spins=None)

Class for representing an initial spin configuration.

The initial scaled spin for each atom should be given as a number between -1 and 1 corresponding to the net spin-polarization in fractions of the atomic polarization according to Hund’s rule.

This should be either:

  • A sequence of floating point numbers, whose position in the list corresponds to the atom index in the configuration
  • A list of tuples each of an atom index and corresponding scaled spin value.
  • A list of tuples each of a PeriodicTableElement object and a scaled spin value.
  • A combination of the latter two.

For non-collinear spin systems the tuple has four numbers, atom index, scaled spin, theta, phi, where the latter two are spherical coordinates as PhysicalQuantity object of type Degree or Radians.

Parameters:scaled_spins (list) – The initial scaled spins for each atom.
Default: 1.0 for each atom..

Usage Examples

See InitialSpin for a detailed discussion on setting the initial spin.


RandomSpin works essentially the same way InitialSpin does, except that the input parameter scaled_spins is used as a limit \(\alpha_i\) for the initial spin polarization on each atom \(i\) . The actual initial spin set for atom \(i\) will be a random number in the interval \([0,\alpha_i]\) (or \([\alpha_i,0]\) if \(\alpha_i<0\) ).