pair_style spin/exchange command
pair_style spin/exchange cutoff
- cutoff = global cutoff pair (distance in metal units)
pair_style spin/exchange 4.0 pair_coeff * * exchange 4.0 0.0446928 0.003496 1.4885 pair_coeff 1 2 exchange 6.0 -0.01575 0.0 1.965
Style spin/exchange computes the exchange interaction between pairs of magnetic spins:
where si and sj are two neighboring magnetic spins of two particles, rij = ri - rj is the inter-atomic distance between the two particles, and J(rij) is a function defining the intensity and the sign of the exchange interaction for different neighboring shells. This function is defined as:
where a, b and d are the three constant coefficients defined in the associated “pair_coeff” command (see below for more explanations).
The coefficients a, b, and d need to be fitted so that the function above matches with the value of the exchange interaction for the N neighbor shells taken into account. Examples and more explanations about this function and its parameterization are reported in (Tranchida).
From this exchange interaction, each spin i will be submitted to a magnetic torque omega, and its associated atom can be submitted to a force F for spin-lattice calculations (see fix_nve_spin), such as:
with h the Planck constant (in metal units), and eij = (ri - rj)/|ri-rj| the unit vector between sites i and j.
More details about the derivation of these torques/forces are reported in (Tranchida).
For the spin/exchange pair style, the following coefficients must be defined for each pair of atoms types via the pair_coeff command as in the examples above, or in the data file or restart files read by the read_data or read_restart commands, and set in the following order:
- rc (distance units)
- a (energy units)
- b (adim parameter)
- d (distance units)
Note that rc is the radius cutoff of the considered exchange interaction, and a, b and d are the three coefficients performing the parameterization of the function J(rij) defined above.
None of those coefficients is optional. If not specified, the spin/exchange pair style cannot be used.
All the pair/spin styles are part of the SPIN package. These styles are only enabled if LAMMPS was built with this package, and if the atom_style “spin” was declared. See the Build package doc page for more info.