spirit-code / spirit

Atomistic Spin Simulation Framework
http://spirit-code.github.io
MIT License
118 stars 52 forks source link

Feature request: infinite coupling between spins #482

Open SpiritSuperUser opened 5 years ago

SpiritSuperUser commented 5 years ago

sometimes it is useful to investigate a behavior in the limit of infinity. For example infinite exchange coupling (in principle also DMI might be an option but I think exchange is the most reasonable and the one of largest interest) between two spins (or a pair of repeated spins in a lattice, for example two layers in a multilayer system). While in theory this could be achieved by setting the respective parameter to an extremly high value, this large parameter causes problems while solving the LLG and an extremly tiny time step would be needed to circumvent this. Therefore maybe such a feature would be useful.

What would need to be done (assume atom X and Y are coupled infinitly):

  1. map the pair interactions of atom Y to atom X, ie all pairs (i X) and (X j) (including of course also (X X)) are replaced by (i Y) and (Y j) respectively (translation vectors might need to be addapted if the two pinned spins are not sitting in the same basis cell but are connected by a translation vector (tx ty tz), ie (dx dy dz) -> (dx-tx dy-ty dz-tz)))
  2. add the single side terms of X to Y (anisotropy and b-field)
  3. force the atom X to follow the motion of atom Y