Extended equations

Stochastic LLG equation

The implemented equation including the thermal fluctuation effects is

\[\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times (\vec{H}+\vec{\xi}) + \alpha \vec{m} \times \frac{\partial \vec{m}}{\partial t}\]

where \(\vec{\xi}\) is the thermal fluctuation field and is assumed to have the following properties,

\[\left< \vec{\xi} \right> = 0, \;\;\; \left< \vec{\xi}_i^u,\vec{\xi}_j^v \right> = 2 D \delta_{ij} \delta_{uv}\]

and

\[D = \frac{\alpha k_B T}{\gamma \mu_s}\]

Spin transfer torque (Zhang-Li model)

The extended equation with current is,

\[\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} + \alpha \vec{m} \times \frac{\partial \vec{m}}{\partial t} + u_0 (\vec{j}_s \cdot \nabla) \vec{m} - \beta u_0 [\vec{m}\times (\vec{j}_s \cdot \nabla)\vec{m}]\]

Where

\[u_0=\frac{p g \mu_B}{2 |e| M_s}=\frac{p g \mu_B a^3}{2 |e| \mu_s}\]

and \(\mu_B=|e|\hbar/(2m)\) is the Bohr magneton. Notice that \(\partial_x \vec{m} \cdot \vec{m}=0\) so \(u_0 (\vec{j}_s \cdot \nabla) \vec{m}= - u_0 \vec{m}\times[\vec{m}\times (\vec{j}_s \cdot \nabla)\vec{m}]\). Besides, we can change the equation to atomistic one by introducing \(\vec{s}=-\vec{S}\) where \(\vec{S}\) is the local spin such that

\[\vec{M}=-\frac{g \mu_B}{a^3}\vec{S} =\frac{g \mu_B}{a^3}\vec{s}\]

so \(u_0=p a^3/(2|e|s)\), furthermore,

\[\frac{\partial \vec{s}}{\partial t} = - \gamma \vec{s} \times \vec{H} + \frac{\alpha}{s} \vec{s} \times \frac{\partial \vec{s}}{\partial t} + \frac{p a^3}{2|e|s} (\vec{j}_s \cdot \nabla) \vec{s} - \frac{p a^3 \beta}{2|e|s^2} [\vec{s}\times (\vec{j}_s \cdot \nabla)\vec{s}]\]

However, we perfer the normalised equaiton here, after changing it to LL form, we obtain,

\[(1+\alpha^2)\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} - \alpha \gamma \vec{m} \times (\vec{m} \times \vec{H}) + (1+\alpha\beta) u_0 (\vec{j}_s \cdot \nabla) \vec{m} - (\beta-\alpha) u_0 [\vec{m}\times (\vec{j}_s \cdot \nabla)\vec{m}]\]

although in principle \(\partial_x \vec{m}\) is always perpendicular to \(\vec{m}\), it’s better to take an extra step to remove its longitudinal component, therefore, the real equation written in codes is,

\[(1+\alpha^2)\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H}_{\perp} + \alpha \gamma \vec{H}_{\perp} + (1+\alpha \beta) u_0 \vec{\tau}_{\perp} - (\beta-\alpha) u_0 (\vec{m}\times \vec{\tau}_{\perp})\]

where \(\vec{\tau}=(\vec{j}_s \cdot \nabla)\vec{m}\) is the effective torque generated by current.

Nonlocal spin transfer torque (full version of Zhang-li model)

The LLG equation with STT is given by,

\[\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} + \alpha \vec{m} \times \frac{\partial \vec{m}}{\partial t} + \vec{T}\]

where \(\vec{T}\) is the spin transfer torque. In the local form the STT is given by,

\[\vec{T}_{loc} = u_0 (\vec{j}_s \cdot \nabla) \vec{m} - \beta u_0 [\vec{m}\times (\vec{j}_s \cdot \nabla)\vec{m}]\]

And in general case, the spin transfer torque could be computed by,

\[\vec{T}=-\frac{\vec{m} \times \delta \vec{m}}{\tau_{sd}}\]

where \(\tau_{sd}\) is the s-d exchange time and \(\delta \vec{m}\) is the nonequilibrium spin density governed by

\[\frac{\partial \delta \vec{m}}{\partial t} = D \nabla^2 \delta \vec{m} + \frac{\vec{m} \times \delta \vec{m}}{\tau_{sd}} - \frac{\delta \vec{m}}{\tau_{sf}} +u_0 (\vec{j}_s \cdot \nabla) \vec{m}\]

By changing the LLG equation to LL form, we obtain,

\[(1+\alpha^2)\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} - \alpha \gamma \vec{m} \times (\vec{m} \times \vec{H}) + \vec{T} + \alpha \vec{m} \times \vec{T}\]

i.e.,

\[(1+\alpha^2)\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} - \alpha \gamma \vec{H}_{\perp} - \frac{\vec{m} \times \delta \vec{m}}{\tau_{sd}} + \alpha \frac{\delta \vec{m}}{\tau_{sd}}\]

Spin transfer torque (current-perpendicular-to-plane, CPP)

In this case (current-perpendicular-to-plane, CPP), there are two types of torques can be added to the orginal LLG equation. One is the so called Slonczewski torque \(\vec{\tau}_s=-a_J \vec{m} \times (\vec{m} \times \vec{p})\), and the other is a fieldlike torque \(\vec{\tau}_f=- b_J(\vec{m} \times \vec{p})\) [PRL 102 037206 (2009)]. So the full LLG equation is

\[\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H} + \alpha \vec{m} \times \frac{\partial \vec{m}}{\partial t} -a_J \vec{m} \times (\vec{m} \times \vec{p}) - b_J (\vec{m} \times \vec{p})\]

where \(\vec{p}\) is the unit vector of the spin polarization. The parameter \(b_J = \beta a_J\) and

\[a_J = \frac{\hbar \gamma J P}{2 |e| d M_s}\]

As we can see, this equation is exactly the same as the one used in Zhang-Li case if we take \(\vec{p} = (\vec{j}_s \cdot \nabla)\vec{m}\). So the implemented equation in the code is,

\[(1+\alpha^2)\frac{\partial \vec{m}}{\partial t} = - \gamma \vec{m} \times \vec{H}_{\perp} + \alpha \gamma \vec{H}_{\perp} + (1+\alpha \beta) a_J \vec{p}_{\perp} - (\beta-\alpha) a_J (\vec{m}\times \vec{p}_{\perp})\]

where \(\vec{p}_\perp=\vec{p}-(\vec{m}\cdot\vec{p})\vec{m}\).