Commit eeb6307e authored by Jefferson Stafusa E. Portela's avatar Jefferson Stafusa E. Portela
Browse files

Add exercises to tutorial notebook.

parent 60ebf6fd
......@@ -71,7 +71,7 @@
},
{
"cell_type": "code",
"execution_count": 12,
"execution_count": 2,
"metadata": {},
"outputs": [
{
......@@ -102,10 +102,10 @@
" 'ham_T': 1.0, # Hopping parameter\n",
" 'ham_U': 4.0, # Hubbard interaction\n",
" 'ham_Tperp': 0.0, # For bilayer systems\n",
" 'beta': 4.0, # Inverse temperature\n",
" 'beta': 2.0, # Inverse temperature\n",
" 'Ltau': 0, # '1' for time-displaced Green functions; '0' otherwise \n",
" 'NSweep': 2000, # Number of sweeps\n",
" 'NBin': 10, # Number of bins\n",
" 'NSweep': 400, # Number of sweeps\n",
" 'NBin': 100, # Number of bins\n",
" 'Dtau': dtau, # Only dtau varies between simulations, Ltrot=beta/Dtau\n",
" 'Mz': True, # If true, sets the M_z-Hubbard model: Nf=2, N_sum=1,\n",
" }, # HS field couples to z-component of magnetization\n",
......@@ -147,7 +147,7 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 4,
"metadata": {
"scrolled": true
},
......@@ -156,13 +156,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.05_Mz=True\" for Monte Carlo run.\n",
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.05_Mz=True\" for Monte Carlo run.\n",
"Create new directory.\n",
"Run /home/stafusa/Programs/ALF/Prog/Hubbard.out\n",
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.1_Mz=True\" for Monte Carlo run.\n",
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.1_Mz=True\" for Monte Carlo run.\n",
"Create new directory.\n",
"Run /home/stafusa/Programs/ALF/Prog/Hubbard.out\n",
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.15_Mz=True\" for Monte Carlo run.\n",
"Prepare directory \"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.15_Mz=True\" for Monte Carlo run.\n",
"Create new directory.\n",
"Run /home/stafusa/Programs/ALF/Prog/Hubbard.out\n"
]
......@@ -182,7 +182,7 @@
},
{
"cell_type": "code",
"execution_count": 14,
"execution_count": 5,
"metadata": {
"scrolled": true
},
......@@ -191,7 +191,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.05_Mz=True\n",
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.05_Mz=True\n",
"Analysing Pot_scal\n",
"Analysing Part_scal\n",
"Analysing Kin_scal\n",
......@@ -201,7 +201,7 @@
"Analysing Green_eq\n",
"Analysing SpinZ_eq\n",
"Analysing SpinXY_eq\n",
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.1_Mz=True\n",
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.1_Mz=True\n",
"Analysing Pot_scal\n",
"Analysing Part_scal\n",
"Analysing Kin_scal\n",
......@@ -211,7 +211,7 @@
"Analysing Green_eq\n",
"Analysing SpinZ_eq\n",
"Analysing SpinXY_eq\n",
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.15_Mz=True\n",
"/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.15_Mz=True\n",
"Analysing Pot_scal\n",
"Analysing Part_scal\n",
"Analysing Kin_scal\n",
......@@ -236,7 +236,7 @@
},
{
"cell_type": "code",
"execution_count": 15,
"execution_count": 6,
"metadata": {},
"outputs": [
{
......@@ -244,9 +244,9 @@
"output_type": "stream",
"text": [
"For Dtau values [0.05 0.1 0.15] the measured energies are:\n",
" [[-1.913795 0.008008]\n",
" [-1.910943 0.006356]\n",
" [-1.914801 0.003687]]\n"
" [[-1.475901 0.00364 ]\n",
" [-1.481135 0.003836]\n",
" [-1.466817 0.00341 ]]\n"
]
}
],
......@@ -256,14 +256,16 @@
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"execution_count": 7,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[-1.91153819 -0.13415236] [0.0072138 0.3858579]\n"
"[-1.48055724 0.5328847 ] [0.00365743 0.24578294]\n"
]
},
{
......@@ -272,13 +274,13 @@
"<ErrorbarContainer object of 3 artists>"
]
},
"execution_count": 16,
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYkAAAD4CAYAAAAZ1BptAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd3hUZd7G8e9DQgi99xBS6CWUhN4RxQVEQSkqdqWufd3V1X11i6/vuqtrW5p9N0gAQbGsDREEETChhEAoSWihFwk1kPK8f8ywBMyQwMxkZpL7c125mJw5M/nlcJI75zzP+R1jrUVERKQw5XxdgIiI+C+FhIiIuKSQEBERlxQSIiLikkJCRERcCvZ1AZ5Up04dGxER4esyREQCSlJS0mFrbd3CnitVIREREUFiYqKvyxARCSjGmJ2untPpJhERcUkhISIiLikkRETEJYWEiIi4pJAQERGXFBIiIuKSQkJERFxSSIiIiEsKCRGRADdmxo+MmfGjV95bISEiIi4pJERExCWFhIiIuKSQEBERlxQSIiLikkJCRERcUkiIiIhLCgkREXFJISEiIi4pJERExCWFhIiIuORWSBhjRhljNhpj8o0xcUWsG2SMWWuM+eyS5Q8aY7Y43+dF57IIY8wZY8w658d0d+oUEZGrE+zm61OAkcCMYqz7MJAKVDu/wBgzALgRiLHWnjXG1Cuwfrq1tqOb9YmIiBvcOpKw1qZaa7cUtZ4xJgwYCrx1yVOTgP+z1p51vt9Bd+oRERHPKqkxiVeA3wL5lyxvAfQxxqwyxiw1xnQp8Fyk8/TUUmNMH1dvbIwZb4xJNMYkHjp0yAuli4iUXUWebjLGLAIaFPLU09bahcV4/TDgoLU2yRjTv5CvXxPoDnQB5hpjooB9QLi19ogxJhb42BjT1lp7/NL3t9bOBGYCxMXF2aLqERGR4isyJKy1g9z8Gr2A4caYIUAoUM0YE2+tHQdkAgustRZYbYzJB+pYaw8B509BJRlj0nEcdSS6WYuIiFwBr59ustY+Za0Ns9ZGAGOBxc6AAPgYGAhgjGkBhACHjTF1jTFBzuVRQHMgw9u1iojIxdydAjvCGJMJ9AA+N8Z85VzeyBjzn2K8xTtAlDEmBUgA7nIeVfQFko0x64EPgYnW2qPu1CoiIlfOrSmw1tqPgI8KWb4XGFLI8iXAkgKfnwPGFbLefGC+O7WJiIj7dMW1iIi4pJAQERGXFBIiIuKSQkJERFxSSIiIiEsKCRERcUkhISIiLikkRETEJYWEiIi45O5Nh0RExMdOn8ulnDFeeW+FhIhIAPtobSYb9x6namh5r7y/QkJEJACdzc3jz59tIn7lLqqGBhNVp7JXvo5CQkQkwOw5dobJs9awfvcxxveNYu2un712ukkD1yIiAWT5tsMMe20Z6QdPMu32zvx+SGuvBQToSEJEJCDk51umLknjpW+20qxuFabfEUt03Spe/7oKCRERP5d1OofH561jUepBhndoxAsj21O5Qsn8+lZIiIj4sY17s5gUv4a9x87w3A1tuKtnBMaLp5cupZAQEfFT8xJ388zHKdSoVJ45E7oT27RWidegkBAR8TPZOXn88dNNzF69ix5RtXn9tk7UqVLBJ7UoJERE/Ejmz6eZPGsNyZlZTOwXzW+ua0FwkO8moiokRET8xNKth3g4YS15eZYZd8QyuG0DX5ekkBAR8bX8fMvri9N45duttKhXlel3xBLppSuor5RCQkTEh46dPscjc9axZMshRnRqzPMj2lEpxH9+NftPJSIiZUzKniwmxidx4Hg2f76pHeO6hZfo9NbiUEiIiPjAnJ928YeFG6ldOYS5E3rQKbymr0sqlEJCRKQEZefk8T8LU5ibmEnvZnV4dWxHars5vbV23iFC888APTxTZAEKCRGRErLryGkmzUpi497j/HpAMx69tgVB5a7y9FJ2FmxaCMlzeePgcpIqdAPGeLReUEiIiJSIxZsP8EjCOizw1p1xDGpT/8rfJPccpH8L6xNgyxeQdxZqRTOvyjiWVxxIF49XrZAQEfGqvHzLq4u28triNFo3rMb0cZ1pWvsKprdaC5mJkDwHUubDmaNQqTbE3g0xY6BxZxbMXOm1+hUSIiJecvTUOR5OWMuybYe5JTaMv9zUjtDyQcV78ZF02DDPEQ5HMyA4FFoOgQ5jIXogBHnndqWXUkiIiHjB+t3HmDxrDYdOnOWFke0Z26VJ0dNbTx91HC0kz4XM1YCByD7Q53FoPRxCq5VI7QUpJEREPMhaywerd/HHTzZRt2oFPpzUg5iwGq5fkJMNW790HDFs+xryc6FeGxj0R2h/C1QPK7niC6GQEBHxkDPn8nj64w0sWLOHvi3q8uqYjtSsHPLLFfPzYdcKxwD0pk/gbBZUaQDdJznGGeq3Az+5qE4hISLiATuPnGLCv5PYvP8ED13TnIevaf7L6a0HNzuOGDbMg6zdUL4ytBnuCIbIvlCumOMVJUghISLipkWbDvDo3HWUM4Z37+7CgFb1Ljx54gCkfOgIh33rwQQ5Bp6veRZaDYEQ/2jk54pCQkTkKuXlW17+Zgv//C6ddo2rMe32WJrUqgTnTkHqZ45gyPgObD406gTX/x+0uxmq1Cv6zf2EQkJE5CocOXmWhxLW8kPaEcZ2acJzQ1sSmrkclsxxBETOKageDr0fg5jRULelr0u+Km6FhDFmFPAc0Broaq1NvMy6QUAisMdaO8y5bA5wfsvVAI5Zazs6n3sKuA/IAx6y1n7lTq0iIp6yZtfPTJm1hiOnzvHioJqMzk2ANz6EkwegQnXHrKQOY6FJdyjnu7vKeYK7RxIpwEhgRjHWfRhIBf470dda+99GI8aYl4As5+M2wFigLdAIWGSMaWGtzXOzXhGRq2at5d8rd/LnTzdRv8JZFtR+j3bLl0C58tBisGMAuvl1UD7U16V6jFshYa1NBYq8QMQYEwYMBZ4HHivkeQOMBgY6F90IJFhrzwLbjTFpQFfgR3fqFRG5WqePH+XpWUv4aGcFBpRbyz/yp1KjWnvo/TK0HQGVavm6RK8oqTGJV4DfAlVdPN8HOGCt3eb8vDFQsBlJpnPZLxhjxgPjAcLDwz1SrIgI4Giol7aIjNWfMyk1hq22EY9V/ZZf92pAuZgfoFakryv0uiJDwhizCCjsbtxPW2sXFuP1w4CD1tokY0x/F6vdCswu+LJC1rGFvdBaOxOYCRAXF1foOiIixfbfhnoJkLKAL09G8UTuJIKDgnl/SG369njJby50KwlFhoS1dpCbX6MXMNwYMwQIBaoZY+KtteMAjDHBOMY1Ygu8JhNoUuDzMGCvm3WIiLh2SUO93KBK/K3KE8zIaUlM42pMHRdLWM1Kvq6yUHMmeP5mQ+d5/XSTtfYp4CkA55HEb84HhNMgYLO1NrPAsk+AD4wxL+MYuG4OrPZ2rSJSxrhoqHeoyxM8uD6clTuyuK1bOM/e0IYKwf53NXRJcHcK7AjgdaAu8LkxZp21drAxphHwlrV2SDHeZiwXn2rCWrvRGDMX2ATkAlM0s0lEPOKyDfVGkXSsIpNnreHY6RP8fVQHbon1bYM9XzPWlp7T+HFxcTYx0eWlGiJSVp1vqJc8BzYuvNBQL2aUY9pqg/ZYa3lvxQ6e/zyVxjUrMu32WNo0KvnW3L5gjEmy1sYV9pyuuBaR0uvQFken1SIa6p06m8uTCzbw6fq9DGpdj5dGd6R6xZK5qY+/U0iISOly4oBznCGhWA310g6eZFJ8EumHTvLE4JZM6hdNuUu7t5ZhCgkRCXznTsHmzx2nk9IXOxrqNewIg19wtMhw0VDvPxv28cS89VQoH8S/7u1G7+Z1Srhw/6eQEJHAlJ8HGUscM5NSPy3QUO9Rx+mkyzTUy8nL58UvN/Pmsu10bFKDqbd3plGNiiVXewBRSIhI4LAW9m9w3rjnQzi5/4ob6h08ns2vP1jL6h1HubNHU54Z2oaQ4MBuwudNCgkR8X9ZmY7B5/Vz4FBqgYZ6o6H54GI31Fu9/ShTPljDiewcXhnTkZs6FdrtRwpQSIiIf8rOctz/OXkO7FgOWGjSDYa+BG1HXlFDPWstby/fzgtfbCa8ViX+fV9XWjUoG9Nb3aWQEBH/kZcDaYscwbDlC8jNhlrRMOD30H7UVTXUO3k2l99+uJ7/bNjP4Lb1+duoDlQL1fTW4lJIiIhvWQt7khzXM6TMhzNHoVJt6HyXYwC6ceerbqi37cAJJsQnsePwKZ78VSsm9I0q8tYGcjGFhIj4xtEMSD7fUC8dgkOh5RDHAHT0QAhy76/9T9fv5Xfzk6kUEsSs+7vTI7q2hwovWxQSIlJyXDTUo89j0Ho4hLo/TnAuN58Xvkjl3R92ENu0Jv+8rTMNqpeeO8WVNIWEiHhXEQ31qO65GUb7s7KZ8sEaknb+zD29Ivj9kNaUD9L0VncoJETE88431Fuf4JihdL6hXreJjtNJ9dt5/MY9K9IP89DstZw+l8drt3ZieIdGHn3/skohISKec3Czo2dS8jw4nlmgod5oiOz334Z6nmStZcb3Gbz45WYi6lTmgwe606K+qzsly5VSSPiRMTN+BLx7lykRjzux3zHOsD4B9ieDKecYeB70LLQa+ouGep50PDuHJ+at56uNBxjSvgF/vTmGqpre6lEKCRG5cmdPOhvqJTj6JxVsqNfuZqha3+slbNl/gonxSew6eppnhrbmvt6Rmt7qBQoJESmevFzYvtQxAJ36mbOhXpNiNdTztI/X7uGpBRuoEhrM7Ae60zWy+Fdfy5VRSIiIa9Y6TiGtnwMpH8LJAxca6sWMgfAeRTbU86Rzufn85fNN/OvHnXSNqMUbt3WiXjVNb/UmhYSI/NKx3Y6Geslz4NDmq26o50n7ss4wKX4N63Yf4/7ekfzuV600vbUEKCRExMFlQ72Xoe2IK2qo52k/pB3mwdlrOZuTxz9v68zQmIY+q6WsUUiIlGVeaKjnSfn5lmlL03np6y1E1a3C9HGxNKtXxac1lTUKCZGyxlrITHQEw0UN9e6EmLFuNdTzpKwzOTw+dz2LUg8wLKYhf705hsoV9CurpGmLi5QVRzMcPZOS5zgen2+oFzMGml3jdkM9T9q09ziTZiWx5+czPHtDG+7uGaHprT6ikBApzU4fhY0LHOGwexUXGuo97rGGep42PymT33+0gRqVypMwvjtxEZre6ksKCZHS5r8N9eY6G+rlFGiodwtUD/N1hYU6m5vHnz7dxKxVu+geVYvXb+1M3aoVfF1WmaeQECkNzjfUS54DGxdeaKjXfaLjdFKD9r6u8LL2HDvD5Pgk1mdmMaFfFE9c15JgTW/1CwoJkUB2cLMjGDbMg6zdBRrqjYHIvl5pqOdp3289xMMJa8nJs0wfF8v17Rr4uiQpQCEhEmhOHHBc/Zw8B/atBxPkaKh3zbPQaohXG+p5Un6+5Y3v0vjHoq20qFeVaeM6E1VX01v9jUJCJBCcO+VoqLc+ATK+u7ihXvtboEo9X1d4RbJO5/Do3HUs3nyQmzo24n9HtqdSiH4d+SP9r4j4q/w8R4fV5LmQ+qmzoV449H7M0R6jBBvqeVLKniwmzUpif1Y2f7qxLXd0b6rprX5MISHiT8431Eue6xhnKNhQr8NYaNK9RBvqedrcn3bzzMIUalcOYc6EHnQOr+nrkqQICgkRf5CV6bzQbS4cSi3QUG8MNL/OJw31PCk7J4/nPtlIwk+76dWsNq+N7UTtKpreGggUEiK+UmhDve5+0VDPk3YfPc2kWUmk7DnOlAHRPHZtS4LK6fRSoFBIiJQkP2+o52nfbTnIIwnryLeWN++M49o23r9jnXiWQkLE2wKkoZ4n5edbXv12G68t3kbL+lWZPi6WiDqBMTVXLqaQEPGWAGqo50k/nzrHI3PWsXTrIUZ2bszzN7WnYoj/X9QnhXMrJIwxo4DngNZAV2tt4mXWDQISgT3W2mHOZXOA8/P4agDHrLUdjTERQCqwxfncSmvtRHdqFSkRAdhQz5OSM48xKX4Nh06c5fkR7bita7imtwY4d48kUoCRwIxirPswjl/8//0psdaOOf/YGPMSkFVg/XRrbUc36xPxvgBtqOdJ1lpmr97Nc59spG7VCsyb2IMOTWr4uizxALdCwlqbChT5l4IxJgwYCjwPPFbI8wYYDQx0px6REnO5hnrtRzsa6pWRv6Czc/J45uMUPkzKpE/zOrw6thO1Kof4uizxkJIak3gF+C1Q1cXzfYAD1tptBZZFGmPWAseBZ6y1y7xco0jRSkFDPU/adeQ0E+OT2LTvOA8NbMbDg1poemspU2RIGGMWAYW1ZXzaWruwGK8fBhy01iYZY/q7WO1WYHaBz/cB4dbaI8aYWOBjY0xba+3xQt5/PDAeIDw8vKhyRK5cKWmo52nfph7g0TnrAHjn7jgGttL01tKoyJCw1g5y82v0AoYbY4YAoUA1Y0y8tXYcgDEmGMe4RmyBr3kWOOt8nGSMSQda4Bj4vrS+mcBMgLi4OOtmrSIO505B6meOYDjfUK9Rp4BtqOdJefmWf3yzlTe+S6Nto2pMHxdLk1qVfF2WeInXTzdZa58CngJwHkn85nxAOA0CNltrM88vMMbUBY5aa/OMMVFAcyDD27VKGZeXC9uXOoIh9bNS01DPk46cPMvDCetYnnaY0XFh/OnGdoSWL1un2Moad6fAjgBeB+oCnxtj1llrBxtjGgFvWWuHFONtxnLxqSaAvsCfjDG5QB4w0Vp71J1aRQpVWEO90OoQM8oxzhDgDfU8ad3uY0yOT+LwqXP89eb2jOmi07tlgbuzmz4CPipk+V7gFwFhrV0CLLlk2d2FrDcfmO9ObSKX5bKh3mhoPjjgG+p5krWW+FW7+NOnG6lfLZT5E3vSPqy6r8uSEqIrrqXsKCMN9TzpzLk8nv5oAwvW7qF/y7q8MqYjNSppemtZopDwI9Za8qzG3j0q9xykf+u4o9uWLyDvbKluqOdJ2w+fYlJ8ElsOnODRQS14cGAzyml6a5mjkPAjR0+dY/uR0/ztq83c0yuSOuq3f3VcNdSLvcsxztA4tsxc6Ha1vt64n8fnricoyPDu3V3o37LszuYq6xQSfqRiSBDVQoOZuiSdt5ZtZ2yXJjzQN4qwmppeWCxltKGeJ+Xm5fP3r7cyfWk6MWHVmXp7Z+1/ZZxCwo9UCgmmRf2qPD+iPTOWpjNr1S5mrdrF8I6NmNQvmub1XV2wXoadPuo4WkieC5mrKWsN9Tzp8MmzPDR7LSvSj3Br13CevaGNpreKQsIfNatXhb+N6sCj17bgzWUZJKzezYI1e7iuTX0mD2hGx7LeOO2/DfXmOBvq5Za5hnqelrTzZ6bMWsPPp8/xt1tiGBXXxNcliZ9QSPixRjUq8uwNbXlwYHPe+2E7763YwdebDtAzujaT+zejV7PaZacN8/mGeusTHDOUzjfU6zbRcTqpDDXU8yRrLe+v2MFfPk+lUY2KLJjck7aNNL1VLlBIBIBalUN47LqWjO8XzQerdvLWsu2Me3sVMWHVmdw/muvaNCi9s04Ka6jX+gboMAYi+5W5hnqedPpcLk/O38An6/dyTat6vDy6I9UradxGLqaQCCBVKgQzvm80d/aIYMGaPcz4Pp2J8WuIrluZif2iualTY8oHlYKrg08ccI4zJDgb6pVTQz0Pyzh0konxSaQdPMkTg1syqV906f1DQ9yikAhAoeWDuK1bOKPjwvhPyn6mfpfGEx8m88qibTzQJ5IxXcID73aR507B5s8dp5PON9Rr2BGu/z9oOxKqqsOop3yZso/fzEsmJLgc/7q3G72b1/F1SeLHFBIBLDioHMM7NOKGmIZ8t+UgU79L57lPN/H64jTu6RXBHT0iqF7Rj08f5OdBxhLHzKTUTws01HvUMc6ghnoelZuXz4tfbWHm9xl0aFKDabd3plGNir4uS/ycQqIUMMYwsFV9Braqz+rtR5m6JM051z2D27uHc1/vSOpV9ZNeRIU11KtQ3TErqcNYNdTzkoMnsvn1B2tZvf0od3RvyjPDWlMhOMCONsUnFBJO93x5DwDvXv+ujytxT9fIWnSN7MrGvVlMW5LOm99n8O4POxgVG8aEvtGE1/bRhVGFNdRrfp1jAFoN9bzqpx1HmTJrDcezc3h5dAdGdtYUYSk+hUQp1bZRdd64rTM7Dp9ixvfpzEvMJOGn3QyLacik/tG0alACF5llH4dNCy9pqNdNDfVKiLWWt5dv54UvNtOkZkXev7crrRvq4kK5MgqJUi6iTmVeGBnDI4Na8NayDGat2sXCdY4pj5MHRBPb1MO/qPNyIG2RIxi2fAG52Y6Gev2fctyjoVaUZ7+eFOrk2Vx+Nz+Zz5P3cV2b+vx9dAeqhfrx+JT4LYVEGVG/WihPD23DlAHNeH/FTt5dsZ2bp/1I18haTBnQjL7N61z9hXmuGup1vlMN9Xwg7eAJJsavIePQSZ78VSsm9I0qOxddiscpJMqYGpVCeHhQcx7oG8ns1bt58/sM7npnNW0bVWNy/2Zc364BQcWdL19GGuqNmfEjAHMm9PBxJUX7LHkvv/swmdDyQcTf142ezTS9VdyjkCijKoUEc1/vSO7o3pSP1+5h+tJ0pnywhqg6lZnQL4oRncIICS5kllFhDfUiejsb6t3guPWnlLicvHxe+M9m3vlhO53DazD19lgaVNdkAHGfQqKMCwkux+guTbg5NowvU/YzdUkav5u/gX98s437+0Rya9dwKpfLVUM9P3bgeDZTZq0hcefP3N0zgt8PaV14wItcBYWEABBUzjA0piFD2jfg+22HmfpdGn/5PJU3vlrP3UFfczcLqVG1qqOhXoexUL+dxhn8wMqMI/z6g7WcOpvLq2M7cmPHxr4uSUoZhYRcxBzeSr9dCfQ7PY+kkFCm5Y3glbPDmBk8jNtaRXB/92idxvAD1lreXJbBX7/cQtNalfjggW600P1GxAsUEuJsqPeh43TSvvVggiB6ILHXjOGtVkPYfDSP6UvSeXfFTv714y5Gdm7MhH7RRNZRoz1fOJGdw28/TOaLlP1c37YBfxsVQ1VNbxUvUUiUVYU11GvUydFQr93NUOXCPY1bNYBXxnbisWtbMnNZOnMTM5mbuJsh7R0X5un+AyVn64ETTPx3EjuPnubpIa25v0+kpreKVykkyhKXDfUeg5jRRTbUC69dib/c1J6HrmnOO8t3EL9yJ58l76N/y7pM7t+MrpG6gtqbFq7bw5PzN1C5QjCz7u9G96javi5JygCFRGlnLezfcOHGPR5oqFevaihP/qoVk/pHE79yJ+8s387oGT8S17QmkwdEM6BlPf1160HncvP53/+k8t6KHXSJqMkbt3WmfjWNC0nJUEiUViXQUK96xfJMGdCMe3tFMjdxNzO/z+De9xJp1aAqk/pHM7R9Q4JLw02QfGhf1hmmzFrDml3HuK93JE/+qlXpuLGUBAyFRGmSneW4/3MJN9SrGBLEXT0juK1bOAvX7WX60nQeTljHS19vZUK/KG7uHEZoebWlvlIr0g7z4Oy1ZOfk8c/bOjM0pqGvS5IySCER6Fw11Bvwe2g/CmpFllgp5YPKcUtsGCM7NebrTQeYtiSNpz9K4dVF27ivdyS3d29KlQra5YpirWX60gz+9tVmoupWYfq4zjSrp+mt4hv6iQ1E1sKeJMfMpI0L4PQRZ0O9u5wN9Tr79EK3cuUM17drwOC29VmRfoSpS9J44YvN/PO7NO7qGcE9vSKpVTnEZ/X5s+PZOTw+dz3fbDrA0JiG/PXmGAWr+JT2vkDiqqFeh7EQPdDvGuoZY+jVrA69mtVh/e5jTF2SxuuL03hr2XbGdm3CA32idPvMAlL3HWdSfBKZP5/hD8PacG+vCE0AEJ9TSPi700cdRwvr5xTSUG84hAbGTWQ6NKnBjDviSDt4gmlLMvj3jzuJX7mTmzo2ZmL/aKLrVvF1iT710dpMnlqwgWqh5Zk9vjtdIjSdWPyDQsIf5WQXaKj3DeTnQN3WMOg5xzhDADfUa1avKi+N7sCj1zbnrWXbSfhpFx+uyeT6tg2Y3L8Z7cPK1oV5Z3Pz+PNnm4hfuYtukbV4/bZO/nM/chEUEv4jP5/WZ5Ppc2Yx/P1HOJsFVRpAtwmlsqFeWM1KPDe8Lb8e2Iz3ftjB+z/u4IuU/fRpXodJ/aPpEVW71J9q2XPsDJNnrWH97mNM6BvFE4Nbasqw+B2FhK8d2uIYgN4wj+eydpNtQiFmhOMK6Mh+UK50Tx2tU6UCvxnckgn9oohfuYu3l2/ntjdX0bFJDSb3j2ZQ6/qUK+5NkALIsm2HeGj2WnLyLNPHdeb6dpreKv5JIeELJw44b9yTcFFDvdfNrfxUoSf/GjHA1xWWuKqh5ZnUP5p7ekUwLymTmd+nM/7fSbSoX4WJ/aK5oUOjUnERWX6+ZeqSNF76ZivN61Vh2rjYMj8eI/5NIVFSCmuo17DjRQ31ljtvk1mWhZYP4o7uTbm1SxM+S97HtCXpPDZ3PS9/s5UJfaMYFdckYC/Myzqdw+Pz1rEo9SA3dmzECyPbUylEP4Li37SHelNeLmxf6hiATv3M2VCvCfR+1HE9wyUN9QLhHsolJTioHDd1aszwDo1YvPkgU5ek8YeFG3n1223c2zuScd2bUi2A2mNv3JvFpPg17Ms6wx+Ht+XOHk1L/ZiLlA5uhYQxZhTwHNAa6GqtTbzMukFAIrDHWjvMuawjMB0IBXKBydba1c7nngLuA/KAh6y1X7lTa4mxFvYnO65nuLShXsxoCO95xQ31yrJy5QyD2tTnmtb1WLX9KFOXpPPil1uY9l06d/Royr29I6lTpYKvy7yseYm7eebjFGpWCiFhfA9im9b0dUkixebukUQKMBKYUYx1HwZSgYIT+18E/mit/cIYM8T5eX9jTBtgLNAWaAQsMsa0sNbmuVmv9xTWUK/FYEcweKihXllmjKF7VG26R9UmZU8W05akM21pOm8v386YLo4L85rUquTrMi+SnZPHHz/dyOzVu+kZXZvXbu3k94Emcim3QsJamwoUedhsjAkDhgLPA48VfAsuhEZ1YK/z8Y1AgrX2LLDdGJMGdAX866S9y4Z6L0HbkV5rqFfWtWtcnX/e3pmMQyeZsTSD2X+e22wAAAp0SURBVKt3MWvVLm7s0IhJ/aNp7ge38cz8+TST4tewYU8Wk/pH8/i1LTS9VQJSSY1JvAL8Frj0p/cR4CtjzN+BckBP5/LGwMoC62U6l/2CMWY8MB4gPDzcgyW7kHsO0r/9ZUO9/k86jhpqRXm/BgEgqm4V/npLDI84L8z7YNUuFqzdw7Vt6jO5fzSdwn1zWmfp1kM8nLCWvDzLzDtiua5tA5/UIeIJRYaEMWYRUNhe/rS1dmExXj8MOGitTTLG9L/k6UnAo9ba+caY0cDbwCCgsEMTW9j7W2tnAjMB4uLiCl3HbdZCZqIjGFLmw5mjjoZ6ne5wXOjWOLZUXegWaBpWr8gfhrVhyoBmvL9iB++t2ME3mw7QM7o2k/s3o1ezkrkwLz/f8vriNF75dist61dl+rhYInQfcAlwRYaEtXaQm1+jFzDcOeYQClQzxsRba8cBd+EYqwCYB7zlfJwJNCnwHmFcOBVVclw11IsZA82u8buGemVdrcohPHptC8b3jWL26l28uSyDcW+vIiasOpP7R3NdmwZeuzDv2OlzPDJnHUu2HGJkp8Y8P6I9FUMCc6quSEFeP91krX0KeArAeSTxG2dAgOMXfz9gCTAQ2OZc/gnwgTHmZRwD182B1d6uFYBTRxwN9ZLnXtxQr/dj0GY4hJat3kKBqHKFYO7vE8UdPZqyYM0eZixNZ2L8GqLrVmZiv2hu6tTYoxfmbcjMYmJ8EgdPZPOXm9pxe7dwTW+VUsPdKbAjgNeBusDnxph11trBxphGwFvW2iFFvMUDwKvGmGAgG+fYgrV2ozFmLrAJx9TYKV6d2ZSTTdyRTHoe3g2rW0B+LtRrUyoa6pVlFYKDuLVrOKPjmvCfDfuYuiSdJz5M5h/fbOWBvlGM7RLu9l/7Cat38T+fbKRO5RDmTexJxyY1PFS9iH8w1nrnNL4vxMXF2cREl5dquLbjB3hvCD+XD6Vm3P2O00kN2mucoZSx1rJk6yGmfZfO6h1HqVU5hHt6RnBnjwiqV3J96nCM80r4ghc7Zufk8T8LU5ibmEmf5nV4dWwn3UhJApYxJslaG1fYc7riGiC8By+27s3manV5Z/Dzvq5GvMQYw4CW9RjQsh6JOxwX5r30zVZmfJ/B7d3Cua93JPWqFX09y64jp5k0K4mNe4/z4MBmPDKoBUGlsAmhCCgkHMqVI7V6PV9XISUoLqIW79xdi9R9x5m2JJ03l2Xw7oodjIoNY0LfaMJrF35h3uLNB3gkYR0A79wdx8BW9UuybJESp5CQMq11w2q8dmsnHr+uBTO+z2BeYiazV+/iBueFea0aOK71tNby8tdbeG1xGm0aVmP6uFiXQSJSmigkRICmtSvzvyPa88g1zXl7+XbiV+5k4bq9XNOqHsdOn2P/8WxW7/iZUbFh/PmmdgHbiVbkSikkRAqoVy2Up4a0ZnL/Zvzrxx2888N2fj6dgwFeGNmesV2aaHqrlClqJiNSiOqVyvPgNc354cmBRNauRNtG1bi1q65/kLJHRxIil1EpJLhYM55ESisdSYiIiEsKCRERcUkhISIiLikkRETEJYWEiIi4pJAQERGXFBIiIuKSQkJERFxSSIiIiEsKCRERcUkhISIiLikkRETEJYWEiIi4pJAQERGXFBIiIuKSQkJERFxSSIiIiEsKCRERcUkhISIiLikkRETEJYWEiIi4pJAQERGXFBIiIuKSQkJERFxSSIiIiEsKCRERcSnY1wX4i3evf9fXJYiI+B0dSYiIiEsKCRERcUkhISIiLrkVEsaYUcaYjcaYfGNMXBHrBhlj1hpjPiuwrKMxZqUxZp0xJtEY09W5PMIYc8a5fJ0xZro7dYqIyNVxd+A6BRgJzCjGug8DqUC1AsteBP5orf3CGDPE+Xl/53Pp1tqObtYnIiJucOtIwlqbaq3dUtR6xpgwYCjw1qVvwYXQqA7sdaceERHxrJKaAvsK8Fug6iXLHwG+Msb8HUdg9SzwXKQxZi1wHHjGWrussDc2xowHxgOEh4d7um4R5kzo4esSRHymyCMJY8wiY0xKIR83FucLGGOGAQettUmFPD0JeNRa2wR4FHjbuXwfEG6t7QQ8BnxgjKlWyOux1s601sZZa+Pq1q1bnJJERKSYijySsNYOcvNr9AKGO8ccQoFqxph4a+044C4cYxUA83CejrLWngXOOh8nGWPSgRZAopu1iIjIFfD6FFhr7VPW2jBrbQQwFljsDAhwjEH0cz4eCGwDMMbUNcYEOR9HAc2BDG/XKiIiF3NrTMIYMwJ4HagLfG6MWWetHWyMaQS8Za0dUsRbPAC8aowJBrJxji0AfYE/GWNygTxgorX2qDu1iojIlTPWWl/X4DFxcXE2MVFnpEREroQxJslaW+i1brriWkREXFJIiIiISwoJERFxSSEhIiIulaqBa2PMIWCnG29RBzjsoXICnbbFxbQ9LtC2uFhp2B5NrbWFXo1cqkLCXcaYRFcj/GWNtsXFtD0u0La4WGnfHjrdJCIiLikkRETEJYXExWb6ugA/om1xMW2PC7QtLlaqt4fGJERExCUdSYiIiEsKCRERcanUhoQx5npjzBZjTJox5slCnjfGmNeczycbYzoX9VpjTC1jzDfGmG3Of2uW1PfjDi9ti+eMMXuMMeucH0V1/PUbbm6Pd4wxB40xKZe8JiD3DfDa9gjI/eNqt4Uxpokx5jtjTKoxZqMx5uECrwnYfQMAa22p+wCCgHQgCggB1gNtLllnCPAFYIDuwKqiXgu8CDzpfPwk8Fdff68+3BbPAb/x9fdXktvD+VxfoDOQcslrAm7f8PL2CLj9w82flYZAZ+fjqsDWQP69UfCjtB5JdAXSrLUZ1tpzQAJw6e1WbwT+ZR1WAjWMMQ2LeO2NwPvOx+8DN3n7G/EAb22LQOXO9sBa+z1Q2L1NAnHfAO9tj0B01dvCWrvPWrsGwFp7AkgFGhd4TSDuG0DpPd3UGNhd4PNMLvyHFbXO5V5b31q7D8D5bz0P1uwt3toWAL92HnK/E0CH0O5sj8sJxH0DvLc9IPD2D49sC2NMBNAJWOVcFKj7BlB6Q8IUsuzSub6u1inOawOJt7bFNCAa6AjsA1662gJLmDvbozTy1vYIxP3D7W1hjKkCzAcesdYe92BtPlNaQyITaFLg8zAc99MuzjqXe+2B84fZzn8PerBmb/HKtrDWHrDW5llr84E3cRyqBwJ3tsflBOK+AV7aHgG6f7i1LYwx5XEExCxr7YIC6wTqvgGU3pD4CWhujIk0xoQAY4FPLlnnE+BO52yF7kCW81Dwcq/9BLjL+fguYKG3vxEP8Mq2OL/TO40AUggM7myPywnEfQO8tD0CdP+46m1hjDHA20CqtfblQl4TiPuGg69Hzr31gWMWwlYcsxWedi6bCEx0PjbAP53PbwDiLvda5/LawLfANue/tXz9ffpwW/zbuW4yjh+Chr7+Pktoe8zGcfokB8dflfcF8r7hxe0RkPvH1W4LoDeO007JwDrnx5BA3zestWrLISIirpXW000iIuIBCgkREXFJISEiIi4pJERExCWFhIiIuKSQEBERlxQSIiLi0v8DVetbuJE4fNQAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
......@@ -304,11 +306,14 @@
]
},
{
"cell_type": "code",
"execution_count": null,
"cell_type": "markdown",
"metadata": {},
"outputs": [],
"source": []
"source": [
"---\n",
"## Exercises\n",
"1. Redo the extrapolation for different values of $\\beta t$ (e.g., for $\\beta t =$ 1, the internal energy is -0.62186692$t$, and for $\\beta t = $ 4, it is -1.90837196$t$).\n",
"2. Experiment with different settings for `Checkerboard` and `Symm`."
]
}
],
"metadata": {
......
%% Cell type:markdown id: tags:
# ALF Tutorial 2.0
## Introductory examples and exercises
%% Cell type:markdown id: tags:
This notebook is part of the [Tutorial 2.0](https://git.physik.uni-wuerzburg.de/ALF/ALF_Tutorial) for the quantum Monte Carlo simulation package [*Algorithms for Lattice Fermions* - ALF](https://git.physik.uni-wuerzburg.de/ALF/ALF_code), and can be found, together with its required files, in the [pyALF repository](https://git.physik.uni-wuerzburg.de/ALF/pyALF).
ALF is compiled from source, which is downloaded from the [ALF repository](https://git.physik.uni-wuerzburg.de:ALF) when not found locally.
[**REMEMBER TO UPDATE GIT ADDRESSES**]
%% Cell type:markdown id: tags:
# Testing against ED - Hubbard on a ring
%% Cell type:markdown id: tags:
In this example we run the code with the Mz choice of Hubbard Stratonovitch transformation on a four site ring, at $U/t=4$ and inverse temperature $ \beta t = 2 $. For this set of parameters, the exact internal energy reads:
$$
\left\langle -t \sum_{\langle i,j\rangle, \sigma} c_{i,\sigma}^{\dagger} c_{j,\sigma}^{\phantom\dagger} + U \sum_{i=1}^{N} n_{i,\uparrow}n_{j,\downarrow} \right\rangle = -1.47261997 t
$$
To reproduce this result we will have to carry out a systematic $\Delta \tau t $ extrapolation keeping $\Delta \tau t L_\text{Trotter} = 2$ constant.
Recall that the formulation of the auxiliary field QMC approach is based on the Trotter decomposition
$$
e^{-\Delta \tau \left( A + B \right ) } = e^{-\Delta \tau A } e^{-\Delta \tau B } + {\cal O} \left( \Delta \tau^2 \right)
$$
The overall error produced by this approximation is of the order $\Delta \tau^2 $.
Bellow we go through the steps for performing this extrapolation: setting the simulation parameters, running it and analyzing the data.
---
1. Import `Simulation` class from the `py_alf` python module, which provides the interface with ALF, as well as mathematics and plotting packages:
%% Cell type:code id: tags:
``` python
from py_alf import Simulation # Interface with ALF
#
import numpy as np # Numerical library
from scipy.optimize import curve_fit # Numerical library
import matplotlib.pyplot as plt # Plotting library
```
%% Cell type:markdown id: tags:
2. Create instances of `Simulation`, specifying the necessary parameters, in particular the different $\Delta \tau$ values:
%% Cell type:code id: tags:
``` python
sims = [] # Vector of Simulation instances
print('dtau values used:')
for dtau in [0.05, 0.1, 0.15]: # Values of dtau
print(dtau)
sim = Simulation(
'Hubbard', # Hamiltonian
{ # Model and simulation parameters for each Simulation instance
'Model': 'Hubbard', # Base model
'Lattice_type': 'N_leg_ladder', # Lattice type
'L1': 4, # Lattice length in the first unit vector direction
'L2': 1, # Lattice length in the second unit vector direction
'Checkerboard': False, # Whether checkerboard decomposition is used or not
'Symm': True, # Whether symmetrization takes place
'ham_T': 1.0, # Hopping parameter
'ham_U': 4.0, # Hubbard interaction
'ham_Tperp': 0.0, # For bilayer systems
'beta': 4.0, # Inverse temperature
'beta': 2.0, # Inverse temperature
'Ltau': 0, # '1' for time-displaced Green functions; '0' otherwise
'NSweep': 2000, # Number of sweeps
'NBin': 10, # Number of bins
'NSweep': 400, # Number of sweeps
'NBin': 100, # Number of bins
'Dtau': dtau, # Only dtau varies between simulations, Ltrot=beta/Dtau
'Mz': True, # If true, sets the M_z-Hubbard model: Nf=2, N_sum=1,
}, # HS field couples to z-component of magnetization
alf_dir='~/Programs/ALF', # Local ALF copy, if present
)
sims.append(sim)
```
%%%% Output: stream
dtau values used:
0.05
0.1
0.15
%% Cell type:markdown id: tags:
3. Compile ALF, downloading it first if not found locally. This may take a few minutes:
%% Cell type:code id: tags:
``` python
sims[0].compile() # Compilation needs to be performed only once
```
%%%% Output: stream
Compiling ALF... Done.
%% Cell type:markdown id: tags:
4. Perform the simulations, as specified in each element of `sim`:
%% Cell type:code id: tags:
``` python
for i, sim in enumerate(sims):
sim.run() # Perform the actual simulation in ALF
```
%%%% Output: stream
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.05_Mz=True" for Monte Carlo run.
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.05_Mz=True" for Monte Carlo run.
Create new directory.
Run /home/stafusa/Programs/ALF/Prog/Hubbard.out
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.1_Mz=True" for Monte Carlo run.
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.1_Mz=True" for Monte Carlo run.
Create new directory.
Run /home/stafusa/Programs/ALF/Prog/Hubbard.out
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.15_Mz=True" for Monte Carlo run.
Prepare directory "/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.15_Mz=True" for Monte Carlo run.
Create new directory.
Run /home/stafusa/Programs/ALF/Prog/Hubbard.out
%% Cell type:markdown id: tags:
5. Calculate the internal energies:
%% Cell type:code id: tags:
``` python
ener = np.empty((3, 2)) # Matrix for storing energy values
dtaus = np.empty((3,)) # Matrix for Dtau values, for plotting
for i, sim in enumerate(sims):
print(sim.sim_dir) # Directory containing the simulation output
sim.analysis() # Perform default analysis
dtaus[i] = sim.sim_dict['Dtau'] # Store Dtau value
ener[i] = sim.get_obs(['Ener_scalJ'])['Ener_scalJ']['obs'] # Store internal energy
```
%%%% Output: stream
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.05_Mz=True
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.05_Mz=True
Analysing Pot_scal
Analysing Part_scal
Analysing Kin_scal
Analysing Ener_scal
Analysing SpinT_eq
Analysing Den_eq
Analysing Green_eq
Analysing SpinZ_eq
Analysing SpinXY_eq
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.1_Mz=True
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.1_Mz=True
Analysing Pot_scal
Analysing Part_scal
Analysing Kin_scal
Analysing Ener_scal
Analysing SpinT_eq
Analysing Den_eq
Analysing Green_eq
Analysing SpinZ_eq
Analysing SpinXY_eq
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=4.0_Dtau=0.15_Mz=True
/home/stafusa/Jobs/Uni-Wuerzburg/ALF/pyALF/Hubbard_N_leg_ladder_L1=4_L2=1_Checkerboard=False_Symm=True_T=1.0_U=4.0_Tperp=0.0_beta=2.0_Dtau=0.15_Mz=True
Analysing Pot_scal
Analysing Part_scal
Analysing Kin_scal
Analysing Ener_scal
Analysing SpinT_eq
Analysing Den_eq
Analysing Green_eq
Analysing SpinZ_eq
Analysing SpinXY_eq
%% Cell type:code id: tags:
``` python
print('For Dtau values', dtaus, 'the measured energies are:\n', ener)
```
%%%% Output: stream
For Dtau values [0.05 0.1 0.15] the measured energies are:
[[-1.913795 0.008008]
[-1.910943 0.006356]
[-1.914801 0.003687]]
[[-1.475901 0.00364 ]
[-1.481135 0.003836]
[-1.466817 0.00341 ]]
%% Cell type:code id: tags:
``` python
plt.errorbar(dtaus**2, ener[:, 0], ener[:, 1])
def func(x, y0, a):
return y0 + a*x**2
popt1, pcov = curve_fit(func, dtaus, ener[:, 0], sigma=ener[:, 1], absolute_sigma=True)
perr1 = np.sqrt(np.diag(pcov))
print(popt1, perr1)
xs = np.linspace(0., dtaus.max())
plt.plot(xs**2, func(xs, *popt1))
plt.errorbar(0, popt1[0], perr1[0])
```
%%%% Output: stream
[-1.91153819 -0.13415236] [0.0072138 0.3858579]
[-1.48055724 0.5328847 ] [0.00365743 0.24578294]
%%%% Output: execute_result
<ErrorbarContainer object of 3 artists>
%%%% Output: display_data
%% Cell type:code id: tags:
%% Cell type:markdown id: tags:
``` python
```
---
## Exercises
1. Redo the extrapolation for different values of $\beta t$ (e.g., for $\beta t =$ 1, the internal energy is -0.62186692$t$, and for $\beta t = $ 4, it is -1.90837196$t$).
2. Experiment with different settings for `Checkerboard` and `Symm`.
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment