Skip to content

Commit

Permalink
build based on af1cf19
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Oct 8, 2023
1 parent 694eab3 commit 5ac8e62
Show file tree
Hide file tree
Showing 32 changed files with 55 additions and 54 deletions.
2 changes: 1 addition & 1 deletion dev/.documenter-siteinfo.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"documenter":{"julia_version":"1.9.3","generation_timestamp":"2023-10-06T04:49:58","documenter_version":"1.1.0"}}
{"documenter":{"julia_version":"1.9.3","generation_timestamp":"2023-10-08T13:53:21","documenter_version":"1.1.0"}}
4 changes: 2 additions & 2 deletions dev/anisotropy.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
set_onsite_coupling!(sys, O[4,0] + 5*O[4,4], i)

# An equivalent expression of this quartic anisotropy, up to a constant shift
set_onsite_coupling!(sys, 20*(S[1]^4 + S[2]^4 + S[3]^4), i)</code></pre><h2 id="Renormalization-procedure-for-:dipole-mode"><a class="docs-heading-anchor" href="#Renormalization-procedure-for-:dipole-mode">Renormalization procedure for <code>:dipole</code> mode</a><a id="Renormalization-procedure-for-:dipole-mode-1"></a><a class="docs-heading-anchor-permalink" href="#Renormalization-procedure-for-:dipole-mode" title="Permalink"></a></h2><p>There are two allowed modes for a <a href="library.html#Sunny.System-Tuple{Crystal, Tuple{Int64, Int64, Int64}, Vector{SpinInfo}, Symbol}"><code>System</code></a>. The mode <code>:SUN</code> models each spin as an SU(<em>N</em>) coherent state (i.e., as a set of <span>$N$</span> complex amplitudes), and is the most variationally accurate. The mode <code>:dipole</code> constrains the SU(<em>N</em>) coherent-state dynamics to the space of pure dipoles. In either mode, Sunny encourages specifying single-ion anisotropies as <span>$N×N$</span> matrices. In <code>:dipole</code> mode, Sunny will automatically renormalize the anisotropy operator to achieve maximal consistency with <code>:SUN</code> mode. This procedure was derived in <a href="https://arxiv.org/abs/2304.03874">D. Dahlbom et al., [arXiv:2304.03874]</a>. Here, we summarize the final results.</p><p>The starting point is a quantum operator <span>$\hat{\mathcal{H}}_{\mathrm{local}}$</span> giving the single-ion anisotropy for one site. It can be expanded in Stevens operators,</p><p class="math-container">\[\hat{\mathcal H}_{\mathrm{local}} = \sum_{k, q} A_{k,q} \hat{\mathcal{O}}_{k,q}.\]</p><p>See the documentation of <a href="library.html#Sunny.print_stevens_expansion-Tuple{Matrix{ComplexF64}}"><code>print_stevens_expansion</code></a> for some explicit examples of this expansion.</p><p>The traditional classical limit of a quantum spin Hamiltonian, which yields the Landau-Lifshitz dynamics, can be derived by taking the formal <span>$S \to\infty$</span> limit, such that each spin operator <span>$\hat{\mathbf{S}}$</span> is replaced by its dipole expectation value <span>$\mathbf{s}$</span>. Correspondingly, the Stevens operators <span>$\hat{\mathcal{O}}_{k,q}$</span> become polynomials <span>$\mathcal{O}_{k,q}(\mathbf{s})$</span> in the classical dipole. With this traditional approach, one would arrive at the <em>bare</em> expected energy,</p><p class="math-container">\[H_{\mathrm{bare}}(\mathbf{s}) = \sum_{k, q} A_{k,q} \mathcal{O}_{k,q}(\mathbf{s}).\]</p><p>In a real magnetic compound, however, <span>$S$</span> may not be very large, and one can achieve a better approximation by avoiding the <span>$S \to\infty$</span> limit. The strategy is to begin with the full dynamics of SU(<em>N</em>) coherent states, and then constrain it to the space of dipoles <span>$\mathbf{s}$</span>. Doing so will again yield the Landau-Lifshitz dynamics, but now involving the <em>renormalized</em> expected energy,</p><p class="math-container">\[H_{\mathrm{renormalized}}(\mathbf{s}) = \sum_{k, q} c_k A_{k,q} \mathcal{O}_{k,q}(\mathbf{s}).\]</p><p>The <span>$k$</span>-dependent renormalization factors are</p><p class="math-container">\[\begin{align*}
set_onsite_coupling!(sys, 20*(S[1]^4 + S[2]^4 + S[3]^4), i)</code></pre><h2 id="Renormalization-procedure-for-:dipole-mode"><a class="docs-heading-anchor" href="#Renormalization-procedure-for-:dipole-mode">Renormalization procedure for <code>:dipole</code> mode</a><a id="Renormalization-procedure-for-:dipole-mode-1"></a><a class="docs-heading-anchor-permalink" href="#Renormalization-procedure-for-:dipole-mode" title="Permalink"></a></h2><p>There are two allowed modes for a <a href="library.html#Sunny.System-Tuple{Crystal, Tuple{Int64, Int64, Int64}, Vector{SpinInfo}, Symbol}"><code>System</code></a>. The mode <code>:SUN</code> models each spin as an SU(<em>N</em>) coherent state (i.e., as a set of <span>$N$</span> complex amplitudes), and is the most variationally accurate. The mode <code>:dipole</code> constrains the SU(<em>N</em>) coherent-state dynamics to the space of pure dipoles. In either mode, Sunny encourages specifying single-ion anisotropies as <span>$N×N$</span> matrices. In <code>:dipole</code> mode, Sunny will automatically renormalize the anisotropy operator to achieve maximal consistency with <code>:SUN</code> mode. This procedure was derived in <a href="https://arxiv.org/abs/2304.03874">D. Dahlbom et al., [arXiv:2304.03874]</a>. Here, we summarize the final results.</p><p>The starting point is a quantum operator <span>$\hat{\mathcal{H}}_{\mathrm{local}}$</span> giving the single-ion anisotropy for one site. It can be expanded in Stevens operators,</p><p class="math-container">\[\hat{\mathcal H}_{\mathrm{local}} = \sum_{k, q} A_{k,q} \hat{\mathcal{O}}_{k,q}.\]</p><p>See the documentation of <a href="library.html#Sunny.print_stevens_expansion-Tuple{AbstractMatrix}"><code>print_stevens_expansion</code></a> for some explicit examples of this expansion.</p><p>The traditional classical limit of a quantum spin Hamiltonian, which yields the Landau-Lifshitz dynamics, can be derived by taking the formal <span>$S \to\infty$</span> limit, such that each spin operator <span>$\hat{\mathbf{S}}$</span> is replaced by its dipole expectation value <span>$\mathbf{s}$</span>. Correspondingly, the Stevens operators <span>$\hat{\mathcal{O}}_{k,q}$</span> become polynomials <span>$\mathcal{O}_{k,q}(\mathbf{s})$</span> in the classical dipole. With this traditional approach, one would arrive at the <em>bare</em> expected energy,</p><p class="math-container">\[H_{\mathrm{bare}}(\mathbf{s}) = \sum_{k, q} A_{k,q} \mathcal{O}_{k,q}(\mathbf{s}).\]</p><p>In a real magnetic compound, however, <span>$S$</span> may not be very large, and one can achieve a better approximation by avoiding the <span>$S \to\infty$</span> limit. The strategy is to begin with the full dynamics of SU(<em>N</em>) coherent states, and then constrain it to the space of dipoles <span>$\mathbf{s}$</span>. Doing so will again yield the Landau-Lifshitz dynamics, but now involving the <em>renormalized</em> expected energy,</p><p class="math-container">\[H_{\mathrm{renormalized}}(\mathbf{s}) = \sum_{k, q} c_k A_{k,q} \mathcal{O}_{k,q}(\mathbf{s}).\]</p><p>The <span>$k$</span>-dependent renormalization factors are</p><p class="math-container">\[\begin{align*}
c_2 &amp;= 1-\frac{1}{2}S^{-1} \\
c_4 &amp;= 1-3S^{-1}+\frac{11}{4}S^{-2}-\frac{3}{4}S^{-3} \\
c_6 &amp;= 1-\frac{15}{2}S^{-1}+\frac{85}{4}S^{-2}-\frac{225}{8}S^{-3}+\frac{137}{8}S^{-4}-\frac{15}{4}S^{-5}.
Expand Down Expand Up @@ -37,4 +37,4 @@
\hat{\mathcal{O}}_{6,\pm2} &amp; =\phi_{\pm}(\hat{S}_{+}^{2}\pm \hat{S}_{-}^{2})(33\hat{S}_{z}^{4}-(18X+123)\hat{S}_{z}^{2}+X^{2}+10X+102)+\mathrm{h.c.}\\
\hat{\mathcal{O}}_{6,\pm1} &amp; =\phi_{\pm}(\hat{S}_{+}\pm \hat{S}_{-})(33\hat{S}_{z}^{5}-(30X-15)\hat{S}_{z}^{3}+(5X^{2}-10X+12)\hat{S}_{z})+\mathrm{h.c.}\\
\hat{\mathcal{O}}_{6,0} &amp; =231\hat{S}_{z}^{6}-(315X-735)\hat{S}_{z}^{4}+(105X^{2}-525X+294)\hat{S}_{z}^{2}-5X^{3}+40X^{2}-60X
\end{align*}\]</p><p>Stevens operators <span>$\hat{\mathcal{O}}_{k,q}$</span> for odd <span>$k$</span> are disallowed from the single-ion anisotropy under the assumption of time-reversal symmetry. Computer-generated tables of Stevens operators with larger k are available from C. Rudowicz and C. Y. Chung, J. Phys.: Condens. Matter 16, 5825 (2004).</p><p>For each <span>$k$</span> value, the collection of operators <span>$\{\hat{\mathcal{O}}_{k,q&#39;}\}$</span> for <span>$q&#39; = -k, \dots, k$</span> is an irreducible representation of the group of rotations O(3). In particular, a physical rotation will transform <span>$\hat{\mathcal{O}}_{k,q}$</span> into a linear combination of <span>$\hat{\mathcal{O}}_{k,q&#39;}$</span> where <span>$q&#39;$</span> varies but <span>$k$</span> remains fixed. </p><p>In taking the large-<span>$S$</span> limit, each dipole operator is replaced by its expectation value <span>$\mathbf{s} = \langle \hat{\mathbf{S}} \rangle$</span>, and only leading-order terms are retained. The operator <span>$\hat{\mathcal{O}}_{k,q}$</span> becomes a homogeneous polynomial <span>$O_{k,q}(\mathbf{s})$</span> of order <span>$k$</span> in the spin components. One can see these polynomials using <a href="library.html#Sunny.large_S_stevens_operators"><code>large_S_stevens_operators</code></a>. Due to the normalization constraint, each dipole can be expressed in polar angles, <span>$(\theta, \phi)$</span>. Then the Stevens functions <span>$O_{k,q}(\mathbf{s})$</span> correspond to the spherical harmonic functions <span>$Y_l^m(\theta, \phi)$</span> where <span>$l=k$</span> and <span>$m=q$</span>, and modulo <span>$k$</span> and <span>$q$</span>-dependent rescaling factors.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="structure-factor.html">« Structure Factor Calculations</a><a class="docs-footer-nextpage" href="library.html">Library API »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.0 on <span class="colophon-date" title="Friday 6 October 2023 04:49">Friday 6 October 2023</span>. Using Julia version 1.9.3.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
\end{align*}\]</p><p>Stevens operators <span>$\hat{\mathcal{O}}_{k,q}$</span> for odd <span>$k$</span> are disallowed from the single-ion anisotropy under the assumption of time-reversal symmetry. Computer-generated tables of Stevens operators with larger k are available from C. Rudowicz and C. Y. Chung, J. Phys.: Condens. Matter 16, 5825 (2004).</p><p>For each <span>$k$</span> value, the collection of operators <span>$\{\hat{\mathcal{O}}_{k,q&#39;}\}$</span> for <span>$q&#39; = -k, \dots, k$</span> is an irreducible representation of the group of rotations O(3). In particular, a physical rotation will transform <span>$\hat{\mathcal{O}}_{k,q}$</span> into a linear combination of <span>$\hat{\mathcal{O}}_{k,q&#39;}$</span> where <span>$q&#39;$</span> varies but <span>$k$</span> remains fixed. </p><p>In taking the large-<span>$S$</span> limit, each dipole operator is replaced by its expectation value <span>$\mathbf{s} = \langle \hat{\mathbf{S}} \rangle$</span>, and only leading-order terms are retained. The operator <span>$\hat{\mathcal{O}}_{k,q}$</span> becomes a homogeneous polynomial <span>$O_{k,q}(\mathbf{s})$</span> of order <span>$k$</span> in the spin components. One can see these polynomials using <a href="library.html#Sunny.large_S_stevens_operators"><code>large_S_stevens_operators</code></a>. Due to the normalization constraint, each dipole can be expressed in polar angles, <span>$(\theta, \phi)$</span>. Then the Stevens functions <span>$O_{k,q}(\mathbf{s})$</span> correspond to the spherical harmonic functions <span>$Y_l^m(\theta, \phi)$</span> where <span>$l=k$</span> and <span>$m=q$</span>, and modulo <span>$k$</span> and <span>$q$</span>-dependent rescaling factors.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="structure-factor.html">« Structure Factor Calculations</a><a class="docs-footer-nextpage" href="library.html">Library API »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.0 on <span class="colophon-date" title="Sunday 8 October 2023 13:53">Sunday 8 October 2023</span>. Using Julia version 1.9.3.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Binary file added dev/examples/fei2_classical-02ffd1ac.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed dev/examples/fei2_classical-261d7c77.png
Binary file not shown.
Binary file removed dev/examples/fei2_classical-330a9e08.png
Binary file not shown.
Binary file removed dev/examples/fei2_classical-58ac7421.png
Binary file not shown.
Binary file added dev/examples/fei2_classical-6b435b86.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed dev/examples/fei2_classical-7f9c81d9.png
Binary file not shown.
Binary file added dev/examples/fei2_classical-8a214f0c.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed dev/examples/fei2_classical-9fcf7caf.png
Binary file not shown.
Binary file added dev/examples/fei2_classical-9fe52114.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dev/examples/fei2_classical-a20d933e.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed dev/examples/fei2_classical-da264483.png
Binary file not shown.
Binary file removed dev/examples/fei2_classical-e85c46a4.png
Binary file not shown.
Binary file added dev/examples/fei2_classical-ef051221.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dev/examples/fei2_classical-ffcf4af4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 5ac8e62

Please sign in to comment.