# 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}$$.