{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Hamiltonian\n", "\n", "The energy of a magnetic system can be computed using Hamiltonian, which consists of different energy terms. In addition, the effective field which affects the magnetisation dynamics in the LLG equation, is also computed from the system's Hamiltonian.\n", "\n", "In this tutorial, we explore different energy terms that can occur in the Hamiltonian.\n", "\n", "## Zeeman energy\n", "\n", "The Zeeman energy tends to align all magnetic moments parallel to the external magnetic field $\\mathbf{H}$, so that the energy density $w_\\text{z} = -\\mu_{0}M_\\text{s}\\mathbf{m}\\cdot\\mathbf{H}$ is minimum, where $\\mu_{0}$ is the magnetic constant and $M_\\text{s}$ is the magnetisation saturation.\n", "\n", "To demonstrate the effect of Zeeman energy we will apply an external magnetic field $H = 10^{6} \\,\\text{A}\\,\\text{m}^{-1}$ in the positive $z$-direction to the one-dimensional array of magnetic moments. For the initial magnetisation configuration, we will take the $(1, 0, 1)$ direction with $M_\\text{s} = 8 \\times 10^{6} \\,\\text{A}\\,\\text{m}^{-1}$." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import oommfc as oc\n", "import discretisedfield as df\n", "import micromagneticmodel as mm" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our mesh is a one-dimensional array of discretisation cells." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "d12a2ca302bc4c95b3a78f03bd16d5d6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "p1 = (0, 0, 0)\n", "p2 = (10e-9, 1e-9, 1e-9)\n", "cell = (1e-9, 1e-9, 1e-9)\n", "\n", "region = df.Region(p1=p1, p2=p2)\n", "mesh = df.Mesh(p1=p1, p2=p2, cell=cell)\n", "\n", "mesh.k3d()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='zeeman') # create the (micromagnetic) system object\n", "\n", "H = (0, 0, 1e6) # external magnetic field (A/m)\n", "Ms = 8e6 # saturation magnetisation (A/m)\n", "system.energy = mm.Zeeman(H=H) # define system's Hamiltonian\n", "system.m = df.Field(mesh, dim=3, value=(1, 0, 1), norm=Ms) # define initial magnetisation\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "After we defined our system, we can minimize its energy using `MinDriver`." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.2 s)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "md = oc.MinDriver() # create energy minimisation driver\n", "md.drive(system) # run energy minimisation\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see that after applying the magnetic field, all magnetic moments align parallel to $\\mathbf{H}$.\n", "\n", "### Exercise 1\n", "\n", "Change the direction of applied field to be in the negative $x$ direction and inspect the minimum magnetisation state." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.2 s)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "# Uncomment and change the following line\n", "# system.hamiltonian.zeeman.H = (1e6, 0, 0)\n", "md.drive(system)\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Uniaxial anisotropy\n", "\n", "Uniaxial anisotropy energy tends to align magnetic moments to be on the anisotropy axis either parallel or antiparallel without a preferred direction. Its energy density is $w_\\text{a} = -K(\\mathbf{m} \\cdot \\mathbf{u})^{2}$, where $K$ is the anisotropy constant and $\\mathbf{u}$ is the anisotropy axis.\n", "\n", "Let's assume our anisotropy axis is in the $(1, 0, 1)$ direction with $K = 6 \\times 10^{6} \\,\\text{J}\\,\\text{m}^{-3}$ and the initial magnetisation is defined as\n", "\n", "$$\\mathbf{m} = \\begin{cases} (-1, 0, -0.1) & \\text{for } x \\le 5 \\,\\text{nm} \\\\ (1, 0, 0.1) & \\text{for } x > 5 \\,\\text{nm} \\end{cases}$$\n", "\n", "with $M_\\text{s} = 8 \\times 10^{6} \\,\\text{A}\\,\\text{m}^{-1}$." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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OxERiYbd8r87duwYXnnlFbNZ8h4eHnj11VeRm5vbpLLYLU9EROJht7yJRqOBi4uLRXpNTY3FOvN3w5Y7ERGJSGLj4TgGDhyIrVu3mgXyyspKrFu3Dv369WtSWaIE97y8PItt94iIiO5nixYtwokTJzB48GBotVrMnDkTQ4YMwW+//YaFCxc2qax72i1vNBqxZ88erFy5Ek5OTvfy1kRE1BKxW96kQ4cO2LdvH/bv34+CggK4uLggJCQEMTExpgl21mpycK+srIREIrHYjs4aH3zwAb766iskJCRg69atTb6eiIgcDIO7GblcjnHjxtlczl2De1VVFXbt2oUjR47gp59+gk6nAwDIZDI8+uijGDZsGMaMGWNVsH/22WeRkJCA48eP21xxIiJyAA42490W165dQ3JyMnJzc1FTU2Nx/t///rfVZTUa3A0GA7Zs2YKtW7fCz88PQ4YMwbhx49C2bVvo9XrcuHED+fn52LVrFzZs2IDJkydj6tSpcHZu/HnB19fXqkoFblhr9Q9ARETCU85+VZByubb87958803k5+fjqaeegqenp01lNRqJx48fj0ceeQSff/45goODG8wzZswYAMCZM2fw8ccfY/z48di7d69NFSIiIrofHT16FB999BHCw8NtLqvR4L5y5Uqrl7p7+OGH8c4776CwsNDmChER0X2ELXcTT09PeHt726WsRl+Fa8oatvVCQ0NtqgwREd1njBLbDgcSFxeH5ORkqNVqm8uyara8TqfDnj17UFhY2OAgf1M2kCciIqonYcvd5OTJkzh27Bgee+wxtGvXzmwZWsBOE+put3DhQhw8eBDdunWzeNeuqRvIA0C/fv1w7NixJl9HREQOhsHdJCwsDGFhYXYpy6rg/p///Afr1q3DE088YZebEhERkbmZM2farSyrgrunpycCAwPtdlMiIiIADjdubqtvvvkGW7ZsQWFhIZydnRESEoLJkyfjySefbFI5Vq0tP23aNKxatQrFxcXNqiwREVGDjDYeDuSrr77CrFmz0KlTJ8yfPx+zZ89G+/btMWfOHBw8eLBJZVnVcu/evTs2bNiAoUOHQiqVWoyznz59ukk3JSIiAuBwAdoWmzZtwt/+9jfEx8eb0l588UVs2bIFH3zwQZNa71YF90WLFuHBBx9ETEwM3Nzcml5jIiIiuqMLFy5gxIgRFunDhw/H+++/36SyrAruFy9exL59+/Dggw82qXAiIqI7YsvdpGPHjjh37hwCAgLM0s+cOYM2bdo0qSyru+UvXLjA4E5ERPbFCXUmsbGxWLp0KW7evInevXsDqHv3/e9//zuee+65JpVlVXB/5plnsGjRIowfPx5dunSx2Bxm1KhRTbqpGIx6PSQtZA95o8EAAJBIrZrPKLiW9N0ALas+RqMRMBhaTH2IHA0Xsfnd5MmTUVJSgrfeegt6vR5GoxEuLi6YNGkSZsyY0aSyJEbj3ffkefjhhxsvQCJBQUFBk256N/baFc6g00GVm4fK7B/gMzEOLg+0tUu5zaWvrETlD8egVf4K32l/bdYCQPakLbqEyu9/gJOXJ9qMHC5qXYwGA9T5Baj4LhveQ/8MeWjTlz+2J4NajaqcE6g+mYv20+MhdXW5p/dXF5yF8wNt4ezzgOgPgQaNBhqFEq06d4KTjTtV2UNNyVUYqqvh6u8H6R8W1RKD5pdfIHVzg4uvr+gPgUa9HuqCM3D194NT69Z2/R0j1K5wge/Z9vte+f8ar1d+fj6WLFmC8+fPIyAgAG+99VaDi8SkpqYiJSUF1dXViIqKwrJly0zzy/bv34/169fj+vXr6NevH1asWAEfHx8AQHZ2Nt5++20UFRXhkUcewYoVK+zy2nhVVRUUCgVkMhkCAgIsFo+zhlUt9zNnzjS5YDHpSq+jMvsHVB07DkO1CrLQ4EYDu0GjgcTVVbBfoEajEVqFApXf/YDqvP8Cej3axEQ3+I/OaDTCqNVCKpMJUhfg1gPPT3mo/C4b2l8vAAD8XpvXcN31ehj1ekj/sASiPdU/8FRmH4X+5k04t20DWXBQw3WvqYHEyUnQX6D1DzzVJ07CWFMDz4gBDQZ2of+sasvKUPKPrZC0agVXfz+4duqEVp3q/uvS/t4GEUmrVqjMPoqrp3+Gk7cXXP394drJv65Onf3tHkTuxsnDA1fe2wRDdTVc2rWDa+db9blVL6d7POnXWKtH8aq1kLg4w6VjR7Tq1OlWnTrBtWMHSO6wDba9SZycoCn8BVf/+RGk7m51dfD3M9XJ+QHxHxbvFa1Wi4SEBCQkJGDcuHFIT0/H9OnTcejQIbi7u5vyZWZmIiUlBWlpafDx8cHcuXOxevVqJCYm4syZM1i6dCk+/PBDdO3aFUlJSXj99dexdetWlJaWYubMmVizZg0GDRqELVu2YObMmdi/f79N/x6qqqpw4MABnDt3DhKJBN27d8eIESMga+LvGqta7vdac1ru9S2/yu9/gPrMWbNNgt37hMO1kx/0FZXQl1egtry87v8rKmDUatHprcVwttNOPPUMGg2qfjyByu+zobtSYnaudfRTgNEIfX09yitQW1H3/y7t28N/wVy71gWwfOCp5+TlCe/hT5jqob9Vj9ryChiqquAd9We0GfWUXetS/8BT8d0PUN164Kkne7gr3Lo9fOvPqOJWvcpRW14Bo0aDDv/vlUaDf3M19MBTz+vPkXDy8EBt/XdTfqtOFeWA1AkBq1bYtS71jAYDrry3CVrlrxbnzIJIp7qA5tKxA6QuwvUu1N64iUsr34VRq7U4J3VzM9Wjvk5C9zhUnTiF0m07Gjzn/EBbs2B/L3ocrm3/BNU5Jy1PSKVw6dABrTr51wV8f3/BexwMWi0urXwX+hs3Lc6ZPyzW1cnaHof/tZZ7VlYWli5div/85z+mtFGjRmH69Ol46qnff6f97W9/Q2BgIGbPng2g7tXuF198ETk5OVi3bh2uXbuG1atXAwBu3LiBAQMG4LvvvsPBgweRkZGBHTvq/h7q9Xr0798fKSkp6NWrV7N+lnPnzmHSpElQq9UIDg6GXq+HUqlE27ZtkZaWBn9/f6vLsuqR8pdffsGKFStw6tQp6HQ6i/Nivueur6xE5dHjdS2/GzcazFN94iSqTzTwD6++jPIKuwX3muJiVH73A6pyTsDYwCY7AHBz/4HG61JRbpd6ALceeArOoPK7bIsHnt/vV4myXXsbLaPWjvW50wNPPc2Zs9CcOdtoGfryCrvVp7EHnttVZGbdoYRaGDSaZrfejXo9ai5fue0h79aDVUUF9BUVqC293vB1ulrU/HYRNb9dNKXJuj6EtmNi4NqxQ7PqAgB6lRq6q1dvPcDcOsrLUXvrwc9420PY7QwqFTTnCqE5V7fls8TFGR79+6P1yOFwcpM3uz61N25AV3rd9DBl/nDe+N+D2utlqL1eBtVP/wVQ9wDbesRwePT/U7MfOIxGI3SXL0NfXml6EDd7OL9R1vCFBgN0xcXQFRcDx38EALh26Yy2Y2IgC2p+961Bq4WupOTWg7j5Q6e+ohIGVcO7ihm1WmgVSmgVSlQCgEQC9/AwtBkVDefW9m3gWEuoMXelUong4GCztMDAQCgUCrM0hUJhtrR6YGAgVCoVSkpKoFAoTBPbAKBNmzbw9vaGUqmEQqEwK9/JyQmdO3eGQqFodnBPSkpCWFgYVq1aBQ8PDwBAeXk5FixYgKSkJHzwwQdWl2VVcF+yZAnKy8sxZ84ceLaAMbe6lp+yrvv0pzyzlp81JK1awcnbC85eXnDy9oLExvFUY20tqnPzUPl9doMtrbuRurvDydsLTl5ecPb2htFotKlbx5oHnsYrI4WTlyecvOrq06pz52bXo17NpWJUfJ+N6pyTjT7wNEbi4mL6buoO2/7+WfPAcydSN/nvdfH2ajTgWcOg1uDymvXNvl4ik8HjT33hGTEArh3aN7uceurTP6P0k8+afb2zjw88B/aHx58eg9Nt3Z7NVbYvA6pTuc2+XhYaDM+BEXDr2cPmYQyJRILLyZtg1Giad72LM9x7h8FzYARcu3S2eRij5lIxriQ37b3n2zl5ecJjQH94DugH59atbaqLzQSaLa9SqSCXmz9cymQyaP7wZ6hWq826vOuvUavVFufqz9efqw/AfzzXXP/973+xZ88es3K9vb3x6quvCjNbPi8vD7t27brjxLp7SV9RiZrLlyFxdYVrxw6ouXzljgHexdcXD4x/1hQk7N0lVnP5Cmpv3qx7YPDxQW1p6R3zu/ftA69BEXX18fS065ic0WCA9sJvMGq1cGnvC6OuBoaq6jte0zZ2LFo9+CCcvb0gdXe3a3eqQa2G9uJFSKRSuPp1RM2lYhgb6P2pJ3VzQ7uXJ8LJ2xvO3l6QyGR2Hc+tLb0O3bVSSN3d4NLeF7qSq3cM8LKHQtF6xJO3/qy87DqxTuruBjg5Wf7dlUjg5OkBiUyG2qvXLK5z7eQPz4ERcA8Ps+vfZSdvr0ZOOMHJywswGKAv/0NPjkQCtx7d4TlwAGQPhdr1746zV8P1qX8415dXWAwT2PuB54/10TUQ3KUe7nDy9ITu8hXLa3x84DlwwK0HHvvNBWj0z+rWw7nEyQm11y17E+z5wGM3ArXc5XK5RSDXaDQWC7HJZDJob/t7VB+c3d3dG30YcHNza7D8+nPN5efn12CPw7Vr1+Dr69uksqyKKu3atUNLGpp39vaC16CBps/G2lrUXClBTdEl1BQV1f23uBjGmrogort6FQatFrJ27QSpT6vOndCqcyfTZ4NajZpLxdAWXTLV6fYgos4vQNsxo+D0h6c+e5BIpXDr0R1uPboDqOvl0JdXmL6X+jrpb940XaM+nQ/PgRGCTIqSyuXw7N/P9NloMEB39SpqiorN6lTfIjKoVNBdKYG860N2rwsAuPi2g7fv738PDDU1qCm+fKsut+p028Oi5hcFpHI5XB54wO51kUgkaBP9FKSurr/3Tnh7wcnDAxInJ1R+/wOu79pTl9nZGe69H4XXwAi4BnQR5M/KpUN7tH56JJxvr4uXF6RubpBIJCj550dQ3wruTl6e8OjfD54D+sO5TWu71wUA5D0egVOb1nDy8vy9Trcezg01Nbi4+C1TXqEeeG7nFRUJY21tXQ+blxecvL3rHsKcnaE+ew4lm7fUZax/4BkUAVloiCBzD5y9vdH6qRFmvWy3P5yX/WsfKrK+rauOgA88LVlQUBC2b99ulqZUKhEdHW2WFhwcbNZVr1Qq4eXlBV9fXwQHB0OpVJrOlZWVoby8HMHBwQgKCsLXX39tOqfX6/Hbb78hJKT5b/q88sorSExMRElJCR577DE4Ozvj9OnTWL9+PcaPH4+TJ38fXg4PD79jWVZNqPv888/x5ZdfYtmyZQgICIBU4NmW9ngVri6IXKsLrpcuQV9VDZ8J40R7WjXU1EBXfNkUXF3a+8L7z5Gi1AUA9FXVqLl0CTUXi6AtugSvwQPtPlHNWkajEbXXy+oC66Vi6K5ewwPPjbNpvNam+vzhYVHi6oo2o56+568uFq/bAEO1qq7l188+Xd3NVVtRgaLE5ZAFBcJzkPgtv6ofT6B05y7BH3isde3j7dD88ovgDzzWMNbW4uLSJDi3aW3XBx6hJtQFrV9n0/WKOQ1PQK6pqcHQoUMxbdo0TJgwAenp6Vi7di0OHz5s1ro+cuSIaUZ8x44dMXfuXPj7+2Pp0qUoKCjAxIkT8Y9//AM9e/ZEUlISrl69ii1btuDatWsYPnw4Vq5ciSFDhmDLli34+uuv8eWXXzb776K1vePWvIJuVXAfOXIkLl68CL1eD4lEYhHc7T2hzl7vuRP9rzJotdAqfoWsq327upur5kpdl7Nrh+ZP2LMndeF5uPp1FPWBp57RaIT653zIuz3cIrq6a2/ehP5mud0feIQK7sHrbAvuv8xt/O2iM2fOIDExEWfPnkVAQAASExMRFhaGKVOmoG/fvkhISAAApKWlITU1FRUVFYiMjMTy5ctNY+8HDhzAhg0bcO3aNfTt2xfvvPMOHrjVk3f06FG8/fbbuHjxIrp162bze+6XLl2yOu/dZs5bFdz/9a9/3fH82LFjra6QNRjciYhaFsGC+1obg/ur9n912BFYNeZu7+BNRERE5i5evIj169ejsLAQNQ28WfTvf//b6rIaDe4vvvgiXnvtNfTo0cOqgk6dOoW1a9daTGAgIiJqVMuZqy261157DSUlJRg5cmSTV6T7o0aD++zZszFv3jz4+Phg5MiRiIyMRKdOnczynD9/HseOHcPevXtRUVGBFSuEWa2LiIgcEzeO+V1+fj527NiB7t2721xWo8G9b9++2LdvH/bs2YOPP/4Yy5cvh0wmQ+vWraHX63Hz5k3odDoEBgZi4sSJiI2NhauAa5ATEZED4pavJgEBATYtgnO7O465u7q64vnnn8fzzz8PpVKJn376CdevX4dEIkG7du3Qq1cvi03liYiIrMaWu8nixYuRlJSESZMmoVOnThZvpt3t3fbbWb00WmBgoF22siMiIiJLSqUSv/zyCxYuXGhxrqnbq9+7vQiJiIj+gGPuv0tOTkZsbCwmTpxosS5+UzG4ExGReBjcTaqqqjBlyhSLyevNcU+XvsrPz0dsbCzCwsIwevRo5Obm3svbExFRCyMx2nY4kqioKBw6dMguZdnUcjcYDLhy5Qr8/Pzumler1SIhIQEJCQkYN24c0tPTMX36dBw6dAjuLWAJSSIiIjH5+flh7dq1OHjwIAICAuD8hx1Dk5KSrC7Lqpb7sGHDGlyCtqysDEOHDrXqRkePHoVUKkVcXBxcXFwQGxsLHx8fZGVlWV1ZIiJyMEYbDweSm5uLsLAwODk5oaioCL/++qvpuHDhQpPKsqrlXlRUhMWLF+PcuXNYsGCB2WYE1m4F29AetYGBgWZb7RER0X3GwQK0LbZt22a3sqzult+4cSMWL16M8+fPY/369fC4tRe5tbsOqVQqi9l/MpnMYrN7QLgNCoiIqGVxtHFzWxUXF2PHjh0oLCyEs7MzQkNDMX78+LvuAvdHVk+o69mzJ3bv3o3r169j3LhxuHDhQpP2dZfL5RaBXKPRmO2rS0REdL8qKCjAqFGjcODAAcjlcjg5OSE9PR0xMTE4c+ZMk8qyKjrXt87bt2+PTz75BCEhIRg3bhxOnDhh9Y2CgoKgVCrN0pRKJUJCQppQXSIiIse0atUqPP744zh48CA2bNiA9957D9988w2GDBmCNWvWNKksq4L77ePqMpkM7733Hp5//nnMmTPH6hsNGDAANTU12LZtG3Q6HXbv3o3S0lIMGjSoSRUmIiIHwgl1Jrm5uXjllVfg4uJiSnNxcUF8fDxOnjzZpLKsGnOfOXOmRff5nDlzEBQUhN27d1t1I1dXV2zduhWJiYlYt24dAgICsHnzZnbLExHdxzjm/jsvLy9UV1dbpFdVVVm8Fnc3EqO1092JiIjs7OHE9TZdfybR+h7klm7JkiU4ffo0/v73v6NLly4AgF9//RWvvvoqgoKC8O6771pd1j1doe5uuILdneXk5GDcuHHo06cPhg0bhs8++0zsKrU4paWlGDBgADIzM8WuSoty5coVxMfHIzw8HI8//jjS0tLErlKLcfLkSTzzzDMIDw/H8OHD8eWXX4pdpRYhLy/PbNi0vLwcM2bMQJ8+fTBkyBDs2rXLPjdit7zJ3LlzYTQaMXz4cAwYMAADBgzAiBEj4OLigtdff71JZbWYteW5gt2dlZeX45VXXsHixYvx9NNPo6CgAJMmTUKXLl0QEREhdvVajDfeeAM3b94UuxotitFoxCuvvIJ+/fph48aN+PXXX/HCCy+gR48eTdpC0hHp9XrMmDEDS5cuxYgRI5CTk4OXX34ZvXv3tsv63v+LjEYj9uzZg5UrV8LJycmUvnjxYri5uSE7Oxtnz57F1KlTERoairCwMPEq62Bat26NPXv24P/+7/9QWFgImUyG4OBgDBgwoMlltZiWO1ewu7Pi4mJERkZi1KhRkEql6N69O/r169fkSRaO7NNPP4VcLkfHjh3FrkqL8tNPP+Hq1auYN28eXFxcEBoais8++4xbOAOoqKhAWVkZ9Ho9jEYjJBIJXFxczILa/eaDDz5AWloaEhISTGnV1dU4dOgQZs2ahVatWqFXr16Ijo7GF198YfP9uLa8uT179pg2kJk4cSJ27NjR4Aqxd9NigjtXsLuzbt26mY23lJeXIycnBw8//LCItWo5lEolPvroIyQmJopdlRbn559/RmhoKN59910MHDgQw4cPx08//YQ2bdqIXTXRtWnTBnFxcZg7dy66d++OF154AYsXL76vHxCfffZZpKeno2fPnqa0CxcuwNnZGZ07dzal2e33M7vlTVJSUvD222+jtrbWlBYcHIxly5Zhx44dTSqrxXTLN2UFu/tdZWUlEhIS0L17d0RFRYldHdHV1tZiwYIFeOONN9C6dWuxq9PilJeX49ixY+jfvz8yMzNx+vRpTJkyBZ07d0bfvn3Frp6oDAYDZDIZNmzYgKioKGRnZ+PVV19F9+7d79sHZ19fX4s0lUoFmUxmlmav38+O2Ppurk8++QTvvvsuhg0bZkqbM2cOHnnkEaxduxYvvPCC1WW1mJY7V7CzzsWLFzFhwgR4e3tj48aNTVol0FFt2rQJ3bp1Q2RkpNhVaZFcXV3h7e2N+Ph4uLq6miaOHT58WOyqie7gwYPIy8vDiBEj4OrqiiFDhmDIkCF26W52JHK5HFqt1iyNv5/t7/r16wgNDbVI79atG65cudKkslpMZOAKdnf3888/Y/z48Rg0aBA2bdpk8SR9vzpw4AAyMjLQt29f9O3bF8XFxZg7dy62bNkidtVahMDAQOj1euj1elNa/Rjz/e7y5cuoqakxS3N2dr6vx9wbEhAQAJ1Oh+LiYlOa3X4/s1ve5KGHHsK+ffss0jMyMhAUFNSkslpMcOcKdndWWlqKKVOmYNKkSXj99dfZYr/N119/jRMnTiAnJwc5OTnw8/PDunXrMG3aNLGr1iIMHDgQMpkMGzduRG1tLU6ePIlvvvkGI0aMELtqoouIiEBBQQH27NkDo9GI48eP87tpgIeHB4YOHYq1a9dCrVYjLy8P+/fvx6hRo2wvnMHdZMaMGdi8eTNeeuklrFmzBmvWrMFf/vIXbNy4EbNmzWpSWS0mQtSvYJeRkYE//elP2L59O1ewu83u3btRVlaGzZs3o3fv3qZj/XrbFoAgxyeTybBt2zbk5eUhIiIC8+bNw5tvvslXmAB07doVycnJSEtLQ58+fbBs2TKsWrXKbDIZ1UlKSkJtbS0iIyMxa9YszJ8/H48++qjN5XK2/O8iIyOxY8cOtGvXDllZWfj+++/xwAMPYNeuXU2eX8UV6oiISDTdF9rWQPl5peOsUGdPLablTkRERHXCw8Nx8eLFZl/fYl6FIyKi+xD7jhtka6c6gzsREYnG0cbN7UUikdh0PbvliYhIPCLNlk9NTcXgwYMRHh6OefPmQaVSNZjvThvmVFRU4LXXXkNERAT69++P+fPno7y83HQ+Ojoajz76qGkC9NNPP33HOp05c8b0/7a23BnciYhINGLMls/MzERKSgrS0tKQlZWF8vJyrF69usG8t2+Yk5ycjDVr1ph2LH377bdRXV2NgwcP4ptvvkFlZSWSkpIA1C3yo1AokJmZiVOnTuHUqVPIyMi4Y73GjBmDsWPHYtu2bTh8+LDZcr9NxeBORET3lfT0dMTGxiIwMBCenp6YPXs20tPTzRZ6Au6+YU79roIeHh7w9PTE+PHjcerUKQDAuXPn4OPjg7Zt21pdr4MHD2Lo0KHYvn07Hn/8ccyYMQOHDh0yW2veWgzuRDbKycnBxIkTBSu/sLAQzz77bLP+gRO1eAJ1y9fW1qKiosLiqKqqgkKhMFtdLzAwECqVCiUlJWZl3G3DnHfffRfdunUznTty5IhpT4L8/Hw4OzvjueeeQ//+/TF58mT88ssvd/wqunTpgpkzZ+Lf//43tm3bhvbt2yMpKQmDBw/GihUrzLrt74YT6ohsoNVq8cYbb5jt2GdvoaGh6NatG7Zu3Yrp06cLdh8iUQg0oe748eOYNGmSRbq/vz+cnJzMlu+u37RMrVab5W3Khjkffvghvv76a+zcudOU1rNnT8yfPx8+Pj7YtGkTpk6digMHDli1dHjv3r1N6/nv3bsX+/btw2effYaePXtixYoVd92ymS13Ihvs3bsXDzzwAHr16iXofSZNmoStW7eisrJS0PsQ3WsSG4/GRERE4OzZsxbHkSNHIJPJzDbCqQ/q7u7uZmVYs2GOXq9HUlISUlJSkJqaatq6fMKECdiwYQM6deoEmUyGOXPmoLy8HAUFBXf8Ps6cOYNVq1bh8ccfx5QpU1BSUoI1a9bg+++/x7fffovWrVtbtRQtgzvRLV999RW6du2KrKwsAHWzVSdNmoSxY8dabC5SLzU1FSNHjjR93rt3L0aMGIGdO3ciKioKPXr0QFxcnFl3XNeuXbFr1y5MmDABPXv2xFNPPYXc3Fx88skniIyMRHh4OObOnWt2z+DgYPj7++Pzzz8X6Kcnun8EBweb7UWvVCrh5eVlsd3t3TbM0Wq1mD59On788Ud8/vnn6NGjhynfzp07kZ2dbfqs1+tRW1uLVq1aNVqv6OhojB07FtnZ2Zg8eTK+/fZbvP/++xg2bBicnZ3Rpk0bjB492qod4hjciW4ZOXIkoqOjkZiYiOrqamzbtg2nTp3CmjVr4OrqapFfoVDg119/xZAhQ8zSi4qK8OWXXyI5ORmff/45ysvLTTNo69VvbJOeng4PDw9MmzYNhw8fxtatW/HOO+/g4MGD2L17t9k1kZGROHLkiN1/biJRifAqXExMDHbu3InCwkJUVVUhOTkZ0dHRFhty3W3DnCVLlqCsrAyffPIJ/P39za69evUqVqxYgcuXL0Oj0WDlypUICgoyjck3JCIiAnv37kV6ejr+8pe/NDgZr1+/fvjqq6/u+jNyzJ3oNkuWLEF0dDTeeOMNZGZmYtGiRaZutj/Ky8uDXC5Hp06dzNJ1Oh3eeust03Xjx4+32OBn/Pjxpo0gRo8ejWXLliExMRGdO3fGQw89hH/+858oLCw0uyY0NBSpqal2+kmJWgYxFrGJiopCUVER4uPjUVFRgcjISCxYsAAAUFxcjKeffhoZGRnw8/NDUlISli5disjISLi5uZk2zCkpKcEXX3wBV1dXDB482FR2mzZtcOTIESQkJKCqqgrjxo1DdXU1HnvsMbz//vt33NFz0aJFd61769atrfoZGdyJbuPt7Y1ly5YhISEBgwYNwnPPPddo3tLSUnh7e1usJCWRSBAQEGD67OnpCZ1OZ5anS5cupv+Xy+WQSqVmDwkymcxiKKBt27bQ6XQoLy+Ht7d3s34+ohZHpBXqXnrpJbz00ksW6X5+fqbX2YC6YLphwwaLfO3bt8fZs2cbLd/FxQWvv/46Xn/9dftUuInYLU/0Bz///DOcnJxQUFCAsrKyRvNJJBKL92IBQCqVwtnZ/Ln5j6tN/fG8RCK563KTBoPBVD6Rw+B+7oLgbwmi25w+fRqbN2/GmjVr4OPjgyVLljSat127drh586bNy0Raq6ysDHK5HJ6envfkfkT0v4vBneiWmpoavPbaa4iKisJTTz2F5cuX4/Dhw6bVqP6oV69e0Ol0FmPjQsnPzxf8lTuie02M5WfvBwzuRLesX78e165dM7XWe/XqhZdeegkrVqxo8NWTBx98EEFBQTh27Ng9qd+xY8cwdOjQe3IvonuG3fKCkBjvVZ8ikQPasWMH9uzZg7179wp6nzNnzuCFF15AZmYmvLy8BL0X0b3Ue8b6u2e6g1Pvz7FTTRwLW+5ENhg3bhzKy8tx4sQJQe/z8ccfY9KkSQzs5HjYchcEgzuRDVxdXfH2229j7dq1gt3j3LlzOHPmDKZNmybYPYjIsbBbnoiIRBM+3bZu+ZOb2S3fEC5iQ0RE4mHzUhAM7kREJB4Gd0FwzJ2IiMjBsOVORESi4UI0wmBwJyIi8TC4C4LBnYiIRCPhC1uCYHAnIiLxMLYLghPqiIiIHAxb7kREJBpOqBMGgzsREYmHwV0QDO5ERCQattyFweBORETiYXAXBCfUERERORi23ImISDTslhcGgzsREYmHwV0QDO5ERCQattyFwTF3IiIiB8OWOxERiYdrywuCwZ2IiETDbnlhMLgTEZF4GNwFweBORESikRjEroFj4oQ6IiIiB8OWOxERiYfd8oJgy52IiEQjMdp2NFdqaioGDx6M8PBwzJs3DyqVqsF85eXlmDFjBvr06YMhQ4Zg165dpnNlZWXo2rUrevfubTqWLFnS5HsIgcGdiIjEYzTadjRDZmYmUlJSkJaWhqysLJSXl2P16tUN5l28eDHc3NyQnZ2N5ORkrFmzBrm5uQCAgoIChIaG4tSpU6Zj2bJlTb6HEBjciYhINGK03NPT0xEbG4vAwEB4enpi9uzZSE9Ph16vN8tXXV2NQ4cOYdasWWjVqhV69eqF6OhofPHFFwCA/Px8PPzwwzbdQygM7kRE5HBqa2tRUVFhcVRVVUGhUCAkJMSUNzAwECqVCiUlJWZlXLhwAc7OzujcubNZXoVCAaCu5f7bb79hxIgRGDRoEBYtWoSKigoAsPoeQuGEOiIiEo9AE+qOHz+OSZMmWaT7+/vDyckJMpnMlCaXywEAarXaLK9KpTLLBwAymQwajQYA4OHhgX79+mHKlCnQ6XR47bXXsHTpUqxfvx5qtdqqewiFwZ2IiEQj1Ap1EREROHv2bIPnRo0aBa1Wa/pcH3Dd3d3N8snlcrN8AKDRaODm5gYApvH1enPmzMELL7wAg8EAmUxm1T2Ewm55IiISjwgT6oKDg01d6wCgVCrh5eUFX19fs3wBAQHQ6XQoLi42yxsSEgKDwYC1a9eiqKjIdE6r1cLFxQVSqdTqewiFwZ2IiO4rMTEx2LlzJwoLC1FVVYXk5GRER0dDKjUPiR4eHhg6dCjWrl0LtVqNvLw87N+/H6NGjYJUKkVubi7WrVsHlUqFa9euYd26dRg7dmyT7iEUBnciIhKNGLPlo6KiMHXqVMTHx2PIkCHw9PTEggULAADFxcXo3bu3qbWelJSE2tpaREZGYtasWZg/fz4effRRAMCaNWug1WoxZMgQREdH46GHHsL8+fPveo97QWI0cr89IiISx+Mx79p0/bf75tupJo6FE+qIiEg03PJVGAzuREQkHgOjuxA45k5ERORg2HInIiLxsOEuCAZ3IiISDcfchcHgTkRE4uELW4LgmDsREZGDYcudiIhEw255YTC4ExGReBjcBcHgTkREopFwzF0QDO5ERCQeg9gVcEycUEdERORg2HInIiLRsFteGAzuREQkHsZ2QTC4ExGReNhyFwSDOxERiYbvuQuDE+qIiIgcDFvuREQkHnbLC4LBnYiIRCPhe+6CYHAnIiLxsOUuCI65ExERORi23ImISDxsuAuCwZ2IiETDFeqEweBORETiYXAXBIM7ERGJh7PlBcEJdURERA6GLXciIhINx9yFweBORETiYXAXBIM7ERGJh8FdEAzuREQkHk6oEwQn1BERETkYttyJiEg0Yk2oS01NRUpKCqqrqxEVFYVly5bBzc3NIl95eTkWLVqEo0ePwtPTEzNmzMC4ceMAAL179zbLq9PpAACnT58GAERHR+PixYuQSuva0X5+fsjIyBDyxzJhcCciIvGIENwzMzORkpKCtLQ0+Pj4YO7cuVi9ejUSExMt8i5evBhubm7Izs7G2bNnMXXqVISGhiIsLAynTp0y5VOpVIiNjcVf/vIXAIBGo4FCocB3332Htm3b3qOf7HfsliciIvEYjbYdzZCeno7Y2FgEBgbC09MTs2fPRnp6OvR6vVm+6upqHDp0CLNmzUKrVq3Qq1cvREdH44svvrAoc/369XjwwQcxfvx4AMC5c+fg4+MjSmAHGNyJiMgB1dbWoqKiwuKoqqqCQqFASEiIKW9gYCBUKhVKSkrMyrhw4QKcnZ3RuXNns7wKhcIsn1KpxK5du/Dmm2+a0vLz8+Hs7IznnnsO/fv3x+TJk/HLL78I9NNaYrc8ERGJR6Bu+ePHj2PSpEkW6f7+/nBycoJMJjOlyeVyAIBarTbLq1KpzPIBgEwmg0ajMUtLSUlBTEwM/Pz8zNJ79uyJ+fPnw8fHB5s2bcLUqVNx4MABizKFwOBORETiEehVuIiICJw9e7bBc6NGjYJWqzV9rg/q7u7uZvnkcrlZPqBuLP32iXdarRYZGRn45JNPzPJNmDABEyZMMH2eM2cOduzYgYKCAouJeEJgtzwREYlGYjTadDRHcHCwWde6UqmEl5cXfH19zfIFBARAp9OhuLjYLO/tXfpHjx6Fr68vunXrZnbtzp07kZ2dbfqs1+tRW1uLVq1aNavOTcXgTkRE4hFhQl1MTAx27tyJwsJCVFVVITk5GdHR0aZX1up5eHhg6NChWLt2LdRqNfLy8rB//36MGjXKlOenn35CWFiYxT2uXr2KFStW4PLly9BoNFi5ciWCgoLw8MMPN6vOTcVueSIiuq9ERUWhqKgI8fHxqKioQGRkJBYsWAAAKC4uxtNPP42MjAz4+fkhKSkJS5cuRWRkJNzc3DB//nw8+uijprIuXbqEdu3aWdwjISEBVVVVGDduHKqrq/HYY4/h/ffft3iAEIrEaOTCvkREJI6RXRfadP1XZ1faqSaOhS13IiISD9uXgmBwJyIi8TC4C4LBnYiIxMPgLgjOliciInIwbLkTEZF4DGy5C4HBnYiIxGMUaIm6+xyDOxERiYdj7oLgmDsREZGDYcudiIjEwzF3QTC4ExGReNgtLwgGdyIiEg+DuyAY3ImISDwM7oLghDoiIiIHw5Y7ERGJx8D33IXA4E5EROJht7wgGNyJiEg8DO6CYHAnIiLx8D13QXBCHRERkYNhy52IiERj5MYxgmBwJyIi8bBbXhAM7kREJB5OqBMEx9yJiIgcDFvuREQkHi5iIwgGdyIiEg+75QXB4E5ERKIxsuUuCAZ3IiISD1vuguCEOiIiIgfDljsREYmH77kLgsGdiIjEwxXqBMHgTkREojGy5S4IjrkTEZF4jAbbjmZKTU3F4MGDER4ejnnz5kGlUt0x/40bNzB06FCcO3fu96objVi7di369++Pxx57DMuXL4der2/2PeyJwZ2IiO4rmZmZSElJQVpaGrKyslBeXo7Vq1c3mj8nJwdxcXEoKioyS9+xYwf+85//YN++fThw4ABOnjyJDz/8sFn3sDcGdyIiEo3RYLTpaI709HTExsYiMDAQnp6emD17NtLT081a3fVycnIwe/ZsxMfHN1jOyy+/DF9fX7Rr1w7x8fH417/+1eR7CIHBnYiIxCNQt3xtbS0qKiosjqqqKigUCoSEhJjyBgYGQqVSoaSkxKKc0NBQHD58GGPGjLE411A5SqUSRqOxSfcQAifUERGRaL4x7BKk3OPHj2PSpEkW6f7+/nBycoJMJjOlyeVyAIBarbbI7+3t3eg91Gq1RTkGgwE1NTUNnmvsHkJgcCciIocTERGBs2fPNnhu1KhR0Gq1ps/1Adfd3b1J95DJZBblODs7o1WrVg2ea849movd8kREdF8JDg6GQqEwfVYqlfDy8oKvr2+Ty1EqlWblBAUF2fUezcXgTkRE95WYmBjs3LkThYWFqKqqQnJyMqKjoyGVNi0kxsTEICUlBVeuXEFpaSn+8Y9/YPTo0Xa9R3OxW56IiO4rUVFRKCoqQnx8PCoqKhAZGYkFCxYAAIqLi/H0008jIyMDfn5+dywnLi4OpaWliI2NhU6nw6hRo0zj/He6x70gMRq5JQ8REZEjYbc8ERGRg2FwJyIicjAM7kRERA6GwZ2IiMjBMLgTERE5GAZ3IiIiB8PgTkRE5GAY3ImIiBwMgzsREZGD+f8pw/JUrhLwZwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='uniaxial_anisotropy')\n", "system.energy = mm.UniaxialAnisotropy(K=6e6, u=(1, 0, 1))\n", "\n", "def m_initial(pos):\n", " x, y, z = pos\n", " if x <= 5e-9:\n", " return (-1, 0, -0.1)\n", " else:\n", " return (1, 0, 0.1)\n", "\n", "system.m = df.Field(mesh, dim=3, value=m_initial, norm=Ms)\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now relax the magnetisation." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.1 s)\n" ] }, { "data": { "image/png": "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JyIi0XBY/i8HDx7EK6+8YjZL3svLC6+++ioKCgpsqovD8kREJB4Oy5toNBq4ublZlFdVVVmsM38v7LkTEZGIJHa+nEfv3r2RlpZmFuQ3b97EypUr0b17d5vqEiXcjx07ZrHtHhER0YNs3rx5OHz4MPr27QutVoupU6eif//++P333zF37lyb6nLosLzRaMS2bduwZMkSuLi4OPLSRETUEHFY3qR58+b48ssvsWPHDpw4cQJubm4ICwtDXFycaYKdtWwO95s3b0IikVhsR2eNDz/8ELt27UJSUhLS0tJsfj8RETkZhrsZuVyO0aNH213PPcO9oqICW7Zswb59+3D06FHodDoAgEwmQ+fOnTFw4ECMHDnSqrB/5plnkJSUhEOHDtndcCIicgJONuPdHleuXEFqaioKCgpQVVVlcfybb76xuq46w91gMGD9+vVIS0tDYGAg+vfvj9GjR6NJkybQ6/W4fv06CgsLsWXLFqxevRoTJkzApEmT4Opa9/eFgIAAqxoVvHqF1b8AEREJTzH9VUHq5dryf3nzzTdRWFiIoUOHwtvb26666kziMWPGoF27dvj8888RGhpa6zkjR44EAJw8eRIbN27EmDFjsH37drsaRERE9CA6cOAAPv74Y0RFRdldV53hvmTJEquXunv00Ufx7rvvoqioyO4GERHRA4Q9dxNvb2/4+vrWS111Pgpnyxq2NcLDw+1qDBERPWCMEvteTiQhIQGpqalQq9V212XVbHmdTodt27ahqKio1pv8tmwgT0REVEPCnrvJkSNHcPDgQTz22GNo2rSp2TK0QD1NqLvd3LlzsXv3bkRERFg8a2frBvIA0L17dxw8eNDm9xERkZNhuJtERkYiMjKyXuqyKty/++47rFy5Ek8++WS9XJSIiIjMTZ06td7qsircvb29ERwcXG8XJSIiAuB0983t9e2332L9+vUoKiqCq6srwsLCMGHCBDz11FM21WPV2vIvv/wyli5dipKSkvtqLBERUa2Mdr6cyK5duzBt2jS0bNkSs2fPxvTp09GsWTPMmDEDu3fvtqkuq3ru7du3x+rVqzFgwABIpVKL++zHjx+36aJEREQAnC6g7bF27Vr83//9HxITE01lL7zwAtavX48PP/zQpt67VeE+b948PPLII4iLi4OHh4ftLW5A9JUq3Nz/E3wHPAGJVPwdbzVnz0F//To8u0SK3RQAQPmP+yEPD4dbQFOxmwKDTofyvTnwGfAEpLXscexourIyqE+cgk/f3mI3hYic0Llz5zB48GCL8kGDBuGDDz6wqS6rwv38+fP48ssv8cgjj9hUeUOjr1ShdN0/UXXhD1RfvYqHxsSLGvCas+dQ+mEajFotjEYjvKK6iNYWAFDmfIfrWTvg4uuD5lMmixrwBp0OVz7eCHXhSWjOnkPA3/8masDryspwac066G8oYdBq0XhgjGhtqVGtLIf27Dl4du4odlMAANpzvwMSoFHr1mI3BUaDAZX5BZBHRMDFQy52c2BQq6H6tRCeXaPu6wmj+qYrvYzqGzcgb9tG7Kaw536bhx9+GKdPn0ZQUJBZ+cmTJ+Hn52dTXVYlW/v27XHu3DmbKhab8Y4Fi28PdgDQnj0Hg0YjWntMwa7RAEYjNKccu7rfne2pCXYA0JffRNUff4jWntuDHQB0JSXQK8tFaQtgHuwAoDldBKNe77D23MmgVuN69i788c5SuD7URLR21NBdvoLLH2fgSsYncA8MFLUtRqMRqsITKFm+Cpqi30QPdmN1NZTffY8Lb78Libu76MFerVSibPNWXFz9PtxbiPvfyoSL2JjEx8dj4cKF2LJlC86cOYMzZ87g888/x1tvvYVRo0bZVJdVPfenn34a8+bNw5gxY9C6dWuLzWGGDx9u00UdoeLgIcjbtoGrn59FsLs1b4bmU5Lg4sBbDDe+3g2/IYMA3BHsADwf64aHno13WFsMGg1u7j8A35j+AMyDHRIJ/J8f69DbBOrTRZBIpZCFhVoEu4uPN5pNmQw3/4cc1h7lt3vhG9MfEldXi2CXtQlHwMTxkLi4OKw9NYzV1Sj/YT+U3+6BoVIFz65RaNSyhcPbUaNaWY4b3+xGxYFDgMEA/3EJkNxl4yihac+ew7WvsqH9rRgSN1c0e3miaG0xGgyoPJyP6zu/hv76dTQKCoJHxw6itcegVkO57zuUf/c9jDodGg9+Ci73sW23ELiIzV8mTJiA0tJSvPXWW9Dr9TAajXBzc8P48eMxZcoUm+qy6l/i/PnzAQDr1q2zOCaRSBpcuBuqqnBj1zcwqDXwevyx2oPdzh13bKFRnIXym2/hGdUFBrXaItj9nxvj0NsDyn3fofLwEfg8EY3y73Itgt2rW1eHtcVoNOL6V9loFNQa7kGtaw1292bW7SZYH6qvX8eN3Xvg3iIQbs0Cag126R2rRgnNaDCg8kg+rmffCgoAgIsLGg8d5NB21DAFRe73MFbd2gLaLTAQnlGRorRHV3oZ13fuguroL6Yy73594dq4ftbotoXRaIT6xElc37ETupKLpnK/uKGi9NpNXwh374FBpQIASL284PNEtMPbUicBw72wsBALFizAmTNnEBQUhLfeeqvWRWI2bNiA9PR0VFZWIiYmBosWLTLNL9uxYwdWrVqFq1evonv37li8eDH8/f0BAPv378c777yDCxcuoF27dli8eLFdj427uLjgzTffxP/93/+huLgYMpkMQUFBFovHWcOqcD958qTNFYvp5vc/QK8sR2XeYVQePiJqsNeEFwDc2Pk11KdOixrs1eXlt769V1Xh6r+3oOLgoVsHRAh2AFAdPYaq8xdQfUOJ6mvXRA12ALixazdQXY3y73+ArrRU1GD/Kyh2QXfHY6jevXvC7SHHjWYAliMHt/MbPtTh81fuHDmoIfWQw3fAEw5tC2A+cnA7ebsIyOrYWVMoRoMBlXlHcH3XN399IfxT48FPQnofYfG/RqvVIikpCUlJSRg9ejSysrIwefJk7NmzB56enqbzcnJykJ6ejoyMDPj7+2PmzJlYtmwZkpOTcfLkSSxcuBAfffQR2rZti5SUFLz++utIS0tDWVkZpk6diuXLl6NPnz5Yv349pk6dih07dtj1Ra6iogI7d+7E6dOnIZFI0L59ewwePBgymcymesQbQxOIvlKFG3v2AQCq/vjrD6IYwQ4A6sIT0BYrANwKshpiBDsAKHfvgfHP/QHEDnajXo/rO3YBAAw3b4oe7FUXL6Li5zwAgObUaVO5GMGuPfc7rn+VDc2Z3yyOSRo1QuOnBjqsLXcOMd9JFh4K+aNtHdaeO4eY7+Q7cIBDb7nVNnJgIpHAL3aow9pi+kL41U7oLl60OO7q7w/vnj0c1h4xHThwAFKpFAkJCQBu3c/euHEjcnNzMXToX/9NsrKyEB8fb+pxT58+HS+88ALmz5+Pr776CgMGDEDnzp0BALNmzULPnj1RVlZmWpI9JubW5NrJkydj48aN+OWXX9CpU6f7avPp06cxfvx4qNVqhIaGQq/XY+vWrXj//feRkZGBFi2svw1nVbj/9ttvWLx4MfLz86Gr5R9TQ3rOXblnr6lnXEPi5gr/cQkOD3ajwYDrO3ZalLsFPoyHnhnp8GDXXbmCm/sPWJR79+kNTxFm6t/86SCqy8osyh96drTDgx3ArS8ad0ymc/Hxhn/CWIcFu76iAle3bDf7Ingn35j+Drtfqjl7Dlc/32o2xHwnv+HDHDLkbDQaUbH/AK7v3GUxclDDpXFjeDvoUUVDVRWuf/EVbh44aDZycDvPbl3hHviwQ9qju3wFZZu3WIwc3M5v2GBR5ovcjVD33BUKBULvGDEJDg5GcbH551NcXGy2tHpwcDBUKhVKS0tRXFyMLl3++tvo5+cHX19fKBQKFBcXm9Xv4uKCVq1aobi4+L7DPSUlBZGRkVi6dCm8/vw3rlQqMWfOHKSkpODDDz+0ui6rwn3BggVQKpWYMWMGvB0ckLaovn4d5f/90aLcqKvGxeWr0CgkGA+NiYd782YOaU9l3mHoLl6yKNeVXMT5+W/Bs0tnNHlmlMOGyK5nf13rH6Gb//0BqqPH4BPTHz7RfR3yh9qg1eLGN9/Weuxy2kdwbxGIJk+PhCw0RPC2AIDmt2Kofy20KNeX38SFRYshbxcB/2fjBf+C6OLlBb9hQ+DesgXKv/8Bhps3zY5Lvb3h07+foG24XaPWrfDQMyNRmX8UN3/8yeLLj0dkJ4c9+iaRSODZLQpSDzluHjhkNrpSo/GQQQ57ZFLq7g7fpwbArVkAyv/7o+UXVVdX+DlwXoRrU380GRkHVcExlP/3v6b5EDXcW7WER+f7Cx1BCTTjXaVSQS43f1pCJpNBc0fnT61Wmw1517xHrVZbHKs5XnPM644v2TXH7tcvv/yCbdu2mdXr6+uLV199Fc8++6xNdVkV7seOHcOWLVvw6KOP2tZSB7ux6xugurrWY7LwMPgNH+awYDfodLi+s47t+aRSeHV/DI0HOe7el/b336EqOFp7c7w84TswBt69ejhs0k/5d99bBFcN95Yt4Dd8mMOC/fZ5EbXx7NwJjYcOdtjIj1tAU7g19YehstLimCP/PwMAEqkUjYKDUXE43yLYIZXCb9gQh7UFAKSNGkHWJhw3vt1nccyteTN4PebYW0uujRvDvXUr6Gv5/7JP395wtfHZZHtIJBI0atUSmlOnLYId+HOEpQEs3GVBoJ67XC63CHKNRmOxEJtMJoNWqzX9XBPOnp6edX4Z8PDwqLX+mmP3KzAwsNYRhytXriAgwLbRTKvCvWnTphbP/jY0VSUXUfHzYYty9xaBt4KibRuHzla9+cOP0N+4YVHu0SUSfkMHw62pv8PaUld4Sdzd4fNENHyfiIbUxska9tBXVEC57zuLcteHHkLjYYPhGdnZoX+EVL/8Cu1Zy3UcZG3C4Td8GBq1aumwtgBAZcFRXMnYZBplkcrlMKjVf94v7e7QthgNBlzduh0Vf97Okbi7w1hdDRgM8O7ZHW5NHbvQkb6yEpc++KdpgmHNZwOIE14axVnTQlS3t0cik8FXhIWOlHv2/XUrUCK59d9Lq4WsbRvI24Q7vD1iCgkJwSeffGJWplAoEBsba1YWGhpqNlSvUCjg4+ODgIAAhIaGQqFQmI5du3YNSqUSoaGhCAkJwddff206ptfr8fvvvyMsLOy+2/zKK68gOTkZpaWleOyxx+Dq6orjx49j1apVGDNmDI4cOWI6Nyoq6q51WRXuSUlJeOedd7Bo0SIEBQVB2gC//V3P3mnWs3B9qAkaDx0Mzy6RDv8Hr1epofx2r1lZzchBo9atHNoWANCcPA1N0W0Ts6RSePfqgcaDnnT4PAQAuLF7j+mPIXBr5KDxoCfh3bOHw5+TNur1uHHHvIiakQMxVu+6M9gbDx0MqUyGa9u/gF/sEIfeL60t2Jsl/h3KPTnQ/PYbfAc5dgvoO4Pd7eHmCJg4ASVL3oN7q5aQt4twaHvuDHavHo/Do2MHXE77CL4DY+By24xsR7gz2Ju+8Dw0CgVu/vdH+A0f5tC22ESgfmPPnj1RVVWFzMxMjB07FllZWSgrK0OfPn3MzouLi8PChQsxaNAgPPzww0hNTUVsbCykUiliY2Mxbtw4PPPMM+jYsSNWrlyJfv36wc/PD08++SSWL1+O3bt3o3///li/fj2aN2+Odu3a3XebZ82aBeDWvfc7rV692vS/JRIJTpw4cde6rPpL+vHHH+P8+fMYOvTWs5p3hrvYE+pu3S+99YtKPf8Mil6OD4oa5XtzYFDd6k2INXJQw2gw4NptvXYxRg5upyu7euveLcQbObhdxaE86C5fBiDeyEGN2oK98VMDUa1UoiLvsEPvl9YV7LLQUOjKrsK9VUu4+vg4rD21BXvzKUlw8fKCvH0EfKL7OfTfV23B/tCYeMBggFvzZvDp1+ceNdSv2oLdMyoSLr7eMFSqRF3s6F6EmlDn7u6OtLQ0JCcnY+XKlQgKCsK6devg4eGBiRMnolu3bkhKSkJMTAwuXLiAxMRElJeXIzo6GnPmzAEAREREICUlBW+88QauXLmCbt264d133wVwa0R77dq1eOedd/Daa68hIiIC77//vl3/P9y7d++9T7KSxGjFePt//vOfux63dVm8ewlevcLqc41GIy6tXoOqkouiBwUAVN9Q4o/FS+Di443GQ4fAs4s4QVGj4vARlGV+KtoQ852uZH6KyvwCUUcOahiqqvDH4qUw6qtFGzmoUVew16i+ft1h92/vFuzArZEpiVTisH9ndwt2wLGfDVB3sNf8O3d0e+oKduDWf0t9eTlcGze2+zqK6a/aXUdtQlestOv9v706s55a4lys+ktW3+Fdn9SFJ+DesgWaTnjJoT2Jutz8cT/8hg8TdeSghrG6Gqpjv6DZ5JcbxAYRVX+UAEYjWrw+R7SRg9tVHPwZXj0eF/0LodFggHJvTp3BDsChYVF99SoqD+cDsAx2AA5fr111/Nc6gx1w7GcD3JoMWlewO7o9epUa5f/94dYPdwQ7cGtCZH0EOznG+fPnsWrVKhQVFaHqz/VIbvfNN3VM0q5FnT33F154Aa+99ho6dLBuPeT8/HysWLHCYgLD/bCl526oqnL4cqB305DaY9DpIHFxaTAzZBvSZwM0rPbU9E49Izs5dIGaumgUZ3Hl441o+tI4h6+uVhvlnn2oOHzEItjFYNDpcDl9A1wb+4q+syRwa/2KS2v/iSbDYwVdAliwnvtyO3vus5yn556QkIDS0lIMGTKk1hXppk6danVddYZ7Xl4e3nzzTfj7+2PIkCGIjo5Gy5bmQ7pnzpzBwYMHsX37dpSXl2Px4sV4/PHHbfx1LNkS7kTOwlClg9Rd/H3ra7A9dTNWVwNSqejBXsMRn41Q4R72nn3hfma284R7ZGQkNm3ahPbt29tdV53jxt26dcOXX36Jbdu2YePGjXj77bchk8nQuHFj6PV63LhxAzqdDsHBwRg3bhzi4+Ph3kB6QUT/ixpKcNVge+om9i23OzWkz8ZmTrZtqz2CgoLsWgTndnf9f6i7uzuee+45PPfcc1AoFDh69CiuXr0KiUSCpk2bolOnThabyhMREVmtYS+h4lDz589HSkoKxo8fj5YtW1o8mXavZ9tvZ/XXz+DgYLu2siMiIqK6KRQK/Pbbb5g7d67FMWuebb9dwxpbIiKiB4pQz7n/L0pNTUV8fDzGjRtnsS6+rRjuREQkHoa7SUVFBSZOnGgxef1+OHSqZ2FhIeLj4xEZGYkRI0agoKDAkZcnIqIGRmK07+VMYmJisGfPnnqpy66eu8FgwKVLlxAYGHjPc7VaLZKSkpCUlITRo0cjKysLkydPxp49e+Dp4DWYiYiIGprAwECsWLECu3fvRlBQEFzveCqjtjXn62JVz33gwIG1LkF77do1DBgwwKoLHThwAFKpFAkJCXBzc0N8fDz8/f2Rm5trdWOJiMjJGO18OZGCggJERkbCxcUFFy5cwNmzZ02vc+csd668G6t67hcuXMD8+fNx+vRpzJkzx2xhfGu3gq1tj9rg4GCzrfaIiOgB42QBbY/MzMx6q8vqYfk1a9Zg/vz5OHPmDFatWgWvP5eAtHYHHJVKZTH7TyaTWWx2Dwi3EhIRETUsznbf3F4lJSXYtGkTioqK4OrqivDwcIwZMwYtWti2s5/VE+o6duyIrVu34urVqxg9ejTOnTtn077ucrncIsg1Gg08PDysby0REZGTOnHiBIYPH46dO3dCLpfDxcUFWVlZiIuLw8mTJ22qy6p0rumdN2vWDJ9++inCwsIwevRoHD582OoLhYSEQKFQmJUpFAqEhYXZ0FwiIiLntHTpUvTr1w+7d+/G6tWr8f777+Pbb79F//79sXz5cpvqsircb7+vLpPJ8P777+O5557DjBkzrL5Qz549UVVVhczMTOh0OmzduhVlZWXo06ePTQ0mIiInwgl1JgUFBXjllVfg5vbXXgFubm5ITEzEkSNHbKrLqnvuU6dOtRg+nzFjBkJCQrB161arLuTu7o60tDQkJydj5cqVCAoKwrp16zgsT0T0AOM997/4+PigsrLSoryiosLisbh7qXPLVyIiIqE9mrzKrvefTLZ+BLmhW7BgAY4fP45//OMfaN26NQDg7NmzePXVVxESEoL33nvP6roaxmbEf+IKdneXl5eH0aNHo2vXrhg4cCD+/e9/i92kBqesrAw9e/ZETk6O2E1pUC5duoTExERERUWhX79+yMjIELtJDcaRI0fw9NNPIyoqCoMGDcJXX30ldpMahGPHjpndNlUqlZgyZQq6du2K/v37Y8uWLfVzIQ7Lm8ycORNGoxGDBg1Cz5490bNnTwwePBhubm54/fXXbaqrwawtzxXs7k6pVOKVV17B/PnzMWzYMJw4cQLjx49H69at0atXL7Gb12C88cYbuHHjhtjNaFCMRiNeeeUVdO/eHWvWrMHZs2fx/PPPo0OHDjZtIemM9Ho9pkyZgoULF2Lw4MHIy8vDSy+9hC5dutTL+t7/i4xGI7Zt24YlS5bAxcXFVD5//nx4eHhg//79OHXqFCZNmoTw8HBERkaK11gn07hxY2zbtg3//e9/UVRUBJlMhtDQUPTs2dPmuhpMz50r2N1dSUkJoqOjMXz4cEilUrRv3x7du3e3eZKFM/vss88gl8vx8MMPi92UBuXo0aO4fPkyZs2aBTc3N4SHh+Pf//43t3AGUF5ejmvXrkGv18NoNEIikcDNzc0s1B40H374ITIyMpCUlGQqq6ysxJ49ezBt2jQ0atQInTp1QmxsLL744gu7r8e15c1t27bNtIHMuHHjsGnTplpXiL2XBhPuXMHu7iIiIszutyiVSuTl5eHRRx8VsVUNh0KhwMcff4zk5GSxm9Lg/PrrrwgPD8d7772H3r17Y9CgQTh69Cj8/PzEbpro/Pz8kJCQgJkzZ6J9+/Z4/vnnMX/+/Af6C+IzzzyDrKwsdOzY0VR27tw5uLq6olWrVqayevv7zGF5k/T0dLzzzjuorq42lYWGhmLRokXYtGmTTXU1mGF5W1awe9DdvHkTSUlJaN++PWJiYsRujuiqq6sxZ84cvPHGG2jcuLHYzWlwlEolDh48iB49eiAnJwfHjx/HxIkT0apVK3Tr1k3s5onKYDBAJpNh9erViImJwf79+/Hqq6+iffv2D+wX54CAAIsylUoFmUxmVlZff5+dsfd9vz799FO89957GDhwoKlsxowZaNeuHVasWIHnn3/e6roaTM+dK9hZ5/z58xg7dix8fX2xZs0am1YJdFZr165FREQEoqOjxW5Kg+Tu7g5fX18kJibC3d3dNHFs7969YjdNdLt378axY8cwePBguLu7o3///ujfv3+9DDc7E7lcDq1Wa1bGv8/17+rVqwgPD7coj4iIwKVLl2yqq8EkA1ewu7dff/0VY8aMQZ8+fbB27VqLb9IPqp07dyI7OxvdunVDt27dUFJSgpkzZ2L9+vViN61BCA4Ohl6vh16vN5XV3GN+0F28eBFVVVVmZa6urg/0PffaBAUFQafToaSkxFRWb3+fOSxv0qZNG3z55ZcW5dnZ2QgJCbGprgYT7lzB7u7KysowceJEjB8/Hq+//jp77Lf5+uuvcfjwYeTl5SEvLw+BgYFYuXIlXn75ZbGb1iD07t0bMpkMa9asQXV1NY4cOYJvv/0WgwcPFrtpouvVqxdOnDiBbdu2wWg04tChQ/xsauHl5YUBAwZgxYoVUKvVOHbsGHbs2IHhw4fbXznD3WTKlClYt24dXnzxRSxfvhzLly/H3/72N6xZswbTpk2zqa4GkxA1K9hlZ2fj8ccfxyeffMIV7G6zdetWXLt2DevWrUOXLl1Mr1Wr7FsAgpyfTCZDZmYmjh07hl69emHWrFl48803+QgTgLZt2yI1NRUZGRno2rUrFi1ahKVLl5pNJqNbUlJSUF1djejoaEybNg2zZ89G586d7a6Xs+X/Eh0djU2bNqFp06bIzc3Fjz/+iIceeghbtmyxeX4VV6gjIiLRtJ9rXwfl1yXOs0JdfWowPXciIiK6JSoqCufPn7/v9zeYR+GIiOgBxLHjWtk7qM5wJyIi0TjbffP6IpFI7Ho/h+WJiEg8Is2W37BhA/r27YuoqCjMmjULKpWq1vPutmFOeXk5XnvtNfTq1Qs9evTA7NmzoVQqTcdjY2PRuXNn0wToYcOG3bVNJ0+eNP1ve3vuDHciIhKNGLPlc3JykJ6ejoyMDOTm5kKpVGLZsmW1nnv7hjmpqalYvny5acfSd955B5WVldi9eze+/fZb3Lx5EykpKQBuLfJTXFyMnJwc5OfnIz8/H9nZ2Xdt18iRIzFq1ChkZmZi7969Zsv92orhTkRED5SsrCzEx8cjODgY3t7emD59OrKysswWegLuvWFOza6CXl5e8Pb2xpgxY5Cfnw8AOH36NPz9/dGkSROr27V7924MGDAAn3zyCfr164cpU6Zgz549ZmvNW4vhTmSnvLw8jBs3TrD6i4qK8Mwzz9zXP3CiBk+gYfnq6mqUl5dbvCoqKlBcXGy2ul5wcDBUKhVKS0vN6rjXhjnvvfceIiIiTMf27dtn2pOgsLAQrq6uePbZZ9GjRw9MmDABv/32210/itatW2Pq1Kn45ptvkJmZiWbNmiElJQV9+/bF4sWLzYbt74UT6ojsoNVq8cYbb5jt2FffwsPDERERgbS0NEyePFmw6xCJQqAJdYcOHcL48eMtylu0aAEXFxez5btrNi1Tq9Vm59qyYc5HH32Er7/+Gps3bzaVdezYEbNnz4a/vz/Wrl2LSZMmYefOnVYtHd6lSxfTev7bt2/Hl19+iX//+9/o2LEjFi9efM8tm9lzJ7LD9u3b8dBDD6FTp06CXmf8+PFIS0vDzZs3Bb0OkaNJ7HzVpVevXjh16pTFa9++fZDJZGYb4dSEuqenp1kd1myYo9frkZKSgvT0dGzYsMG0dfnYsWOxevVqtGzZEjKZDDNmzIBSqcSJEyfu+nmcPHkSS5cuRb9+/TBx4kSUlpZi+fLl+PHHH/H999+jcePGVi1Fy3An+tOuXbvQtm1b5ObmArg1W3X8+PEYNWqUxeYiNTZs2IAhQ4aYft6+fTsGDx6MzZs3IyYmBh06dEBCQoLZcFzbtm2xZcsWjB07Fh07dsTQoUNRUFCATz/9FNHR0YiKisLMmTPNrhkaGooWLVrg888/F+i3J3pwhIaGmu1Fr1Ao4OPjY7Hd7b02zNFqtZg8eTJ+/vlnfP755+jQoYPpvM2bN2P//v2mn/V6Paqrq9GoUaM62xUbG4tRo0Zh//79mDBhAr7//nt88MEHGDhwIFxdXeHn54cRI0ZYtUMcw53oT0OGDEFsbCySk5NRWVmJzMxM5OfnY/ny5XB3d7c4v7i4GGfPnkX//v3Nyi9cuICvvvoKqamp+Pzzz6FUKk0zaGvUbGyTlZUFLy8vvPzyy9i7dy/S0tLw7rvvYvfu3di6davZe6Kjo7Fv3756/72JRCXCo3BxcXHYvHkzioqKUFFRgdTUVMTGxlpsyHWvDXMWLFiAa9eu4dNPP0WLFi3M3nv58mUsXrwYFy9ehEajwZIlSxASEmK6J1+bXr16Yfv27cjKysLf/va3Wifjde/eHbt27brn78h77kS3WbBgAWJjY/HGG28gJycH8+bNMw2z3enYsWOQy+Vo2bKlWblOp8Nbb71let+YMWMsNvgZM2aMaSOIESNGYNGiRUhOTkarVq3Qpk0b/Otf/0JRUZHZe8LDw7Fhw4Z6+k2JGgYxFrGJiYnBhQsXkJiYiPLyckRHR2POnDkAgJKSEgwbNgzZ2dkIDAxESkoKFi5ciOjoaHh4eJg2zCktLcUXX3wBd3d39O3b11S3n58f9u3bh6SkJFRUVGD06NGorKzEY489hg8++OCuO3rOmzfvnm1v3LixVb8jw53oNr6+vli0aBGSkpLQp08fPPvss3WeW1ZWBl9fX4uVpCQSCYKCgkw/e3t7Q6fTmZ3TunVr0/+Wy+WQSqVmXxJkMpnFrYAmTZpAp9NBqVTC19f3vn4/ogZHpBXqXnzxRbz44osW5YGBgabH2YBbYbp69WqL85o1a4ZTp07VWb+bmxtef/11vP766/XTYBtxWJ7oDr/++itcXFxw4sQJXLt2rc7zJBKJxXOxACCVSuHqav69+c7Vpu48LpFI7rncpMFgMNVP5DS4n7sg+FeC6DbHjx/HunXrsHz5cvj7+2PBggV1ntu0aVPcuHHD7mUirXXt2jXI5XJ4e3s75HpE9L+L4U70p6qqKrz22muIiYnB0KFD8fbbb2Pv3r2m1aju1KlTJ+h0Oot740IpLCwU/JE7IkcTY/nZBwHDnehPq1atwpUrV0y99U6dOuHFF1/E4sWLa3305JFHHkFISAgOHjzokPYdPHgQAwYMcMi1iByGw/KCkBgdNaZI5IQ2bdqEbdu2Yfv27YJe5+TJk3j++eeRk5MDHx8fQa9F5Ehdpqy690l3kf/BjHpqiXNhz53IDqNHj4ZSqcThw4cFvc7GjRsxfvx4Bjs5H/bcBcFwJ7KDu7s73nnnHaxYsUKwa5w+fRonT57Eyy+/LNg1iMi5cFieiIhEEzXZvmH5I+s4LF8bLmJDRETiYfdSEAx3IiISD8NdELznTkRE5GTYcyciItFwIRphMNyJiEg8DHdBMNyJiEg0Ej6wJQiGOxERiYfZLghOqCMiInIy7LkTEZFoOKFOGAx3IiISD8NdEAx3IiISDXvuwmC4ExGReBjuguCEOiIiIifDnjsREYmGw/LCYLgTEZF4GO6CYLgTEZFo2HMXBu+5ExERORn23ImISDxcW14QDHciIhINh+WFwXAnIiLxMNwFwXAnIiLRSAxit8A5cUIdERGRk2HPnYiIxMNheUGw505ERKKRGO173a8NGzagb9++iIqKwqxZs6BSqWo9T6lUYsqUKejatSv69++PLVu2mI5du3YNbdu2RZcuXUyvBQsW2HwNITDciYhIPEajfa/7kJOTg/T0dGRkZCA3NxdKpRLLli2r9dz58+fDw8MD+/fvR2pqKpYvX46CggIAwIkTJxAeHo78/HzTa9GiRTZfQwgMdyIiEo0YPfesrCzEx8cjODgY3t7emD59OrKysqDX683Oq6ysxJ49ezBt2jQ0atQInTp1QmxsLL744gsAQGFhIR599FG7riEUhjsRETmd6upqlJeXW7wqKipQXFyMsLAw07nBwcFQqVQoLS01q+PcuXNwdXVFq1atzM4tLi4GcKvn/vvvv2Pw4MHo06cP5s2bh/LycgCw+hpC4YQ6IiISj0AT6g4dOoTx48dblLdo0QIuLi6QyWSmMrlcDgBQq9Vm56pUKrPzAEAmk0Gj0QAAvLy80L17d0ycOBE6nQ6vvfYaFi5ciFWrVkGtVlt1DaEw3ImISDRCrVDXq1cvnDp1qtZjw4cPh1arNf1cE7ienp5m58nlcrPzAECj0cDDwwMATPfXa8yYMQPPP/88DAYDZDKZVdcQCofliYhIPCJMqAsNDTUNrQOAQqGAj48PAgICzM4LCgqCTqdDSUmJ2blhYWEwGAxYsWIFLly4YDqm1Wrh5uYGqVRq9TWEwnAnIqIHSlxcHDZv3oyioiJUVFQgNTUVsbGxkErNI9HLywsDBgzAihUroFarcezYMezYsQPDhw+HVCpFQUEBVq5cCZVKhStXrmDlypUYNWqUTdcQCsOdiIhEI8Zs+ZiYGEyaNAmJiYno378/vL29MWfOHABASUkJunTpYuqtp6SkoLq6GtHR0Zg2bRpmz56Nzp07AwCWL18OrVaL/v37IzY2Fm3atMHs2bPveQ1HkBiN3G+PiIjE0S/uPbve//2Xs+upJc6FE+qIiEg03PJVGAx3IiISj4HpLgTecyciInIy7LkTEZF42HEXBMOdiIhEw3vuwmC4ExGRePjAliB4z52IiMjJsOdORESi4bC8MBjuREQkHoa7IBjuREQkGgnvuQuC4U5EROIxiN0A58QJdURERE6GPXciIhINh+WFwXAnIiLxMNsFwXAnIiLxsOcuCIY7ERGJhs+5C4MT6oiIiJwMe+5ERCQeDssLguFORESikfA5d0Ew3ImISDzsuQuC99yJiIicDHvuREQkHnbcBcFwJyIi0XCFOmEw3ImISDwMd0Ew3ImISDycLS8ITqgjIiJyMuy5ExGRaHjPXRgMdyIiEg/DXRAMdyIiEg/DXRAMdyIiEg8n1AmCE+qIiIicDHvuREQkGrEm1G3YsAHp6emorKxETEwMFi1aBA8PD4vzlEol5s2bhwMHDsDb2xtTpkzB6NGjAQBdunQxO1en0wEAjh8/DgCIjY3F+fPnIZXe6kcHBgYiOztbyF/LhOFORETiESHcc3JykJ6ejoyMDPj7+2PmzJlYtmwZkpOTLc6dP38+PDw8sH//fpw6dQqTJk1CeHg4IiMjkZ+fbzpPpVIhPj4ef/vb3wAAGo0GxcXF+OGHH9CkSRMH/WZ/4bA8ERGJx2i073UfsrKyEB8fj+DgYHh7e2P69OnIysqCXq83O6+yshJ79uzBtGnT0KhRI3Tq1AmxsbH44osvLOpctWoVHnnkEYwZMwYAcPr0afj7+4sS7ADDnYiInFB1dTXKy8stXhUVFSguLkZYWJjp3ODgYKhUKpSWlprVce7cObi6uqJVq1Zm5xYXF5udp1AosGXLFrz55pumssLCQri6uuLZZ59Fjx49MGHCBPz2228C/baWOCxPRETiEWhY/tChQxg/frxFeYsWLeDi4gKZTGYqk8vlAAC1Wm12rkqlMjsPAGQyGTQajVlZeno64uLiEBgYaFbesWNHzJ49G/7+/li7di0mTZqEnTt3WtQpBIY7ERGJR6BH4Xr16oVTp07Vemz48OHQarWmn2tC3dPT0+w8uVxudh5w61767RPvtFotsrOz8emnn5qdN3bsWIwdO9b084wZM7Bp0yacOHHCYiKeEDgsT0REopEYjXa97kdoaKjZ0LpCoYCPjw8CAgLMzgsKCoJOp0NJSYnZubcP6R84cAABAQGIiIgwe+/mzZuxf/9+0896vR7V1dVo1KjRfbXZVgx3IiISjwgT6uLi4rB582YUFRWhoqICqampiI2NNT2yVsPLywsDBgzAihUroFarcezYMezYsQPDhw83nXP06FFERkZaXOPy5ctYvHgxLl68CI1GgyVLliAkJASPPvrofbXZVhyWJyKiB0pMTAwuXLiAxMRElJeXIzo6GnPmzAEAlJSUYNiwYcjOzkZgYCBSUlKwcOFCREdHw8PDA7Nnz0bnzp1Ndf3xxx9o2rSpxTWSkpJQUVGB0aNHo7KyEo899hg++OADiy8QQpEYjVzYl4iIxDGk7Vy73r/r1JJ6aolzYc+diIjEw/6lIBjuREQkHoa7IBjuREQkHoa7IDhbnoiIyMmw505EROIxsOcuBIY7ERGJxyjQEnUPOIY7ERGJh/fcBcF77kRERE6GPXciIhIP77kLguFORETi4bC8IBjuREQkHoa7IBjuREQkHoa7IDihjoiIyMmw505EROIx8Dl3ITDciYhIPByWFwTDnYiIxMNwFwTDnYiIxMPn3AXBCXVEREROhj13IiISjZEbxwiC4U5EROLhsLwgGO5ERCQeTqgTBO+5ExERORn23ImISDxcxEYQDHciIhIPh+UFwXAnIiLRGNlzFwTDnYiIxMOeuyA4oY6IiMjJsOdORETi4XPugmC4ExGReLhCnSAY7kREJBoje+6C4D13IiISj9Fg3+s+bdiwAX379kVUVBRmzZoFlUp11/OvX7+OAQMG4PTp03813WjEihUr0KNHDzz22GN4++23odfr7/sa9YnhTkRED5ScnBykp6cjIyMDubm5UCqVWLZsWZ3n5+XlISEhARcuXDAr37RpE7777jt8+eWX2LlzJ44cOYKPPvrovq5R3xjuREQkGqPBaNfrfmRlZSE+Ph7BwcHw9vbG9OnTkZWVZdbrrpGXl4fp06cjMTGx1npeeuklBAQEoGnTpkhMTMR//vMfm68hBIY7ERGJR6Bh+erqapSXl1u8KioqUFxcjLCwMNO5wcHBUKlUKC0ttagnPDwce/fuxciRIy2O1VaPQqGA0Wi06RpC4IQ6IiISzbeGLYLUe+jQIYwfP96ivEWLFnBxcYFMJjOVyeVyAIBarbY439fXt85rqNVqi3oMBgOqqqpqPVbXNYTAcCciIqfTq1cvnDp1qtZjw4cPh1arNf1cE7ienp42XUMmk1nU4+rqikaNGtV67H6ucb84LE9ERA+U0NBQFBcXm35WKBTw8fFBQECAzfUoFAqzekJCQur1GveL4U5ERA+UuLg4bN68GUVFRaioqEBqaipiY2MhldoWiXFxcUhPT8elS5dQVlaGf/7znxgxYkS9XuN+cVieiIgeKDExMbhw4QISExNRXl6O6OhozJkzBwBQUlKCYcOGITs7G4GBgXetJyEhAWVlZYiPj4dOp8Pw4cNN9/nvdg1HkBiN3JKHiIjImXBYnoiIyMkw3ImIiJwMw52IiMjJMNyJiIicDMOdiIjIyTDciYiInAzDnYiIyMkw3ImIiJwMw52IiMjJ/D/6YuPtxLUtJgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "md.drive(system)\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see that in the relaxed state, all magnetic moments are aligned with the aniostropy axis. The initial configuration affects which orientation along the anisotropy direction is chosen. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exchange energy\n", "\n", "The Zeeman and uniaxial anisotropy are *local* energy terms; they only depend on the magnetisation at a given location. In contrast, the exchange energy represents a short range interaction and tends to align all spins parallel to each other without a preferential direction. \n", "\n", "The exchange energy density is $w_\\text{ex} = A[(\\nabla m_{x})^{2} + (\\nabla m_{y})^{2} + (\\nabla m_{z})^{2}]$, where $A$ is the exchange energy constant. To demonstrate how it affects the magnetisation configuration, we will use $A = 8 \\,\\text{pJ}\\,\\text{m}^{-1}$ on a non-uniform magnetisation configuration." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='exchange')\n", "system.energy = mm.Exchange(A=8e-12)\n", "\n", "def m_initial(pos):\n", " x, y, z = pos\n", " if x <= 5e-9:\n", " return (0, 0, 1)\n", " else:\n", " return (1, 0, 0)\n", " \n", "system.m = df.Field(mesh, dim=3, value=m_initial, norm=Ms)\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.2 s)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "md.drive(system)\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dzyaloshinskii-Moriya energy\n", "\n", "While the exchange interaction aims to align (neighbouring) magnetic moments parallel to each other, the Dzyaloshinskii-Moriya (DM) energy wants to align them perpendicular to each other.\n", "\n", "The (interfacial) DMI energy density is $w_\\text{dmi} = D[m_{z}\\nabla\\cdot\\mathbf{m} - (\\mathbf{m}\\cdot\\nabla)m_{z}]$ (crystallographic class $C_\\text{nv}$), with $D$ being the DM constant. Again, we demonstrate its effect by starting from a uniform configuration, with $D = 3\\times10^{3} \\,\\text{J}\\,\\text{m}^{-2}$." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/martin/PhD/repos/ubermag/oommfc/oommfc/scripts/energy.py:195: FutureWarning: Use of `Cnv` is deprecated; use `Cnv_z` instead.\n", " warnings.warn(msg, FutureWarning)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.2 s)\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfcAAAFgCAYAAACmFjDcAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAABDSElEQVR4nO3deVxUVeM/8M8MizOsooCKC7Go4YpouYuh5oa4hGaolT4qmP30q6mZpZlkLrk8kktPPBRBVq5PmGiRSliZGiqa4YIymYSiqIAwwzDMzO8PYnIcUMbhcmn8vF+veb3izJ1zDyPNZ865554j0ev1ehAREZHVkIrdACIiIqpdDHciIiIrw3AnIiKyMgx3IiIiK8NwJyIisjIMdyIiIivDcCciIquUmZmJ8PBwBAYGYuTIkcjIyHjg8e+++y5WrVplVHbkyBGEhoYiMDAQERERUCgUj1x/XWK4ExGR1VGr1YiKisKYMWPwyy+/YNKkSZgxYwZKSkpMjr1z5w4WLlyIxMREo/L8/Hy8+uqrmDt3Lo4fP45evXrh1VdfhV6vN6t+MTDciYjI6hw9ehRSqRQRERGws7NDeHg43N3dkZaWZnJsREQEbGxsMHjwYKPylJQUBAQEICQkBPb29pgxYwZu3LiBX3/91az6xWArdgOIiIhqm0KhgJ+fn1GZj48PsrOzTY6Nj49HkyZNsHDhQqPy7OxsozpsbGzQsmVLZGdno6CgoMb1i4HhTkREotFdb2PR66VNL1ZZrlQqIZfLjcpkMhlKS0tNjm3SpEmVdahUKjg5ORmVyeVyqFQqs+oXA8OdiIhEo4POotdXd21ZLpebBG1paSkcHBxqXHdVdahUKjg4OKC0tNTi+oXEa+5ERGR1fH19jWa2AxVD9f7+/o9ch1arxR9//AF/f/9aqV9IDHciIhKNVq+z6FGdnj17oqysDImJidBoNNi5cyfy8/PRp0+fGrdt0KBBOHv2LFJSUlBWVoYtW7agadOmaNeuXa3ULySGOxERiUYHvUWP6tjb2yM2NhbJycl4+umn8dlnn2HLli1wcHDA1KlT8eGHHz60bR4eHti8eTM2btyI7t2748iRI/jggw8gkUgeWH99IOF+7kREJJaSa94Wvd6x2ZVaaol1Yc+diIjIynC2PBERiUbLwWNBMNyJiEg0D7puTo+O4U5ERKLRMtwFwXAnIiLRsOcuDE6oIyIisjLsuRMRkWg4oU4YDHciIhKNZSvLU3UY7kREJBpOqBMGw52IiESjZbYLghPqiIiIrAx77kREJBpecxcGw52IiESjhUTsJlglhjsREYlGx2vuguA1dyIiIivDnjsREYmGw/LCYLgTEZFoGO7CYLgTEZFodHqGuxAY7kREJBr23IXBCXVERERWhj13IiISjZZ9TEEw3ImISDS85i4MhjsREYmG19yFwXAnIiLRaPUclhcC31UiIiIrw547ERGJRsc+piAY7kREJBpecxcGw52IiETDa+7C4LtKRERkZdhzJyIi0eg4LC8IhjsREYmGK9QJg+8qERGJRquXWvR4kMzMTISHhyMwMBAjR45ERkZGlcfFx8ejb9++CAoKwrx586BUKgEAS5YsQZcuXQyPwMBAtG3bFl9//TUAIC4uDh06dDA6Jj09vVbfn0cl0ev1erEbQUREj6ek7ECLXj/SN6PKcrVajUGDBiEqKgpjx45FUlIS1q5diwMHDsDR0dFwXGpqKpYsWYKEhAS4u7tj7ty5aN68OZYuXWpS54YNG5Ceno6PP/4YdnZ2eO2119CuXTv861//suh3EAJ77kREZHWOHj0KqVSKiIgI2NnZITw8HO7u7khLSzM6LikpCeHh4fDx8YGzszNmz56NpKQkaLVao+POnj2LxMRErF69GnZ2dgCAc+fOISAgoM5+J3Mw3ImISDRavcSiR3UUCgX8/PyMynx8fJCdnW1Ulp2dDX9/f6NjlEol8vLyjI5bsWIFpk+fjmbNmgEAVCoVFAoFEhIS0Lt3bwwdOhQ7d+609O2oNZxQR0REohFqQp1SqYRcLjcqk8lkKC0tNSpTqVSQyWSGnytfo1KpDGUnTpzApUuX8NFHHxnK8vPz0bVrV7zwwguIiYnBmTNnEBUVBQ8PDwQHBwvxK5mF4U5ERKLRCbSIjVwuNwny0tJSODg4GJXJZDKo1WrDz5Whfu91+d27dyMsLMyorGXLlvjss88MP3fr1g0jR47EwYMH60W4c1ieiIhEo4XUokd1fH19oVAojMoUCoXREDwA+Pn5GQ3VKxQKuLi4wNPT01CWmpqKoUOHGr3ut99+M+rJAxWT+Ozt7c1+D4TAcCciIqvTs2dPlJWVITExERqNBjt37kR+fj769OljdFxYWBi2bduGrKwsFBcXIyYmBqGhoZBKK+Lx6tWrKCoqQocOHYxe5+DggI0bN+Kbb76BTqfDzz//jOTkZIwePbrOfscH4bA8ERGJ5kGT4ixhb2+P2NhYLF26FOvWrYO3tze2bNkCBwcHTJ06Fd26dUNUVBRCQkKQk5ODyMhIFBUVITg4GAsWLDDU8+eff8LV1dWkR+7j44N///vfWL9+PRYuXIgmTZpgxYoVaN++vSC/j7l4nzsREYnm06xeFr3+pdZHaqkl1oU9dyIiEg13hRMG31UiIiIrw547ERGJhrvCCYPhTkREouGwvDAY7kREJBpu+SoMhjsREYlGJ9CtcI87fmUiIiKyMuy5ExGRaDgsLwyGOxERiUaojWMedwx3IiISjZa3wgmC4U5ERKJhz10YfFeJiIisDHvuREQkGg7LC4PhTkREouGwvDAY7kREJBouPysMvqtERERWhj13IiISDXeFEwbDnYiIRMNheWEw3ImISDTcOEYYDHciIhIN15YXBt9VIiIiK8OeOxERiYbD8sJguBMRkWh0HEAWBMOdiIhEo2XPXRAMdyIiEg2H5YXB8RAiIiIrw547ERGJhhvHCIPhTkREouGWr8JguBMRkWh4zV0YHA8hIiKyMuy5ExGRaHjNXRh8V4mISDQ6SCx6PEhmZibCw8MRGBiIkSNHIiMjo8rj4uPj0bdvXwQFBWHevHlQKpWG5yIjI9GpUyd06dLF8DC3fjEw3ImISDRavcSiR3XUajWioqIwZswY/PLLL5g0aRJmzJiBkpISo+NSU1MRFxeHhIQEpKWlobCwEKtXrzY8n5mZia1bt+LUqVOGhzn1i4XhTkREotHppRY9qnP06FFIpVJERETAzs4O4eHhcHd3R1pamtFxSUlJCA8Ph4+PD5ydnTF79mwkJSVBq9Xi1q1buH37Ntq0afPI9YuF4U5ERFZHoVDAz8/PqMzHxwfZ2dlGZdnZ2fD39zc6RqlUIi8vD5mZmXB0dERkZCR69OiB8ePHG3ruNa1fLAx3IiISjU4vsehRHaVSCblcblQmk8lQWlpqVKZSqSCTyQw/V75GpVJBrVYjMDAQb775Jg4fPoywsDBMmzYNN2/erHH9YuFseSIiEs3DJsU9KrlcbhK0paWlcHBwMCqTyWRQq9WGn1UqFQDA0dERAwcOxMCBAw3PRURE4IsvvsCxY8dqXL9Y2HMnIiLRCNVz9/X1hUKhMCpTKBRGQ/AA4OfnZzSUrlAo4OLiAk9PT3zzzTfYt2+f0fFqtRoNGjSocf1iYbgTEZHV6dmzJ8rKypCYmAiNRoOdO3ciPz8fffr0MTouLCwM27ZtQ1ZWFoqLixETE4PQ0FBIpVIolUosX74cly5dgkajwX//+1+Ulpaid+/eNa5fLByWJyIi0Qi1iI29vT1iY2OxdOlSrFu3Dt7e3tiyZQscHBwwdepUdOvWDVFRUQgJCUFOTg4iIyNRVFSE4OBgLFiwAAAwZswY3Lx5E1OnTkVBQQHatWuH2NhYw9B7dfXXBxK9Xq8XuxFERPR4GntkhkWv39FrSy21xLqw505ERKIRakLd447hTkREouGucMLghDoiIiIrw547ERGJhj13YTDciYhINAx3YTDciYhINAx3YTDciYhINJwtLwxOqCMiIrIy7LkTEZFoOCwvDIY7ERGJhuEuDIY7ERGJhuEuDF5zJyIisjLsuRMRkWjYcxcGw52IiESjZ7gLguFORESi4X3uwmC4ExGRaDgsLwxOqCMiIrIy7LkTEZFoeM1dGAx3IiISDYflhcFwJyIi0bDnLgyGOxERiYY9d2FwQh0REZGVYc+diIhEo9eL3QLrxHAnIiLRcBEbYTDciYhINJxQJwxecyciIrIy7LkTEZFoOFteGAx3IiISDSfUCYPhTkREouE1d2Ew3ImISDQMd2FwQh0REZGVYbgTEZFodHqJRY8HyczMRHh4OAIDAzFy5EhkZGRUeVx8fDz69u2LoKAgzJs3D0ql0vDc9u3b8eyzzyIoKAjPPfcc0tPTDc/FxcWhQ4cO6NKli+Fx7/NiYrgTEZFo9HrLHtVRq9WIiorCmDFj8Msvv2DSpEmYMWMGSkpKjI5LTU1FXFwcEhISkJaWhsLCQqxevRoAcPToUaxbtw4bNmxAeno6Jk6ciKioKNy5cwdAxZeHOXPm4NSpU4ZHt27dBHuvzMFwJyIi0ej1Eose1Tl69CikUikiIiJgZ2eH8PBwuLu7Iy0tzei4pKQkhIeHw8fHB87Ozpg9ezaSkpKg1Wpx/fp1/Otf/0JAQACkUilGjx4NGxsbXLp0CQBw7tw5BAQECPr+PCqGOxERiUaocFcoFPDz8zMq8/HxQXZ2tlFZdnY2/P39jY5RKpXIy8vDqFGjMG3aNMNzJ06cQElJCfz8/KBSqaBQKJCQkIDevXtj6NCh2Llzp0XvxcaNG6FSqUzKi4uLsWLFCrPq4mx5IiKyOkqlEnK53KhMJpOhtLTUqEylUkEmkxl+rnzN/SF76dIlzJo1C7NmzUKjRo1w9epVdO3aFS+88AJiYmJw5swZREVFwcPDA8HBwTVu5+3btw1t2rRpE5555hm4ubkZHZOZmYkvvvgCb7zxRo3rZbgTEZFohFrDRi6XmwR5aWkpHBwcjMpkMhnUarXh58pQd3R0NJT9+OOPmDNnDiZPnozp06cDAFq2bInPPvvMcEy3bt0wcuRIHDx40KxwP3z4MBYuXAiJpGIUIjw8vMrjBg0aVOM6AYY7ERGJSKj73H19fY3CF6gYqg8NDTUq8/PzMxqqVygUcHFxgaenJwBg165dWL58OZYtW2b02t9++w0//fSTIeyBikl8944C1MSoUaPQqlUr6HQ6TJw4EZs3b4arq6vheYlEAkdHR6NLBzXBcCciIvEI1HXv2bMnysrKkJiYiPHjxyMpKQn5+fno06eP0XFhYWF4++23MXjwYDRr1gwxMTEIDQ2FVCrFzz//jHfeeQcff/yxySx4BwcHbNy4Ea1atcKzzz6LY8eOITk52eQLRU0EBQUBAA4ePAgvLy9DL94SEr2eK/sSEZE42uyMtuj1F8MXV/vc+fPnsXTpUly4cAHe3t5YunQpAgMDMXXqVHTr1g1RUVEAgISEBMTHx6OoqAjBwcF49913IZfLMWXKFPz8888mvfENGzagX79+OHToENavX4+rV6+iSZMmmDNnDoYMGfLIv4tOp0NycjIyMjKg0WhwfzxHR9f8vWK4ExGRaFrveNei12eNfauWWiK+6OhofPHFF2jbti2cnJyMnpNIJEhISKhxXRyWJyIi0bB7+be9e/di5cqVCAsLs7guhjsREYmGG8f8rby8HF26dKmVuriIDRERiUcvsexhRQYMGIB9+/bVSl3suRMREdUDTZs2xaZNm3Do0CE88cQTsLe3N3renAl1DHciIhINr7n/7dSpU+jcuTMAIDc31+g5c2+PY7gTEZF4GO4GiYmJtVYXr7kTEZFohNo45p+qvLwc+/btw8aNG1FQUIDjx4/j9u3bZtfDnjsREYmHPXeDGzdu4KWXXkJeXh5KS0sxcuRIfPLJJzhz5gw+/fRTs5agZc+diIioHli5ciVat26No0ePokGDBgCA999/Hx06dMCqVavMqovhTkREouGw/N+OHTuGV155xWiWvJOTE1577TVkZGSYVReH5YmISDwcljcoLS2FnZ2dSXlZWZnJOvMPw547ERGJSGLhw3r07t0bsbGxRkF+9+5drFu3Dt27dzerLlHC/cyZMybb7hERET3OFi1ahBMnTqBv375Qq9V49dVX0b9/f/zxxx9YuHChWXXV6bC8Xq/Hrl27sHLlStjY2NTlqYmIqD7isLxB06ZNsWfPHuzduxfnzp2DnZ0d/P39ERYWZphgV1Nmh/vdu3chkUhMtqOriQ8//BD79+9HVFQUYmNjzX49ERFZGYa7EblcjrFjx1pcz0PDvbi4GDt27MChQ4dw+vRpaDQaAIBMJkPnzp0xcOBAjBo1qkZh/9xzzyEqKgrHjx+3uOFERGQFrGzGuyVu3ryJmJgYZGRkoKyszOT5b7/9tsZ1VRvuOp0OH330EWJjY+Hl5YX+/ftj7NixaNSoEbRaLe7cuYPMzEzs2LEDGzZswJQpUzBt2jTY2lb/fcHT07NGjfLZsLbGvwAREQlPMfs1Qerl2vJ/e+utt5CZmYlhw4bB2dnZorqqTeJx48ahXbt22L59O/z8/Ko8ZtSoUQCA8+fP49NPP8W4ceOwe/duixpERET0ODp69Cg++eQTBAUFWVxXteG+cuXKGi919+STT2LFihXIysqyuEFERPQYYc/dwNnZGa6urrVSV7W3wpmzhm2l1q1bW9QYIiJ6zOgllj2sSEREBGJiYqBSqSyuq0az5TUaDXbt2oWsrKwqL/Kbs4E8ERFRJQl77gYnT57EsWPH8NRTT8HDw8NoGVqglibU3WvhwoVISUlBQECAyb125m4gDwDdu3fHsWPHzH4dERFZGYa7QWBgIAIDA2ulrhqF+/fff49169Zh0KBBtXJSIiIiMvbqq6/WWl01CndnZ2f4+PjU2kmJiIgAWN11c0t99913+Oijj5CVlQVbW1v4+/tjypQpePbZZ82qp0Zry0+fPh2rVq1Cbm7uIzWWiIioSnoLH1Zk//79mDVrFlq0aIH58+dj9uzZaNKkCebMmYOUlBSz6qpRz719+/bYsGEDBgwYAKlUanKd/ezZs2adlIiICIDVBbQlNm/ejP/7v/9DZGSkoWzSpEn46KOP8OGHH5rVe69RuC9atAhPPPEEwsLC4ODgYH6LSRR6vR6FB1Ph3ONp2DzCXgBi02k0KDqYCpcBz0BaxR7HJBx9eTkKDxyCS8gzkNr/8957bUkJ7h45CtcBz0Ai5c7W9M9w5coVDBkyxKR88ODB2LRpk1l11Sjcr169ij179uCJJ54wq/K6oLqYBRsXF9g3bSJ2Ux6JrrQUyl9/g2O3oEe686A6er0et3f9D3d/PIKSEyfRdGbUPyrgdRoNbn7yKVSZ51H6+xV4/uvlWg/4kjO/ooF3K9jW0qIRda28sAjq36/AsXPHWq1XX16OGx/HC/reC0lbUoLrm/4DTW4uyu/cQePwMbUa8Hq9HiXpJ+HQoR2kcnmt1VuXNHk3UF5QAHnbNmI3hT33ezRr1gwXL16Et7e3Ufn58+fh5uZmVl01+otv3749rly5YlbFdcW+uReux2xC/pc7UF5QKHZzakxfXo6itB+QE70CEjvbWg12ANCr1SjN/h0AoLl2Hdc3fQhtcbHxMfVoUed723JvsAOAJjcX2sKiWj+nnbs7/nxvNe7s3Qet0vJFI+qKTqXCneT9+PO9VbBt3KjW69cWFaHsz4r5NaXnL+BGXDx0f20YBVT8W9WXv53723FvsAOAWvE79Gp1rZ5TIpFA0sAeOe+uQOH3h6EvL6/V+oVUXliI/G07cW3DB7Bv7iV2cypwERuD8PBwvP3229ixYwcuXbqES5cuYfv27XjnnXcwevRos+qqUc99zJgxWLRoEcaNG4dWrVqZbA4zYsQIs05am2wcHeHyTDAKkvej5MQJuPTrB5cBz8DGoX5+o9brdCg5mYGCfftRfvsO7Fu1hEPnTrV+HqlMhqavROL65ooPusqAr+zBa+/eRcnpM3Dp07vWz20u1cUsSKRSyPz9TILdxsUZTWbOgJ1741o/r71XMzh06ojCA4cqhnAHDYBzn171tpeqLy9H0Y9HUPjdAehKlHDsGoQGLZrX+nlsGzVC05kzcH3TFmgLiwwBX9mDVyt+h76sDPIn29b6uc1VfOQo5B3awdbV1STY7Zo1RdOZUYL0rh06dkDRwe9x56s9KEr7AW7DhsCxa5d6ewlAp1Kh8ND3KPr+MPQaDRoOebbejORxEZu/TZkyBXl5eXjnnXeg1Wqh1+thZ2eHyZMnY+bMmWbVJdHX4Cv4k08+WX0FEgnOnTtn1kkfxtxd4XRlZfjz3ZXQFlX07qQO8r8+qHvXmw9qvV6P0vMXcfvrZMOHDwA0eSUS8jbCLdurLS4xBDzw9wdeScYZFHzzLVq89QakMplg538YvV6Pa+s2oIF3K7iNHFFlsNs3qdlugo+i/PZt5CxfBWi1Fed0awi3oUMqLpPUkw/qii+Ep3An+Rto79ypKLSxQfNFC2DXuPa/9FTS3LhpCHgAkD3ZFp7/ehl3vt4H9eXLaPba/4n6HunUauS8uxINBw2AY9cuVQa7kAFWevkyrn+wxfCznVczuIUOgzzgyVofiXtUhi+EKQegUyoBAFInJ7RY/Aak9y1I9jBC7Qrn84Flu4Aq/l/17crMzMSSJUtw6dIleHt745133qlykZj4+HjExcWhpKQEISEhWLZsmWF+2d69e7F+/XrcunUL3bt3x/Lly+Hu7g4AOHLkCN577z3k5OSgXbt2WL58ea3cNl5cXIzs7GzIZDJ4e3ubLB5XEzUK97r2KFu+3j1yFLe27zQqs2nYEA2HDobTU11F/RBS//EH7ny9D6VZl4zKZU+2RdOoaYKfv6qAl9jZoeyPq3AdPAhuQwcL3obqlGScxs34REidndGgZfM6DfZKt7/ag6LvDxuV2TVrWvFB3S5AtA9qvV4P1bnzuLN3v9EXQgBw7tcHjceMErwNVQW85to1aAuL4D5pApy6dhG8DdUpSDmAgn3fwL5Fc+h1+joN9kp5H8VBlWncuWng54tGI4ajwRPe1bxKeHqdDiXpJ3Fn/7d/fyH8S6Pw0Y80YvdPC3e1Wo1BgwYhKioKY8eORVJSEtauXYsDBw7A0dHRcFxqaiqWLFmChIQEuLu7Y+7cuWjevDmWLl2K8+fPY8KECfj444/Rtm1bREdH48aNG4iNjUV+fj6effZZrFmzBn369MFHH32E/fv3Y+/evRZ9ZhQXF2Pfvn24ePEiJBIJ2rdvjyFDhkBmZiesfnRNaoFT96dg6+FhVKYtKMCtL7Yhd/VaKH/LrPPrhJqbN3EjPgHX1sWYBDsAuIUOq5N22Dg5oukrkbDzqrjGprl2HWV/XAUAFKWmQXv3bp204356rRZ39u4HAOju3hUl2AHAddAASO77H0dz7TpuxH6M6xu3oPT3up9vor7yB/I2fYgbH8WZBLukQQM0fHZgnbTDztMDTWfOgI2rC4CKa/CVQV+wb79o15u1xcUoPJgKACjL+VOUYAf++n/4vg9y9eVsXPv3B7jxyafQ5N2ok3ZU0uv1UGaeQ+7765H/+ZcmwW7r7g7nnj3qtE1iOXr0KKRSKSIiImBnZ4fw8HC4u7sjLS3N6LikpCSEh4fDx8cHzs7OmD17NpKSkqDVavH1119jwIAB6Ny5M2QyGebNm4cffvgB+fn5hiXZQ0JCYG9vjxkzZuDGjRv49ddfH7nNFy9exODBg7Fy5UqcPn0aJ06cwDvvvIPhw4fjzz//NKuuGoX75cuXMWXKFHTp0gUdOnQwedQHEhubasNScz2v4oP6g80oq4P/2XRlGtzauRt/rngfyowzVR4j1PXS6tg4OcJj0guQ3LcRgb6sDAXffldn7bjX3Z+PoTw/36S88fNj6yzYgYp5G64DnqnyOfXlbFz/9we48fGndfIlSFtcjBufJODa+hiUXrpc5TGuIf3r9HqpnacHGo8fZxJi5bdu4+6Ro3XWjnsVpBw0mSgnsbeDx6SIOn1v7L2awbFb1yqfU57+FX+uWoNb23dBV8WGW7VNc+Mmrm/cUvGF8Nq1Ko9xGz4EEhsbwdtiDoneskd1FAoF/Pz8jMp8fHyQnZ1tVJadnW20C6qPjw+USiXy8vJMnnNzc4OrqysUCgWys7ON6rexsUHLli1N6jdHdHQ0AgMDcfjwYezYsQO7d+/G999/D39/f7M3aKvRhLolS5agsLAQc+bMgbOz8yM1ui44dOoAe+9WKLvyh1G5xM4Wzn37wDGwM+w8Pap5de2R2tvBddAA2Hl6ouiHH1F+874As7FBw2F1NxSuuZmPW9t2oPRyNlDF6MXdI0fhEtwPdh7uddYmnVpd7ZeKG7Efw765FxqNGQWZn2+dtMcluC/u/vCTYd5GJamTI1z69YVj506wqYO/fRsnJ7gNHwr7Fs1RdPhH6O77QiF1doZL/36Ct6NSqeJ33N71P5TlVN1rKPj2Ozg93a1O521obt3C3Z+OmJTryzTIfX89Gvj6wH1cOOzq6Aui27DBKDmVAdw3imHr7g6Xvr3h0LkjpPd9qRaCrYc7Go0KgzLjDIp++AH6Mo3R8/YtWwgyeddiAs14VyqVkN83mVImk6G0tNSoTKVSGQ15V75GpVKZPFf5fOVzTvd9kax87lH9+uuv2LVrl1G9rq6ueO211/D888+bVVeNwv3MmTPYsWPHAyfW1QcSiQSNRgzH9Y1bjMr1mnJIZTI0aNWyztpi6+oK+1Ytob1bbPKcc+9egk6Eup+dhzvcRoXhzt59KD1/wfQAnQ539n0Dz5cm1lmbir4/bBJclexbNIfbiOF1FuwAILW3R8Ohz+LWNuN5G7oSJWzdG9dZUAAVPWU7D3foSkpMnms4eJDZE6EsIfN5Am4jhuPO3n0ou5pj8ryupASFqWl1Om+jYP+3hgmQ95O1aQ230GF1+u9l6+YGl769UZRqPNyrvXsX9i1bwLZhwzpph0QiQYOWLVB64aJJsAOA24jh9WaSqBGBrpbK5XKTIC8tLTVZiE0mk0F9zyhQZTg7OjpW+2XAwcGhyvorn3tUXl5eVY443Lx5E56e5v1N1+hf2sPDo97c1/owMn8/yNsFAKi4Nom//pgL9n2DgpQDddaO0t+vIO/DWOj/+sevvB2n4nrpgDprR6UGLZqjadQ0NHklEvYtW5g8rzyVAfVf1+GFpi0uRuGh703KbRs3hvuLE9Bs7mxRFtdwevop2P41smO4fUqvR37i5yg+earO2lGScRo3E7YCOp1RWyqul3avs3ZUkrdtg2ZzZsHjpYmwreKWxKLUNJQX1f46BFVR5/yJkhOm/xb2LZqjyYzpaDpjOhpU8fctNNeBIYZ5G5X/Xnq1Gnn/+S9KsxV11o7CA4dwZ+++ih8kkorPQACytm0EvSunPvL19YVCYfzeKxQKo2F2APDz8zMaSlcoFHBxcYGnpyf8/PyM6rh9+zYKCwvh5+dnUr9Wq8Uff/xhUr85XnnlFSxduhRbt27FxYsXkZ2djT179uCtt97CqFGjcPLkScPjYWoU7lFRUXjvvfegUCig++sDpz6rnOTi2LULPF6cUOcBf3+wOz3dDe4vTgAAuA54RtT7S+VtWqPZ3NnweHkSbN2Nh+HvfJ1cJ1/iClIOGF0vlTo5otFzo9D8jflwChLvXuF75224Dh709xyOOgz4+4O94bAhaPhXr9gtdKho10slUikcuwSi+cL5aBQ+GtJ7/ob1ZWUorKMvzgV79xldWrJt3BgeL04U7QthJRtHR7gODAEAuE98AU49ngZQtwF/f7B7TJoAp6e7AajotddbAm0c07NnT5SVlSExMREajQY7d+5Efn4++vTpY3RcWFgYtm3bhqysLBQXFyMmJgahoaGQSqUIDQ1FSkoK0tPToVarsW7dOvTr1w9ubm4YNGgQzp49i5SUFJSVlWHLli1o2rQp2rVr98hvxbx585Cfn4/o6GiEhYVh2LBhWLBgAa5du4YNGzYgIiICERERmDBhwkPrqtGw/CeffIKrV69i2LBhkEgkkN734VvfNo6pmOQSBMfAzoZvq5UfmAX7vgEAwWYbVxXsjcePA/R62DVtApfgvoKc1xwSiQSOgZ3h0LED7v58DAXffgfd3bsozbqE0gsXBV2cRJN/C3d/+rmiHfb2cHkmGK7PBIt6r/29HDp2QIMnvOHYuRNs3RoCQMUH5l8BDwBOQcLc/lVlsD87EOWFhShOP1EvrpdKbG3h0qc3nJ7qhqLUNBSmpkGvVtfJvA3VxSyo/rqsJHVyRMPBz8K5Z3dIbGv0MSY4l359UJJ+AvK2bSAPqLiEWXz0uCHgm0ROhcxXmK2zqwp2x6BA2Lg6Q1eirNPJu+YSahEbe3t7xMbGYunSpVi3bh28vb2xZcsWODg4YOrUqejWrRuioqIQEhKCnJwcREZGoqioCMHBwViwYAEAICAgANHR0XjzzTdx8+ZNdOvWDStWrABQMaK9efNmvPfee3j99dcREBCADz74wKLb4A4ePFgrvztQw/vc//e//z3weXOXxXuYR7nP/X7lBYWwcXYy9HSq++CsTdUFe2VPtPzOHdiauT5wXdCp1ShK+wGFB1Nh5+GOZnNnC9Z7vpn4OUpOZcC5Vw80HDyoTiapmev+f6f7PzjdJ0XUesA/7O+zvv7taO/eRcF3B3H3p5/h0KmjYPM29Ho9rq2PgSbvBlyfCYZL/3715gvhve79d9LrdLi1fSeKjx4HUHFJToiAry7YK9ugLSqqlev+Qt3n7rd2nUWvv/za3FpqiXWp0Vfe2g7vumDb0HgzEMfAzgD+7sHf/fEnOPfuCZt7FjOw1N20H6oNdgD18sMZAKR/3Tft3KsHClIOQvnrWTgK0Ess+zMX0OvR/I0FdToz31z3/ztVDrdW9uCLDqbCsXOnWhsi1+t0FfdsP+CLZ33927FxdkbjMaPg0q8vCvZ/C/XVHEGueavO/oYG3q3QZNqUevmFsNK9/04SqRSNx4UD+LsHX5R2uFbDXatUoeiHH/86oXGwV7ahrib0keWuXr2K9evXIysrC2VV3D757bff1riuasN90qRJeP3112t8H/upU6ewdu1afPbZZzU+eV2rDPjbX32NJjOm12qwA0DjiOehU5fCxsnJJNj/CWycnNB4zEjB7sm19XCvmAPxD1QZ8MUnTqLJjOm1eu1bIpWiSdQ0XN/0HzgGdqqzBWpqk517Y3hMihDsb0fWtg0cOtaPNTXMcW/AlxcUwn1iRK3Wb+MgR9NXZ+D65v+g0YhQo2D/x/hnzNWuE6+//jry8vIwdOhQs1eku1+1w/Lp6el466234O7ujqFDhyI4OBgtWhh/I7906RKOHTuG3bt3o6ioCMuXL8fTTz9tUYOA2hmWfxBdmUawPar15eWAVPqPC3aqGSH/doSsm8Sl1+kAnU6w+QF18bcj1LC8//uWDctfmm89w/KBgYHYunUr2rdvb3Fd1f6ldevWDXv27MGuXbvw6aef4t1334VMJkPDhg2h1WpRUFAAjUYDHx8fTJw4EeHh4bCvg4UaaoOQ/xPUl8k9JAwh/3YY7NZLIpUa7toRwj/6b8fKtm21hLe3t0WL4NzrgUlkb2+PF154AS+88AIUCgVOnz6NW7duQSKRwMPDA506dTLZVJ6IiKjGOCxvsHjxYkRHR2Py5Mlo0aKFyZ1pQUFBNa6rxt1MHx+fWtnKjoiIiEwpFApcvnwZCxcuNHnO3O3VOYZMRESiEeo+93+imJgYhIeHY+LEiSbr4puL4U5EROJhuBsUFxdj6tSpJpPXH0WdTunOzMxEeHg4AgMDMXLkSGRkZNTl6YmIqJ4RasvXf6KQkBAcOFA7Szlb1HPX6XS4fv06vLy8HnqsWq1GVFQUoqKiMHbsWCQlJWHGjBk4cOAAHGv5fnMiIqJ/Gi8vL6xduxYpKSnw9vaG7X13X5mzp3uNeu4DBw6scgna27dvY8CAmu1wdvToUUilUkRERMDOzg7h4eFwd3dHWlraw19MRETWSaCNY/6JMjIyEBgYCBsbG+Tk5OD33383PK5cuWJWXTXquefk5GDx4sW4ePEiFixYYLQwfk13Eatqj1ofHx+jrfaIiOgxY2UBbYnExMRaq6vGw/IbN27E4sWLcenSJaxfvx5Of235WNMdcJRKpcnsP5lMZrLZPSDcSkhERFS/WNt1c0vl5uZi69atyMrKgq2tLVq3bo1x48aheXPzdvar8YS6jh07YufOnbh16xbGjh2LK1eumNxg/yByudwkyEtLS+Hg4FDz1hIREVmpc+fOYcSIEdi3bx/kcjlsbGyQlJSEsLAwnD9/3qy6apTOlb3zJk2a4PPPP4e/vz/Gjh2LEydO1PhEvr6+UCgURmUKhQL+/v5mNJeIiMg6rVq1Cv369UNKSgo2bNiADz74AN999x369++PNWvWmFVXjcL93uvqMpkMH3zwAV544QXMmTOnxifq2bMnysrKkJiYCI1Gg507dyI/Px99+vQxq8FERGRFOKHOICMjA6+88grs7P7eK8DOzg6RkZE4efKkWXXV6Jr7q6++ajJ8PmfOHPj6+mLnzp01OpG9vT1iY2OxdOlSrFu3Dt7e3tiyZQuH5YmIHmO85v43FxcXlJSUmJQXFxeb3Bb3MNVu+UpERCS0J5eut+j155fWfAS5vluyZAnOnj2Lf//732jVqhUA4Pfff8drr70GX19fvP/++zWuq15tOs4V7B4sPT0dY8eORdeuXTFw4EB8+eWXYjep3snPz0fPnj2RmpoqdlPqlevXryMyMhJBQUHo168fEhISxG5SvXHy5EmMGTMGQUFBGDx4ML7++muxm1QvnDlzxuiyaWFhIWbOnImuXbuif//+2LFjR+2ciMPyBnPnzoVer8fgwYPRs2dP9OzZE0OGDIGdnR3eeOMNs+qqN2vLcwW7ByssLMQrr7yCxYsXY/jw4Th37hwmT56MVq1aoVevXmI3r9548803UVBQIHYz6hW9Xo9XXnkF3bt3x8aNG/H7779jwoQJ6NChg1lbSFojrVaLmTNn4u2338aQIUOQnp6Ol156CV26dKmV9b3/ifR6PXbt2oWVK1fCxsbGUL548WI4ODjgyJEjuHDhAqZNm4bWrVsjMDBQvMZamYYNG2LXrl344YcfkJWVBZlMBj8/P/Ts2dPsuupNz50r2D1Ybm4ugoODMWLECEilUrRv3x7du3c3e5KFNfviiy8gl8vRrFkzsZtSr5w+fRo3btzAvHnzYGdnh9atW+PLL7/kFs4AioqKcPv2bWi1Wuj1ekgkEtjZ2RmF2uPmww8/REJCAqKiogxlJSUlOHDgAGbNmoUGDRqgU6dOCA0NxVdffWXx+bi2vLFdu3YZNpCZOHEitm7dWuUKsQ9Tb8KdK9g9WEBAgNH1lsLCQqSnp+PJJ58UsVX1h0KhwCeffIKlS5eK3ZR657fffkPr1q3x/vvvo3fv3hg8eDBOnz4NNzc3sZsmOjc3N0RERGDu3Llo3749JkyYgMWLFz/WXxCfe+45JCUloWPHjoayK1euwNbWFi1btjSU1drnM4flDeLi4vDee++hvLzcUObn54dly5Zh69atZtVVb4blzVnB7nF39+5dREVFoX379ggJCRG7OaIrLy/HggUL8Oabb6Jhw4ZiN6feKSwsxLFjx9CjRw+kpqbi7NmzmDp1Klq2bIlu3bqJ3TxR6XQ6yGQybNiwASEhIThy5Ahee+01tG/f/rH94uzp6WlSplQqIZPJjMpq6/PZGnvfj+rzzz/H+++/j4EDBxrK5syZg3bt2mHt2rWYMGFCjeuqNz13rmBXM1evXsX48ePh6uqKjRs3mrVKoLXavHkzAgICEBwcLHZT6iV7e3u4uroiMjIS9vb2holjBw8eFLtpoktJScGZM2cwZMgQ2Nvbo3///ujfv3+tDDdbE7lcDrVabVTGz+fad+vWLbRu3dqkPCAgANevXzerrnqTDFzB7uF+++03jBs3Dn369MHmzZtNvkk/rvbt24fk5GR069YN3bp1Q25uLubOnYuPPvpI7KbVCz4+PtBqtdBqtYayymvMj7tr166hrKzMqMzW1vaxvuZeFW9vb2g0GuTm5hrKau3zmcPyBm3atMGePXtMypOTk+Hr62tWXfUm3LmC3YPl5+dj6tSpmDx5Mt544w322O/xzTff4MSJE0hPT0d6ejq8vLywbt06TJ8+Xeym1Qu9e/eGTCbDxo0bUV5ejpMnT+K7777DkCFDxG6a6Hr16oVz585h165d0Ov1OH78ON+bKjg5OWHAgAFYu3YtVCoVzpw5g71792LEiBGWV85wN5g5cya2bNmCF198EWvWrMGaNWvw8ssvY+PGjZg1a5ZZddWbhKhcwS45ORlPP/00PvvsM65gd4+dO3fi9u3b2LJlC7p06WJ4rF9v2QIQZP1kMhkSExNx5swZ9OrVC/PmzcNbb73FW5gAtG3bFjExMUhISEDXrl2xbNkyrFq1ymgyGVWIjo5GeXk5goODMWvWLMyfPx+dO3e2uF7Olv9bcHAwtm7dCg8PD6SlpeGnn35C48aNsWPHDrPnV3GFOiIiEk37hZZ1UH5baT0r1NWmetNzJyIiogpBQUG4evXqI7++3twKR0REjyGOHVfJ0kF1hjsREYnG2q6b1xaJRGLR6zksT0RE4hFptnx8fDz69u2LoKAgzJs3D0qlssrjHrRhTlFREV5//XX06tULPXr0wPz581FYWGh4PjQ0FJ07dzZMgB4+fPgD23T+/HnDf1vac2e4ExGRaMSYLZ+amoq4uDgkJCQgLS0NhYWFWL16dZXH3rthTkxMDNasWWPYsfS9995DSUkJUlJS8N133+Hu3buIjo4GULHIT3Z2NlJTU3Hq1CmcOnUKycnJD2zXqFGjMHr0aCQmJuLgwYNGy/2ai+FORESPlaSkJISHh8PHxwfOzs6YPXs2kpKSjBZ6Ah6+YU7lroJOTk5wdnbGuHHjcOrUKQDAxYsX4e7ujkaNGtW4XSkpKRgwYAA+++wz9OvXDzNnzsSBAweM1pqvKYY7kYXS09MxceJEwerPysrCc88990j/gxPVewINy5eXl6OoqMjkUVxcjOzsbKPV9Xx8fKBUKpGXl2dUx8M2zHn//fcREBBgeO7QoUOGPQkyMzNha2uL559/Hj169MCUKVNw+fLlB74VrVq1wquvvopvv/0WiYmJaNKkCaKjo9G3b18sX77caNj+YTihjsgCarUab775ptGOfbWtdevWCAgIQGxsLGbMmCHYeYhEIdCEuuPHj2Py5Mkm5c2bN4eNjY3R8t2Vm5apVCqjY83ZMOfjjz/GN998g23bthnKOnbsiPnz58Pd3R2bN2/GtGnTsG/fvhotHd6lSxfDev67d+/Gnj178OWXX6Jjx45Yvnz5Q7dsZs+dyAK7d+9G48aN0alTJ0HPM3nyZMTGxuLu3buCnoeorkksfFSnV69euHDhgsnj0KFDkMlkRhvhVIa6o6OjUR012TBHq9UiOjoacXFxiI+PN2xdPn78eGzYsAEtWrSATCbDnDlzUFhYiHPnzj3w/Th//jxWrVqFfv36YerUqcjLy8OaNWvw008/4fDhw2jYsGGNlqJluBP9Zf/+/Wjbti3S0tIAVMxWnTx5MkaPHm2yuUil+Ph4DB061PDz7t27MWTIEGzbtg0hISHo0KEDIiIijIbj2rZtix07dmD8+PHo2LEjhg0bhoyMDHz++ecIDg5GUFAQ5s6da3ROPz8/NG/eHNu3bxfotyd6fPj5+RntRa9QKODi4mKy3e3DNsxRq9WYMWMGfvnlF2zfvh0dOnQwHLdt2zYcOXLE8LNWq0V5eTkaNGhQbbtCQ0MxevRoHDlyBFOmTMHhw4exadMmDBw4ELa2tnBzc8PIkSNrtEMcw53oL0OHDkVoaCiWLl2KkpISJCYm4tSpU1izZg3s7e1Njs/Ozsbvv/+O/v37G5Xn5OTg66+/RkxMDLZv347CwkLDDNpKlRvbJCUlwcnJCdOnT8fBgwcRGxuLFStWICUlBTt37jR6TXBwMA4dOlTrvzeRqES4FS4sLAzbtm1DVlYWiouLERMTg9DQUJMNuR62Yc6SJUtw+/ZtfP7552jevLnRa2/cuIHly5fj2rVrKC0txcqVK+Hr62u4Jl+VXr16Yffu3UhKSsLLL79c5WS87t27Y//+/Q/9HXnNnegeS5YsQWhoKN58802kpqZi0aJFhmG2+505cwZyuRwtWrQwKtdoNHjnnXcMrxs3bpzJBj/jxo0zbAQxcuRILFu2DEuXLkXLli3Rpk0b/Pe//0VWVpbRa1q3bo34+Pha+k2J6gcxFrEJCQlBTk4OIiMjUVRUhODgYCxYsAAAkJubi+HDhyM5ORleXl6Ijo7G22+/jeDgYDg4OBg2zMnLy8NXX30Fe3t79O3b11C3m5sbDh06hKioKBQXF2Ps2LEoKSnBU089hU2bNj1wR89FixY9tO0NGzas0e/IcCe6h6urK5YtW4aoqCj06dMHzz//fLXH5ufnw9XV1WQlKYlEAm9vb8PPzs7O0Gg0Rse0atXK8N9yuRxSqdToS4JMJjO5FNCoUSNoNBoUFhbC1dX1kX4/onpHpBXqXnzxRbz44osm5V5eXobb2YCKMN2wYYPJcU2aNMGFCxeqrd/Ozg5vvPEG3njjjdppsJk4LE90n99++w02NjY4d+4cbt++Xe1xEonE5L5YAJBKpbC1Nf7efP9qU/c/L5FIHrrcpE6nM9RPZDW4n7sg+ClBdI+zZ89iy5YtWLNmDdzd3bFkyZJqj/Xw8EBBQYHFy0TW1O3btyGXy+Hs7Fwn5yOify6GO9FfysrK8PrrryMkJATDhg3Du+++i4MHDxpWo7pfp06doNFoTK6NCyUzM1PwW+6I6poYy88+DhjuRH9Zv349bt68aeitd+rUCS+++CKWL19e5a0nTzzxBHx9fXHs2LE6ad+xY8cwYMCAOjkXUZ3hsLwgJPq6GlMkskJbt27Frl27sHv3bkHPc/78eUyYMAGpqalwcXER9FxEdanLzPUPP+gBTm2aU0stsS7suRNZYOzYsSgsLMSJEycEPc+nn36KyZMnM9jJ+rDnLgiGO5EF7O3t8d5772Ht2rWCnePixYs4f/48pk+fLtg5iMi6cFieiIhEEzTDsmH5k1s4LF8VLmJDRETiYfdSEAx3IiISD8NdELzmTkREZGXYcyciItFwIRphMNyJiEg8DHdBMNyJiEg0Et6wJQiGOxERiYfZLghOqCMiIrIy7LkTEZFoOKFOGAx3IiISD8NdEAx3IiISDXvuwmC4ExGReBjuguCEOiIiIivDnjsREYmGw/LCYLgTEZF4GO6CYLgTEZFo2HMXBq+5ExERWRn23ImISDxcW14QDHciIhINh+WFwXAnIiLxMNwFwXAnIiLRSHRit8A6cUIdERGRlWHPnYiIxMNheUGw505ERKKR6C17PKr4+Hj07dsXQUFBmDdvHpRKZZXHFRYWYubMmejatSv69++PHTt2GJ67ffs22rZtiy5duhgeS5YsMfscQmC4ExGRePR6yx6PIDU1FXFxcUhISEBaWhoKCwuxevXqKo9dvHgxHBwccOTIEcTExGDNmjXIyMgAAJw7dw6tW7fGqVOnDI9ly5aZfQ4hMNyJiEg0YvTck5KSEB4eDh8fHzg7O2P27NlISkqCVqs1Oq6kpAQHDhzArFmz0KBBA3Tq1AmhoaH46quvAACZmZl48sknLTqHUBjuRERkdcrLy1FUVGTyKC4uRnZ2Nvz9/Q3H+vj4QKlUIi8vz6iOK1euwNbWFi1btjQ6Njs7G0BFz/2PP/7AkCFD0KdPHyxatAhFRUUAUONzCIUT6oiISDwCTag7fvw4Jk+ebFLevHlz2NjYQCaTGcrkcjkAQKVSGR2rVCqNjgMAmUyG0tJSAICTkxO6d++OqVOnQqPR4PXXX8fbb7+N9evXQ6VS1egcQmG4ExGRaIRaoa5Xr164cOFClc+NGDECarXa8HNl4Do6OhodJ5fLjY4DgNLSUjg4OACA4fp6pTlz5mDChAnQ6XSQyWQ1OodQOCxPRETiEWFCnZ+fn2FoHQAUCgVcXFzg6elpdJy3tzc0Gg1yc3ONjvX394dOp8PatWuRk5NjeE6tVsPOzg5SqbTG5xAKw52IiB4rYWFh2LZtG7KyslBcXIyYmBiEhoZCKjWORCcnJwwYMABr166FSqXCmTNnsHfvXowYMQJSqRQZGRlYt24dlEolbt68iXXr1mH06NFmnUMoDHciIhKNGLPlQ0JCMG3aNERGRqJ///5wdnbGggULAAC5ubno0qWLobceHR2N8vJyBAcHY9asWZg/fz46d+4MAFizZg3UajX69++P0NBQtGnTBvPnz3/oOeqCRK/nfntERCSOfmHvW/T6w3vm11JLrAsn1BERkWi45aswGO5ERCQeHdNdCLzmTkREZGXYcyciIvGw4y4IhjsREYmG19yFwXAnIiLx8IYtQfCaOxERkZVhz52IiETDYXlhMNyJiEg8DHdBMNyJiEg0El5zFwTDnYiIxKMTuwHWiRPqiIiIrAx77kREJBoOywuD4U5EROJhtguC4U5EROJhz10QDHciIhIN73MXBifUERERWRn23ImISDwclhcEw52IiEQj4X3ugmC4ExGReNhzFwSvuRMREVkZ9tyJiEg87LgLguFORESi4Qp1wmC4ExGReBjugmC4ExGReDhbXhCcUEdERGRl2HMnIiLR8Jq7MBjuREQkHoa7IBjuREQkHoa7IBjuREQkHk6oEwQn1BEREVkZ9tyJiEg0Yk2oi4+PR1xcHEpKShASEoJly5bBwcHB5LjCwkIsWrQIR48ehbOzM2bOnImxY8cCALp06WJ0rEajAQCcPXsWABAaGoqrV69CKq3oR3t5eSE5OVnIX8uA4U5EROIRIdxTU1MRFxeHhIQEuLu7Y+7cuVi9ejWWLl1qcuzixYvh4OCAI0eO4MKFC5g2bRpat26NwMBAnDp1ynCcUqlEeHg4Xn75ZQBAaWkpsrOz8eOPP6JRo0Z19Jv9jcPyREQkHr3esscjSEpKQnh4OHx8fODs7IzZs2cjKSkJWq3W6LiSkhIcOHAAs2bNQoMGDdCpUyeEhobiq6++Mqlz/fr1eOKJJzBu3DgAwMWLF+Hu7i5KsAMMdyIiskLl5eUoKioyeRQXFyM7Oxv+/v6GY318fKBUKpGXl2dUx5UrV2Bra4uWLVsaHZudnW10nEKhwI4dO/DWW28ZyjIzM2Fra4vnn38ePXr0wJQpU3D58mWBfltTHJYnIiLxCDQsf/z4cUyePNmkvHnz5rCxsYFMJjOUyeVyAIBKpTI6VqlUGh0HADKZDKWlpUZlcXFxCAsLg5eXl1F5x44dMX/+fLi7u2Pz5s2YNm0a9u3bZ1KnEBjuREQkHoFuhevVqxcuXLhQ5XMjRoyAWq02/FwZ6o6OjkbHyeVyo+OAimvp9068U6vVSE5Oxueff2503Pjx4zF+/HjDz3PmzMHWrVtx7tw5k4l4QuCwPBERiUai11v0eBR+fn5GQ+sKhQIuLi7w9PQ0Os7b2xsajQa5ublGx947pH/06FF4enoiICDA6LXbtm3DkSNHDD9rtVqUl5ejQYMGj9RmczHciYhIPCJMqAsLC8O2bduQlZWF4uJixMTEIDQ01HDLWiUnJycMGDAAa9euhUqlwpkzZ7B3716MGDHCcMzp06cRGBhoco4bN25g+fLluHbtGkpLS7Fy5Ur4+vriySeffKQ2m4vD8kRE9FgJCQlBTk4OIiMjUVRUhODgYCxYsAAAkJubi+HDhyM5ORleXl6Ijo7G22+/jeDgYDg4OGD+/Pno3Lmzoa4///wTHh4eJueIiopCcXExxo4di5KSEjz11FPYtGmTyRcIoUj0ei7sS0RE4hjadqFFr99/YWUttcS6sOdORETiYf9SEAx3IiISD8NdEAx3IiISD8NdEJwtT0REZGXYcyciIvHo2HMXAsOdiIjEoxdoibrHHMOdiIjEw2vuguA1dyIiIivDnjsREYmH19wFwXAnIiLxcFheEAx3IiISD8NdEAx3IiISD8NdEJxQR0REZGXYcyciIvHoeJ+7EBjuREQkHg7LC4LhTkRE4mG4C4LhTkRE4uF97oLghDoiIiIrw547ERGJRs+NYwTBcCciIvFwWF4QDHciIhIPJ9QJgtfciYiIrAx77kREJB4uYiMIhjsREYmHw/KCYLgTEZFo9Oy5C4LhTkRE4mHPXRCcUEdERGRl2HMnIiLx8D53QTDciYhIPFyhThAMdyIiEo2ePXdB8Jo7ERGJR6+z7PGI4uPj0bdvXwQFBWHevHlQKpUPPP7OnTsYMGAALl68+HfT9XqsXbsWPXr0wFNPPYV3330XWq32kc9RmxjuRET0WElNTUVcXBwSEhKQlpaGwsJCrF69utrj09PTERERgZycHKPyrVu34vvvv8eePXuwb98+nDx5Eh9//PEjnaO2MdyJiEg0ep3eosejSEpKQnh4OHx8fODs7IzZs2cjKSnJqNddKT09HbNnz0ZkZGSV9bz00kvw9PSEh4cHIiMj8b///c/scwiB4U5EROIRaFi+vLwcRUVFJo/i4mJkZ2fD39/fcKyPjw+USiXy8vJM6mndujUOHjyIUaNGmTxXVT0KhQJ6vd6scwiBE+qIiEg03+l2CFLv8ePHMXnyZJPy5s2bw8bGBjKZzFAml8sBACqVyuR4V1fXas+hUqlM6tHpdCgrK6vyuerOIQSGOxERWZ1evXrhwoULVT43YsQIqNVqw8+Vgevo6GjWOWQymUk9tra2aNCgQZXPPco5HhWH5YmI6LHi5+eH7Oxsw88KhQIuLi7w9PQ0ux6FQmFUj6+vb62e41Ex3ImI6LESFhaGbdu2ISsrC8XFxYiJiUFoaCikUvMiMSwsDHFxcbh+/Try8/Pxn//8ByNHjqzVczwqDssTEdFjJSQkBDk5OYiMjERRURGCg4OxYMECAEBubi6GDx+O5ORkeHl5PbCeiIgI5OfnIzw8HBqNBiNGjDBc53/QOeqCRK/nljxERETWhMPyREREVobhTkREZGUY7kRERFaG4U5ERGRlGO5ERERWhuFORERkZRjuREREVobhTkREZGUY7kRERFbm/wMltR3LXKELZwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='dmi')\n", "system.energy = mm.DMI(crystalclass='Cnv', D=3e-3)\n", "system.m = df.Field(mesh, dim=3, value=(0, 0, 1), norm=Ms)\n", "\n", "md.drive(system)\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exchange and Zeeman energies\n", "\n", "So far, we investigated the effect of individual energy terms in the Hamiltonian. Now, we look at how multiple energies in the Hamiltoninan contribute to the final magnetisation configuration. We start with the simplest example where only exchange and Zeeman energies are present. As we showed before, exchange energy wants to align all magnetic moments parallel to each other without a preferential direction, while Zeeman energy wants them to be parallel to the external magnetic field. Therefore, we can expect that the minimum energy configuration is going to be the uniform state in the direction of an applied field $\\mathbf{H}$." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='exchange_and_zeeman')\n", "\n", "# We can add multiple interactions using the 'plus' operator\n", "system.energy = mm.Exchange(A=8e-12) + mm.Zeeman(H=(0, 0, -1e6))\n", "\n", "def m_initial(pos):\n", " x, y, z = pos\n", " if x <= 5e-9:\n", " return (0, 0, 1)\n", " else:\n", " return (1, 0, 0)\n", " \n", "system.m = df.Field(mesh, dim=3, value=m_initial, norm=Ms)\n", "\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.6 s)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "md.drive(system)\n", "system.m.plane('y').mpl()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Both energies are minimal in the above relaxed state: the magnetisation is uniform (minimising the exchange energy) and is aligned with the external field (minimising the Zeeman energy)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Competition of DMI and exchange\n", "\n", "Here, we study the competition of the exchange and (interfacial) DMI energy.\n", "\n", "### Exercise 2\n", "\n", "Relax a one-dimensional chain of magnetic moments of length $L = 20 \\,\\text{nm}$ with discretisation cell size of $(d, d, d)$, with $d = 1 \\,\\text{nm}$. The Hamiltonian should consist of:\n", "\n", "- exchange energy with $A=1 \\times 10^{-11} \\,\\text{J}\\,\\text{m}^{-1}$, and\n", "- Dzyaloshinskii-Moriya energy with $D = 4\\pi A/L \\approx 6.28 \\times 10^{-3} \\,\\text{J}\\,\\text{m}^{-2}$.\n", "\n", "The magnetisation saturation is $M_\\mathrm{s} = 8 \\times 10^{6} \\,\\text{A}\\,\\text{m}^{-1}$.\n", "Initialise the system with any uniform state. \n", "\n", "Questions:\n", "- What is the relaxed state? \n", "- Double the value of DMI constant to be $D = 12.56 \\times 10^{3} \\,\\text{J}\\,\\text{m}^{-2}$. What has changed?" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "f322530f507241f6b17b4282fa18a6b6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system = mm.System(name='exchange_and_DMI')\n", "\n", "A = 1e-11 # exchange energy constant (J/m)\n", "D = 6.28e-3 # DMI energy constant (J/m**2)\n", "Ms = 8e6 # Saturation magnetisation (A/m)\n", "\n", "region = df.Region(p1=(0, 0, 0), p2=(20e-9, 1e-9, 1e-9))\n", "mesh = df.Mesh(region=region, cell=(1e-9, 1e-9, 1e-9))\n", "m_initial = (0, 1, 1) # uniform initial magnetisation\n", "system.m = df.Field(mesh, dim=3, value=m_initial, norm=Ms)\n", "system.m.plane('y').k3d.vector()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.2 s)\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c4b336f8064a4a26b26c5249a937e5c8", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "system.energy = mm.Exchange(A=A) + mm.DMI(D=D, crystalclass='Cnv')\n", "\n", "md = oc.MinDriver() # create energy minimisation driver\n", "md.drive(system)\n", "\n", "system.m.plane('y').k3d.vector(color_field=system.m.z)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running OOMMF (ExeOOMMFRunner) [2021/09/22 13:49]... <1> mmarchive killed\n", " <2> mmarchive killed\n", "(1.3 s)\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "03b7772f36a0435586bdc551b02f9b65", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "# Uncomment and modify the value of D in the following line to double it\n", "# system.hamiltonian.dmi.D = D\n", "md.drive(system)\n", "system.m.plane('y').k3d.vector(color_field=system.m.z)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "03b7772f36a0435586bdc551b02f9b65": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "layout": "IPY_MODEL_a26032bb897a4786ac33c73b25b7213c", "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cb8cdcad4ba64a9bb2688a3f8cc682fb", "version_major": 2, "version_minor": 0 }, "text/plain": "Plot(antialias=3, axes=['x', 'y', 'z'], axes_helper=1.0, background_color=16777215, camera_animation=[], camer…" }, "metadata": {}, "output_type": "display_data" } ] } }, "0fb23c78c0d6465286d721e4f4318498": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "24e1e399b88c4cd6b80f1d0794b57b5b": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "2da386bd4bb04347a64db1e5993680ad": { "buffers": [ { "data": "TiIAAE4iAABoLQAAaC0AAG4/KQBuPykAbFZOAGxWTgBzcXAAc3FwAHiOkwB4jpMAbau5AG2ruQBax9sAWsfbAELb8wBC2/MAOOj+ADjo/gA46P4AOOj+AELb8wBC2/MAWsfbAFrH2wBtq7kAbau5AHiOkwB4jpMAc3FwAHNxcABsVk4AbFZOAG4/KQBuPykAaC0AAGgtAABOIgAATiIAAA==", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "YvwfPwAAAD86o3w/g+3hPwAAAD+4VG0/gV84QAAAAD9C+1M/HYt9QAAAAD/y6jI/AACgQAAAAD9KLQ0/M8K/QAEAAD+Lc8w+1BHeQAEAAD+wSIM+mxb7QAEAAD8mJQs+UosLQQEAAD/Y4kc9/jcZQQEAAD+AQU87AsgmQQEAAD+AQU87rnQ0QQEAAD/Y4kc9snRCQQEAAD8mJQs+FvdQQQEAAD+wSIM+5x5gQQEAAD+Lc8w+AABwQQAAAD9KLQ0/nE6AQQAAAD/y6jI/EPSIQQAAAD9C+1M/KOGRQQAAAD+4VG0/HQCbQQAAAD86o3w/", "encoding": "base64", "path": [ "origins", "data" ] }, { "data": "EeN/vkSrDzF1Rnm/DLYHv1WcCzBwqVq/CvxCv64PtLKF9ie/6Vhsv5NC27LJq8u+AACAv0XcUrOd1NK9KyN8v7A5lLPUMU4+QB1hv1B3w7Ofbvk+smkxvztx8bNtbTo/c9TivinhAbSlA2c/Ef8bvvt7DrR9YX4/Ef8bPvt7DrR9YX4/c9TiPinhAbSlA2c/smkxPztx8bNtbTo/QB1hP1B3w7Ofbvk+KyN8P7A5lLPUMU4+AACAP0XcUrOd1NK96VhsP5NC27LJq8u+CvxCP64PtLKF9ie/DLYHP1WcCzBwqVq/EeN/PkSrDzF1Rnm/", "encoding": "base64", "path": [ "vectors", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "colorLegend": false, "colors": { "dtype": "uint32", "shape": [ 20, 2 ] }, "compression_level": 0, "head_color": 255, "head_size": 1, "id": 139782352216416, "label_size": 1, "labels": [], "line_width": 0.01, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Vectors #1", "origin_color": 255, "origins": { "dtype": "float32", "shape": [ 20, 3 ] }, "type": "Vectors", "use_head": true, "vectors": { "dtype": "float32", "shape": [ 20, 3 ] }, "visible": true } }, "35e2ad27722c43e4997ea26960be50c6": { "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "PlotModel", "state": { "_backend_version": "2.11.0", "_dom_classes": [], "_view_count": null, "antialias": 3, "auto_rendering": true, "axes": [ "x\\,\\text{ (nm)}", "y\\,\\text{ (nm)}", "z\\,\\text{ (nm)}" ], "axes_helper": 1, "background_color": 16777215, "camera": [ 26.015022451936375, -23.522533677904566, 2.1015022600948248, 10, 0.5, 0.5000000149011612, 0, 0, 1 ], "camera_animation": [], "camera_auto_fit": true, "camera_damping_factor": 0, "camera_fov": 60, "camera_mode": "trackball", "camera_no_pan": false, "camera_no_rotate": false, "camera_no_zoom": false, "camera_pan_speed": 0.3, "camera_rotate_speed": 1, "camera_zoom_speed": 1.2, "clipping_planes": [], "colorbar_object_id": -1, "colorbar_scientific": false, "fps": 25, "fps_meter": false, "grid": [ -1, -1, -1, 1, 1, 1 ], "grid_auto_fit": true, "grid_color": 15132390, "grid_visible": true, "height": 512, "label_color": 4473924, "layout": "IPY_MODEL_7bb67c19146a4965a1f3f7675042a9a0", "lighting": 1.5, "manipulate_mode": "translate", "menu_visibility": true, "mode": "view", "name": null, "object_ids": [ 139781410716736, 139781410714096 ], "rendering_steps": 1, "screenshot": "", "screenshot_scale": 2, "snapshot": "", "snapshot_type": "full", "time": 0, "voxel_paint_color": 0 } }, "5385d4f51f914739a0b49a4a1824c3bb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "55f052acb2c24911afb6587f8578023c": { "buffers": [ { "data": "TiIAAE4iAABoLQAAaC0AAG4/KQBuPykAbFZOAGxWTgBzcXAAc3FwAHiOkwB4jpMAbau5AG2ruQBax9sAWsfbAELb8wBC2/MAOOj+ADjo/gA46P4AOOj+AELb8wBC2/MAWsfbAFrH2wBtq7kAbau5AHiOkwB4jpMAc3FwAHNxcABsVk4AbFZOAG4/KQBuPykAaC0AAGgtAABOIgAATiIAAA==", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "YvwfPwAAAD86o3w/g+3hPwAAAD+4VG0/gV84QAAAAD9C+1M/HYt9QAAAAD/y6jI/AACgQAAAAD9KLQ0/M8K/QAEAAD+Lc8w+1BHeQAEAAD+wSIM+mxb7QAEAAD8mJQs+UosLQQEAAD/Y4kc9/jcZQQEAAD+AQU87AsgmQQEAAD+AQU87rnQ0QQEAAD/Y4kc9snRCQQEAAD8mJQs+FvdQQQEAAD+wSIM+5x5gQQEAAD+Lc8w+AABwQQAAAD9KLQ0/nE6AQQAAAD/y6jI/EPSIQQAAAD9C+1M/KOGRQQAAAD+4VG0/HQCbQQAAAD86o3w/", "encoding": "base64", "path": [ "origins", "data" ] }, { "data": "EeN/vkSrDzF1Rnm/DLYHv1WcCzBwqVq/CvxCv64PtLKF9ie/6Vhsv5NC27LJq8u+AACAv0XcUrOd1NK9KyN8v7A5lLPUMU4+QB1hv1B3w7Ofbvk+smkxvztx8bNtbTo/c9TivinhAbSlA2c/Ef8bvvt7DrR9YX4/Ef8bPvt7DrR9YX4/c9TiPinhAbSlA2c/smkxPztx8bNtbTo/QB1hP1B3w7Ofbvk+KyN8P7A5lLPUMU4+AACAP0XcUrOd1NK96VhsP5NC27LJq8u+CvxCP64PtLKF9ie/DLYHP1WcCzBwqVq/EeN/PkSrDzF1Rnm/", "encoding": "base64", "path": [ "vectors", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "colorLegend": false, "colors": { "dtype": "uint32", "shape": [ 20, 2 ] }, "compression_level": 0, "head_color": 255, "head_size": 1, "id": 139781410716736, "label_size": 1, "labels": [], "line_width": 0.01, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Vectors #1", "origin_color": 255, "origins": { "dtype": "float32", "shape": [ 20, 3 ] }, "type": "Vectors", "use_head": true, "vectors": { "dtype": "float32", "shape": [ 20, 3 ] }, "visible": true } }, "5b2a72999f2147369a1fe4eb6092c0f2": { "buffers": [ { "data": "sHJMAFKE3QA=", "encoding": "base64", "path": [ "color_map", "data" ] }, { "data": "AAAgQQAAAAAAAAAAAACgQAAAAAAAAIA/AAAAAAAAAD8AAAAAAAAAAAAAgD8AAAA/AAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "AQEBAQEBAQEBAg==", "encoding": "base64", "path": [ "voxels", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "colorLegend": false, "color_map": { "dtype": "uint32", "shape": [ 2 ] }, "compression_level": 0, "id": 139781971178160, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Voxels #1", "opacity": 1, "outlines": false, "outlines_color": 0, "type": "Voxels", "visible": true, "voxels": { "dtype": "uint8", "shape": [ 1, 1, 10 ] }, "wireframe": false } }, "5d117f6751fc4d958392ef729096ab7a": { "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "PlotModel", "state": { "_backend_version": "2.11.0", "_dom_classes": [], "_view_count": null, "antialias": 3, "auto_rendering": true, "axes": [ "x\\,\\text{(nm)}", "y\\,\\text{(nm)}", "z\\,\\text{(nm)}" ], "axes_helper": 1, "background_color": 16777215, "camera": [ 13.45843140674004, -12.262647101448758, 1.3508431400965981, 4.9500000057742, 0.5, 0.5, 0, 0, 1 ], "camera_animation": [], "camera_auto_fit": true, "camera_damping_factor": 0, "camera_fov": 60, "camera_mode": "trackball", "camera_no_pan": false, "camera_no_rotate": false, "camera_no_zoom": false, "camera_pan_speed": 0.3, "camera_rotate_speed": 1, "camera_zoom_speed": 1.2, "clipping_planes": [], "colorbar_object_id": -1, "colorbar_scientific": false, "fps": 25, "fps_meter": false, "grid": [ -1, -1, -1, 1, 1, 1 ], "grid_auto_fit": true, "grid_color": 15132390, "grid_visible": true, "height": 512, "label_color": 4473924, "layout": "IPY_MODEL_7d48f983cc80402985e7deac9b714119", "lighting": 1.5, "manipulate_mode": "translate", "menu_visibility": true, "mode": "view", "name": null, "object_ids": [ 139781971178160 ], "rendering_steps": 1, "screenshot": "", "screenshot_scale": 2, "snapshot": "", "snapshot_type": "full", "time": 0, "voxel_paint_color": 0 } }, "7bb67c19146a4965a1f3f7675042a9a0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "7d48f983cc80402985e7deac9b714119": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "7f8bafa54fe24cb0b51f84978a9e5a1b": { "buffers": [ { "data": "", "encoding": "base64", "path": [ "attribute", "data" ] }, { "data": "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", "encoding": "base64", "path": [ "color_map", "data" ] }, { "data": "", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacities", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacity_function", "data" ] }, { "data": "", "encoding": "base64", "path": [ "point_sizes", "data" ] }, { "data": "AAAAPwAAAD8AAAA/AADAPwAAAD8AAAA/AAAgQAAAAD8AAAA/AABgQAAAAD8AAAA/AACQQAAAAD8AAAA/AACwQAAAAD8AAAA/AADQQAAAAD8AAAA/AADwQAAAAD8AAAA/AAAIQQAAAD8AAAA/AAAYQQAAAD8AAAA/AAAoQQAAAD8AAAA/AAA4QQAAAD8AAAA/AABIQQAAAD8AAAA/AABYQQAAAD8AAAA/AABoQQAAAD8AAAA/AAB4QQAAAD8AAAA/AACEQQAAAD8AAAA/AACMQQAAAD8AAAA/AACUQQAAAD8AAAA/AACcQQAAAD8AAAA/", "encoding": "base64", "path": [ "positions", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "attribute": { "dtype": "float32", "shape": [ 0 ] }, "color": 5010096, "colorLegend": false, "color_map": { "dtype": "float32", "shape": [ 1024 ] }, "color_range": [], "colors": { "dtype": "uint32", "shape": [ 0 ] }, "compression_level": 0, "id": 139782352211248, "mesh_detail": 2, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Points #1", "opacities": { "dtype": "float32", "shape": [ 0 ] }, "opacity": 1, "opacity_function": { "dtype": "float32", "shape": [ 0 ] }, "point_size": 0.25, "point_sizes": { "dtype": "float32", "shape": [ 0 ] }, "positions": { "dtype": "float32", "shape": [ 20, 3 ] }, "shader": "3dSpecular", "type": "Points", "visible": true } }, "9ce4703e2b6c481e918ba8025a3c625c": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "a26032bb897a4786ac33c73b25b7213c": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "a3bfea05a9eb4ac0baa5c457e31dc565": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": {} }, "aead483c55074308abefd70ecac9f325": { "buffers": [ { "data": "", "encoding": "base64", "path": [ "attribute", "data" ] }, { "data": "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", "encoding": "base64", "path": [ "color_map", "data" ] }, { "data": "", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacities", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacity_function", "data" ] }, { "data": "", "encoding": "base64", "path": [ "point_sizes", "data" ] }, { "data": "AAAAPwAAAD8AAAA/AADAPwAAAD8AAAA/AAAgQAAAAD8AAAA/AABgQAAAAD8AAAA/AACQQAAAAD8AAAA/AACwQAAAAD8AAAA/AADQQAAAAD8AAAA/AADwQAAAAD8AAAA/AAAIQQAAAD8AAAA/AAAYQQAAAD8AAAA/AAAoQQAAAD8AAAA/AAA4QQAAAD8AAAA/AABIQQAAAD8AAAA/AABYQQAAAD8AAAA/AABoQQAAAD8AAAA/AAB4QQAAAD8AAAA/AACEQQAAAD8AAAA/AACMQQAAAD8AAAA/AACUQQAAAD8AAAA/AACcQQAAAD8AAAA/", "encoding": "base64", "path": [ "positions", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "attribute": { "dtype": "float32", "shape": [ 0 ] }, "color": 5010096, "colorLegend": false, "color_map": { "dtype": "float32", "shape": [ 1024 ] }, "color_range": [], "colors": { "dtype": "uint32", "shape": [ 0 ] }, "compression_level": 0, "id": 139781410714096, "mesh_detail": 2, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Points #1", "opacities": { "dtype": "float32", "shape": [ 0 ] }, "opacity": 1, "opacity_function": { "dtype": "float32", "shape": [ 0 ] }, "point_size": 0.25, "point_sizes": { "dtype": "float32", "shape": [ 0 ] }, "positions": { "dtype": "float32", "shape": [ 20, 3 ] }, "shader": "3dSpecular", "type": "Points", "visible": true } }, "b66aaca3ac504bf591bbc7e11773b16b": { "buffers": [ { "data": "", "encoding": "base64", "path": [ "attribute", "data" ] }, { "data": "AAAAAKabxDpvEgM607xjPCSXfzuZuxY7w2SqOgdfmDwkl/870ERYO+AtEDsUP8Y8ylRBPLx0kzuJ0l47/yH9PEmdgDymm8Q7dQKaOwkbHj0ukKA8SFD8O4LixztbsT89EoPAPFJJHTxIUPw7irBhPa5H4TxbsT88dQIaPEoMgj1JnQA9QmBlPDSANzxPQJM9vJYQPbn8hzxioVY8VHSkPS6QID3A7J48/mV3PMbctT2giTA9NIC3PATnjDw5Rcc97utAPYZa0zwJG548GeLYPWDlUD1F2PA8xSCwPGiz6j3T3mA9cM4IPYEmwjwkufw9RdhwPVFrGj09LNQ8cF8HPtxogD3EQi09+THmPIV8ED4Cmog9NxpAPbU3+DwHzhk+vJaQPYZaUz24HgU9ih8jPnWTmD2wA2c9u7gNPQ1xLD4ukKA9tRV7PeLpFT3G3DU+VcGoPUvIhz0tsh097nw/Pg6+sD0qOpI9nRElPRUdST7Hurg9duCcPVafKz08vVI+gLfAPZ7vpz1XWzE9mndcPjm0yD3F/rI9fa42PfkxZj5g5dA9yXa+PRHHOj2OBnA+GeLYPTojyj3tDT497MB5PtPe4D2GONY9EoNAPaW9gT6M2+g9003iPYEmQj3UmoY+RdjwPWkA7z04+EI96GqLPmwJ+T3/svs9XI9CPeAtkD4SgwA+OGcEPqW9QT2945Q+b4EEPigPCz43GkA9Y3+ZPsx/CD5O0RE+Njw9PdIAnj5fmAw+rK0YPjVeOj3uWqI+vJYQPgmKHz59rjY9uY2mPhiVFD7UmiY+6pUyPUymqj51kxg+n6stPnsULj1yiq4+0ZEcPmq8ND4Mkyk9KjqyPmWqID42zTs+nRElPY/CtT7BqCQ+OPhCPgn5ID1sCbk+HqcoPgMJSj5SSR099ii8PnqlLD7OGVE+dQIaPRIUvz7XozA+mSpYPlCNFz3c18E+arw0Pi0hXz7i6RU9HVrEPse6OD75MWY+KxgVPQu1xj4kuTw+Vg5tPisYFT2n6Mg+gLdAPuoEdD7i6RU98fTKPhTQRD5I4Xo+K/YXPc3MzD5wzkg+t9GAPlFrGj1yis4+zcxMPsoyhD4JGx49xSDQPinLUD7ek4c+nDMiPcWP0T6GyVQ+1eeKPsKGJz2q8dI+GeJYPs07jj6fqy09PSzUPnbgXD7Fj5E+fdAzPZhM1T7T3mA+veOUPhHHOj29UtY+L91kPpkqmD5cj0I9x0vXPsP1aD52cZs+qFdKPZkq2D4f9Gw+NquePs6IUj0179g+fPJwPhPyoT7RIls9tabZPtjwdD7UK6U+07xjPRpR2j4173g+lWWoPrG/bD1I4do+yAd9Plafqz5rK3Y9WmTbPhKDgD4X2a4+SS5/PVHa2z5BgoI+1xKyPgFNhD0tQ9w+b4GEPn0/tT7eAok97Z7cPp2Ahj4+ebg+u7iNPZHt3D7njIg+46W7PgWjkj0bL90+FYyKPqTfvj7iWJc9iGPdPkSLjD5KDMI+LUOcPduK3T5yio4+7zjFPgn5oD0tst0+vJaQPrByyD7mrqU9SL/dPuqVkj5Wn8s+MZmqPWTM3T4YlZQ++8vOPg5Prz1kzN0+RpSWPqH40T7qBLQ9SL/dPnWTmD5GJdU+x7q4PRKl3T6+n5o+7FHYPqRwvT3bit0+7Z6cPqyL2z6BJsI9iGPdPhuenj5SuN4+XdzGPRsv3T5JnaA+9+ThPsxdyz2t+tw+eJyiPp0R5T6pE9A9JLncPsGopD5eS+g+GJXUPX9q3D7wp6Y+A3jrPvVK2T2/Dtw+HqeoPqmk7j5kzN09/7LbPkymqj5O0fE+003iPSNK2z6Wsqw+Dwv1PrAD5z1I4do+xLGuPrU3+D4fhes9NV7aPvKwsD5aZPs+jgbwPT7o2T4hsLI+G57+Pv2H9D0QWNk+T6+0PmDlAD9sCfk948fYPpm7tj6zewI/24r9PZkq2D7Hurg+kxgEPyUGAT40gNc+9bm6PuauBT+lLAM+tMjWPiS5vD45RQc/XW0FPjQR1j5SuL4+GeIIPxSuBz60WdU+nMTAPmx4Cj/M7gk+/YfUPsrDwj5NFQw/gy8MPka20z74wsQ+n6sNPztwDj5z19I+J8LGPvJBDz/ysBA+ofjRPnDOyD7T3hA/4QsTPrMM0T6fzco+JXUSP5hMFT6pE9A+zczMPngLFD9QjRc+hA3PPvvLzj7LoRU/PugZPl8Hzj4py9A+HTgXPy1DHD4f9Mw+c9fSPnDOGD/kgx4+w9PLPqHW1D7DZBo/CfkgPmizyj7Q1dY+FvsbP/hTIz7whck+/tTYPmiRHT/mriU+XkvIPkjh2j67Jx8/CyQoPssQxz524Nw+gLcgPzGZKj4dycU+pN/ePtNNIj9WDi0+VHTEPtPe4D6Y3SM/e4MvPoofwz4B3uI+63MlP9cSMj6lvcE+S+rkPrADJz80ojQ+pU7APnnp5j51kyg/x0s3PonSvj6n6Og+rBwqPyPbOT5tVr0+1efqPnGsKz/tnjw+Udq7PgTn7D6oNS0/gEg/Pv5Duj5N8+4+bcUuP0oMQj7Hurg+fPLwPqVOMD8U0EQ+WRe3Pqrx8j5O0TE/FK5HPutztT7Y8PQ+hlozP0ymSj5hw7M+Iv32Pi/dND9NhE0+1xKyPlD8+D7ZXzY/vJZQPjJVsD5/+/o+guI3P/OOUz5yiq4+rfr8Pp5eOT+Zu1Y+sb+sPtv5/j662jo/PuhZPvH0qj4SgwA/1lY8P+QUXT75D6k+qoIBP2TMPT/AW2A+HTinPkGCAj/yQT8/07xjPiZTpT7YgQM/gLdAP+cdZz4TYaM+b4EEP4EmQj8xmWo+AG+hPpSHBT+BlUM/si5uPtJvnz4rhwY/gQRFPzPEcT6kcJ0+woYHP/RsRj/rc3U+WmSbPlmGCD/Zzkc/oyN5PhBYmT5+jAk/vjBJP8gHfT7HS5c+FYwKP6OSSj/3dYA+YTKVPqyLCz/67Us/CmiCPvwYkz5Eiww/UklNP1R0hD588pA+24oNPxueTj+dgIY++8uOPgCRDj9X7E8/ApqIPnqljD6XkA8/kzpRP4PAij7ecYo+LpAQP86IUj8E54w+Qj6IPsWPET990FM/oBqPPov9hT5cjxI/nRFVP1dbkT7vyYM+gZUTP71SVj8qqZM+N4mBPhiVFD9QjVc//faVPgCRfj6vlBU/VcFYPwdfmD5a9Xk+RpQWP1r1WT8Rx5o+tFl1PmuaFz/RIls/Gy+dPg6+cD4Cmhg/uklcP1uxnz5oImw+mpkZP6RwXT+cM6I+woZnPjGZGj8AkV4/+MKkPuXQYj7ImBs/zqpfP3Bfpz4JG14+7Z4cP5zEYD8DCao+LGVZPoSeHT/c12E/lrKsPhiVVD4bnh4/j+RiP0Rprz47308+sp0fP7PqYz8OLbI+KA9LPtejID/Y8GQ/2PC0PhQ/Rj5uoyE/b/BlP77Btz4Ab0E+BaMiP3npZj++n7o+toQ8PpyiIz/122c/v329PqK0Nz40oiQ/cM5oP/d1wD5YyjI+WKglP166aT8TYcM+DeAtPvCnJj++n2o/ZmbGPozbKD6Hpyc/kX5rP7pryT5B8SM+HqcoP9ZWbD8ofsw+wOwePrWmKT8bL20/l5DPPj7oGT7arCo/RPptPyGw0j694xQ+cawrP23Fbj+rz9U+BcUPPgisLD8Jim8/UPzYPkymCj6fqy0/pU5wPxE23D6UhwU+xLEuPyUGcT/Sb98+3GgAPluxLz+lvXE/rrbiPkaU9j3ysDA/mG5yP4v95T5oIuw9irAxP/wYcz+DUek+irDhPSGwMj/TvHM/eqXsPj0K1z1GtjM/HVp0P3L57z5fmMw93bU0P2b3dD+hZ/M+E/LBPXS1NT+Uh3U/tMj2PsdLtz0LtTY/whd2P+M2+j56paw9orQ3P2Khdj8tsv0+Lv+hPce6OD90JHc/LpAAP+JYlz1eujk/+aB3P2FUAj+Wsow99bk6P34deD8GEgQ/SgyCPYy5Oz/njHg/xtwFP9c0bz2xvzw/UPx4P/mgBz8aUVo9SL89PyxleT+6awk/FD9GPeC+Pj96x3k/ejYLP+qVMj13vj8/OiN6PzsBDT9SJyA9Dr5AP2x4ej+J0g4/TfMOPTPEQT+fzXo/ZaoQP0mdAD3Kw0I/tRV7P7N7Ej/VeOk8YcNDP8xdez+PUxQ/YqHWPPjCRD9Wn3s/aysWP6hXyjyPwkU/Udp7P0cDGD84+MI8tMhGP78OfD+x4Rk/ylTBPEvIRz+fPHw/GsAbPxQ/xjzjx0g/f2p8PxKlHT8Xt9E8esdJP0SLfD97gx8/07zjPJ/NSj8IrHw/c2ghP/8h/Tw2zUs/sb98P2pNIz9N8w49zcxMP1vTfD9hMiU/L24jPWTMTT924Hw/5x0nPxHHOj37y04/BOd8P2wJKT9hw1M9INJPPwTnfD9j7io/+8tuPbfRUD8E53w/duAsPwK8hT1O0VE/6Nl8P/vLLj/hepQ95dBSP83MfD8OvjA/CtejPQrXUz+Wsnw/k6kyPw+csz2h1lQ/X5h8P6abND9d/sM9OdZVP5p3fD9GlDY/hsnUPdDVVj9IUHw/WYY4Px3J5T1n1Vc/aCJ8P2x4Oj/+Zfc9jNtYP/rtez8NcTw/ppsEPiPbWT//sns/rWk+P/LSDT662lo/dnF7P8BbQD90JBc+UdpbP+wvez9hVEI/ZaogPujZXD9I4Xo/AU1EP8NkKj4N4F0/o5J6P6JFRj9YOTQ+pN9eP3E9ej/QREg/klw+PjvfXz+x4Xk/cT1KPzm0SD7T3mA/Y395PxE2TD9PQFM+9+RhPxUdeT+yLk4/CRtePo/kYj85tHg/UidQPzAqaT4m5GM/0ER4P/MfUj/GbXQ+veNkP9nOdz+TGFQ/AACAPlTjZT/iWHc/NBFWP1TjhT556WY/6+J2P0cDWD8W+4s+EOlnP2Zmdj/n+1k/Di2SPqfoaD/i6XU/+u1bP3WTmD4+6Gk/XW11P3/ZXT8tIZ8+1edqP9jwdD8FxV8/VOOlPvrtaz/henQ/irBhP83MrD6R7Ww/6gR0P/OOYz+z6rM+Ke1tP4GVcz9dbWU/7C+7PsDsbj8zM3M/OUVnP662wj7l8m8/Ad5yP4cWaT/DZMo+fPJwP+qVcj+62mo/RUfSPhPycT98YXI/X5hsPxpR2j6q8XI/RUdyP+lIbj9BguI+QfFzP0VHcj9X7G8/n83qPmb3dD8KaHI/HHxxPzMz8z799nU/k6lyP1MFcz/ImPs+lPZ2P28Scz9vgXQ/vAUCPyv2dz+conM/4ul1P/kxBj/D9Xg/HVp0PzlFdz+oVwo/5/t5P+84dT91k3g/rWkOP3/7ej+GOHY/ldR5PwpoEj8W+3s/4lh3PygPez+9UhY/rfp8P5CgeD+fPHw/xykaP9IAfj/n+3k/iGN9P5vmHT9pAH8/A3h7P1Z9fj83iSE/AACAP8gHfT8kl38/KxglPw==", "encoding": "base64", "path": [ "color_map", "data" ] }, { "data": "", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacities", "data" ] }, { "data": "", "encoding": "base64", "path": [ "opacity_function", "data" ] }, { "data": "", "encoding": "base64", "path": [ "point_sizes", "data" ] }, { "data": "AAAAPwAAAD8AAAA/AADAPwAAAD8AAAA/AAAgQAAAAD8AAAA/AABgQAAAAD8AAAA/AACQQAAAAD8AAAA/AACwQAAAAD8AAAA/AADQQAAAAD8AAAA/AADwQAAAAD8AAAA/AAAIQQAAAD8AAAA/AAAYQQAAAD8AAAA/AAAoQQAAAD8AAAA/AAA4QQAAAD8AAAA/AABIQQAAAD8AAAA/AABYQQAAAD8AAAA/AABoQQAAAD8AAAA/AAB4QQAAAD8AAAA/AACEQQAAAD8AAAA/AACMQQAAAD8AAAA/AACUQQAAAD8AAAA/AACcQQAAAD8AAAA/", "encoding": "base64", "path": [ "positions", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "attribute": { "dtype": "float32", "shape": [ 0 ] }, "color": 5010096, "colorLegend": false, "color_map": { "dtype": "float32", "shape": [ 1024 ] }, "color_range": [], "colors": { "dtype": "uint32", "shape": [ 0 ] }, "compression_level": 0, "id": 139782352210576, "mesh_detail": 2, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Points #1", "opacities": { "dtype": "float32", "shape": [ 0 ] }, "opacity": 1, "opacity_function": { "dtype": "float32", "shape": [ 0 ] }, "point_size": 0.25, "point_sizes": { "dtype": "float32", "shape": [ 0 ] }, "positions": { "dtype": "float32", "shape": [ 20, 3 ] }, "shader": "3dSpecular", "type": "Points", "visible": true } }, "c4b336f8064a4a26b26c5249a937e5c8": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "layout": "IPY_MODEL_a3bfea05a9eb4ac0baa5c457e31dc565", "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "35e2ad27722c43e4997ea26960be50c6", "version_major": 2, "version_minor": 0 }, "text/plain": "Plot(antialias=3, axes=['x', 'y', 'z'], axes_helper=1.0, background_color=16777215, camera_animation=[], camer…" }, "metadata": {}, "output_type": "display_data" } ] } }, "cb8cdcad4ba64a9bb2688a3f8cc682fb": { "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "PlotModel", "state": { "_backend_version": "2.11.0", "_dom_classes": [], "_view_count": null, "antialias": 3, "auto_rendering": true, "axes": [ "x\\,\\text{ (nm)}", "y\\,\\text{ (nm)}", "z\\,\\text{ (nm)}" ], "axes_helper": 1, "background_color": 16777215, "camera": [], "camera_animation": [], "camera_auto_fit": true, "camera_damping_factor": 0, "camera_fov": 60, "camera_mode": "trackball", "camera_no_pan": false, "camera_no_rotate": false, "camera_no_zoom": false, "camera_pan_speed": 0.3, "camera_rotate_speed": 1, "camera_zoom_speed": 1.2, "clipping_planes": [], "colorbar_object_id": -1, "colorbar_scientific": false, "fps": 25, "fps_meter": false, "grid": [ -1, -1, -1, 1, 1, 1 ], "grid_auto_fit": true, "grid_color": 15132390, "grid_visible": true, "height": 512, "label_color": 4473924, "layout": "IPY_MODEL_5385d4f51f914739a0b49a4a1824c3bb", "lighting": 1.5, "manipulate_mode": "translate", "menu_visibility": true, "mode": "view", "name": null, "object_ids": [ 139782352216416, 139782352211248 ], "rendering_steps": 1, "screenshot": "", "screenshot_scale": 2, "snapshot": "", "snapshot_type": "full", "time": 0, "voxel_paint_color": 0 } }, "d12a2ca302bc4c95b3a78f03bd16d5d6": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "layout": "IPY_MODEL_24e1e399b88c4cd6b80f1d0794b57b5b", "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "5d117f6751fc4d958392ef729096ab7a", "version_major": 2, "version_minor": 0 }, "text/plain": "Plot(antialias=3, axes=['x', 'y', 'z'], axes_helper=1.0, background_color=16777215, camera_animation=[], camer…" }, "metadata": {}, "output_type": "display_data" } ] } }, "db00b40d56604c9c8c22061ba818d661": { "buffers": [ { "data": "UoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAFKE3QBShN0AUoTdAA==", "encoding": "base64", "path": [ "colors", "data" ] }, { "data": "AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPw==", "encoding": "base64", "path": [ "model_matrix", "data" ] }, { "data": "AAAAPwAAAAAAAAAAAADAPwAAAAAAAAAAAAAgQAAAAAAAAAAAAABgQAAAAAAAAAAAAACQQAAAAAAAAAAAAACwQAAAAAAAAAAAAADQQAAAAAAAAAAAAADwQAAAAAAAAAAAAAAIQQAAAAAAAAAAAAAYQQAAAAAAAAAAAAAoQQAAAAAAAAAAAAA4QQAAAAAAAAAAAABIQQAAAAAAAAAAAABYQQAAAAAAAAAAAABoQQAAAAAAAAAAAAB4QQAAAAAAAAAAAACEQQAAAAAAAAAAAACMQQAAAAAAAAAAAACUQQAAAAAAAAAAAACcQQAAAAAAAAAA", "encoding": "base64", "path": [ "origins", "data" ] }, { "data": "AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/AAAAAAAAgD8AAIA/", "encoding": "base64", "path": [ "vectors", "data" ] } ], "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "ObjectModel", "state": { "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null, "colorLegend": false, "colors": { "dtype": "uint32", "shape": [ 20, 2 ] }, "compression_level": 0, "head_color": 255, "head_size": 1, "id": 139783004819808, "label_size": 1, "labels": [], "line_width": 0.01, "model_matrix": { "dtype": "float32", "shape": [ 4, 4 ] }, "name": "Vectors #1", "origin_color": 255, "origins": { "dtype": "float32", "shape": [ 20, 3 ] }, "type": "Vectors", "use_head": true, "vectors": { "dtype": "float32", "shape": [ 20, 3 ] }, "visible": true } }, "e78762e721dc4c7b8126e196d7e4977c": { "model_module": "k3d", "model_module_version": "2.11.0", "model_name": "PlotModel", "state": { "_backend_version": "2.11.0", "_dom_classes": [], "_view_count": null, "antialias": 3, "auto_rendering": true, "axes": [ "x\\,\\text{ (nm)}", "y\\,\\text{ (nm)}", "z\\,\\text{ (nm)}" ], "axes_helper": 1, "background_color": 16777215, "camera": [ 26.035482368337913, -23.553223552506868, 2.103548236833834, 10, 0.5, 0.5, 0, 0, 1 ], "camera_animation": [], "camera_auto_fit": true, "camera_damping_factor": 0, "camera_fov": 60, "camera_mode": "trackball", "camera_no_pan": false, "camera_no_rotate": false, "camera_no_zoom": false, "camera_pan_speed": 0.3, "camera_rotate_speed": 1, "camera_zoom_speed": 1.2, "clipping_planes": [], "colorbar_object_id": -1, "colorbar_scientific": false, "fps": 25, "fps_meter": false, "grid": [ -1, -1, -1, 1, 1, 1 ], "grid_auto_fit": true, "grid_color": 15132390, "grid_visible": true, "height": 512, "label_color": 4473924, "layout": "IPY_MODEL_9ce4703e2b6c481e918ba8025a3c625c", "lighting": 1.5, "manipulate_mode": "translate", "menu_visibility": true, "mode": "view", "name": null, "object_ids": [ 139783004819808, 139782352210576 ], "rendering_steps": 1, "screenshot": "", "screenshot_scale": 2, "snapshot": "", "snapshot_type": "full", "time": 0, "voxel_paint_color": 0 } }, "f322530f507241f6b17b4282fa18a6b6": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "layout": "IPY_MODEL_0fb23c78c0d6465286d721e4f4318498", "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e78762e721dc4c7b8126e196d7e4977c", "version_major": 2, "version_minor": 0 }, "text/plain": "Plot(antialias=3, axes=['x', 'y', 'z'], axes_helper=1.0, background_color=16777215, camera_animation=[], camer…" }, "metadata": {}, "output_type": "display_data" } ] } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 4 }