diff --git a/mamonca/cMC.cpp b/mamonca/cMC.cpp index 744be72..4acc094 100644 --- a/mamonca/cMC.cpp +++ b/mamonca/cMC.cpp @@ -527,14 +527,12 @@ bool cMC::thermodynamic_integration(){ } void cMC::run_spin_dynamics(double kBT){ - double mu_s = sqrt(2*constants.damping_parameter*constants.hbar*kBT/constants.delta_t); - { - for (int i=0; i]" + " 0%| | 0/16 [00:00" ] @@ -102,7 +160,10 @@ "plt.xlabel(\"Temperature K\")\n", "plt.ylabel(\"Magnetization\")\n", "plt.ylim([0, 1])\n", - "plt.plot(T_lst, m_lst)" + "plt.grid()\n", + "plt.plot(T_lst, m_mc_lst, label=\"Monte Carlo\")\n", + "plt.plot(T_lst, m_sd_lst, label=\"Spin dynamics\")\n", + "plt.legend();" ] }, { @@ -110,7 +171,122 @@ "id": "38c184fb", "metadata": {}, "source": [ - "Here, as we chose the Heisenberg parameter randomly, the Curie temperature is somewhat higher than the experimental value of 1,043 K. In addition, since the system is relatively small, the total magnetization after the transition does not completely vanish. The residual magnetization values above the Curie temperature can therefore vary each time you run the simulation. The unit if the magnetization is given by the Heisenberg parameter. Here the calculation was done using Monte Carlo, but by setting `mc.switch_spin_dynamics()` you can also turn on spin dynamics (cf. code above). The results after convergence should be more or less the same." + "Here, as we chose the Heisenberg parameter randomly, the Curie temperature is somewhat higher than the experimental value of 1,043 K. In addition, since the system is relatively small, the total magnetization after the transition does not completely vanish. The residual magnetization values above the Curie temperature can therefore vary each time you run the simulation. The unit if the magnetization is given by the Heisenberg parameter. You can see that Monte Carlo and spin dynamics are (not so surprisingly) comparable." + ] + }, + { + "cell_type": "markdown", + "id": "68e1ce81-e718-456b-a1dd-2f9c3c709fa1", + "metadata": {}, + "source": [ + "## Reproduce literature values\n", + "\n", + "Here I do a small comparison between mamonca and the results given [in this paper](https://journals.aps.org/prb/abstract/10.1103/PhysRevB.103.024421). The paper is about Fe-Mn, but for the sake of simplicity, I reproduce the results only for Fe" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "1a31f058-a750-4d7a-8d4d-ad3061bf6406", + "metadata": {}, + "outputs": [], + "source": [ + "# Create bcc structure (which is the ground state of iron)\n", + "bcc = StructureFactory().bulk(\"Fe\", cubic=True).repeat(20)\n", + "\n", + "neigh = bcc.get_neighbors(num_neighbors=80)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "2ed26f5d-c6ee-48d3-b37d-0daba5e3912f", + "metadata": {}, + "outputs": [], + "source": [ + "J_lst = np.array([3.39, 2.26, 0.83, 0.42, 0.44]) / 1000\n", + "A = -0.259\n", + "B = 0.0276" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "6d446af4-3b94-4749-80fc-070baf05eefd", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "5e70717fe59d454f8a01b357bbf8f3a7", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/16 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(*data.T, label=\"reference\")\n", + "plt.ylabel(\"Magnetization\")\n", + "plt.xlabel(\"Temperature K\")\n", + "plt.grid()\n", + "plt.plot(T_lst, m_lst / m_lst[0], label=\"mamonca\")\n", + "plt.legend();" + ] + }, + { + "cell_type": "markdown", + "id": "0568b0b5-4c0b-4840-84ea-22eb352835ce", + "metadata": {}, + "source": [ + "We can see that there's a small difference between mamonca and the reference values. The reason is probably because the values in the paper are truncated at 0.01 meV for all J values and , which can have quite some effects on the final results." ] }, { @@ -131,7 +307,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 12, "id": "110b315b", "metadata": {}, "outputs": [], @@ -148,7 +324,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 13, "id": "7f61d836", "metadata": {}, "outputs": [], @@ -159,7 +335,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 14, "id": "a04adf31", "metadata": {}, "outputs": [], @@ -171,7 +347,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 15, "id": "55a4c4a7", "metadata": {}, "outputs": [], @@ -182,7 +358,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 16, "id": "12103d66", "metadata": {}, "outputs": [], @@ -201,13 +377,13 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 17, "id": "d8f7f333", "metadata": {}, "outputs": [ { "data": { - "image/png": "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qFlRhg5odxiaPHmy3G63//n//M//qLS01P+8pKREw4cP9z+fMWOGEhISglNlo5UrV+r222/XggULlJeXp4kTJ2rSpEnKz88/7nFut1szZ87UBRdcENR6AACdw5GRITZeRODaHYbeffdd1dbW+p8//PDDOnz4sP+5x+PRtm3bglvdURYtWqTrr79es2fP1rBhw/TYY48pIyNDS5YsOe5xN910k2bMmKHx48eHtD4AgDmGNo4M7SyqkMfrM7kaRJp2h6Gjb2HWjluaBVVdXZ1yc3OVnZ3doj07O1vr168/5nHLli3Tzp07dc8997Tr79TW1qqsrKzFAwDQufXpHqf4GJvqvD59X1JldjmIMBEzgbq4uFher7fVPKTU1FQVFha2ecyOHTt01113afny5bLb7e36OwsXLpTL5fI/MjIyTrp2AEBoWa0WDU49cgd7IBDtDkMWi0UWi6VVW7gd/TcNw2izDq/XqxkzZui+++7TkCFD2v3+8+fPl9vt9j+4vxoARIbMpnuUMYkaAWrfcIkaQsesWbPkdDolSTU1NZozZ45/knTz+USh0LNnT9lstlajQEVFRW2uWisvL9emTZuUl5enW2+9VZLk8/lkGIbsdrvee+89nX/++a2Oczqd/s8IAIgcQxgZQge1Owxde+21LZ5fffXVrfrMnDnz5Cs6hpiYGGVlZSknJ0f/+Z//6W/PycnRz372s1b9k5KS9NVXX7VoW7x4sT744AO99tprGjhwYMhqBQCEXyb3KEMHtTsMLVu2LJR1tMu8efN0zTXXaMyYMRo/fryeffZZ5efna86cOZIaLnHt379ff//732W1WjVixIgWx6ekpCg2NrZVOwAg8jXdo+z74krV1HsV67CZXBEiRbvDUGcwffp0lZSU6P7771dBQYFGjBih1atXq3///pKkgoKCE+45BADomnolOtU93qHSqnrtPFSh03u7zC4JEcJihHuNfIQpKyuTy+WS2+1WUlKS2eUAAI5j2jOf6NPdh/WX6aP0n6P7ml0OTBTI93fELK0HAOBEmi6VbStkJ2q0H2EIANBlDEljRRkCRxgCAHQZR0aGCENoP8IQAKDLGNK48eL+0mqV19SbXA0iBWEIANBldI+PUWpSw8a5O4qYN4T2IQwBALoU/07UXCpDOxGGAABdin/eEJOo0U6EIQBAl8KKMgSKMAQA6FLYawiB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pwceeEBffPGF3nrrLe3evVuzZs1q1e/ee+/Vk08+qfXr12vv3r2aNm2aHnvsMb388sv6v//7P+Xk5OiJJ55occyLL74ou92ujRs36vHHH9df/vIXPffcc/7XZ82ape+//14ffPCBXnvtNS1evLhFEJMkq9Wqxx9/XF9//bVefPFFffDBB/rtb38bknMBIMhO/sb3ABAa5557rjF37tw2X/v0008NSUZ5eblhGIbx4YcfGpKM999/399n4cKFhiRj586d/rabbrrJuPjii1v8jWHDhhk+n8/fdueddxrDhg0zDMMwtm3bZkgyNmzY4H9969athiTjL3/5yzFrf/XVV43k5OSAPi8AczAyBCAi5OXl6Wc/+5n69++vxMREnXfeeZKk/Pz8Fv3OOOMM/++pqamKj4/XoEGDWrQdPaozbtw4WSwW//Px48drx44d8nq92rp1q+x2u8aMGeN/fejQoerevXuL9/jwww910UUXqU+fPkpMTNTMmTNVUlKiysrKk/3oAEKMMASg06usrFR2dra6deumf/zjH/rss8/05ptvSmq4fNacw+Hw/26xWFo8b2rz+Xzt/ttG49yh5mHpaHv27NHkyZM1YsQIvf7668rNzdVTTz0lSaqvr2/33wJgDrvZBQDAiXz77bcqLi7WQw89pIyMDEnSpk2bgvb+GzZsaPV88ODBstlsGjZsmDwejzZt2qSxY8dKkrZt26bS0lJ//02bNsnj8ejRRx+V1drw35ivvvpq0OoDEFqMDAHo9Pr166eYmBg98cQT2rVrl95++2098MADQXv/vXv3at68edq2bZtWrFihJ554QnPnzpUkZWZm6pJLLtENN9ygjRs3Kjc3V7Nnz1ZcXJz/+FNPPVUej8df30svvaSnn346aPUBCC3CEIBOr1evXnrhhRe0atUqDR8+XA899JD+/Oc/B+39Z86cqerqao0dO1a33HKLfvnLX+rGG2/0v75s2TJlZGTo3HPP1X/913/pxhtvVEpKiv/1M888U4sWLdLDDz+sESNGaPny5Vq4cGHQ6gMQWhbDaLaZBgAAQJRhZAgAAEQ1whAAAIhqhCEAABDVCEMAACCqEYYAAEBUIwwBAICoRhgCAABRjTAEAACiGmEIAABENcIQAACIaoQhAAAQ1f4/37nsPFHZv6oAAAAASUVORK5CYII=", + "image/png": "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oTrXhmGorq5OOTk5J+0b0TDkr9GjR+uyyy7Tj3/8Y73wwguSpJtvvlnf/e53O9xJNmrUKBUVFen73/++nE6nrrnmGn3xxRf63//9X7lcLt/8or59+yo+Pt6v3202mzVo0KDgf6h20tLS+I8tDDjP4cF5Dg/Oc3hwnsMnFOf6ZCNCXlExgVqSli9frrPPPlsFBQUqKCjQOeeco1deeaVDnx07dsjhcEiS9u/fr3fffVf79+/XuHHjNGDAAN8jkDvQAABA7xYVI0OSZzTn1VdfPWGf9pOkhg4d6tekKQAAENuiZmSoN7LZbHrggQc6TNhG8HGew4PzHB6c5/DgPIdPTzjXUbECNQAAQKgwMgQAAGIaYQgAAMQ0whAAAIhphCEAABDTCEMhtmTJEg0bNkwJCQnKz8/XunXrTth/zZo1ys/PV0JCgoYPH67nn38+TJVGt0DO81tvvaXp06erX79+SktL05QpU/T++++HsdroFejfZ69PPvlEVqtV48aNC22BvUSg57m5uVn33nuvhgwZIpvNpjPOOENLly4NU7XRK9DzvHz5cp177rlKSkrSgAEDdOONN6q6ujpM1UantWvX6sorr1ROTo5MJpPeeeedkx4Tke9BAyHzxz/+0YiLizN+//vfG1u3bjUWLFhgJCcnG/v27euy/549e4ykpCRjwYIFxtatW43f//73RlxcnPHGG2+EufLoEuh5XrBggfH4448bn332mbFz505j0aJFRlxcnPHFF1+EufLoEuh59qqpqTGGDx9uFBQUGOeee254io1ip3KeZ86caUyaNMkoLi429u7da2zcuNH45JNPwlh19An0PK9bt84wm83Gf/7nfxp79uwx1q1bZ5x11lnGVVddFebKo8vq1auNe++913jzzTcNScbbb799wv6R+h4kDIXQxIkTjfnz53doGzVqlHHPPfd02f/nP/+5MWrUqA5tt9xyizF58uSQ1dgbBHqeuzJmzBjjoYceCnZpvcqpnufZs2cb9913n/HAAw8QhvwQ6Hn+05/+ZNjtdqO6ujoc5fUagZ7n3/zmN8bw4cM7tD311FPGoEGDQlZjb+NPGIrU9yCXyUKkpaVFmzdvVkFBQYf2goKCbrcD+fTTTzv1v/TSS7Vp0ya1traGrNZodirn+Xhut1t1dXXq27dvKErsFU71PC9btky7d+/WAw88EOoSe4VT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", "text/plain": [ "
" ] @@ -225,7 +401,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 18, "id": "b70a0bb0", "metadata": {}, "outputs": [ @@ -233,7 +409,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "The free energy difference between bcc and fcc at 300 K is 0.957321594716624 eV\n" + "The free energy difference between bcc and fcc at 300 K is 0.9565999950953374 eV\n" ] } ], @@ -254,59 +430,52 @@ "id": "a992c792-8fe8-41be-ba54-cc8f726cee5f", "metadata": {}, "source": [ - "[Metadynamics](https://en.wikipedia.org/wiki/Metadynamics) is a simulation method which allows for the free energy distribution along a collective variable defined by the user. In mamonca, you can use the total magnetization as the collective variable, meaning you can obtain the free energy distribution along the total magnetization. For this, you only need to call `set_metadynamics` before `run`, where you must also specify the maximum magnetization value. In order to obtain a reliable result, you should also test the robustness by varying `energy_increment` and `length_scale` (cf. [Wikipedia](https://en.wikipedia.org/wiki/Metadynamics#Algorithm), where `energy_increment` is called $\\omega$ and `length_scale` is called $\\sigma$)" + "[Metadynamics](https://en.wikipedia.org/wiki/Metadynamics) is a simulation method which allows for the free energy distribution along a collective variable defined by the user. In mamonca, you can use the total magnetization as the collective variable, meaning you can obtain the free energy distribution along the total magnetization. For this, you only need to call `set_metadynamics` before `run`, where you must also specify the maximum magnetization value. In order to obtain a reliable result, you should also test the robustness by varying `energy_increment` and `length_scale` (cf. [Wikipedia](https://en.wikipedia.org/wiki/Metadynamics#Algorithm), where `energy_increment` is called $\\omega$ and `length_scale` is called $\\sigma$)\n", + "\n", + "Here, we run 10 calculations and get the average to ensure that the results are representative." ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 19, "id": "0dee5e1a", "metadata": {}, "outputs": [], "source": [ "# Create bcc structure (which is the ground state of iron)\n", "bcc = StructureFactory().bulk(\"Fe\", cubic=True).repeat(10)\n", - "\n", "neigh = bcc.get_neighbors(num_neighbors=8)" ] }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 20, "id": "aa94c95b", "metadata": {}, "outputs": [], "source": [ "J = 0.05 * neigh.get_shell_matrix()[0]\n", "\n", - "mc = MC(len(bcc))\n", - "mc.set_heisenberg_coeff(J)\n", - "temperature = 1000\n", - "mc.set_metadynamics(max_range=1)\n", - "mc.run(temperature=temperature, number_of_iterations=100000)\n", - "\n", - "meta = mc.get_metadynamics_free_energy()" + "F_list = []\n", + "for _ in range(10):\n", + " mc = MC(len(bcc))\n", + " mc.set_heisenberg_coeff(J)\n", + " temperature = 1000\n", + " mc.set_metadynamics(max_range=1)\n", + " mc.run(temperature=temperature, number_of_iterations=100000)\n", + " meta = mc.get_metadynamics_free_energy()\n", + " F_list.append(meta[\"free_energy\"])" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 22, "id": "7abfdf91", "metadata": {}, "outputs": [ { "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", + "image/png": "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FOTn53OczwM05F5HRkZi/fr1GDVqFCoqKlBdXY2hQ4fi888/10fJZkWfn41s8dECiURS52tBEO4697Dr73We7qbpva7166+/YtGiRdi4cSMaN26sq/JMSn3vtVKpxJgxY7B48WKEhIToqzyTosnPtUqlgkQiwfr169G5c2cMGjQIH330EX744Qe2+tSDJvc6Pj4e06ZNw4IFC3Dq1Cns2rUL169fx+TJk/VRqtnR12cjfzV7BHK5HJaWlnf9tpCdnX1Xcq3l6el5z+utrKzg5uams1qNXUPuda2NGzdi4sSJ+O233/D444/rskyToOm9Li4uxsmTJxEXF4epU6cCqPlwFgQBVlZW2LNnDx577DG91G5sGvJz7eXlBR8fHzg7O6vPtWzZEoIgIC0tDc2aNdNpzcaqIfd62bJl6NatG958800AQNu2bWFvb48ePXrgvffeYwu9Funzs5EtPo/AxsYGYWFh2Lt3b53ze/fuRWRk5D2fExERcdf1e/bsQXh4OKytrXVWq7FryL0Galp6xo8fj19++YX98vWk6b12cnLC+fPncebMGfUxefJkNG/eHGfOnEGXLl30VbrRacjPdbdu3ZCRkYGSkhL1uStXrsDCwgK+vr46rdeYNeRel5WVwcKi7sekpaUlgP+1RpB26PWzUevDpc1M7fTI7777ToiPjxdef/11wd7eXkhOThYEQRDeeustYezYserra6fszZgxQ4iPjxe+++47TmevJ03v9S+//CJYWVkJX375pZCZmak+CgoKxPoWjIam9/rfOKur/jS918XFxYKvr6/wzDPPCBcvXhQOHTokNGvWTHjppZfE+haMhqb3eu3atYKVlZXw1VdfCUlJSUJ0dLQQHh4udO7cWaxvwWgUFxcLcXFxQlxcnABA+Oijj4S4uDj10gFifjYy+GjBl19+KQQEBAg2NjZCx44dhUOHDqkfGzdunNCrV6861x88eFDo0KGDYGNjIwQGBgqrVq3Sc8XGS5N73atXLwHAXce4ceP0X7gR0vTn+k4MPprR9F4nJCQIjz/+uGBrayv4+voKM2fOFMrKyvRctXHS9F5/9tlnQmhoqGBrayt4eXkJzz33nJCWlqbnqo3PgQMHHvj/r5ifjRJBYHsdERERmQeO8SEiIiKzweBDREREZoPBh4iIiMwGgw8RERGZDQYfIiIiMhsMPkRERGQ2GHyIiIjIbDD4EBERkdlg8CEis7Vo0SK0b99ep++RnJwMiUSCM2fO6PR9iKh+GHyISCPjx4+HRCLB5MmT73psypQpkEgkGD9+vP4LewiJRIJt27bVOTdr1izs27dPa+8xfvx4DBs2rM45Pz8/ZGZmonXr1lp7HyJqOAYfItKYn58fNmzYgPLycvW5iooK/Prrr/D39xexMs04ODjAzc1Np+9haWkJT09PWFlZ6fR9iKh+GHyISGMdO3aEv78/tmzZoj63ZcsW+Pn5oUOHDupzu3btQvfu3eHi4gI3Nzc8+eSTSEpKqvNaR44cQfv27SGTyRAeHo5t27bV6Ro6ePAgJBIJ9u3bh/DwcNjZ2SEyMhKXL1+u8zrbt29HWFgYZDIZgoKCsHjxYlRXVwMAAgMDAQDDhw+HRCJRf/3vri6JRHLXUXutUqnExIkT0aRJE9ja2qJ58+b49NNP1c9dtGgR1q1bhz/++EP93IMHD96zq+vQoUPo3LkzpFIpvLy88NZbb6lrBYDevXtj2rRpmD17Nho1agRPT08sWrRIk78iIroPBh8iapAJEyZg7dq16q+///57vPjii3WuKS0txcyZM3HixAns27cPFhYWGD58OFQqFQCguLgYQ4YMQZs2bXD69Gm8++67mDNnzj3fb968eVi5ciVOnjwJKyurOu+1e/duPP/885g2bRri4+Px9ddf44cffsDSpUsBACdOnAAArF27FpmZmeqv/y0zM1N9JCYmIjg4GD179gQAqFQq+Pr6YtOmTYiPj8eCBQvw9ttvY9OmTQBqus1GjhyJgQMHql8jMjLyrvdIT0/HoEGD0KlTJ5w9exarVq3Cd999h/fee6/OdevWrYO9vT2OHz+ODz/8EEuWLMHevXvv/xdCRPWjkz3fichkjRs3TnjqqaeEnJwcQSqVCtevXxeSk5MFmUwm5OTkCE899ZQwbty4ez43OztbACCcP39eEARBWLVqleDm5iaUl5err/n2228FAEJcXJwgCIJw4MABAYDwzz//qK/ZsWOHAED9vB49egjvv/9+nff66aefBC8vL/XXAIStW7fWuWbhwoVCu3bt7qpTpVIJw4cPF8LCwoSysrL73ospU6YITz/99F335k7Xr1+v8/28/fbbQvPmzQWVSqW+5ssvvxQcHBwEpVIpCIIg9OrVS+jevXud1+nUqZMwZ86c+9ZCRPXDTmciahC5XI7Bgwdj3bp1EAQBgwcPhlwur3NNUlIS3nnnHRw7dgy5ubnqlp6UlBS0bt0aly9fRtu2bSGTydTP6dy58z3fr23btuo/e3l5AQCys7Ph7++PU6dO4cSJE+oWHqCma6qiogJlZWWws7PT6Ht7++23cfToUZw4cQK2trbq86tXr8aaNWtw48YNlJeXo7KyUuNZYQkJCYiIiIBEIlGf69atG0pKSpCWlqYeI3Xn91v7PWdnZ2v0XkR0NwYfImqwF198EVOnTgUAfPnll3c9PmTIEPj5+eHbb7+Ft7c3VCoVWrdujcrKSgCAIAh1AkDtuXuxtrZW/7n2ObVBSqVSYfHixRgxYsRdz7szVNXHzz//jI8//hgHDx6Er6+v+vymTZswY8YMrFy5EhEREXB0dMTy5ctx/PhxjV7/Qd/znefv/H5rH6v9fomo4Rh8iKjBBg4cqA4xAwYMqPNYXl4eEhIS8PXXX6NHjx4AgOjo6DrXtGjRAuvXr4dCoYBUKgUAnDx5UuM6OnbsiMuXLyM4OPi+11hbW0OpVD7wdY4ePYqXXnoJX3/9Nbp27VrnsaioKERGRmLKlCnqc/8eqG1jY/PQ9wgNDcXmzZvrBKAjR47A0dERPj4+D3wuET06Dm4mogaztLREQkICEhISYGlpWecxV1dXuLm54ZtvvkFiYiL279+PmTNn1rlmzJgxUKlUePnll5GQkIDdu3djxYoVAHBXq8iDLFiwAD/++CMWLVqEixcvIiEhARs3bsT8+fPV1wQGBmLfvn3IysrCrVu37nqNrKwsDB8+HKNHj8aAAQOQlZWFrKws5OTkAACCg4Nx8uRJ7N69G1euXME777xz1yDpwMBAnDt3DpcvX0Zubi6qqqruep8pU6YgNTUVr732Gi5duoQ//vgDCxcuxMyZM2Fhwf+SiXSN/8qI6JE4OTnBycnprvMWFhbYsGEDTp06hdatW2PGjBlYvnz5Xc/dvn07zpw5g/bt22PevHlYsGABAM26qAYMGIC//voLe/fuRadOndC1a1d89NFHCAgIUF+zcuVK7N27964p97UuXbqEmzdvYt26dfDy8lIfnTp1AgBMnjwZI0aMwKhRo9ClSxfk5eXVaf0BgEmTJqF58+YIDw+Hu7s7YmJi7nofHx8f7Ny5E7GxsWjXrh0mT56MiRMn1glpRKQ7EuF+HepERCJYv349JkyYgMLCwjoDi4mItIFjfIhIVD/++COCgoLg4+ODs2fPYs6cORg5ciRDDxHpBIMPEYkqKysLCxYsQFZWFry8vPDss8/WmZZORKRN7OoiIiIis8HBzURERGQ2GHyIiIjIbDD4EBERkdlg8CEiIiKzweBDREREZoPBh4iIiMwGgw8RERGZDQYfIiIiMhv/D6lExxkKkYw4AAAAAElFTkSuQmCC", "text/plain": [ "
" ] @@ -318,7 +487,7 @@ "source": [ "plt.xlabel(\"Magnetization\")\n", "plt.ylabel(\"Free energy eV\")\n", - "plt.plot(meta[\"magnetization\"], meta[\"free_energy\"])" + "plt.plot(meta[\"magnetization\"], np.mean(F_list, axis=0));" ] }, { @@ -354,7 +523,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.8" + "version": "3.11.9" } }, "nbformat": 4, diff --git a/notebooks/fitting.ipynb b/notebooks/fitting.ipynb new file mode 100644 index 0000000..8c8684a --- /dev/null +++ b/notebooks/fitting.ipynb @@ -0,0 +1,654 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "5db03a01", + "metadata": {}, + "source": [ + "# Fitting of Heisenberg parameters using pyiron\n", + "\n", + "In this notebook, I explain how to find the Heisenberg parameters for bcc Fe up to the second shell. It has the following two (obvious) steps:\n", + "\n", + "1. Launch DFT calculations with ferromagnetic and anti-ferromagnetic states\n", + "2. Fit the Heisenberg parameters using Linear Regression\n", + "\n", + "Note:\n", + "\n", + "Although this notebook presents a complete workflow, several points require more detailed analysis. Refer to the conclusion section for further information." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "5f44407e", + "metadata": {}, + "outputs": [], + "source": [ + "from pyiron_atomistics import Project\n", + "import numpy as np\n", + "import matplotlib.pylab as plt\n", + "from tqdm.auto import tqdm\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "ad16cf28", + "metadata": {}, + "outputs": [], + "source": [ + "pr = Project(\"FIT\")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "6d7d086a", + "metadata": {}, + "outputs": [], + "source": [ + "bulk = pr.create.structure.bulk(\"Fe\", cubic=True, a=2.83)" + ] + }, + { + "cell_type": "markdown", + "id": "e695b505", + "metadata": {}, + "source": [ + "## Creation of dataset\n", + "\n", + "In this notebook, we are going to create three types of magnetic structures: ferromagnetic, anti-ferromagnetic and double-layer anti-ferromagnetic structures. These structures deliver different energy values, and therefore would allow us to fit different $J_{ij}$ values" + ] + }, + { + "cell_type": "markdown", + "id": "a24aae54", + "metadata": {}, + "source": [ + "### First case: ferromagnetic" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "46819bc4", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setitem__ called on , but object is locked!\n", + " warnings.warn(\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setattr__ called on , but object is locked!\n", + " warnings.warn(\n", + "2024-06-07 19:06:27,646 - pyiron_log - WARNING - The job ferro is being loaded instead of running. To re-run use the argument 'delete_existing_job=True in create_job'\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:97: UserWarning: Unlock previously locked object!\n", + " self.owner.read_only = False\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:320: UserWarning: Unlock previously locked object!\n", + " it.read_only = False\n" + ] + } + ], + "source": [ + "spx_f = pr.create.job.Sphinx(\"ferro\")\n", + "spx_f.structure = bulk.copy()\n", + "spx_f.structure.set_initial_magnetic_moments(len(bulk) * [2])\n", + "spx_f.set_encut(500)\n", + "spx_f.set_kpoints(k_mesh_spacing=0.15)\n", + "spx_f.run()" + ] + }, + { + "cell_type": "markdown", + "id": "94d07faf", + "metadata": {}, + "source": [ + "### Second case: anti-ferromagnetic" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "ad47a7c1", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setitem__ called on , but object is locked!\n", + " warnings.warn(\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setattr__ called on , but object is locked!\n", + " warnings.warn(\n", + "2024-06-07 19:06:37,796 - pyiron_log - WARNING - The job antiferro is being loaded instead of running. To re-run use the argument 'delete_existing_job=True in create_job'\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:97: UserWarning: Unlock previously locked object!\n", + " self.owner.read_only = False\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:320: UserWarning: Unlock previously locked object!\n", + " it.read_only = False\n" + ] + } + ], + "source": [ + "spx_af = pr.create.job.Sphinx(\"antiferro\")\n", + "spx_af.structure = bulk.copy()\n", + "layers = spx_af.structure.analyse.get_layers(planes=[0, 0, 1])\n", + "spx_af.structure.set_initial_magnetic_moments(2 - 4 * (layers % 2 == 1))\n", + "spx_af.set_encut(500)\n", + "spx_af.set_kpoints(k_mesh_spacing=0.15)\n", + "spx_af.run()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "a0222db8", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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+fn5rdrz8/O1Y8cOSb5DaaWlpcdfHQAAQISFHIYGDRqkhx56SHV1df42t9uthx56yP8THXv27FF2dnb4qgQAAIiQkA+TPfHEE/re976nk08+WWeddZYMw9Ann3wij8ej119/XZL0xRdfaNq0aWEvFgAAINxCDkOjRo3Sl19+qRUrVuhf//qXTNPU97//fU2aNElpaWmSpFtuuSXshQIAAERCyGFIklJTUzV16tRw1wIAAGC5ToUhSfrss89UUlIScO6QJH3ve9877qIAAACsEnIY+uKLL3TNNddox44dMgxDpmlKkv9GjPxQKwAAiCUhX002c+ZM9e/fX99++61SUlL06aefavPmzRoxYoQ2btwYgRIBAAAiJ+SZoffff19vv/22evfurbi4OMXFxenCCy/UwoULNWPGDH388ceRqBMAACAiQp4Z8ng8Sk1NlSRlZmZq7969knw3Xdy1a1d4q2vm8OHDuuWWW9S9e3d1795dt9xyi44cOdLuPpMnT5ZhGAGP888/P2I1AgCA2BPyzNCQIUP0ySefaMCAATrvvPP0yCOPKDExUcuXL9eAAQMiUaMkadKkSfrmm2/01ltvSZL+8z//U7fccotee+21dve77LLL9Oyzz/qXExMTI1YjAACIPSGHoXvvvVfV1dWSpF//+te64oordNFFF6lXr15atWpV2AuUpJ07d+qtt97S1q1bdd5550mS/vCHP2jkyJHatWuXBg4c2Oa+TqdTOTk5HX4vl8sll8vlX66oqJDku8u22+3u5CcIrrG/cPeLQIyzNRhnazDO1mCcrRHJcQ6lT8NsvBzsOBw6dEg9evTwX1EWbs8884xmz57d6rBYRkaGHn30Uf3whz8Mut/kyZP16quvKjExURkZGRo9erQWLFigrKysNt9r3rx5mj9/fqv2lStXKiUl5bg+BwAAsEZNTY0mTZqk8vJypaent7ttp+8z1FzPnj3D0U2b9u3bFzTAZGVlad++fW3uN378eF1//fXKz8/X7t27dd999+k73/mOtm/fLqfTGXSfOXPmaPbs2f7liooK5eXlady4cccczFC53W4VFRWpoKBADocjrH2jCeNsDcbZGoyzNRhna0RynBuP7HREh8PQlClTOrTdM8880+E3b2sWprlt27ZJUtBZJ9M0252NuvHGG/2vhwwZohEjRig/P19vvPGGrr322qD7OJ3OoEHJ4XBE7A9EJPtGE8bZGoyzNRhnazDO1ojEOIfSX4fDUGFhofLz8zV06FCF4ciaJGn69OmaOHFiu9v069dPn3zyib799ttW6/bv36/s7OwOv19ubq7y8/P1+eefh1wrAADomjochqZOnaqXXnpJX3zxhaZMmaKbb775uA+PZWZmKjMz85jbjRw5UuXl5frggw907rnnSpL+93//V+Xl5Ro1alSH3+/gwYP6+uuvlZub2+maAQBA19Lh+ww9+eSTKi0t1c9//nO99tprysvL0w033KB169aFbaaoLaeffrouu+wy3XHHHdq6dau2bt2qO+64Q1dccUXAlWSDBg3SmjVrJElVVVW666679P777+vLL7/Uxo0bdeWVVyozM1PXXHNNROsFAACxI6SbLjqdTv3gBz9QUVGRPvvsMw0ePFjTpk1Tfn6+qqqqIlWjJOlPf/qTzjzzTI0bN07jxo3TWWedpRdeeCFgm127dqm8vFySFB8frx07duiqq67Saaedpttuu02nnXaa3n//faWlpUW0VgAAEDs6fTVZ4x2dTdOU1+sNZ01B9ezZUytWrGh3m+YzVMnJyVq3bl2kywIAADEupJkhl8ulF198UQUFBRo4cKB27NihJUuWqKSkxP8THQAAALGkwzND06ZN00svvaS+ffvqhz/8oV566SX16tUrkrUBAABEXIfD0LJly9S3b1/1799fmzZt0qZNm4Ju98orr4StOAAAgEjrcBi69dZbI/ZzGwAAANES0k0XAQAAupqQTqAGAADoaghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1ghDAADA1mImDC1YsECjRo1SSkqKMjIyOrSPaZqaN2+e+vTpo+TkZI0ZM0affvppZAsFAAAxJWbCUF1dna6//nr95Cc/6fA+jzzyiBYtWqQlS5Zo27ZtysnJUUFBgSorKyNYKQAA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MWKEbrrpJhUXFxOEwuiCCy5odXuIf/3rX8rPz49SRV1TTU2N4uICvxrj4+O5tD6C+vfvr5ycnIDvxbq6Om3atMmy70VmhqJg9uzZuuWWWzRixAiNHDlSy5cvV0lJiaZOnRrt0rqMn/70p1q5cqX+8pe/KC0tzT8T1717dyUnJ0e5uq4jLS2t1XlY3bp1U69evTg/K8zuvPNOjRo1Sg8++KBuuOEGffDBB1q+fLmWL18e7dK6lCuvvFILFixQ3759NXjwYH388cdatGiRpkyZEu3SYlpVVZX+/e9/+5d3796t4uJi9ezZU3379tWsWbP04IMP6tRTT9Wpp56qBx98UCkpKZo0aZI1BVpyzRpaeeKJJ8z8/HwzMTHRHDZsGJd8h5mkoI9nn3022qV1eVxaHzmvvfaaOWTIENPpdJqDBg0yly9fHu2SupyKigpz5syZZt++fc2kpCRzwIAB5i9/+UvT5XJFu7SY9s477wT9O/m2224zTdN3ef39999v5uTkmE6n07z44ovNHTt2WFafYZqmaU3sAgAAOPFwzhAAALA1whAAALA1whAAALA1whAAALA1whAAALA1whAAALA1whAAALA1whAAALA1whAAALA1whCAmFVWVqYf//jH6tu3r5xOp3JycnTppZfq/ffflyQZhqFXX301ukUCOOHxQ60AYtZ1110nt9ut5557TgMGDNC3336rDRs26NChQ9EuDUAMYWYIQEw6cuSI3n33XT388MMaO3as8vPzde6552rOnDm6/PLL1a9fP0nSNddcI8Mw/MuS9Nprr2n48OFKSkrSgAEDNH/+fNXX1/vXG4ahpUuXavz48UpOTlb//v318ssv+9fX1dVp+vTpys3NVVJSkvr166eFCxda9dEBhBlhCEBMSk1NVWpqql599VW5XK5W67dt2yZJevbZZ1VaWupfXrdunW6++WbNmDFDn332mZ566ikVFhZqwYIFAfvfd999uu666/SPf/xDN998s37wgx9o586dkqTHH39ca9eu1f/8z/9o165dWrFiRUDYAhBb+NV6ADFr9erVuuOOO3T06FENGzZMo0eP1sSJE3XWWWdJ8s3wrFmzRldffbV/n4svvljjx4/XnDlz/G0rVqzQ3Xffrb179/r3mzp1qpYuXerf5vzzz9ewYcP05JNPasaMGfr000/1t7/9TYZhWPNhAUQMM0MAYtZ1112nvXv3au3atbr00ku1ceNGDRs2TIWFhW3us337dj3wwAP+maXU1FTdcccdKi0tVU1NjX+7kSNHBuw3cuRI/8zQ5MmTVVxcrIEDB2rGjBlav359RD4fAGsQhgDEtKSkJBUUFGju3LnasmWLJk+erPvvv7/N7b1er+bPn6/i4mL/Y8eOHfr888+VlJTU7ns1zgINGzZMu3fv1q9+9SsdPXpUN9xwg77//e+H9XMBsA5hCECXcsYZZ6i6ulqS5HA45PF4AtYPGzZMu3bt0imnnNLqERfX9Ffi1q1bA/bbunWrBg0a5F9OT0/XjTfeqD/84Q9atWqVVq9ezVVsQIzi0noAMengwYO6/vrrNWXKFJ111llKS0vThx9+qEceeURXXXWVJKlfv37asGGDLrjgAjmdTvXo0UNz587VFVdcoby8PF1//fWKi4vTJ598oh07dujXv/61v/+XX35ZI0aM0IUXXqg//elP+uCDD/T0009Lkh599FHl5ubqnHPOUVxcnF5++WXl5OQoIyMjGkMB4HiZABCDamtrzXvuucccNmyY2b17dzMlJcUcOHCgee+995o1NTWmaZrm2rVrzVNOOcVMSEgw8/Pz/fu+9dZb5qhRo8zk5GQzPT3dPPfcc83ly5f710syn3jiCbOgoMB0Op1mfn6++eKLL/rXL1++3DznnHPMbt26menp6eYll1xifvTRR5Z9dgDhxdVkANBCsKvQAHRdnDMEAABsjTAEAABsjROoAaAFzh4A7IWZIQAAYGuEIQAAYGuEIQAAYGuEIQAAYGuEIQAAYGuEIQAAYGuEIQAAYGuEIQAAYGv/D61/zSxNk5HiAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Make sure that the magnetic moments were stable\n", + "\n", + "plt.xlabel(\"Steps\")\n", + "plt.ylabel(\"Magnetic moment\")\n", + "plt.grid()\n", + "plt.plot(spx_af.output.generic.dft.atom_scf_spins[0]);" + ] + }, + { + "cell_type": "markdown", + "id": "61269c23", + "metadata": {}, + "source": [ + "### Third case: double layer anti-ferromagnetic structure\n", + "\n", + "First of all, we need to repeat the structure in one direction, in order to make it possible to create a double layer structure. Here, we repeat the structure along the $z$-direction" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "6266935a", + "metadata": {}, + "outputs": [], + "source": [ + "structure_daf = bulk.repeat([1, 1, 2])" + ] + }, + { + "cell_type": "markdown", + "id": "356da208", + "metadata": {}, + "source": [ + "There are several ways to make a double layer structure. One is to count the layers in the structure along the direction of " + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "200729c0", + "metadata": {}, + "outputs": [], + "source": [ + "m = np.array(len(structure_daf) * [2])\n", + "layers = structure_daf.analyse.get_layers(planes=[0, 0, 1])\n", + "m[layers < 2] *= -1" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "3683ecbb", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setitem__ called on , but object is locked!\n", + " warnings.warn(\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:59: LockedWarning: __setattr__ called on , but object is locked!\n", + " warnings.warn(\n", + "2024-06-07 19:06:43,049 - pyiron_log - WARNING - The job d_antiferro is being loaded instead of running. To re-run use the argument 'delete_existing_job=True in create_job'\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:97: UserWarning: Unlock previously locked object!\n", + " self.owner.read_only = False\n", + "/home/jovyan/dev/pyiron_base/pyiron_base/interfaces/lockable.py:320: UserWarning: Unlock previously locked object!\n", + " it.read_only = False\n" + ] + } + ], + "source": [ + "spx_adf = pr.create.job.Sphinx(\"d_antiferro\")\n", + "spx_adf.structure = structure_daf.copy()\n", + "spx_adf.structure.set_initial_magnetic_moments(m)\n", + "spx_adf.set_encut(500)\n", + "spx_adf.set_kpoints(k_mesh_spacing=0.15)\n", + "spx_adf.run()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "b1245af5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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bNdeWFiI8vLyqBVGREREFImIR2oURUEwGOzQfvjwYdjt9qgURURERBSpiEPNlClT8Mc//jE8L0kSmpubMX/+fD46gYiIiPpNxB8/PfPMM5g8eTJGjBgBj8eDmTNnYu/evUhLS8Prr78eixqJiIiIehRxqMnJycG2bdvw+uuvY8uWLVAUBTfffDNuuOGGdicOExEREZ1IEYcaALBYLJgzZw7mzJkT7XqIiIiI+qRPoaa8vBybNm1CVVUVFEVpt2zu3LlRKYyIiIgoEn16TMKtt94Ko9GI1NRUSJIUXiZJEkMNERER9YuIQ828efMwb9483H///ZDlPj1lgYiIiCjqIk4lbrcbM2bMYKAhIiKiASXiZHLzzTdj2bJlsaiFiIiIqM8i/vjp0UcfxWWXXYb3338fo0ePhsFgaLf86aefjlpxRERERL0Vcaj5wx/+gNWrV6OkpAQAOpwoTERERNQfIg41Tz/9NF566SXMnj07BuUQERER9U3E59SYTCacffbZsaiFiIiIqM8iDjV33XUX/vKXv8SiFiIiIqI+i/jjpy+//BLr1q3Du+++i5EjR3Y4UXj58uVRK46IiIiotyIONUlJSbj66qtjUQsRERFRn/XpMQlEREREA02fHmgJANXV1dizZw8kScLJJ5+M9PT0aNZFREREFJGITxR2uVyYM2cOsrOzcd555+Hcc89FTk4Obr75Zrjd7ljUSERERNSjiEPNPffcg40bN+Kdd95BQ0MDGhoa8O9//xsbN27EvffeG4saiYiIiHoU8cdPb731Fv71r3/hggsuCLddeumlsFgsuO6667Bo0aJo1kdERETUK316SndmZmaH9oyMDH78RERERP0m4lAzceJEzJ8/Hx6PJ9zW0tKChQsXYuLEiVEtjoiIiKi3Iv746U9/+hMuueQS5OXl4dRTT4UkSdi2bRvMZjNWr14dixqJiIiIehRxqBk1ahT27t2LV199Fbt374YQAjNmzMANN9wAi8USixqJiIiIetSn+9RYLBbccsst0a6FiIiIqM/6FGrKy8uxadMmVFVVQVGUdsvmzp0blcKIiIiIItGnxyTceuutMBqNSE1NhSRJ4WWSJDHUEBERUb+IONTMmzcP8+bNw/333w9ZjvjiKSIiIqKY6NN9ambMmMFAQ0RERANKxMnk5ptvxrJly2JRCxEREVGfRfzx06OPPorLLrsM77//PkaPHg2DwdBu+dNPPx214oiIiIh6K+JQ84c//AGrV69GSUkJAHQ4UZiIiIioP0Qcap5++mm89NJLmD17dgzKISIiIuqbiM+pMZlMOPvss2NRCxEREVGfRRxq7rrrLvzlL3+JRS1EREREfRbxx09ffvkl1q1bh3fffRcjR47scKLw8uXLo1YcERERUW9FHGqSkpJw9dVXx6IWIiIioj7r02MSiIiIiAYa3haYiIiINIGhhoiIiDQh7kLNc889hyFDhsBsNmP8+PH4+OOP+7skIiIiGgDiKtS8+eabuPvuu/HAAw9g69atOPfcczFt2jSUlZX1d2lERETUzyI+Ubg/Pf3007j55pvxq1/9CgDwxz/+EatXr8aiRYvw6KOPdljf6/XC6/WG551OJwDA7/fD7/dHra7WfUVznwPZYOov+6pdg6m/7Kt2DZb+9rZ/khBCRLLjuXPnYtiwYZg7d2679meffRb79u3DH//4x0h212s+nw9WqxXLli3DVVddFW6/6667sG3bNmzcuLHDNgsWLMDChQs7tL/22muwWq0xqZOIiIiiy+12Y+bMmWhsbITD4ehyvYhDTW5uLlauXInx48e3a9+yZQuuuOIKHD58uG8V96CiogK5ubnYtGkTJk2aFG7/wx/+gJdffhl79uzpsE1nIzX5+fmoqanp9psSKb/fjzVr1mDKlCkdbkaoRYOpv+yrdg2m/rKv2jVY+ut0OpGWltZjqIn446fa2lokJiZ2aHc4HKipqYl0dxE7/kngQogunw5uMplgMpk6tBsMhpgc/Fjtd6AaTP1lX7VrMPWXfdUurfe3t32L+EThYcOG4f333+/Q/p///AfFxcWR7q7X0tLSoNPpcOTIkXbtVVVVyMzMjNnXJSIiovgQ8UjNPffcgzvvvBPV1dW48MILAQBr167FU089FbPzaQDAaDRi/PjxWLNmTbtzatasWYPp06fH7OsSERFRfIg41MyZMwderxePPPIIHn74YQBAUVERFi1ahF/84hdRL7Cte+65B7NmzcKECRMwceJELF68GGVlZbj11ltj+nWJiIho4OvTJd233XYbbrvtNlRXV8NiscBms0W7rk5df/31qK2txe9+9ztUVlZi1KhRWLVqFQoLC0/I1yciIqKB60fdpyY9PT1adfTa7bffjttvv/2Ef10iIiIa2HoVasaNG4e1a9ciOTkZY8eO7fJqI0C9tJuIiIjoROtVqJk+fXr40ujp06d3G2qIiIiI+kOvQs38+fPD7xcsWBCrWoiIiIj6LOL71BQXF6O2trZDe0NDQ0zvU0NERETUnYhDzYEDBxAMBju0e73emD0igYiIiKgnvb76aeXKleH3q1evbveohGAwiLVr12LIkCHRrY6IiIiol3odaq688koA6rOXbrrppnbLDAYDioqK8NRTT0W1OCIiIqLe6nWoURQFADBkyBBs3rwZaWlpMSuKiIiIKFIR33yvtLQ0/N7j8cBsNke1ICIiIqK+iPhEYUVR8PDDDyM3Nxc2mw379+8HADz00EN48cUXo14gERERUW9EHGp+//vfY+nSpXjiiSdgNBrD7aNHj8bf//73qBZHRERE1FsRh5pXXnkFixcvxg033ACdThduHzNmDHbv3h3V4oiIiIh6K+JQU15ejmHDhnVoVxQFfr8/KkURERERRSriUDNy5Eh8/PHHHdqXLVuGsWPHRqUoIiIiokhFfPXT/PnzMWvWLJSXl0NRFCxfvhx79uzBK6+8gnfffTcWNRIRERH1KOKRmssvvxxvvvkmVq1aBUmSMG/ePOzatQvvvPMOpkyZEosaiYiIiHoU8UgNAFx88cW4+OKLo10LERERUZ/1KdQAgM/nQ1VVVfhOw60KCgp+dFFEREREkYo41Ozduxdz5szBp59+2q5dCAFJkjp9gjcRERFRrEUcambPng29Xo93330X2dnZkCQpFnURERERRSTiULNt2zZ8/fXXGD58eCzqISIiIuqTiK9+GjFiBGpqamJRCxEREVGfRRxqHn/8cfzmN7/Bhg0bUFtbC6fT2e5FRERE1B8i/vjpJz/5CQDgoosuatfOE4WJiIioP0UcatavXx+LOoiIiIh+lIhDzfnnnx+LOoiIiIh+lIhDzfbt2zttlyQJZrMZBQUFMJlMP7owIiIiokhEHGpOO+20bu9NYzAYcP311+OFF16A2Wz+UcURERER9VbEVz+tWLECJ510EhYvXoxt27Zh69atWLx4MUpKSvDaa6/hxRdfxLp16/Dggw/Gol4iIiKiTkU8UvPII4/gT3/6U7sHWo4ZMwZ5eXl46KGH8OWXXyIhIQH33nsvnnzyyagWS0RERNSViEdqduzYgcLCwg7thYWF2LFjBwD1I6rKysofXx0RERFRL0UcaoYPH47HHnsMPp8v3Ob3+/HYY4+FH51QXl6OzMzM6FVJRERE1IOIP37661//iiuuuAJ5eXkYM2YMJEnC9u3bEQwG8e677wIA9u/fj9tvvz3qxRIRERF1JeJQM2nSJBw4cACvvvoqvv/+ewgh8LOf/QwzZ86E3W4HAMyaNSvqhRIRERF1J+JQAwA2mw233nprtGshIiIi6rM+hRoA2LlzJ8rKytqdWwMAV1xxxY8uioiIiChSEYea/fv346qrrsKOHTsgSRKEEAAQviEfH2hJRERE/SHiq5/uuusuDBkyBEePHoXVasV3332Hjz76CBMmTMCGDRtiUCIRERFRzyIeqfnss8+wbt06pKenQ5ZlyLKMc845B48++ijmzp2LrVu3xqJOIiIiom5FPFITDAZhs9kAAGlpaaioqACg3nxvz5490a2OiIiIqJciHqkZNWoUtm/fjuLiYpx55pl44oknYDQasXjxYhQXF8eiRiIiIqIeRRxqHnzwQbhcLgDA73//e1x22WU499xzkZqaijfffDPqBRIRERH1RsShpu2DLIuLi7Fz507U1dUhOTk5fAUUERER0YnW5/vUtJWSkhKN3RARERH1Wa9DzZw5c3q13ksvvdTnYoiIiIj6qtehZunSpSgsLMTYsWPDN9wjIiIiGih6HWpuvfVWvPHGG9i/fz/mzJmDG2+8kR87ERER0YDR6/vUPPfcc6isrMRvf/tbvPPOO8jPz8d1112H1atXc+SGiIiI+l1EN98zmUz4+c9/jjVr1mDnzp0YOXIkbr/9dhQWFqK5uTlWNRIRERH1KOI7CreSJCn8QEtFUaJZExEREVHEIgo1Xq8Xr7/+OqZMmYKSkhLs2LEDzz77LMrKysKPTiAiIiLqD70+Ufj222/HG2+8gYKCAvzyl7/EG2+8gdTU1FjWRkRERNRrvQ41zz//PAoKCjBkyBBs3LgRGzdu7HS95cuXR604IiIiot7qdaj5xS9+wccgEBER0YAV0c33iIiIiAaqPl/9RERERDSQMNQQERGRJjDUEBERkSYw1BAREZEmMNQQERGRJjDUEBERkSYw1BAREZEmMNQQERGRJjDUEBERkSYw1BAREZEmMNQQERGRJsRNqHnkkUcwadIkWK1WJCUl9Xc5RERENMDETajx+Xy49tprcdttt/V3KURERDQA9fop3f1t4cKFAPi0cCIiIupc3ISavvB6vfB6veF5p9MJAPD7/fD7/VH7Oq37iuY+B7LB1F/2VbsGU3/ZV+0aLP3tbf8kIYSIcS1RtXTpUtx9991oaGjocd0FCxaER3jaeu2112C1WmNQHREREUWb2+3GzJkz0djYCIfD0eV6/TpS01XoaGvz5s2YMGFCn/Z///3345577gnPO51O5OfnY+rUqd1+UyLl9/uxZs0aTJkyBQaDIWr7HagGU3/ZV+0aTP1lX7VrsPS39ZOWnvRrqLnzzjsxY8aMbtcpKirq8/5NJhNMJlOHdoPBEJODH6v9DlSDqb/sq3YNpv6yr9ql9f72tm/9GmrS0tKQlpbWnyUQERGRRsTNicJlZWWoq6tDWVkZgsEgtm3bBgAYNmwYbDZb/xZHRERE/S5uQs28efPw8ssvh+fHjh0LAFi/fj0uuOCCfqqKiIiIBoq4ufne0qVLIYTo8GKgISIiIiCOQg0RERFRdxhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqIiIhIExhqiIiISBMYaoiIiEgTGGqi4NsP/wGx/0OU7/wcIuDr73KIiIgGJX1/F6AFum2v4Erv18CKV9CywoRDluHwZk1AyvBzkD3yPMi2tP4ukYiISPMYaqLAmXsuviz1o0T5AYmSCye3fAOUfgOUvgj8BzhqyIUzbSwShk5C1sjzIGeOAGRdf5dNRESkKQw1UXDmzx/EqlXjMOInU7B9z3ZU7foYuvKvkO/agWFSOTL95cisLAcq3wU+AVokK2qTRkNfdBbSh58DXcEZgCWpv7tBREQU1xhqoshkNGDMuLOAcWcBAHwBBdv2l+Hwjo0IHPwCmY3fYDT2wQY38uq/AOq/ALb+CQBQZy1GMO8MJJ98NvSFZwKpJwEyT3kiIiLqLYaaGDLqZZx2chFOO7kIwE0IBBXsLK/H3m83w/3Dp0is3YrRyh4MkY8ixb0f+H4/8P0bAACP3gFP5lgkDDsbhsIzgbzTAWNCv/aHiIhoIGOoOYH0OhljClIxpuASAJcgqAjsPuLEa7v3oeH7TTAf3YKRwV0YI+2HJeCEuXwjUL4RAODV2eCeeC+SL7gT0Bv7tyNEREQDEENNP9LJEkbmJGJkznjgwvFQFIF91c14a98RHN7zFXSHN+Nk/y6cLu9GTrAOpk8WouKzv2PPqb/FaRfOQLLN1N9dICIiGjAYagYQWZZwcqYdJ2fagbNPghAzUFrjwsYfquH64mVMr3sJOcFy5GyZi01fLcaagrtwxpnn4sLhGTAbeDVVtAkhUNvsRYMXaPEFodfrIUlSf5dFRERdYKgZwCRJQnG6DcXpNuCsBaiqvgPb3n0EIw/+/zhb/hZnHfovvH7gQkzV/xyTRpfgyrG5OKMoBbLMX7y9FQgqqGz04GCtGwfrXCirdeNArQsHa904VOeGyxcEoMf8LWth1MtItBiQZDEgyWpAosWozlvVtkSrITRvVOdDy+xmA3Q8JkREMcdQE0cy0tOR8cs/AvV3o+md/4V9/3u4Ub8WV4jP8OctV2HW5ouRnmjD9LG5uGpsrjriQ/D4gyirc6vBJRRYDta5UVbrwuH6FgQU0eW2kgRIEFCEBF9AQXWTF9VN3oi+viQBdpNeDTuh4JMYDkYGWAw6GPUyjDoZRn3ofWjepJdh0Mnt2ox6tb3tvFEvQy9LHEkiokGNoSYeJRfB/ovXgAObIN6/D44j2/Gg4R+YZViLh5tuwKIN47Boww8Yke3A1eNyccWpOchwmPu76phqcPvCYeVgjSsUWtTRl6PO7kOIUS8jP9mCwtQEFKZaUZhiRWFqAgpSrci0GfDh6vdxwU+mwhUAGt1+NLT4QlM/Gtx+NLb40djiQ4O77bwfDW4fXL4ghACcngCcngDK6mL3PZAkqCGnTdCxGHTITjIjN8mCvGQr8pIt6vsUKzLtJuh1vG0AEWkHQ008Kzob0n9tAL55HVj7OxQ2H8HfjU9hp2UcfuO8Dt9WFmDne078YdUunD0sDVeelotLRmUhwRSfh90XUFBW58K+Khd+qG4OvVworW6G0xPodlu7WY+iUFBRQ4sVBSlqiMlymLv8yM7v90OSgASTHkk2A3KTLBHX7PS0hh1fOPQ0hEJRo9sHj1+BL6jAF1DgDSjwh963trV97w0o8AWC4fm2g0xCAN7QOmiT4/bXuDqtTSdLyE40h4KOFTmJRtRWSUjZX4eidDuyEs0wMPQQURyJz99udIysA8beCIyYDnz8NPDZXzGiZQveMW7D3rxr8Kjnaqw/JPDx3hp8vLcGD779LaaOzMSVY3Nx7rC0AfmXeoPbhx+q2wSXKhf2VzfjYJ0bwW4+Ksp0mFCYciy4FKSqIy6FKVYkWQ398tGMUS8jzWZCWoyuVAsEFfiDQg08wWCHEOTyBlHZ2ILD9S04XO9GeYP6vqKhBf6gCLW3AGgdQtLhtR++AgDIEpDlMCMv2YrcZAvyQq/cJHXEJzvJDJOeJ6gT0cDBUKMVJjvwk/nA+JuANfMh7XwbJx9ahiWm1ai/6C68hmn41zfVKK1x4d/bKvDvbRVIsxlx2ZgcXDU2F6NyE0/oyaxBRaC8vqXNiEsovNQ0o6a56yed20x6DE1PwNB0G4rDUxsKUqywGAffL1i9ToZeh1DfDb3eTlEEqpq87YJOWa0L3+wtg1dvQ3mjB76AgopGDyoaPcCBjvuQJCDTbkZhqhVFqQkoTAtNQ2HSFqcjgkQUv/hfHa1JLgKuexk4+Cnw/n1A5TdI3vQw7kh+Fbf/9Pf4JuFsvL2tAu98U4GaZh+WfnoASz89AAAw6CSY9TqYDDqYDer5GObQe7NBB5NefW/SSzhaLmP7+3tgNRlCy2RYjDqY9e23scIDk6sCVfWNKK9tRmV9MyobmlHV6IIIBqCDAh2C0COIVCjIRBA6WUGqVYdsux6ZNgMybDpkJOiQlmCAzQBISgBQgoASAI4GgCoZMCeqz8+yJAPmJPV969RoU38DU5gsS8hKNCMr0YwJoTa/349Vqw7g0kvPgU6nR43Li/L6lvBoTnmDW52G5lv8QRxxenDE6cEXpR1PFkqzmVAUCjhFqVYUpoWmKQlItPY+gBER9VZchJoDBw7g4Ycfxrp163DkyBHk5OTgxhtvxAMPPACjkXfX7VThJOCWDaHzbRYC9aWQ3rwBpw05D6dd/Cge+OlF+GRvDZZvLceanUfg8asfY/iDATR5uz8/RSXjk6MHAQASFORKtSiWKjBEOoJiqQLFUiWK5ErkSrUAgBHHb64LvboSAFAfev1Ysr5j0Oks/HTWFsHoh5bIsoQMuxkZdjPGFiR3WC6EQJ3Lh7I6N8rq3DhQo15Z1no5fK3Lh5pmL2qavfjqYMeDmGw1HDsxuzX0hKYpCUZexUVEfRIXoWb37t1QFAUvvPAChg0bhm+//Ra33HILXC4Xnnzyyf4ub+CSZWDsDcCIK4BPngE+fRYo/Qh44VwYxv0Ckyc/iMnDx8IfVNDsCcATCMLjV+DxB9HiD8LjD8IbmvcEggi6G2Fs+AGWxv3wH9qCIrMTKS1lSPUegkF0/ZGREwnwyxbIOj10ej30egP0BgMMBgMkWQ9IOjV4yHr1HKEO79u0Sbrj1tGrIzaeRsDTALQ0hKb16nvFry5316ivCOl1RvxElwhd06tA1kgg/RQg4xQg7WTAoO0ryrojSRJSbSak2kydhh6nx9/unj8HakLTWheqmryod/tR727AtkMNHba1m/QoTFNDTpLlWKhsm3MkSJ20ta+vY83HbS8UtFRJGFXnRnGGg0GKSAPiItRccskluOSSS8LzxcXF2LNnDxYtWsRQ0xsmO3DRPGDcTcCH84HvVgBfLwW+XQ6c9//BcOatSE4IncgaDAANBwHnXqB2L1CzF6jdp05dVe3329LmvWwAUoqBtJOA1GGh6UlA2klwWFNOVE/bEwLwu9sEnQY17LQLPw3tQ1DbNiUAKehDQrAa2PeB+molyUDyEDXgZJwCpA8HMkaofeezueAwGzAqNxGjchM7LHN5A6H7BrlwIHTvoNaRnopGD5q8AXxb7sS35c4TUKkOrz/zCbIcZpwxJAVnFqfgzCEpGJpuY8ghikNxEWo609jYiJSU7n9Zer1eeL3Hrm11OtX/SPr9fvj9/qjV0rqvaO4zJmw5wJV/gzT+ZsgfPAD5yDfAmnkQXy2BSB8OqXYfUH8AktJ1P0RCBpSUoTjkNiNnzHmQ00sgUocBSQXqqEln+vP7IhkBa4b6ioQQgK8ZgeYafP3hCpxRZIOubi+kmt2QqndDaqkH6n5QX7vfPbaZrAdSiiHST4FIK4FIHw6RfgqQMqTr788AcaL+HRtlYFiaBcPSOl4e7/EHcai+JXSPodY7OgMQrRP1jWh7KXvrtF2bOG67NstCMy0+Pz7eeQiHXDKOOD1Y+U0FVn5TAQBISTDg9MJknF6UjDOKUlCSaYvrO3XHzX+jomAw9RUYPP3tbf8kIUTX18gOUD/88APGjRuHp556Cr/61a+6XG/BggVYuHBhh/bXXnsNVqs1liUOfEJBft0mjKhYBnOgod2igGSEy5yFZlPoZc5GsykbzeZsBHSR3adFk4SAKdAIR8th2D3l4Zej5TAMSkunmwQlPZpN2Wiy5KLJnAenORdNljy4jOnqqA/1G18QONAs4QenhB+cwIEmCX7RPsBYdALFDoFhDoGhdoG8BGAA3g2BSLPcbjdmzpyJxsZGOByOLtfr11DTVehoa/PmzZgwYUJ4vqKiAueffz7OP/98/P3vf+92285GavLz81FTU9PtNyVSfr8fa9aswZQpU2AwxNmJpb5myNv/CQgFInWYOuriyOn2F21c9zdCEfVVCKCpUh3Jqd4FqXoPULMbUvUeSP7Ob4An9Gb1BGWDBdBbIQwW9VwdvUVtM7S2Wdq0WSDaLFeXmUPrWTus29vQNJiOK9B1f70BBd+WN2LzgXp8eaAeW8oajo0YhViNOozNT8IZRepozpi8RJj0AzflDKZjO5j6Cgye/jqdTqSlpfUYavp1PPzOO+/EjBkzul2nqKgo/L6iogKTJ0/GxIkTsXjx4h73bzKZYDJ1vOmZIXSSarTFar8xZUgGJv533zaNx/72Ua/7mlqovoZffKxNUYDGQ0D1bqBqJ1C1G6jeBVTvgRTwAE2V4VWj/gGHJAP2HCC5EEgq7Di1Z6snlLcxmI4r0LG/BgNw1rAMnDVM/cgyEFSws9KJL/bX4YvSOmw+UIfGFj82/VCLTT+oV/cZ9TLG5ifhzCEpOLM4FWMLkmA1DryPGwfTsR1MfQW039/e9q1ff+rS0tKQlpbWq3XLy8sxefJkjB8/HkuWLIEsD9y/iojakWU1RCQXAie3DTtBoKFMvXLL3wIEWtSpv0U9wbnTqaeTtjbvW/cR8KhfQyiA87D6OripY206I5CYDyQXQnbkY9jRFkg7fUBaMZBUBFhTBv09fvQ6GWPykjAmLwm3nFcMRRHYc7QJX5bW4cvSOnxRWouaZh++KFVDD9btg16WMCLHgZxECzIcJqTbTOrUbkKG3Yx0uwmpCcYBeUdvong28P6U6ERFRQUuuOACFBQU4Mknn0R1dXV4WVZWVj9WRvQjyDr1BOJYUIJqsPE0Ag2H1Cva6g8CDQdC04NAYzkQ9IVPeNYBGAkAK/55bD9Gu3oSeFcjPSZbbOofwGRZwinZDpyS7cBNk4oghMD+GpcacPbX4ovSOlQ2erD9cCO2H27scj+SBKQmGJFmMyHDYT4WfGyt4Sc0dZiRYNTxaiyiXoiLUPPBBx9g37592LdvH/Ly8toti8PznIliT9YBxgT15cgBCs7suE4woI7ghEJOsLYUFTs/Q641ALmxDGg+CviagKrv1FdnzImAKREwOwCTo5tpYvt5k119b7R3+Pir14QAfC7A6wS8TYDHeex9u7bW+fZtem8TLvIFoa/4v1AtNjWkGW1qfa3z4ff2TteRDBYMTbdhaLoNPz+jAEKoz9T6trwRVU1eVIdeVU0eVDd7UeVUb0qoCKCm2YeaZh92H2nqtqsWg6590LGbkJloDj95PS/ZgnSbicGHBr24CDWzZ8/G7Nmz+7sMIm3R6dXHaiQXAQAUvx9b3KuQdemlkA0G9WOshrJjIzv1B9qM+BwM3fAw9Op6QKIHkhoOugpEQmkTTI4LK74mdXnfvzJsAHD0aJ/3oe5IFwo6dsBkg2S0Id9kQ77RpoZKgwWwWYHk0EncxgQoeguaFSMaA3rU+w2o8cqo9upR1SKjskVGpVtCebOEiuYgmr3qzTBb797cFZNeDgUcK/JTLOHAk59sRabdAP79R4NBXIQaIuoHBguQXqK+OtPSoI7meJyAt/HYSInn+FERpxp82i7zONW7PUMcG0Xp6732JF0oCNnVUaPWUSCT/VhgMtlDo0XH2gKyCZ99shETx4+GPtgSCk3NgK9Zfe9rbj9/fJuvWf36Ings3PWSDMAReuV3u6IOwmFBUG9FQGeGTzLDK5ngFia4gzJaAgItfgUevwIFEtAgQTQAolSCgAQBoBwSDgMwQsKmb1+AxWiAxaiH1aSH1aiHxWhAgkkPg16GJOlC51BJ6gha2zt3H38n7w7zna8jJB0C0MEvZARD04CQ1Xs6tW6jC91dXKcHJLVd0h3bnyQbAJ0OkqyHpDNAkmRIUujO0NKx074kAIFAAN4g4PYFYII6Cti6rjpV7zgtS53feZriG0MNEfWNJSn0fKw+EEI95yccfDoJRR6n+kutXTBxtJkPvTdY+nQys/D7UWerhBh6kXrJU6QUBfC71JDjbVJHjsIhqFmdbz2R2+cKvQ9Nfe7jTvh2h9pC6yih56+JICRfM/S+ZugBdPlgjt4+oD4QenU94BN1EtQnqEXzuhxFSPBDhyB0CEA+bqrDGUKHI9v+F14Y1JcwwAvjcfPH2nyhdh+Mx95L6nu1zQifpK7nk0yQJBlGvQSTDJj0gEEGTDrAoANMMmDUqTeZNIbeG9rMG2QBgw4wSIBBJ9SpLGCQ1Ta9LCAhdANJoYRG2AQUAfXnRijqzSSFAIRAQFHgPlSGz/59COr9IUVokbq87bqt/4O6WttJhzfHn9ohOpnpal+nnHsV8otO+hFHuO8YaojoxJOkY/fRsUV4t+eBQpaPjfwgO7r7DvrbBKE2AahtW9AX/iUHiNCtkjufev1+fLV9J9JzCuD0BNHo9qLB7UNjiw+Nbh9c3gAkCMih8R11rEaBHgp0UhB6BKGDctw02Ga5cmwex60vtV9fjyAMUhA6iFBboN2+225vkIKdfntkScAUTmidOBEDMK1fuuvH3p1YDf1dwDE7CoYx1BARUYjO8ONGwo4j+/2oqVmFMy69tNP7fXj8QRyub8HhejcOhaaBoIDQy5B0MqCXodPJMOhlGHQyjPrQSyeFpjoYWt/rZRjbrBNeX6e+InrcRGtoUwKAEoAI+iCCQQglABH0QyhBiGAgtNwPEQwi4PPgi08/wRkTToVeBCH8HoigB/B7IAW86ghhwAMEvBChqdQ6DarLpYAXCLZvlwKe0NQLiACEpAMgQ0ihOChJENCF55VQTFSk1vcSlFC7IiQEW9+H5yUEhQw1oraePK9uJ0kIRU21TX2rzgtI8Pl8MBpNoQHLY5/HidB7qc378D7QSfaTOrzpQOppHQlITItyyI8AQw0R0SBnNugwLMOGYRkD7BJ9SVLPmZJ1AEyQkNDjIIzs96Pp26MwDbtA0zeja+X3+7Fq1Spc2kVgHWx45yciIiLSBIYaIiIi0gSGGiIiItIEhhoiIiLSBIYaIiIi0gSGGiIiItIEhhoiIiLSBIYaIiIi0gSGGiIiItIEhhoiIiLSBIYaIiIi0gSGGiIiItIEhhoiIiLSBIYaIiIi0gR9fxdwIgkhAABOpzOq+/X7/XC73XA6nYPi0e+Dqb/sq3YNpv6yr9o1WPrb+nu79fd4VwZVqGlqagIA5Ofn93MlREREFKmmpiYkJiZ2uVwSPcUeDVEUBRUVFbDb7ZAkKWr7dTqdyM/Px6FDh+BwOKK234FqMPWXfdWuwdRf9lW7Bkt/hRBoampCTk4OZLnrM2cG1UiNLMvIy8uL2f4dDoem/1EdbzD1l33VrsHUX/ZVuwZDf7sboWnFE4WJiIhIExhqiIiISBMYaqLAZDJh/vz5MJlM/V3KCTGY+su+atdg6i/7ql2Drb89GVQnChMREZF2caSGiIiINIGhhoiIiDSBoYaIiIg0gaGGiIiINIGhppeee+45DBkyBGazGePHj8fHH3/c7fobN27E+PHjYTabUVxcjOeff/4EVfrjPProozj99NNht9uRkZGBK6+8Env27Ol2mw0bNkCSpA6v3bt3n6Cq+2bBggUdas7Kyup2m3g9rkVFRZ0eozvuuKPT9ePtmH700Ue4/PLLkZOTA0mS8Pbbb7dbLoTAggULkJOTA4vFggsuuADfffddj/t96623MGLECJhMJowYMQIrVqyIUQ96r7u++v1+/Pa3v8Xo0aORkJCAnJwc/OIXv0BFRUW3+1y6dGmnx9vj8cS4N93r6bjOnj27Q81nnXVWj/sdiMcV6Lm/nR0jSZLwf//3f13uc6Ae21hhqOmFN998E3fffTceeOABbN26Feeeey6mTZuGsrKyTtcvLS3FpZdeinPPPRdbt27F//7v/2Lu3Ll46623TnDlkdu4cSPuuOMOfP7551izZg0CgQCmTp0Kl8vV47Z79uxBZWVl+HXSSSedgIp/nJEjR7areceOHV2uG8/HdfPmze36uWbNGgDAtdde2+128XJMXS4XTj31VDz77LOdLn/iiSfw9NNP49lnn8XmzZuRlZWFKVOmhJ8H15nPPvsM119/PWbNmoVvvvkGs2bNwnXXXYcvvvgiVt3ole766na7sWXLFjz00EPYsmULli9fju+//x5XXHFFj/t1OBztjnVlZSXMZnMsutBrPR1XALjkkkva1bxq1apu9zlQjyvQc3+PPz4vvfQSJEnCNddc0+1+B+KxjRlBPTrjjDPErbfe2q5t+PDh4r777ut0/d/85jdi+PDh7dr++7//W5x11lkxqzFWqqqqBACxcePGLtdZv369ACDq6+tPXGFRMH/+fHHqqaf2en0tHde77rpLDB06VCiK0unyeD2mQggBQKxYsSI8ryiKyMrKEo899li4zePxiMTERPH88893uZ/rrrtOXHLJJe3aLr74YjFjxoyo19xXx/e1M19++aUA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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Again, make sure that the magnetic moments were stable\n", + "\n", + "plt.xlabel(\"Steps\")\n", + "plt.ylabel(\"Magnetic moment\")\n", + "plt.grid()\n", + "plt.plot(spx_adf.output.generic.dft.atom_scf_spins[0]);" + ] + }, + { + "cell_type": "markdown", + "id": "f418b225-1c08-4a41-9507-26fcb172fac7", + "metadata": {}, + "source": [ + "### Last case: Non-magnetic\n", + "\n", + "Let's take also a non-magnetic one into account" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "76b937b3-4688-4f08-a7b2-c0f03ee11630", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2024-06-07 19:06:47,713 - pyiron_log - WARNING - The job nonmag is being loaded instead of running. To re-run use the argument 'delete_existing_job=True in create_job'\n" + ] + } + ], + "source": [ + "spx_n = pr.create.job.Sphinx(\"nonmag\")\n", + "spx_n.structure = bulk.copy()\n", + "spx_n.set_encut(500)\n", + "spx_n.set_kpoints(k_mesh_spacing=0.15)\n", + "spx_n.run()" + ] + }, + { + "cell_type": "markdown", + "id": "ca50aded", + "metadata": {}, + "source": [ + "## Evaluation of results\n", + "\n", + "In the following, we are going to obtain the $J_{ij}$ parameters by fitting the DFT results to our model. First, let's come back to the Heisenberg model:\n", + "\n", + "$$\\mathcal H = -\\frac{1}{2}\\sum_{ij} J_{ij}m_im_j$$\n", + "\n", + "This equation can be rewritten as:\n", + "\n", + "$$\\mathcal H = -\\frac{1}{2}\\sum_s J_s\\sum_{ij} D_{s,ij}m_im_j$$\n", + "\n", + "where $J_s$ is the Heisenberg parameter for the shell $s$ and the shell matrix $D_{s,ij}$ is defined as:\n", + "\n", + "\\begin{align}\n", + "D_{s,ij} =\n", + "\\begin{cases}\n", + "1 & \\text{if $i$ and $j$ are neighbors of shell $s$}\\\\\n", + "0 & \\text{else}\n", + "\\end{cases}\n", + "\\end{align}\n", + "\n", + "$D_{s,ij}$ can be obtained from `get_shell_matrix` in the `Neighbors` class in pyiron. It returns all the shell matrices in a list." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "05151e81", + "metadata": {}, + "outputs": [], + "source": [ + "class EvaluateJob:\n", + " def __init__(self, job, n_shells=2):\n", + " self.ref_job = job\n", + " self.n_shells = n_shells\n", + "\n", + " @property\n", + " def _neighbors(self):\n", + " return self.ref_job.structure.get_neighbors(\n", + " num_neighbors=100\n", + " )\n", + " \n", + " @property\n", + " def _shell_matrices(self):\n", + " return self._neighbors.get_shell_matrix()[:self.n_shells]\n", + "\n", + " @property\n", + " def _magmoms(self):\n", + " if \"atom_spins\" in job[\"output/generic/dft\"]:\n", + " return self.ref_job.output.generic.dft.atom_spins[-1]\n", + " else:\n", + " return np.array(len(self.ref_job.structure) * [0])\n", + " \n", + " @property\n", + " def values(self):\n", + " m = self._magmoms\n", + " # len(m) is required to intercept the per-atom energy\n", + " J = [-mat.dot(m).dot(m) / 2 for mat in self._shell_matrices]\n", + " A = [np.sum(m**ii) for ii in [2, 4, 6]]\n", + " return np.array(J + A)\n", + "\n", + " @property\n", + " def derivatives(self):\n", + " m = self._magmoms\n", + " dJ = [-ss.dot(m) for ss in self._shell_matrices]\n", + " dA = [ii * m**(ii - 1) for ii in [2, 4, 6]]\n", + " return np.array(dJ + dA).T" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "86177998", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "413c8a0da60241ebba9e895af248442b", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/3 [00:00, but object is locked!\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "job_nonmag = pr.load(\"nonmag\")\n", + "\n", + "E_nonmag = job_nonmag[\"output/generic/energy_pot\"][-1] / len(job_nonmag.structure)\n", + "\n", + "x_lst, y_lst = [], []\n", + "for job in pr.iter_jobs(job=\"^(?!nonmag$)\", mode=\"regex\"):\n", + " ej = EvaluateJob(job)\n", + " x_lst.append(ej.values / len(job.structure))\n", + " y_lst.append(job.output.energy_pot[-1] / len(job.structure) - E_nonmag)\n", + " x_lst.append(ej.derivatives[0])\n", + " y_lst.append(0)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "2dcc7527-8b05-427f-ac8b-098a4ae5a980", + "metadata": {}, + "outputs": [], + "source": [ + "x_lst = np.array(x_lst)[:4,[0, 2, 3]]\n", + "y_lst = y_lst[:4]" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "7280b36a", + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.linear_model import LinearRegression" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "53914f3e", + "metadata": {}, + "outputs": [], + "source": [ + "reg = LinearRegression(fit_intercept=False).fit(x_lst, y_lst)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "800811f8-d192-4d5d-b921-768f679c336a", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "m = np.linspace(-3, 3, 1000)\n", + "plt.ylabel(\"Energy eV\")\n", + "plt.xlabel(\"Magnetic moment\")\n", + "plt.grid()\n", + "plt.plot(m, reg.coef_[1] * m**2 + reg.coef_[2] * m**4);" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "4ada1b24-37c4-48aa-b696-22f8c0e753b7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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jN9//90RMV2Ovea6evVqAzD27t3riJgu51rnmpqaagBGUlKSA1OWfm3btjUefvjhfNsaNmxojB07ttD9n376aaNhw4b5tj300ENG+/btHZbRMAxDR4Zc3IoVKzCbzbRr1y5vW/v27TGbzSxfvvyyt128eDEhISHUr1+fYcOGcfToUUfHdRlXO1ebzUZsbCyjR4+mSZMmJRHVZVzLc/WinJwc/ve//2E2m2nRooWjoroUe8wVID09HZPJRIUKFRyQ0vXYa67uLCcnh3Xr1hEdHZ1ve3R09CVnuGLFigL7d+3albVr12KxWByWVWXIxaWlpRESElJge0hICGlpaZe8Xffu3Zk1axaLFi3irbfeYs2aNdx6661kZ2c7Mq7LuNq5vvbaa3h5eREXF+fIeC7pamcK8PPPP1O+fHn8/Px45513SEhIIDg42FFRXcq1zPWirKwsxo4dS0xMjD6A9P+zx1zd3fHjx7FarYSGhubbHhoaeskZpqWlFbp/bm4ux48fd1hWlaFSasKECQVOcP73n7Vr1wJgMpkK3N4wjEK3XzRgwAB69uxJ06ZNue222/j111/Zvn07v/zyi8MeU2ngyLmuW7eOKVOm8Omnn1529mWNo5+rALfccgvJycksX76cbt260b9//zJ/JLMk5goXTqYeOHAgNpuN9957z+6Po7QpqbnK//n3vK40w8L2L2y7PXk57J7lmgwfPpyBAwdedp9atWqRkpLCkSNHClx37NixAu36csLCwqhZsyY7duwodlZX4si5LlmyhKNHj1KjRo28bVarlSeffJLJkyezZ8+ea8peWpXEczUgIIC6detSt25d2rdvT7169fj4448ZN27cNWUvzUpirhaLhf79+5OamsqiRYvc4qhQSf9sdWfBwcF4enoWOAp09OjRS86watWqhe7v5eVF5cqVHZZVZaiUCg4OLtIyQFRUFOnp6axevZq2bdsCsGrVKtLT0+nQoUORv9+JEyfYv38/YWFhV53ZFThyrrGxsXTu3Dnftq5duxIbG8t999137eFLqZJ+rsKF/ymW9SVdR8/1YhHasWMHf/75p0N/0ZQmzni+uisfHx9at25NQkICffv2zduekJBAnz59Cr1NVFQUP/30U75tCxcupE2bNnh7ezsurENPz5YS0a1bN6N58+bGihUrjBUrVhjNmjUzevXqlW+fBg0aGPPn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OC+RskRlSMQN3X///QwfPhyA6dOnF7jeZrMB8Msvv1CtWrV81/n6+gLw1VdfMXLkSN566y2ioqIIDAzkjTfeYNWqVXn7zpw5k7i4OOLj45k3bx7PPfccCQkJtG/fHg8PDwzDyHffFoulQJaAgIAC2W677TZee+21AvuGhYWxY8eOooyg0Mc8ceJE+vXrV+A6Pz+/vK+9vb3zXWcymfLmdaVsF/37MRmGUWD58N+zAXjggQeYNm0aY8eOZebMmdx3332XXHYsyt8hQOfOnalZsyaffvopTz/9NPPnz2fatGmF3qdIWaUyJOKGunXrlvcqpq5duxa4vnHjxvj6+rJv3z46depU6H0sWbKEDh068Oijj+Zt27VrV4H9IiMjiYyMZNy4cURFRTF79mzat29PlSpV2LhxY759k5OTC5SNf2vVqhXffvsttWrVKvSclrp16+Lt7c3KlSvzXiF36tQptm/ffsnHcvF+t23bRt26dS/7/a8l26U0bNiQBQsW5Nu2du3aAvvdfffdPP3000ydOpVNmzZx7733XvI+i/J3CBfK3H333cdHH31E9erV8fDwKHCOk0hZpxOoRdyQp6cnW7ZsYcuWLXh6eha4PjAwkKeeeoqRI0fy2WefsWvXLpKSkpg+fTqfffYZcKF0rF27lt9++43t27fz/PPPs2bNmrz7SE1NZdy4caxYsYK9e/eycOFCtm/fTqNGjQC49dZbWbt2LZ9//jk7duxg/PjxBcpRYR577DFOnjzJoEGDWL16Nbt372bhwoXcf//9WK1Wypcvz9ChQxk9ejR//PEHGzduZMiQIXh4XP7H3QsvvMDnn3/OhAkT2LRpE1u2bMk7mlVUV8p2KQ899BBbt25lzJgxbN++na+++opPP/0UIN+Rn4oVK9KvXz9Gjx5NdHQ01atXv+R9FuXv8KL77ruPQ4cO8cwzzzBw4MACR65EyjqVIRE3FRQURFBQ0CWvf/HFF3nhhReYNGkSjRo1omvXrvz000/Url0bgIcffph+/foxYMAA2rVrx4kTJ/IdJfL392fr1q3ccccd1K9fnwcffJDhw4fz0EMPAReOSD3//PM8/fTTXH/99Zw5c4Z77rnnirnDw8NZtmwZVquVrl270rRpU0aMGIHZbM4rPG+88QY33XQTvXv3pnPnztx44420bt36svfbtWtXfv75ZxISErj++utp3749b7/9NjVr1rxipuJkK0zt2rX55ptvmD9/Ps2bN+f999/PezXZP5e04MI5Pjk5OYW+AvDfrvR3eFGNGjXo3Lkzp06dKtL9ipQ1JqOwhWkREXGql19+mRkzZrB///5822fNmsWIESM4dOgQPj4+TkonUrbonCERkVLgvffe4/rrr6dy5cosW7aMN954I+8kd4DMzExSU1OZNGkSDz30kIqQiB1pmUxEpBTYsWMHffr0oXHjxrz44os8+eSTTJgwIe/6119/nZYtWxIaGsq4ceOcF1SkDNIymYiIiLg1HRkSERERt6YyJCIiIm5NZUhERETcmsqQiIiIuDWVIREREXFrKkMiIiLi1lSGRERExK2pDImIiIhb+3+CHcerrqAuFgAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.ylabel(\"Predicted energy eV\")\n", + "plt.xlabel(\"Measured energy eV\")\n", + "plt.grid()\n", + "plt.plot(*2 * [[min(y_lst[::2]), 0]])\n", + "plt.scatter(y_lst[::2], np.einsum(\"ni,i->n\", x_lst, reg.coef_)[::2]);" + ] + }, + { + "cell_type": "markdown", + "id": "25769ca1", + "metadata": {}, + "source": [ + "## Monte Carlo simulation for the magnetization curve" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "4f1d238d", + "metadata": {}, + "outputs": [], + "source": [ + "from mamonca import MC" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "e028a56b", + "metadata": {}, + "outputs": [], + "source": [ + "large_structure = bulk.repeat(20)" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "eb9de0cc-3d7e-4acb-bbd6-f5fee6e09f7d", + "metadata": {}, + "outputs": [], + "source": [ + "# 14 neighbors, so that the first shell (8 atoms) and second shell (6 atoms) would be included.\n", + "neigh = large_structure.get_neighbors(num_neighbors=14)\n", + "\n", + "mc = MC(len(large_structure))\n", + "for ss, J in zip(neigh.get_shell_matrix()[:1], reg.coef_[:1]):\n", + " mc.set_heisenberg_coeff(J * ss)\n", + "\n", + "mc.set_landau_coeff(reg.coef_[1], 2)\n", + "mc.set_landau_coeff(reg.coef_[2], 4)\n", + "# mc.set_landau_coeff(reg.coef_[3], 6)" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "5ba0110c-33d7-47ee-ab53-ad11a9fe93ee", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "27f1d5a9b28143c6bd56655132548740", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/19 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.xlabel(\"Temperature K\")\n", + "plt.ylabel(\"Magnetization\")\n", + "plt.grid()\n", + "plt.plot(temperatures, magnetization_lst);" + ] + }, + { + "cell_type": "markdown", + "id": "d90162ce", + "metadata": {}, + "source": [ + "As you can see in the figure above, the transition temperature is fairly different from the experimental Curie temperature (~1,000 K). But I list a few items that probably have played a role, with varying effects.\n", + "\n", + "- DFT parameters (k-points, k-space cutoff) were not adequately chosen\n", + "- Only up to the second shell was considered\n", + "- Data set consisted of only 3 points\n", + "- No longitudinal contribution was included\n", + "- Temperature effects (vibration, thermal expansion) not included\n", + "\n", + "Probably by properly taking care of the first three points, we can achive much better results." + ] + }, + { + "cell_type": "markdown", + "id": "de926480", + "metadata": {}, + "source": [ + "# Discussion\n", + "\n", + "In this notebook, I created small boxes with simple magnetic states, but obviously we can also include more complex magnetic states. With the evaluation class that I wrote above, all the $J_{ij}$ parameters would be properly taken into account. Furthermore, it might be also interesting to think about including longitudinal components. There are already some extended models that can do it. Also in the next step, we should also try to take chemical species in consideration. The functionality is already included in the `Neighbors` class.\n", + "\n", + "The fitting was done using linear regression here. If the number of descriptors grows, it might be interesting to look into other regression schemes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "87ab0a64", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "pyiron", + "language": "python", + "name": "pyiron" + }, + "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.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}