Physical Model and Hamiltonian: This simulation uses the same model as the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page: classical unit spins ($|\mathbf{S}_i| = 1$) on a $C_6$-symmetric triangular lattice with nearest-neighbour exchange, the Dzyaloshinskii–Moriya interaction (DMI) and an external magnetic field. The only difference is that the external field is now time dependent: a small periodic field $\mathbf{h}(\tau)$ is added to a static field $\mathbf{B}_0$.
$$ \mathcal{H}(\tau) = -J \sum_{\langle i,j \rangle} \mathbf{S}_i \cdot \mathbf{S}_j - \sum_{\langle i,j \rangle} \mathbf{D}_{ij} \cdot (\mathbf{S}_i \times \mathbf{S}_j) - \sum_i \left[\mathbf{B}_0 + \mathbf{h}(\tau)\right] \cdot \mathbf{S}_i $$
For the Néel type $\mathbf{D}_{ij} = D(\hat{u}_{ij} \times \hat{z})$, and for the Bloch type $\mathbf{D}_{ij} = D\hat{u}_{ij}$. The static field components are set with the $B_x, B_y, B_z$ sliders, and the dynamic field with the "AC field" row.
LLG Equation: The spins evolve according to the same dimensionless Landau–Lifshitz–Gilbert equation as on the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page ($\tau = t/t_0$, $t_0 = (1+\alpha^2)/(\gamma J)$):
$$ \frac{d\mathbf{S}_i}{d\tau} = -\mathbf{S}_i \times \mathbf{h}_i^{\text{tot}} - \alpha \, \mathbf{S}_i \times (\mathbf{S}_i \times \mathbf{h}_i^{\text{tot}}) $$
$$ \mathbf{h}_i^{\text{eff}} = \sum_{j} \left( J\,\mathbf{S}_j + \mathbf{S}_j \times \mathbf{D}_{ij} \right) + \mathbf{B}_0 + \mathbf{h}(\tau) $$
Here $\mathbf{h}_i^{\text{tot}} = \mathbf{h}_i^{\text{eff}} + \mathbf{h}_i^{\text{th}}$. The thermal field $\mathbf{h}_i^{\text{th}}$ is defined exactly as on the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page, but this page runs at $T = 0$ by default (see below).
Spin-Wave Modes of a Skyrmion Lattice: A skyrmion lattice has characteristic collective oscillations that resonate at microwave frequencies (Mochizuki, Phys. Rev. Lett. 108, 017601 (2012); Onose et al., Phys. Rev. Lett. 109, 037603 (2012)). Three of these modes can be excited by a uniform (spatially homogeneous) field:
The frequencies are ordered as $\omega_{\text{CCW}} < \omega_{\text{breathing}} < \omega_{\text{CW}}$. At the default parameters ($B_z = 0.7$, $D = 1$) the values measured in this simulation are $\omega \approx 1.15$, $1.55$ and $2.43$, respectively (in units of the dimensionless time $\tau$).
AC Field and Polarization: The applied field $\mathbf{h}(\tau)$, with amplitude $h_0$ and angular frequency $\omega$, can be chosen in four forms:
$$ \text{Linear (x):}\ \mathbf{h} = h_0 \sin(\omega\tau)\,\hat{x}, \qquad \text{Out-of-plane (z):}\ \mathbf{h} = h_0 \sin(\omega\tau)\,\hat{z} $$
$$ \text{Circular CCW / CW:}\ \mathbf{h} = h_0 \left( \cos\omega\tau,\ \pm\sin\omega\tau,\ 0 \right) $$
A linearly polarized field is the sum of two counter-rotating circular fields, each of amplitude $h_0/2$, so it excites the CCW and CW modes together. A circular field couples only to the mode that rotates in the same sense. For example, at $\omega = 1.15$ a CCW circular field produces a strong response, while a CW circular field of the same frequency and amplitude has only a small effect. This is a direct demonstration of rotation-selective excitation.
Resonance, Damping and Phase: Each mode behaves like a damped, driven oscillator. As the drive frequency approaches the mode frequency, the response amplitude grows; the width of the resonance is of order $\alpha\omega$. At resonance the response lags the drive by about a quarter period ($90^\circ$), which can be seen directly in the time chart. With $\alpha = 0.3$, as on the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page, the resonance width is comparable to the separation between the modes and they cannot be distinguished; this page therefore starts with $\alpha = 0.05$. The default temperature is $T = 0$, because thermal fluctuations would mask the small rotational motion of the cores.
Spectrum Measurement: When the "Measure spectrum" button is pressed, the AC field is first switched off and the system is relaxed to equilibrium with strong damping ($\alpha = 0.5$, $\Delta\tau = 20$). A short field pulse is then applied: $\mathbf{h} = (0.5,\, 0,\, 0.5)$ for three time steps ($\Delta\tau = 0.06$). The pulse excites all modes at once. The change in magnetization $\delta\mathbf{M}(\tau)$ is then recorded at $T = 0$ for a duration $\tau = 160$, and a Hann-windowed Fourier transform is taken:
$$ \tilde{m}_+(\omega) = \sum_k \left[\delta M_x(\tau_k) + i\,\delta M_y(\tau_k)\right] w_k\, e^{-i\omega\tau_k}, \qquad \tilde{m}_z(\omega) = \sum_k \delta M_z(\tau_k)\, w_k\, e^{-i\omega\tau_k} $$
The complex quantity $m_+ = M_x + iM_y$ distinguishes the sense of rotation: peaks at $\omega > 0$ correspond to CCW rotation and peaks at $\omega < 0$ to CW rotation. The breathing mode appears in the $\tilde{m}_z$ spectrum. The peak frequencies found are automatically assigned to the CCW, Breathing and CW buttons, and after the measurement the spin configuration is restored to its state before the measurement. The mode frequencies depend on $B_z$ and $D$. If these parameters are changed after the last measurement, a ⚠ sign appears next to the buttons, and the spectrum should be measured again.
Initial State and System Size: The page starts from an ordered triangular skyrmion lattice of $4 \times 4$ skyrmions that fits exactly into the $L \times L$ ($L = 30$) rhombus lattice (skyrmion spacing $L/4 = 7.5$ lattice constants, periodic boundary conditions). Before the drive starts, the initial profile is relaxed with strong damping ($\alpha = 0.5$, $T = 0$, $\Delta\tau = 40$). In a disordered skyrmion texture formed from a random start the modes mix and the spectrum shows a single broad peak; you can compare this using the "Random start" button.
Numerical Method: The integration uses the same Heun (predictor–corrector) method as the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page, with time step $d\tau = 0.02$. The time-dependent field is evaluated at $\tau$ in the predictor stage and at $\tau + d\tau$ in the corrector stage. The default value of the "Integrations/Frame" parameter is 5; with this value one period of the CCW mode takes about 55 frames and one period of the CW mode about 26 frames, so the motion is easy to follow by eye.
Visualization: The color coding is the same as on the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page:
The first chart shows the drive field (dashed line, right axis) and the excited magnetization component (left axis) on the same time axis. The second is the trajectory of the deviation of the in-plane magnetization from its mean in the $(\delta M_x, \delta M_y)$ plane (hodograph); the red dot marks the current value. The sense of rotation is computed from this trajectory and shown in the control panel together with the topological charge $Q$, which is computed with the Berg–Lüscher definition as on the “Stochastic Landau-Lifshitz-Gilbert (LLG) Dynamics on a $C_6$ Symmetric Lattice” page. The third chart shows the most recent spectrum measurement.
Suggested Experiments:
Limitations: This is an illustrative model. With $D = J$ the skyrmions are only a few lattice constants across. The ordering of the modes agrees with continuum theory, but the frequencies include discrete-lattice effects and should be interpreted only qualitatively. The frequencies are given in units of the dimensionless time $\tau$; the physical frequency depends on the scale $J/\hbar$, and in real chiral magnets these modes lie in the GHz range. The modes shown here belong to a skyrmion lattice; for a single, isolated skyrmion the CW mode merges into the magnon continuum and is not well defined. The amplitudes selected by the buttons lie in the linear-response regime. At larger amplitudes the response becomes nonlinear: the CCW response begins to saturate above $h_0 \approx 0.05$, the breathing response deviates clearly from linearity at $h_0 \approx 0.08$, and under CW driving at $h_0 \approx 0.2$ an additional oscillation appears at a frequency different from the drive ($\omega \approx 1.5$).