Unverified Commit c55174ac authored by Axel Kohlmeyer's avatar Axel Kohlmeyer Committed by GitHub
Browse files

Merge pull request #1424 from julient31/setforce_spin

Adding a fix setforce/spin to the SPIN package
parents 89886032 5e3929de
Loading
Loading
Loading
Loading
+19 −4
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ Documentation"_ld - "LAMMPS Commands"_lc :c
Magnetic spins :h3

The magnetic spin simulations are enabled by the SPIN package, whose
implementation is detailed in "Tranchida"_#Tranchida7.
implementation is detailed in "Tranchida"_#Tranchida.

The model represents the simulation of atomic magnetic spins coupled
to lattice vibrations. The dynamics of those magnetic spins can be used
@@ -36,13 +36,28 @@ A Langevin thermostat can be applied to those magnetic spins using
"fix langevin/spin"_fix_langevin_spin.html. Typically, this thermostat
can be coupled to another Langevin thermostat applied to the atoms
using "fix langevin"_fix_langevin.html in order to simulate
thermostatted spin-lattice system.
thermostatted spin-lattice systems.

The magnetic Gilbert damping can also be applied using "fix
langevin/spin"_fix_langevin_spin.html. It allows to either dissipate
the thermal energy of the Langevin thermostat, or to perform a
relaxation of the magnetic configuration toward an equilibrium state.

The command "fix setforce/spin"_fix_setforce.html allows to set the 
components of the magnetic precession vectors (while erasing and 
replacing the previously computed magnetic precession vectors on 
the atom). 
This command can be used to freeze the magnetic moment of certain 
atoms in the simulation by zeroing their precession vector. 

The command "fix nve/spin"_fix_nve_spin.html can be used to
perform a symplectic integration of the combined dynamics of spins 
and atomic motions.

The minimization style "min/spin"_min_spin.html can be applied
to the spins to perform a minimization of the spin configuration. 


All the computed magnetic properties can be output by two main
commands. The first one is "compute spin"_compute_spin.html, that
enables to evaluate magnetic averaged quantities, such as the total
@@ -54,6 +69,6 @@ magnetic spin, or the magnetic force acting on this spin.

:line

:link(Tranchida7)
:link(Tranchida)
[(Tranchida)] Tranchida, Plimpton, Thibaudeau and Thompson,
arXiv preprint arXiv:1801.10233, (2018).
Journal of Computational Physics, 372, 406-425, (2018).
+1 −1
Original line number Diff line number Diff line
@@ -99,4 +99,4 @@ integration fix (e.g. {fix nve/spin}).

:link(Tranchida2)
[(Tranchida)] Tranchida, Plimpton, Thibaudeau and Thompson,
Journal of Computational Physics, (2018).
Journal of Computational Physics, 372, 406-425, (2018).
+1 −1
Original line number Diff line number Diff line
@@ -73,4 +73,4 @@ instead of "array" is also valid.

:link(Tranchida1)
[(Tranchida)] Tranchida, Plimpton, Thibaudeau and Thompson,
Journal of Computational Physics, (2018).
Journal of Computational Physics, 372, 406-425, (2018).
+19 −1
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@

fix setforce command :h3
fix setforce/kk command :h3
fix setforce/spin command :h3

[Syntax:]

@@ -27,6 +28,7 @@ keyword = {region} :l

fix freeze indenter setforce 0.0 0.0 0.0
fix 2 edge setforce NULL 0.0 0.0
fix 1 edge setforce/spin 0.0 0.0 0.0
fix 2 edge setforce NULL 0.0 v_oscillate :pre

[Description:]
@@ -65,6 +67,19 @@ to it.

:line

Style {spin} suffix sets the components of the magnetic precession 
vectors instead of the mechanical forces. This also erases all 
previously computed magnetic precession vectors on the atom, though 
additional magnetic fixes could add new forces.

This command can be used to freeze the magnetic moment of certain 
atoms in the simulation by zeroing their precession vector. 

All options defined above remain valid, they just apply to the magnetic 
precession vectors instead of the forces.

:line

Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
@@ -117,7 +132,10 @@ forces to any value besides zero when performing a minimization. Use
the "fix addforce"_fix_addforce.html command if you want to apply a
non-zero force to atoms during a minimization.

[Restrictions:] none
[Restrictions:] 

The fix {setforce/spin} only makes sense when LAMMPS was built with the
SPIN package.

[Related commands:]

+1 −1
Original line number Diff line number Diff line
@@ -88,4 +88,4 @@ package"_Build_package.html doc page for more info.
Physical Review B, 88(18), 184422. (2013).
:link(Tranchida5)
[(Tranchida)] Tranchida, Plimpton, Thibaudeau and Thompson,
Journal of Computational Physics, (2018).
Journal of Computational Physics, 372, 406-425, (2018).
Loading