ensemble (SIB)
The semi-implicit B (SIB) integrator propagates the direction of each
spin:R:3 vector with the stochastic Landau–Lifshitz–Gilbert equation.
It preserves each vector’s initial magnitude and uses the public
mforce:R:3 from a Spin potential as
\(\boldsymbol H=-\partial E/\partial\boldsymbol S\).
Syntax
For spin-only dynamics with a fixed lattice, use:
ensemble nve_sib [alpha <value>] [gamma <value>] \
[stemp <-1|value>] [seed <value>]
For fixed-cell dynamics, use:
ensemble nvt_sib <T_1> <T_2> <T_coup> \
[lattice on|off] [alpha <value>] \
[gamma <value>] [stemp <-1|0|value>] [seed <value>]
For pressure-controlled dynamics, use:
ensemble npt_sib temp <T_1> <T_2> <pressure_terms> \
[tperiod <tau_temp>] [pperiod <tau_press>] \
[alpha <value>] [gamma <value>] \
[stemp <-1|0|value>] [seed <value>]
The MTTK portion of npt_sib has the same syntax as
npt_mttk. SIB options must follow all MTTK options.
Examples
Propagate spins deterministically while keeping the lattice fixed:
ensemble nve_sib alpha 0.1 stemp -1 seed 12345
Propagate only spins at 300 K:
ensemble nvt_sib 300 300 100 lattice off alpha 0.1 seed 12345
Run coupled spin–lattice dynamics with the physical default gyromagnetic ratio:
ensemble nvt_sib 300 300 100 lattice on alpha 0.1
Run isotropic pressure-controlled spin–lattice dynamics:
ensemble npt_sib temp 300 300 iso 0 0 \
tperiod 100 pperiod 1000 alpha 0.1 seed 12345
Parameters
T_1,T_2Initial and final temperatures in K. SIB uses the linearly ramped target temperature for its thermal magnetic noise. With lattice dynamics enabled, the same target also controls the lattice thermostat.
T_coupNose–Hoover-chain coupling period in timesteps for the lattice. It remains required by
nvt_sibwhenlattice offbut then does not alter the spin equation.lattice on|offAvailable only for
nvt_siband defaults toon.offkeeps atomic positions and velocities fixed while evaluating the Spin potential twice per timestep for the SIB midpoint and endpoint fields.alpha <value>Dimensionless Gilbert damping coefficient. It must be finite and non-negative. The default is
0; thermal noise is then also zero.gamma <value>Positive gyromagnetic factor \(\gamma/\hbar\) in \((\mathrm{eV\,ps})^{-1}\). The default is \(2/\hbar=3038.53\ (\mathrm{eV\,ps})^{-1}\) in GPUMD’s unit system.
stemp <-1|0|value>Controls the thermal magnetic noise.
-1disables it while retaining deterministic damping,0follows the ensemble target temperature, and a positive value fixes the spin-noise temperature in K. The default is0.For
nve_sib, the default is-1because there is no lattice target temperature. A fixed positive spin temperature is accepted, while0is rejected.nve_sibalways keeps lattice positions and velocities fixed, matching the DynSpin SIB/NVE separation between spin and lattice dynamics.seed <value>Positive integer for counter-based Gaussian noise. The default is
12345. A given atom, timestep, and seed always receive the same noise.
Algorithm
For a unit direction \(\boldsymbol e_n\), SIB forms
The predictor endpoint is an analytic Cayley rotation of \(\boldsymbol e_n\). GPUMD evaluates the second Spin-potential field at the unnormalized arithmetic chord midpoint \((\boldsymbol e_n+\boldsymbol e_\mathrm{pred})/2\), reuses the same thermal increment, and applies the corrected Cayley rotation from the original direction. A final force evaluation caches the endpoint energy, force, virial, and magnetic force for output and the next timestep. Thus SIB uses two Spin-potential evaluations per timestep after the initial force.
The angular-noise standard deviation for a spin magnitude \(\mu_s\) follows from matching its variance to the damping mobility \(\gamma\alpha/(1+\alpha^2)\) (fluctuation–dissipation):
Restrictions
SIB requires one Spin potential, spin:R:3 on every atom, a positive
timestep, positive target temperatures, alpha >= 0, gamma > 0, and a
positive seed. Target temperatures are only required by the NVT/NPT forms. A
zero spin vector remains zero. nve_sib always fixes the lattice and does
not accept lattice; npt_sib always includes
lattice and cell dynamics and therefore does not accept lattice off.
SIB propagates nonzero moments of elements listed in spin_type. Moments
of other elements are masked to zero, receive no magnetic noise, and remain
zero. The initial magnitude of each active moment is conserved.
For variable-magnitude dynamics use the independent
GLSD ensembles. SIB does not accept lsf, damping or
mobility; its fixed-magnitude equation and Cayley integration are unchanged.