diff --git a/docs/source/index.rst b/docs/source/index.rst index b208668..dcb4b20 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -12,6 +12,12 @@ Spin Hamiltonian format **Desired duration** Two-three months ===================== ======================================== +.. toctree:: + :hidden: + + fdp/index + spinham-zoo/index + Workflow ======== @@ -27,12 +33,6 @@ What is an FDP? See :ref:`fdp-0` for the description of FDP concept and workflow. -.. toctree:: - :maxdepth: 1 - - fdp/index - - Finalization of the design stage ================================ @@ -42,5 +42,3 @@ notification to everyone) can be made by any member and if no new FDP appear after XX>7 days after the call, then the work will move to the implementation stage. - - diff --git a/docs/source/spinham-zoo/espins.rst b/docs/source/spinham-zoo/espins.rst new file mode 100644 index 0000000..7820a4e --- /dev/null +++ b/docs/source/spinham-zoo/espins.rst @@ -0,0 +1,40 @@ +.. _zoo_espins: + +****** +EspinS +****** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `DOI `_, + `Github `_ +Languages Fortran90, Python +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + =& + \underbrace{\sum_{i}\Delta_i\,(\hat{z}_i\cdot\mathbf{S}_i)^2}_{\text{single-ion term}} + + + \underbrace{\sum_{i}\mathbf{B}\cdot\mathbf{S}_i}_{\text{magnetic field}} + -\\&- + \underbrace{\frac{1}{2}\sum_{i,j}J_{ij}\,\mathbf{S}_i\cdot\mathbf{S}_j}_{\text{exchange term}} + + + \underbrace{\frac{1}{2}\sum_{i,j}\mathbf{D}_{ij}\cdot(\mathbf{S}_i\times\mathbf{S}_j)}_{\text{Dzyaloshinskii-Moriya term}} + +\\&+ + \underbrace{\frac{1}{2}\sum_{i,j}B_{ij}\left(\mathbf{S}_i\cdot\mathbf{S}_j\right)^2}_{\text{bi-quadratic term}} + +Convention +========== + + +================= === +================= === +Spin normalized no +Multiple counting yes +================= === diff --git a/docs/source/spinham-zoo/grogu.rst b/docs/source/spinham-zoo/grogu.rst new file mode 100644 index 0000000..464e9c5 --- /dev/null +++ b/docs/source/spinham-zoo/grogu.rst @@ -0,0 +1,51 @@ +.. _zoo_grogu: + +***** +GROGU +***** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI `_, + `Zenodo `_ +Languages Python +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + = + \frac{1}{2} + \sum_{i\neq j} + \boldsymbol{e}_{i} + \cdot + \boldsymbol{J}_{ij} + \cdot + \boldsymbol{e}_{j} + + + \sum_{i} + \boldsymbol{e}_{i} + \cdot + \boldsymbol{K}_{i} + \cdot + \boldsymbol{e}_{i}, + +where :math:`\boldsymbol{e}_{i} = 1 / (\hbar S_i) \boldsymbol{S}_{i}` is a unit +vector of the angular momentum vector and :math:`\boldsymbol{J}_{ij}`, and +:math:`\boldsymbol{K}_{i}` are the exchange and on-site anisotropy tensors +respectively. + +Convention +========== + + +================= === +================= === +Spin normalized yes +Multiple counting yes +================= === diff --git a/docs/source/spinham-zoo/index.rst b/docs/source/spinham-zoo/index.rst new file mode 100644 index 0000000..b445fb1 --- /dev/null +++ b/docs/source/spinham-zoo/index.rst @@ -0,0 +1,44 @@ +.. _zoo: + +******************* +Zoo of Hamiltonians +******************* + +The status of each page is either "Verified" or "Draft". "Verified" means that +the page content have been verified by the developer of the respective tool. + +Convention of the spin Hamiltonian is defined by their form (constants before +the sums) and two properties: + +* Whether spin vectors are normalised or not. + + * ``yes``: :math:`\vert \mathbf{S}_i \vert = 1` + * ``no``: :math:`\vert \mathbf{S}_i \vert = S_i` + +* Whether multiple counting is implied in the sums or not. + + * ``yes``: both :math:`i \rightarrow j` and :math:`j \rightarrow i` are + included. + * ``no``: only one direction is included. + +For multiple counting the example is given for 2-sites terms of the Hamiltonian, +the same concept is generalizable for terms that involve more than 2 sites. + + +.. toctree:: + :maxdepth: 1 + + espins + grogu + jukkr + magnopy + magpie + mcphase + questaal + spinw + spirit + sunny + tb2j + uppasd + vampire + diff --git a/docs/source/spinham-zoo/jukkr.rst b/docs/source/spinham-zoo/jukkr.rst new file mode 100644 index 0000000..00f4238 --- /dev/null +++ b/docs/source/spinham-zoo/jukkr.rst @@ -0,0 +1,47 @@ +.. _zoo_juKKR: + +***** +juKKR +***** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Web `_ +Languages Fortran +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + = + \sum_{i} + \mathbf{S}_{i} + \cdot + \boldsymbol{A}_{i} + \cdot + \mathbf{S}_{i} + + + (?) + \sum_{i,j} + \mathbf{S}_{i} + \cdot + \boldsymbol{J}_{ij} + \cdot + \mathbf{S}_{j}, + +where first term is a second order onsite magnetic anisotropy and the second +term is the pairwise interaction between spins, that includes Heisenberg J, +Dzyaloshinskii-Moriya vector and 5 remaining symmetric anisotropic components. + +Convention +========== + +================= === +================= === +Spin normalized ? +Multiple counting ? +================= === diff --git a/docs/source/spinham-zoo/magnopy.rst b/docs/source/spinham-zoo/magnopy.rst new file mode 100644 index 0000000..37fdc5b --- /dev/null +++ b/docs/source/spinham-zoo/magnopy.rst @@ -0,0 +1,40 @@ +.. _zoo_magnopy: + +******* +Magnopy +******* + +========= ====================================================================== +========= ====================================================================== +Status Verified +Links `Docs `_, + `Github `_ +Languages Python +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + = + \sum_{n=1}^{n=4} + C_n + \sum_{\substack{\mu_1,...,\mu_n,\\i_1,...,i_n}} + J_{\mu_1,...,\mu_n}^{i_1,...,i_n} + \prod_{m=1}^{n} + S_{\mu_m}^{i_m} + +where real constants :math:`C_n` are arbitrary and used to support any +convention. + +Convention +========== + + +================= === +================= === +Spin normalized any +Multiple counting any +================= === diff --git a/docs/source/spinham-zoo/magpie.rst b/docs/source/spinham-zoo/magpie.rst new file mode 100644 index 0000000..4865978 --- /dev/null +++ b/docs/source/spinham-zoo/magpie.rst @@ -0,0 +1,57 @@ +.. _zoo_magpie: + +****** +Magpie +****** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Github `_ +Languages C++20 +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + = + (?) + \sum_i + \mathbf{S}_i + \cdot + \mathbf{A}_i + \cdot + \mathbf{S}_i + - + \sum_{i \neq j} + J_{ij} + \, + \mathbf{S}_i + \cdot + \mathbf{S}_j + +(?) + \sum_{i \neq j} + \mathbf{D}_{ij} + \cdot + \left( + \mathbf{S}_i + \times + \mathbf{S}_j + \right) + +where :math:`J_{ij}` is a Heisenberg interaction, :math:`\mathbf{D}_{ij}` is a +Dzyaloshinskii-Moryia interactions and :math:`\mathbf{A}_i` is a single-ion +anisotropy. + +Convention +========== + +================= === +================= === +Spin normalized ? +Multiple counting ? +================= === + diff --git a/docs/source/spinham-zoo/mcphase.rst b/docs/source/spinham-zoo/mcphase.rst new file mode 100644 index 0000000..b6413b1 --- /dev/null +++ b/docs/source/spinham-zoo/mcphase.rst @@ -0,0 +1,27 @@ +.. _zoo_mcphase: + +******* +McPhase +******* + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Web `_ +Languages (?) +========= ====================================================================== + +Spin Hamiltonian +================ + +TODO + +Convention +========== + + +================= === +================= === +Spin normalized ? +Multiple counting ? +================= === diff --git a/docs/source/spinham-zoo/questaal.rst b/docs/source/spinham-zoo/questaal.rst new file mode 100644 index 0000000..ccd6c13 --- /dev/null +++ b/docs/source/spinham-zoo/questaal.rst @@ -0,0 +1,36 @@ +.. _zoo_questaal: + +******** +QUESTAAL +******** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `DOI `_ +Languages Fortran +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + + \mathcal{H} + = + -\sum_{ij} + J_{ij} + \, + \mathbf{e}_i + \cdot + \mathbf{e}_j + +Convention +========== + +================= === +================= === +Spin normalized yes +Multiple counting yes +================= === + diff --git a/docs/source/spinham-zoo/spinw.rst b/docs/source/spinham-zoo/spinw.rst new file mode 100644 index 0000000..ae0d5eb --- /dev/null +++ b/docs/source/spinham-zoo/spinw.rst @@ -0,0 +1,46 @@ +.. _zoo_spinw: + +***** +SpinW +***** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI `_, + `Github `_ +Languages Matlab, Python, Rust +========= ====================================================================== + +Spin Hamiltonian +================ + +.. math:: + \mathcal{H} + = + \mu_B H + \sum_i + g_i \mathbf{S}_i + + + \sum_i + \mathbf{S}_i A_i \mathbf{S}_i + + + \sum_{i,j} + \mathbf{S}_i J_{ij} \mathbf{S}_j + + + \sum_{i,j} + B (\mathbf{S}_i \cdot \mathbf{S}_j)^2 + +where first term is a Zeeman interaction, second is a single-ion anisotropy, +third is a bilinear interaction and fourth is a biquadratic interaction. + +Convention +========== + +================= === +================= === +Spin normalized ? +Multiple counting yes +================= === + diff --git a/docs/source/spinham-zoo/spirit.rst b/docs/source/spinham-zoo/spirit.rst new file mode 100644 index 0000000..42d9c67 --- /dev/null +++ b/docs/source/spinham-zoo/spirit.rst @@ -0,0 +1,45 @@ +.. _zoo_spirit: + +****** +Spirit +****** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI `_, + `Github `_, + `Zenodo `_ +Languages C++/CUDA backend with C/Python API +========= ====================================================================== + + + +Spin Hamiltonian +================ + +.. math:: + \mathcal{H} + = + \mathcal{H}_{\rm Zeeman} + + + \mathcal{H}_{\rm pair} + + + \mathcal{H}_{\rm ddi} + + + \mathcal{H}_{\rm quadruplet} + + + \mathcal{H}_{\rm ani} + +TODO + +Convention +========== + +================= === +================= === +Spin normalized yes +Multiple counting yes +================= === + diff --git a/docs/source/spinham-zoo/sunny.rst b/docs/source/spinham-zoo/sunny.rst new file mode 100644 index 0000000..97a7e60 --- /dev/null +++ b/docs/source/spinham-zoo/sunny.rst @@ -0,0 +1,31 @@ +.. _zoo_sunny: + +******* +San(n)y +******* + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI `_, + `Github `_ +Languages Julia +========= ====================================================================== + +Spin Hamiltonian +================ + + +TODO + + +Convention +========== + +================= ====== +================= ====== +Spin normalized ? +Multiple counting ? +================= ====== + diff --git a/docs/source/spinham-zoo/tb2j.rst b/docs/source/spinham-zoo/tb2j.rst new file mode 100644 index 0000000..c78465d --- /dev/null +++ b/docs/source/spinham-zoo/tb2j.rst @@ -0,0 +1,84 @@ +.. _zoo_tb2j: + +***** +TB2J +***** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI `_, + `Github `_ +Languages Python +========= ====================================================================== + +Spin Hamiltonian +================ + + +TB2J calculates parameters for the following bilinear spin Hamiltonian: + +.. math:: + \mathcal{H} + = + -\sum_{i \neq j} + \mathbf{S}_i + \cdot + \mathcal{J}_{ij} + \cdot + \mathbf{S}_j + - + \sum_i + \mathbf{S}_i + \cdot A_i + \cdot \mathbf{S}_i + +where :math:`\mathbf{S}_i` is a classical spin vector at magnetic site :math:`i` +**normalized to 1**; :math:`\mathcal{J}_{ij}` is a 3x3 exchange tensor, that can +be decomposed into physical components + +1. **Isotropic Heisenberg Exchange** + + .. math:: + H_{\text{iso}} + = + -\sum_{i \neq j} + J_{ij} + (\mathbf{S}_i \cdot \mathbf{S}_j) + +2. **Dzyaloshinskii-Moriya Interaction** + + .. math:: + H_{\text{DM}} + = + -\sum_{i \neq j} + \mathbf{D}_{ij} + \cdot + (\mathbf{S}_i \times \mathbf{S}_j) + +3. **Symmetric Anisotropic Exchange** + + .. math:: + H_{\text{sym-ani}} + = + -\sum_{i \neq j} + \mathbf{S}_i + \cdot + \mathcal{J}^{\text{ANI}}_{ij} + \cdot + \mathbf{S}_j + + where :math:`\mathcal{J}^{\text{ANI}}_{ij}` is the traceless symmetric part + of :math:`\mathcal{J}_{ij}`. + + +Convention +========== + +================= === +================= === +Spin normalized yes +Multiple counting yes +================= === + diff --git a/docs/source/spinham-zoo/uppasd.rst b/docs/source/spinham-zoo/uppasd.rst new file mode 100644 index 0000000..f26fa83 --- /dev/null +++ b/docs/source/spinham-zoo/uppasd.rst @@ -0,0 +1,29 @@ +.. _zoo_uppasd: + +****** +UppASD +****** + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_, + `DOI <10.1088/0953-8984/20/31/315203>`_, + `Github `_ +Languages Fortran (?) +========= ====================================================================== + +Spin Hamiltonian +================ + +TODO + +Convention +========== + + +================= === +================= === +Spin normalized ? +Multiple counting ? +================= === diff --git a/docs/source/spinham-zoo/vampire.rst b/docs/source/spinham-zoo/vampire.rst new file mode 100644 index 0000000..a585bd1 --- /dev/null +++ b/docs/source/spinham-zoo/vampire.rst @@ -0,0 +1,58 @@ +.. _zoo_vampire: + +******* +Vampire +******* + +========= ====================================================================== +========= ====================================================================== +Status Draft +Links `Docs `_ +Languages C++ +========= ====================================================================== + +Spin Hamiltonian +================ + + +.. math:: + + \mathcal{H} + = + -\mu_S + \sum_i + \mathbf{B} + \cdot + \mathbf{S}_i + - + \sum_{i