{ "cells": [ { "cell_type": "markdown", "id": "capital-scenario", "metadata": {}, "source": [ "# High dimensional integration by Metropolis" ] }, { "cell_type": "markdown", "id": "martial-excellence", "metadata": {}, "source": [ "The classical method for high-dimensional integration is the\n", "*Vegas* algorithm, discussed before. However, *Vegas*\n", "can not resolve poles, which are not along one of the axis.\n", "\n", "Problem in physics very commonly require integrals over space of many\n", "coordinates, and might have the form:\n", "\\begin{eqnarray}\n", "I(\\vec{r}_0) = \\int f(\\vec{r}_0,\\vec{r}_1,\\vec{r}_2,\\cdots,\\vec{r}_N) d^3\\vec{r}_1 d^3\\vec{r}_2\\cdots d^3\\vec{r}_N\n", "\\end{eqnarray}\n", "Here $f$ might have poles for many combinations of $\\vec{r}_i-\\vec{r}_j$ or\n", "$\\vec{r}_i-\\vec{r}_j-\\vec{r}_k$, etc.\n", "\n", "For a concrete example, we will think of the following convolutions\n", "\\begin{eqnarray}\n", "I(\\vec{r}_0) = {\\cal N}\n", "\\int \n", "e^{-\\frac{(\\vec{r}_1-\\vec{r}_0)^2}{w^2}} \n", "e^{-\\frac{(\\vec{r}_2-\\vec{r}_1)^2}{w^2}} \\cdots\n", "e^{-\\frac{(\\vec{r}_{N-1}-\\vec{r}_{N})^2}{w^2}} \n", "e^{-\\frac{{\\vec{r}_N}^2}{w^2}} \n", "d^3\\vec{r}_1 d^3\\vec{r}_2\\cdots d^3\\vec{r}_N\n", "\\end{eqnarray}\n", "with noralization \n", "${\\cal N}= \\frac{(N+1)^{3/2}}{(w \\sqrt{\\pi})^{3 N}},$\n", "the value of the integral is \n", "$I(\\vec{r}_0)=e^{-\\frac{\\vec{r}_0^2}{(N+1) w^2}}$\n", "\n", "\n", "If width $w$ is small, this is very difficult problem for MC,\n", "even for moderate values of $N$.\n" ] }, { "attachments": { "cc.png": { "image/png": "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YP78+WbWrFnmxx9/NHPmzDGzZ8+O3ObOnWvmzZtXsP38889Nx/r966+/WrcFFljABFurVq2afgfn2rZtaxZccMGCLf9cu3btTIcOHazbIossYhSHAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCECgHgigFKuHVqKMEIBAJghIETVz5kwzY8aM2O3bb78133//feQmRVijBSnPOnXqFLkttthipnPnztatdevWjYaE+kAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIZJdDKG+TNZbRsFAsCEIBAxQlo9da0adPM559/br744gv/t46jtq+//tpfnVXxQrWgDKQ069atm1lyySX9vX7nb0sttZTR1r17d1altSC5oKoQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgEAZRilaBKmhCAQCYIyATh5MmTzaRJk8xnn33m/5biK3+bOnUqiq5MtJa7EF27dvUVZIGibOmllzY9e/Y0yy67rFluueXMMsss45t7dKfEHRCAAAQgAAEIQAACEIAABCAAAQhAAAIQgEBLJIBSrCW2OnWGQIMQkNLr008/NR9//LG/6bcUYIESTAovQssi0KVLlyYlmZRlyy+/vFlhhRXMiiuuaHr16oXSrGWJA7WFAAQgAAEIQAACEIAABCAAAQhAAAIQgEABAZRiBTg4gAAEskbgxx9/NB9++KEZP358k/Jr4sSJRtuUKVNMLocF2Ky1WZbLIzOMgZIs2K+88sqmT58+ZtFFF81y0SkbBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgUCIBlGIlAiQ6BCBQOgEptrTKS4ovbRMmTGj6LV9fBAhUg4B8mQUKMinJgt+9e/c2rVu3rkYRyAMCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoIAGUYhWES9IQgEAhASm/5Ntr3Lhx5r333jNjx471f+t4zpw5hTfX+VGHDh1Mp06dIreOHTv6Zvx0T9TWvn17s+CCC8Zubdu2NQsssIB1+/XXX31facFe7IPf2v/8889G5ifjtrlz55rZs2f7m9om+B3stYLv+++/j9x++OGHOm+9wuKLt5Rkffv2Nf369TOrrbaa/1smGVGWFbLiCAIQgAAEIAABCEAAAhCAAAQgAAEIQAACWSaAUizLrUPZIFDHBKQweeedd8zbb79txowZ42/vv/++kTKlnoKUU1pB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7OLyyy9vtttuOzNo0CDf5CLPfESjcAoCEIAABCAAAQhAAAIZJTBz5swmv8bybfzee++Z999/3/zwww8ZLXF8saTA0riEti5duvim+GSOL2qT76pACaYVSFJetYTw888/+0qyWbNmme+++86o/WfMmBG7yaz/tGnTzNdff10V9xrlbgP5LZOSbPXVV/cnbctvvVaWSWFJgAAEIFAKAZRipdAjLgQqQEAvLY899pivCNOqML3oVCLIxrOUYNo23nhjw4qRSlAmTQiUTkAmTl544QV/k5JMH7qVCFKIDRw40FeQbb/99kYfIAQIQAACEIAABCAAAQhAIBsE5OdLiq+33367SRE2adKkbBQuphRagdWjRw/f7YJcLwRboPzK30spRqgMAa1ek6UhKcjyt6lTpxpZJPriiy+aNinZshz03dqvXz8jBVn+JiUpAQIQgEBSAijFkpLiPghUkIAGuR9++GEzYsQI89prr1XElreWnsts2qabbuorwbp3717BGpE0BCBQKQLffvutv4L0+eefN88++6x56623KjLrTx8aO+ywg9l5553N+uuv32JmX1aq3UgXAhCAAAQgAAEIQAACSQl88sknBf6IZWa9UhNmk5YpfJ9cLsjsnSbTBdtyyy1nlllmmSbll1Z8tZRVXGE+9XosE40y8y9FmRRmUrzK55z2wZZFxZlWkMnvvbb+/fubtddeG/OL9SqElBsCVSCAUqwKkMkCAmECsjkt02gPPfSQv2nGV7lD7969fXNoUoRp0wwsAgQg0HgE9HH83HPP+QoyKclkfrHcQbM7d9ppJ7PLLrv4/Yns7BMgAAEIQAACEIAABCAAgdIJaOWOfAy/+uqrZvTo0f6miXBZCFrZJSszK6ywQtNevsalBNM3gnxtEVoegR9//LFJWTZx4kSjTeNawW9dr3WQMnaVVVbxFWSa5Ck3IVpZptWLBAhAAAIoxZABCFSJgGbbPPXUU74SbPjw4UZmEssZtPJr6623NltuuaU/aL300kuXM3nSggAE6oSAzGKMHDnSPP300+aJJ54wmmVaziCzFDKvKAWZ/JHJqTUBAhCAAAQgAAEIQAACEHATkE8omT+UEkwTZbX/9NNP3REreIfGDvr06eP7atJeE2ylCJP/YXwOVxB8AyctRW+gKJswYYLRNn78eH8/e/bsmtW8Xbt2vpJMCrINN9zQV5Qx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AQgUEvj888+NJh5oNa7MUpQSevXqZQ499FBz0EEHYXqmFJDEhQAEIAABCEAAAg1K4MsvvzTDhw83Dz74oD94LV/h5Qz9+vUzW221la8E0yoPzJ+Vky5pQaA+CHzwwQd+//L0008bbRpnLGfo2bOnPzFUSrJNN93UaFUZAQIQKC8BlGLl5UlqGSbw7rvvmquvvtrccccdZvbs2alL2rlzZ18JdsABB/gOM1MnREQIQAACLYyAPh5uv/12f5syZUrq2uujYPfddzfHHHOM2WijjVKnQ0QIQAACEIAABCAAgfonoElY//73v82wYcN8/2DlrJHMeEsJJv8/2mMVppx0SQsC9U9APslef/118+STT/rbq6++WlYfhYsvvri/eky+twcOHGhkSYUAAQiUTgClWOkMSSHDBH755Rd/hthVV13l2wNOW9TWrVv7zjAPPPBAs8MOO5gFF1wwbVLEgwAEINDiCfz666++T4d//etf5oEHHjBz585NzUTOy48++mjffC3malJjJCIEIAABCEAAAhCoKwKVUoRp8pXMIG6zzTa+ImyttdYymO+uK9GgsBCoKQGtGpP/QinJHn/8cfPZZ5+VrTwoyMqGkoQgYFCKIQQNSUD2fWUe8frrrzcyn5A2rL766mbIkCFm//33N926dUubDPEgAAEIQCCGgHw93HfffUYKspdffjnmLvfpRRdd1DereNRRR+Gk2I2LOyAAAQhAAAIQgEDdEdB3/r333uu/O44aNaps5de3/vbbb28GDRrkrwbDJGLZ0JIQBFo8gbFjx/q+DUeMGOF/72plWTnCYost5q8g23vvvf0VZJrMT4AABJITQCmWnBV31gEB+au5/PLLff81WiWWJiy88MK+ecTDDjvMd5qbJg3iQAACEIBA8QQmTJhgbrzxRnPrrbea6dOnF5/Af2NoRe9JJ51kNttss9RpEBECEIAABCAAAQhAoPYENIFKlgXuvPNO34ePLA6UI6y77rq+EkyKsP79+7MarBxQSQMCELASmDlzpnniiSfMI4884q8i+/rrr633J70oxf5ee+3lj2VusMEGSaNxHwRaNAGUYi26+Ruj8rlczmjGxWWXXWaee+651JVab731zOGHH240y6Jjx46p0yEiBCAAAQiURkAO0R966CEzdOhQ89RTT6VObM011/SVY/pAwOxtaoxEhAAEIAABCEAA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IiNTEgQIQAACEIAABCDQ6AS+/PJLI19h1113nZkxY0aq6nbs2NHsvffevjJs/fXXT5UGkSAAAQhAoHQCUojdc8895oYbbijJB6S+h6Uc04pfFi+U3i6kUD0CKMWqx7rF5vTJJ5/4yjA5eSzWpIKUYOeee67R4CMBAhCAAAQgUAkC7777rr/669///nfR/6e22WYbc/HFF5u11lqrEkUjTQhAAAIQgAAEIFBTAm+//ba57LLLzL333mt+/vnnVGVZZ511fJNb++yzj1lkkUVSpUEkCEAAAhCoDIExY8b4yrE777zTfP/996ky6dWrlzn++OPNwQcfbBZeeOFUaRAJAtUkgFKsmrRbWF5ysCsTU9dcc03RL88aZJQybMMNN2xh1KguBCAAAQjUisD777/v/9/SjLliJ3HIKbz+5y277LK1Kj75QgACEIAABCAAgbIReOKJJ3xfrCNHjkyVZvv27Y2UYEcffbSRUowAAQhAAALZJjB79mzfrKJWBWtCRJrQqVMnc+SRR5oTTjjByAcZAQJZJYBSLKstU8flmjt3rvnHP/7hz5wvdobB9ttv7yvDMKVQxwJA0SEAAQjUOQH5x5CC66677jK//vpr4tosuOCC5thjjzV/+MMfzOKLL544HjdCAAIQgAAEIACBLBCYP3++GTZsmK8M08qBNEGrBX7/+9/7qwU6d+6cJgniQAACEIBAjQm8/PLLvslcWVNJs0pY38ZDhgwxp556qundu3eNa0P2EGhOAKVYcyacSUlAA4e33367bypxypQpRaUiM4kagNxggw2KisfNEIAABCAAgUoRGD9+vD9RQ4NDxQQ5iz/rrLPMMcccY9q1a1dMVO6FAAQgAAEIQAACVSegia233HKLufTSS43cH6QJ2267rb8qbLvttsOvTBqAxIEABCCQQQJTp041Q4cONddff735/PPPiy5hq1atzB577GFOP/10Vg0XTY8IlSSAUqySdFtQ2s8++6zvWPGdd94pqtYyj3jRRReZzTbbrKh43AwBCEAAAhCoFgHNlD7nnHPMiBEjispyueWWM3/961/N4MGDi4rHzRCAAAQgAAEIQKAaBGTZRWayZOll2rRpRWfZsWNHc9BBB5njjjuOlQBF0yMCBCAAgfoh8Msvv5gHH3zQXH755eaVV15JVfAtt9zSt6rCGHAqfEQqMwGUYmUG2tKS0yyyU045xe8Yi6n72muvbS644AIjc4kECEAAAhCAQD0QePXVV/0VYM8880xRxd144439wSb97yNAAAIQgAAEIACBWhP47rvv/HeTK664wsycObPo4vTs2dM3GX3YYYcZrZAnQAACEIBAyyEgpZiUY/fff39R7gYCQvo+Pvfcc42UZAQI1IoASrFaka/zfH/44Qd/hZc6wXnz5iWujezI/vnPfza777670RJaAgQgAAEIQKDeCGh1tMw/jB49OnHR9T9PM6m1OnrJJZdMHI8bIQABCEAAAhCAQLkIfPvtt/5A5pVXXmmK9f+tMqy33nq+hRiZwmrTpk25ikU6EIAABCBQhwQmTZpk9P/kxhtvTPU/ZcCAAb5yTOZ3CRCoNgGUYtUmXuf55XI5c+utt5ozzzzTyK5s0tC1a1e/ozviiCN4eU4KjfsgAAEIQCCzBPT/8L777vPNPxTje2ORRRYxZ599tjn++OONnA8TIAABCEAAAhCAQKUJfPPNN+ayyy4z//znP40muBYbdtxxR3PaaaeZjTbaqNio3A8BCEAAAg1OYNasWb5iTP9n0vgd04QLrRwbNGhQg5OielkigFIsS62R8bK88cYb5qijjjKvv/564pIutNBC5uSTTzannnqq0UAgAQL/j70zgb+h+v//GxFSlC07iYhUlhBFkSVll0JC9q1IUslO1iSEkuxZokKSVFQokTVLEW0SUkREdf/zmu9vPv+5c2fOzP187n5f78fjPu6ds805zzl37tzzPu/3mwRIgARIIJEIwFp62rRpMmLECMGCk1eB5TQWpurWreu1CsuRAAmQAAmQAAmQQFAE4BpxwoQJAjeJ586dC6ouLMFatWqlK8NuvPHGoOqyMAmQAAmQQPIRuHTpkixYsECPq71///6gAVSoUEH3rFKnTp2g67ICCQRLgEqxYIklYXk8SD/77LMyffp0wc54L5I+fXrp0KGDDB06VPLly+elCsuQAAmQAAmQQNwSgAui0aNH64tOFy5c8DwOuBOGK2LE5qCQAAmQAAmQAAmQQCgIQAE2adIkGT9+fNAxw7JmzSodO3bUN7cWKlQoFN1hGyRAAiRAAklEAGvHK1askDFjxgjijwUriDmGsAN33HFHsFVZngQ8E6BSzDOq5CtouEqEm4STJ096BlCrVi19UbBMmTKe67AgCZAACZAACSQCgR9//FGPN7Zo0SLPw8HiE9xF9OnTRzJmzOi5HguSAAmQAAmQAAmQgJnA33//rVuwP//883LixAlzluvnHDly6O6de/XqJddcc41reRYgARIgARIgATcCn3zyiYwaNUrWrl3rVjQgHxZj8MhSsWLFgDwmkEBaCVApllaCCVp/165duqvETZs2eR5h8eLFddcMDRs29FyHBUmABEiABEggEQng9xNxw+B62KuULl1apk6dKjVr1vRaheVIgARIgARIgARIQP755x+ZNWuWDB8+POh4LlCA9e3bV6AMY8gDTiYSIAESIIFwENiyZYsMGzZMVq9eHXTzjRs31pVjdOUbNDpWUBCgUkwBJxmzzp8/L4MHD9ZdOf3777+eEODB+bnnnpPevXtLpkyZPNVhIRIgARIgARJIdAKGxfUzzzwjx44d8zzchx9+WBCkOGfOnJ7rsCAJkAAJkAAJkEByEnjnnXdkwIABcuDAgaAA5M6dW3eRiLjh2bJlC6ouC5MACZAACZBAagh89dVXunIM7hWDEYTpad++vR6mJ3/+/MFUZVkSsCVApZgtluRMXLdunXTp0kUOHz7sCUC6dOn0uGHw85onTx5PdViIBEiABEiABJKNwNmzZ3WXEVB0Xbx40dPwc+XKpW9Qad26tafyLEQCJEACJEACJJBcBBCn5cknn5SNGzcGNfC8efPq9bp27Spw4UwhARIgARIggUgT2Llzp27dvHz58qBOnSVLFt26GaF+aN0cFDoWthCgUswCJBkPf/vtN/2GMm/ePM/Dr1Chgrz88stSqVIlz3VYkARIgARIgASSmcDBgwelZ8+eQflThx/16dOnS9GiRZMZHcdOAiRAAiRAAiTwfwS+/fZbgRX6smXLgmICN4lPPfWU/iyCRUUKCZAACZAACUSbAML3wPvYypUrg+oKNpHC01nnzp0ZlzsocixsEKBSzCCRpO8LFiyQPn36yMmTJz0RQPBdWIbBogymqxQSIAESIAESIIHgCGARC7+9P/30k6eK2MUN/+uIUZYhQwZPdViIBEiABEiABEggsQicOnVKhgwZom+WQQwxr4Kd9E888YT+7MFd9V6psRwJkAAJkEAkCXzxxRcycOBA+fDDD4M67fXXXy/jxo2TRo0aBVWPhUmASrEknQM///yzdOrUSdasWeOZwCOPPCJjx44V+B6nkAAJkAAJkAAJpJ7AuXPndEXXxIkTxevCFqy0Z8+eLWXKlEn9iVmTBEiABEiABEggrgjgOQFW49gR//vvv3vuO6zBevXqJXAxBSsxCgmQAAmQAAnEOoH169fryrFNmzYF1dW7775bXnzxRSlbtmxQ9Vg4eQlQKZaE1x4Lao8//ricOXPG0+hvuukm3VVitWrVPJVnIRIgARIgARIgAW8E9u3bJwhwv2HDBk8VMmXKpO8SRwwRWo15QsZCJEACJEACJBC3BNauXatbeOF5watcdtllumcX7LhH/DAKCZAACZAACcQbgdWrV+uuguFe0avAoxk8m8HLSs6cOb1WY7kkJUClWBJd+KNHj+q+VnFj8SKXX365DBo0SA/CiwdrCgmQAAmQAAmQQHgIzJo1S/r16yd//PGHpxMgpic2uZQuXdpTeRYiARIgARIgARKIHwKIGwaXh6tWrQqq082bN5dRo0YJ3ElRSIAESIAESCCeCfz3338yb948PeaY19ADGC9C/8C6ukePHsL17HieAeHtO5Vi4eUbM63jJoJYJF4X22rWrCmvvPIKH6Zj5gqyIyRAAiRAAolO4Pjx49K7d29ZsmSJp6HCamz48OHSt29fWo15IsZCJEACJEACJBDbBFLjXhkjql69uh5TpXLlyrE9QPaOBEiABEiABIIkcOHCBXnppZfk+eefl9OnT3uuXapUKZkyZYrAtSKFBKwEqBSzEkmwYyywIXbYypUrPY0M2vTx48dLhw4dPJVnIRIgARIgARIggdASePfdd3WXij/++KOnhrEAhs0v3BXuCRcLkQAJkAAJkEBMEli2bJnuKjGY3fBY8Bs9erQ0bNgwJsfETpEACZAACZBAqAicOnVKRowYIVOnTpVLly55brZly5YyYcIEyZ8/v+c6LJj4BNIn/hCTd4RYVEM8MK8KsQceeED2799PhVjyThmOnARIgARIIAYINGjQQL7++mvdaixdunSuPfriiy/klltukZkzZ7qWZQESIAESIAESIIHYIgBXifXq1ZMWLVqIV4UYYqW8/PLLsnv3birEYutysjckQAIkQAJhInDNNdfICy+8oK9dN23a1PNZFi9eLNhEMnHiRPnnn38812PBxCZAS7EEvL5//fWXHpdk+vTpnkaXO3duQdkmTZp4Ks9CJEACJEACJEACkSGwceNGad++vRw8eNDTCRs1aiSvvvqq5MqVy1N5FiIBEiABEiABEogOgfPnz+uuoMaOHSsXL1701AnERkGMFMRKgZcXCgmQAAmQAAkkK4ENGzbooYJ27drlGUHZsmX1TSVwO0xJbgJUiiXY9d+2bZu0bt1avvnmG08jg3UY/Kty8cwTLhYiARIgARIggYgTwGaXZ555Rvej7uXkefPmlddff13fde6lPMuQAAmQAAmQAAlElsDatWula9eucuTIEc8nrl+/vr5D/oYbbvBchwVJgARIgARIIJEJ/Pfff7rHlIEDB8rJkyc9D7Vdu3Z6+CBYn1GSkwDdJybIdcdNAAEHq1at6kkhBiXYkiVLZNGiRVSIJcgc4DBIgARIgAQSk0DWrFnlxRdfFOyEu+6661wH+euvv8q9996ru19EUGIKCZAACZAACZBAbBDAgl3btm31jSteFWJQgq1evVoQHoEKsdi4juwFCZAACZBAbBBInz69dO7cWeCKuG/fvgKLai8ye/ZsKV26tL4u7qU8yyQeAVqKJcA1PXbsmLRp00Y++ugjT6Np3ry5HpQQbhMpJEACJEACJEAC8UMAVmMDBgzQrby99BqxRbEJhotoXmixDAmQAAmQAAmEj8C8efP0BbvffvvN00mwKWbQoEHSp08fyZgxo6c6LEQCJEACJEACyUxg//790rNnT89r5GAFS+xp06ZJ4cKFkxld0o2dSrE4v+Tr1q3TFWLHjx93HclVV12lL6JBgUYhARIgARIgARKIXwL4/YfLh6NHj7oOAotqeMh/+OGHXcuyAAmQAAmQAAmQQGgJHD58WHeV+MEHH3huuFmzZjJx4kQpWLCg5zosSAIkQAIkQAIk8D8Cixcv1jei/PLLL56QXHHFFTJixAjp1auXwPqMkvgEeJXj9Br/+++/An+pdevWFS8KMQQQ3Llzp65Ai9Mhs9skQAIkQAIkQAL/R6B27dqCgMJYNHMTWJc98sgj0r59ezl37pxbceaTAAmQAAmQAAmEgABCHECxVbZsWfGqELv++utlzZo1snTpUirEQnAN2AQJkAAJkEByEmjZsqXAagzW1hkyZHCFgP/JKIuwRHv37nUtzwLxT4CWYnF4DX/66Sd56KGHZOPGja69hy/VoUOHylNPPUVNtystFiABEiABEiCB+CMwZ84cfUfb2bNnXTtfqlQpwa45uFWkkAAJkAAJkAAJhIfAwYMH9c0oXv6zoweZM2eWZ555Rp588km5/PLLw9MptkoCJEACJEACSUhgz5490r17d/nss888jT5Tpkz6Wnq/fv08KdQ8NcpCMUeASrGYuyTqDq1du1ZatWolp06dUhfUchE/ZMGCBVK+fHnXsixAAiRAAiRAAiQQvwTgmgnuETdt2uQ6CCy8wZ0irMcoJEACJEACJEACoSPg8/lk8uTJ8vTTT8v58+c9NXz33XfLjBkzpHjx4p7KsxAJkAAJkAAJkEBwBPD7PHPmTOnfv7+cPn3aU+XbbrtNZs+eLdhYSkk8AnSfGCfXFF/ekSNH6sH/vCjEOnToINu2baNCLE6uL7tJAiRAAiRAAmkhUKxYMdmwYYM899xzki5dOmVTFy5c0Hevd+vWTS5evKgsy0wSIAESIAESIAFvBA4dOiQ1a9aUxx9/3JNC7Oqrr5ZZs2YJ4oRSIeaNMUuRAAmQAAmQQGoI4D9yp06dZN++fdK8eXNPTWzZskVuvfVWGT9+vMAlMiWxCNBSLA6uJzTY2P29atUq195my5ZN32UG94oUEiABEiABEiCB5CPw8ccfS+vWreXYsWOug69UqZK8+eabUqhQIdeyLEACJEACJEACJGBPYOrUqXrIAsTx9CIPPvigTJo0SXLnzu2lOMuQAAmQAAmQAAmEkMDKlSt1l4o///yzp1arVKkiCFtQokQJT+VZKPYJUCkW49do165d0qxZM8GuMze55ZZbZMmSJYLgvBQSIAESIAESIIHkJXD8+HFp27atwO2ym+TKlUveeOMNqVWrlltR5pMACZAACZAACZgIYANK+/bt5f333zelOn8sXLiw7sK4fv36zoWYQwIkQAIkQAIkEHYCf/75px7P8+WXXxZ4aHOTrFmzysSJE3WLM7eyzI99AnSfGMPXCPHAqlat6kkh1rNnT9m8eTMVYjF8Pdk1EiABEiABEogUgTx58sh7770no0aNcg0OfPLkSalbt66MGTMmUt3jeUiABEiABEgg7gm88847ctNNN3lWiHXp0kX27Nmjh0SI+8FzACRAAiRAAiQQ5wSuvPJKPQ4owhB4cWMMa3D8ljdu3FjwH5oS3wRoKRaD1w9+ShGYd9y4ca69wxcYQf+aNGniWpYFSIAESIAESIAEko/Apk2b5IEHHpCjR4+6Dh7unF577TXJkiWLa1kWIAEH1XJ7AABAAElEQVQSIAESIIFkJHDu3Dnp06ePzJw509PwYR2GsrVr1/ZUnoVIgARIgARIgAQiSwAKL6zFT5482dOJ8+bNK6+//rrUq1fPU3kWij0CVIrF2DU5c+aMtGrVSlavXu3aszJlysiyZcukZMmSrmVZgARIgARIgARIIHkJwJ1iy5YtBbvg3KRChQry9ttvS4ECBdyKMp8ESIAESIAEkorAli1bpE2bNnLw4EFP4+7UqZOMHz9esJmVQgIkQAIkQAIkENsEPvnkE90t8uHDhz11tEePHrpRS+bMmT2VZ6HYIUD3ibFzLXQ3iQjc50Uhhp3cn3/+ORViMXT92BUSIAESIAESiFUCcKe4bt066devn2sXt23bJpUqVZIvvvjCtSwLkAAJkAAJkEAyEECsESi3qlev7kkhVrBgQVmzZo3MmDGDCrFkmCAcIwmQAAmQQEIQuPPOO2XXrl0CZZcXmTp1qtx2222yf/9+L8VZJoYI0FIsRi7Ghx9+qLs2+v3335U9uuyyy/SH8d69eyvLMZMESIAESIAESIAE7AgsX75c2rVrJ2fPnrXLTknLlCmTvPrqq/Lwww+npPEDCZAACZAACSQbAcQNeeSRR/RYnV7G3rp1a5kyZYpkz57dS3GWIQESIAESIAESiEECWKvH77+XMARZs2YVKMhQnhIfBKgUi4HrhN1jPXv2lH///VfZm2uvvVaWLl0q1apVU5ZjJgmQAAmQAAmQAAmoCBw4cECaNm0q+/btUxXT8wYMGCAjR46UdOnSuZZlARIgARIgARJIJAJwo4TwBl4WxKAEmzZtmsCrC4UESIAESIAESCD+CcB4pUuXLvLmm296GgxcLONZ4IorrvBUnoWiR4BKseixF7hgwELTuHHjXHtRsWJFPb5H/vz5XcuyAAmQAAmQAAmQAAm4Efjzzz/1hb53333Xragej2z27Nly+eWXu5ZlARIgARIgARKIdwL//fefviFk6NChgs9uUrNmTZkzZ44UKlTIrSjzSYAESIAESIAE4owAfuN79erl6m0FwypZsqQsWbJEypUrF2ejTK7uMqZYlK73hQsX9AUmLwox7EzDDjUqxKJ0sXhaEiABEiABEkhAAldeeaW888478tRTT7mObvHixVK7dm357bffXMuyAAmQAAmQAAnEM4ETJ05I3bp1ZfDgwa4KsYwZM8rYsWMFLpaoEIvnq86+kwAJkAAJkIAzAbhF3Llzp9x+++3Ohf4v55tvvpHKlSvLzJkzXcuyQPQI0FIsCuzhk7xRo0ayefNm5dnhpmjUqFGeFquUDTGTBEiABEiABEiABBQEFi5cKI8++qj8/fffilIi119/vR5TpXjx4spyzCQBEiABEiCBeCSwZcsWad68ufz000+u3S9RooRg08gtt9ziWpYFSIAESIAESIAE4p8AQh+NGDFChg8f7rpxBqPt0KGDHmuMHldi79pTKRbha/Ltt9/KvffeK4cOHVKeGbu3sUDVoEEDZTlmkgAJkAAJkAAJkEAoCGzdulUaN27sGjclZ86csmLFCqlatWooTss2SIAESIAESCAmCEyfPl0ee+wxuXTpkmt/WrdurccMyZYtm2tZFiABEiABEiABEkgsAhs2bNBDEfzyyy+uAytfvrwsW7ZMihQp4lqWBSJHgEqxyLGWbdu2Sf369QWWYiopXLiwIL5HmTJlVMWYRwIkQAIkQAIkQAIhJYCH+vvuu0+2b9+ubDdz5sy6n3SUpZAACZAACZBAPBM4f/68dOvWTebOnes6jCxZssiUKVOkffv2rmVZgARIgARIgARIIHEJwN0y3CquWbPGdZDXXHONLFiwQHfP7FqYBSJCgDHFIoJZdB/jd911l6tCrEKFCvL5559TIRah68LTkAAJkAAJkAAJ/H8C+fLl0+OYulmqIzZqkyZNBAGHKSRAAiRAAiQQrwQOHz6sxwfxohDDplVYVVMhFq9Xm/0mARIgARIggdARyJ07t27UMmbMGMmQIYOy4VOnTume4+B60efzKcsyMzIEqBSLAOelS5fqE//s2bPKszVs2FBgfnnttdcqyzGTBEiABEiABEiABMJF4IorrpC3335bevTooTwF/KljYXD8+PHKcswkARIgARIggVgksH79eqlUqZLs3LnTtXuICYJ4Y6VLl3YtywIkQAIkQAIkQALJQSBdunTy5JNPyqeffioFCxZUDhrKsEGDBkmLFi3k3LlzyrLMDD8BKsXCzHjatGny4IMPuvol7927tyxfvlyyZs0a5h6xeRIgARIgARIgARJQE8BOt8mTJ8uECRMED/oq6d+/v+BFIQESIAESIIF4IYD/6ffcc49g57ZKLr/8cnn11Vdl5syZAteJFBIgARIgARIgARKwEqhSpYp89dVXUqtWLWtWwDHW/6tVqyY//PBDQB4TIkeAMcXCyHr48OEyePBg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EbejR48eynLMJAESIAESIAESIIFQE4DRDMIRNG3aVNk0LN8ffPBBfQOPsiAzU0XgslTVSvJKUIh1795d4KZJJQiOhx3UCKqXTNK5c2epWbNmwJDxZcYfFby2b9+u/1n5559/AspZE7CANnXqVBkyZIg1i8dhJHDdddfpbs6c3FdmypQpjGdn0yRAAolGAA99iMFpFtxHYOHlVY4dOybPPPNMQPFZs2bpypmAjAgk3HrrrX5n+eyzz3SLKDdf4X6V4vzgsssu063mM2fOrIyvarhFhlKTvyFxftHZfRIgARKIMQI//vijvqN6//79yp7ly5dPVq1aJdbfb2UlZpIACZAACZAACZBACAlgvQBWYP3795cJEyY4tgwdBDbxHD9+3JNbaMeGmBFAgEqxACTuCU888YTu4klVEkohPGwn06KYweO2227TNdnGsdM7lGPY2Q9LMDeBdQGVYm6UQp9PC8fQM2WLJJCsBBBX0yr16tWTq666yprseNynTx+BGwGzYOeU1VrLnB/uz3B/YBZs5IBizC3WlrlOInyGK8nXX39d8NA+f/58xyHh9xzXDH8AUIdCAiRAAiRAAmklgGD0derUkZ9//lnZVNmyZeXdd991jeWhbISZJEACJEACJEACJBACAgglMW7cOClevLj07NlTnIwScKqhQ4fqXtReeuklgQtoStoJkGKQDBHf6sUXX1TWuuOOO5JWIaYEY8nMmTOnjBw50nbXv6WouO34s5bnMQmQAAmQQGwRQFwpq9StW9ea5HgMV0iLFy/2y4eFUrTjTubPn9+vTzjYtGlTQFoyJODhHHHjHnroIeVwYSnWsWNHXYGmLMhMEiABEiABEnAhsGXLFsH/bzeFGDarYNOKW3B7l9MxmwRIgARIgARIgARCSqBr166ycuVKV09zL7/8srRq1UrgiY2SdgK0FAuCISbfoEGDlDWqVaum7z6Dn3KKNwJY0FyyZIkcPHjQscKZM2fk6NGjYrf46FjJkgFT04ULF+ouLb/77jv9jxMW8BA7q0KFClKlShX9BSs/J7dOR44ckR9++MHSsv8hLBayZcvmn+hwBPeRqsVTLPgiLp2dYDf+5s2b9Vguhw8fll9//VV/wb0YLBXgoxbuQfACN/wRbNiwoePYrOc4e/asfPXVV9Zkv+M777zT79jLASwE33vvPVm9erUcOnRINwHGtYFb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4/NhdHrMs5IACZBAYhLYt2+fPPbYY46Dg4U1FGZXXnmlYxlmkAAJkAAJkAAJkAAJRJYANpI++uijjif9/vvvpVOnTo758ZqREEqxxYsXy8cff+x4DWAhZnXD5FiYGSQQRgI333yzwGUIhQRIgARIQE2gevXqkjlz5pRCiBu6a9eulONIfEBMKmscs+uuu07eeOMNSZ8+IR6hIoExrOfIly+fwH22k8A/OlwbU0iABEiABMJHAJtWsIv4/PnzjieZMGGClCtXzjGfGSRAAiRAAiRAAiRAAtEhMGnSJCldurTjyd98882Es/aP+xUdxPl44oknHC9aiRIlhJY5jniYEUEC8NGKHe3p0qWL4Fl5KhIgARKITwJQiN1///1+nV+zZo3fcTgP/vrrL2nRooXfAl/WrFnl7bfflquvvjqcp2bbQRLArra77rrLsdbzzz8v2N1GIQESIAESCA8BuJVXbVyBq9vu3buH5+RslQRIgARIgARIIGkI+Hw+OXnypMCTDOKO79+/X06cOBEX48cmIngywXOR8RoxYkRY+/7HH3/orhGN861atcr2fFjrgNGReWOyteDjjz+eUP+r4z6mGALfq+I6wS+m6oJaLzCPSSAcBK644gp59913pVq1auFonm2SAAmQQEISgLJj6dKlKWPDfXTgwIEpx+H8AAsxuIIyC1wpIi4kJfYI4HkP18bOlTYsF/r06aMHEY69nrNHJEACJBDfBDZv3ixjx451HEThwoX1UAbWAgjajnuzm+D+jngXqZEDBw5Iu3btHKtis+KmTZsc85lBAuEgwHkZDqpskwRilwB+Z+yMOa699lrH2MipHc1///0n9erVkz///NOvieLFi8vcuXPj2tsJFGATJ07U/9PZWabnyZNHPvnkE0H80liVnj17CuKvmqVLly7mw5B/PnPmjCxYsCCl3d9//13uu+++lGPzB/yfBuNu3bqZk1M+Y161b99ePvzww4Qw+IhrpRi0wbhYTtKqVSupUaOGUzbTSSDsBOA7v2XLlvoPYGr/zIW9kzwBCZAACcQogdq1awsW03744Qe9h1u2bNF3geXOnTusPUYMMWscsQEDBkjz5s3Del42nnoC+KOHOG/Dhg2zbQQWfu+//77UrVvXNp+JJEACJEACwROAVfUjjzwiWISzE7gaXrhwoeTIkSMgG8quL774IiDdmjBr1izl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QUFBpHrQS9rBT2OReYrxOi+66CLlcn/88UdlHSpAAARAAARAAARAAARAINAEfv31Vzp27Jh02AEDBlCFChWkdTCCAAiAQHEi0L17d+VyVBsPyg6oAAEQAAEQAAEQAAEQAIECIHDgwAFasWKFdORWrVpReHi4tC4QxiIVxQYNGqS8BohiSjSoAAEQAAEQAAEQAAEQKAACut+fut+tBbAUDAkCIAAC+SbQuXNnKl++vLQ/PMWkWGAEARAAARAAARAAARAoZAJ///03nThxQjqr7iEvaQc/jUUqirHil5CQIF3yypUraePGjdI6GEEABEAABEAABEAABEAgkASys7NpypQp0iGrVKlCffv2ldbBCAIgAALFjUBISAi1adNGuqy1a9dSamqqtA5GEAABEAABEAABEAABECgsArqHtUq1KMaAdU/dTpgwobDuAeYBARAAARAAARAAARAowwR++eUXysnJkRLo3bs3BQcHS+tgBAEQAIHiSEC3kTBz5sziuGSsCQRAAARAAARAAARAoAwRUOXzZgS637KBQFSknmJ8AYMHD1Zex5dffqmsQwUIgAAIgAAIgAAIgAAIBIqA7nen7vdqoObHOCAAAiAQSAK6jQSVV2wg58dYIAACIAACIAACIAACIKAikJ6eTosWLZJWN2zYkOLj46V1gTIWuSjWpUsXqlOnjvR61q1bR4sXL5bWwQgCIAACIAACIAACIAACgSCQlpamDJ1YuXJluuiiiwIxDcYAARAAgUIj0LNnTypXTv6f+xDFCu02YCIQAAEQAAEQAAEQAAEJgWnTpinzifXq1UvSI7CmCoEdzv/RgoKCaMiQITRy5EhpZ35qt23bttI6GEEABEAABEAABEAABEDgdAl88803dPToUekwAwYMoLCwMGkdjCAAAiBQXAmEh4dTp06daN68ebYl7tixgzi3WNOmTW11MICAvwROnDhBh/enUXbKXjp+5AhVqBpMlSOjqWp0rL9DFXr7Y2K9c4ffSblpKd65Y1q1ozZ3P+E9D+TB4YwDNO/JuyjvUJZn2CZX3Eh1eg0I5BQYCwRAAARAAARKBIHJkycr19mnTx9lXaAqilwU4wu58sorlaLY+PHj6ZVXXlE+5RYoEBgHBEAABEAABEAABECgbBLQhU7k36koIAACIFASCfCGgkwU42vhjQiIYiXxrhafNaeuWEwrx75B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KZQgZdjPfvazUErzHh500EHmgAMOcHYwHCNIGY466ihnPiV269atcC0cs0yJ7TxXFi1aZH76058W/uT6cOHChQVWpQ4+97nPGVd8pkbGq9N7ypaLL744k6JT1kbnnXeeXY1/r0HcweCi4hPa8oc//MFOij2X5a3t6jY2c4YLeXhXxLnpTMIghb8tPXr0MLby0n5O9L13+eWX20UTz6V805y56aabCn+By9fEgiUu5nFelrjlpr2c598TTQudjkEAAhCAAAQg0FYEUIq11XBzsxCAAAQgAIHaErAX/NSay6WUqxejRo0yK1asKLqknfWy2Am7nJKFkuI22XLyySen2nHvsibZb7/97Ooyn7usfGxFSFKlw4cPd/bftj5LqqNW1y666KJI1VJA/PjHP46kxyVcdtllznhrcfkbme6y/Ar6s/XWWweH/qfLZVyQwc4bpOuznedK//79wyj84zlz5kTS4hI0J1zxm1wuKePqqHa6LAZtkSs+KcbSyvXXX29cii1XHVK22Pf74osvGpfS325fCurvfe97dnJVzvPwrpCiStbHad/fv//97828efMi/FyMx4wZE7Ec1rjb332RykIJym9/L2hDSaWSx3lZKZNGlW/V3xOKCWv/pZ1HjWJNuxCAAAQgAAEItCcBlGLtOe7cNQQgAAEIQKAmBLSoJkVWWNIoxe68807zq1/9KlzMP9Zi8Kc+9ami9F122cX85Cc/KUrTyZtvvmls13Z2Ji122vF65OLuYx/7mJ0187lLsfbwww+XjE+j2CFaPL399tudbWphvdHy2c9+1hx33HGRbshaQW7wtAgWJ1oQk8IzqzVEXH31SLetO5LatJ/3pLzha+08V1yL73JZN3Xq1DCi2OPbbrvNaYG1++67x5ap9QXFPfv6178eaeaaa64x3/3udxNj8EnBcckll5hzzjknUl6WV8cff3wkXQl6F4blvffeMyNHjgwnRY7lqu8rX/lKJiVMpJKEhLy8K2T5dcIJJxgxTZLp06f7PO08++67r/N5kMLdVmBJSdmnTx8zd+5cu5rI+R133GEUp9IW17Nn5yl1nsd5Weqem/V6K/6ekGJXG5jsv969ezcrZvoFAQhAAAIQgEAbE0Ap1saDz61DAAIQgAAEqk1AMX9s91nLli1LXBBW/JzvfOc7ka5okVm76l1yyimnON3Wacf+dddd5yri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" } }, "cell_type": "markdown", "id": "domestic-delhi", "metadata": {}, "source": [ "![cc.png](attachment:cc.png)" ] }, { "cell_type": "markdown", "id": "operational-pakistan", "metadata": {}, "source": [ "We could create a Markov's chain and take as the probability for a step proportionaly to $|f(x)|$, i.e, the $T(X\\rightarrow X') = min(|f(X')|/|f(X)|,1)$. Here $X$ stands for configuration $(\\vec{r}_0,\\vec{r}_1,\\cdots,\\vec{r}_N)$.\n", "\n", "We would meassure $f(X)/|f(X)|=\\textrm{sign}(f(X))$. As a result we would get correct shape of the function $I(\\vec{r}_0)$, however, the integral itself would be unknown. " ] }, { "cell_type": "markdown", "id": "everyday-pocket", "metadata": {}, "source": [ "## Jumping between spaces\n", "\n", "The most common way to determine the unknown constant is to define two spaces, the **Physical space** and the **Alternative space**. The function in the alternative space should be as similar as possible to the function we are integrating, but its integral must be known, and we should be allowed to jump between the two spaces. Suppose the function in the alternative space is $V_0 f_m(X)$, where $f_m(X)$ is normalized to unity ($\\int f_m(X) dX=1$) and positive function, and $V_0$ is an arbitrary constant.\n", "\n", "\n", "\n", "Probability density in the physical space $P(X)$ is then taken to be proportional to $|f(x)|$ in the physical Hilbert space, and $V_0 f_m(x)$ in the alternative space. The probability to visit a configuration $X$ in the physical and alternative space would be:\n", "\\begin{eqnarray}\n", "& P_{physical}(X) = & |f(X)| \\; {\\cal C}\\\\\n", "& P_{alternative}(X) = & V_0 f_m(X) \\; {\\cal C}\n", "\\end{eqnarray}\n", "\n", "In Metropolis we would have two types of moves:\n", "* jump from configuration $X\\rightarrow X'$\n", "* jump between the two spaces.\n", "\n", "If we are in the Physical Hilbert space, we would accept the step with $T(X\\rightarrow X') = min(|f(X')|/|f(X)|,1)$. If we are in alternative space, we would accept the step with \n", "$T(X\\rightarrow X') = min(f_m(X')/f_m(X),1)$, and if we are jumping from Physical to the alternative space, we would have $T(X_p\\rightarrow X'_a) = min(V_0 f_m(X'_a)/|f(X)|,1)$.\n", "\n", "More precisely, if there is non-symmetric trial step probability, the Metropolis acceptance probability would be $A(X\\rightarrow X')=min\\left(1,\\frac{|f(X')|\\omega_{X'\\rightarrow X}}{|f(X)|\\omega_{X\\rightarrow X'}}\\right)$, where $\\omega_{X'\\rightarrow X}$ is the trial step probability. But let's first think of steps which have symmetric trial step probability.\n", "\n", "We would than sample the following quantities \n", "\\begin{eqnarray}\n", "V_{physical}= \\sum_{i=physical} \\frac{f(X_i)}{|f(X_i)|}\n", "\\end{eqnarray}\n", "when we are in the physical space, and when we are in alternative space we would just count steps in this space\n", "\\begin{eqnarray}\n", "V_{alternative}= \\sum_{i=alternative} 1\n", "\\end{eqnarray}\n", "\n", "These quantities will converge to the following values\n", "\\begin{eqnarray}\n", "V_{physical} &=& {\\cal C} \\int dX\\; |f(X)| \\frac{f(X)}{|f(X)|}\\\\\n", "V_{alternative} &=& {\\cal C} \\int dX\\; V_0 |f_m(X)| 1\n", "\\end{eqnarray}\n", "where $C$ is an arbitrary number, which we do not know. This is because the probability to reach a configuration $X$ in the Physical space is $\\propto dX |f(X)|$ and in alternative space is $\\propto dX V_0 |f_m(X)|$.\n", "\n", "\n", "Because the function in alternative space is normalized $\\int dX |f_m(x)|=1$, we conclude that \n", "\\begin{eqnarray}\n", "\\frac{V_{physical}}{V_{alternative}}=\\frac{1}{V_0} \\int dX f(X)\n", "\\end{eqnarray}\n", "hence we know the integral \n", "\\begin{eqnarray}\n", "\\int dX f(X) = V_0 \\frac{V_{physical}}{V_{alternative}}=V_0 \\frac{\\sum_{i\\in physical} \\textrm{sign}(f(X_i))}{\\sum_{i\\in alternative} 1}\n", "\\end{eqnarray}\n" ] }, { "cell_type": "markdown", "id": "filled-attachment", "metadata": {}, "source": [ "The art in this approach is to find a good function $f_m(X)$, which we know how to normalize, and adjust $V_0$ so that we spent some finite (but not too much time) in alternative space. A good rule is 90% in physical space, and 10% in alternative space.\n", "\n", "The best approach is to self-consistently determine both $f_m(X)$ and the constant $V_0$ during the sampling.\n", "\n", "But before we discuss how to determine both, we would sketch a simpler, and usually even more efficient, algorithm." ] }, { "cell_type": "markdown", "id": "existing-balance", "metadata": {}, "source": [ "## Evaluation of both functions on each configuration\n", "\n", "Alternatively we can define the probability for visiting configuration $X$ to be \n", "\\begin{eqnarray}\n", "P \\propto |f(X)|+ V_0 f_m(X)\n", "\\end{eqnarray}\n", "and we could have only the physical space of configurations $X$, on which we would simultaneously evaluate both $f(X)$ and $f_m(X)$. \n", "\n", "We have freedom to adjust $V_0$. The idea is to adjust $V_0$ so that on average $|f(X)|$ is around 10-times larger than $V_0 f_m(X)$. As a result we would still visit most often those configurations in which function $|f(X)|$ is large, and if $f_m(X)$ is similar to $f(X)$ we would not visit configurations where $|f(X)|$ is very small. Even if the overlap between $f(X)$ and $f_m(X)$ is small, we will still visit configurations where $f(X)$ is large more often, because we will make sure that $V_0$ is such that on avergae $f(X)$ contributes more to the weight that $V_0 f_m(X)$.\n", "\n", "\n", "\n", "The transition probability is therefore \n", "\\begin{eqnarray}\n", "T(X\\rightarrow X') = \\frac{|f(X')| + V_0 f_m(X')}{|f(X)| + V_0 f_m(X)}\n", "\\end{eqnarray}\n", "\n", "We will sample two quantities\n", "\\begin{eqnarray}\n", "V_{physical} = \\sum_i \\frac{f(X_i)}{|f(X_i)| + V_0 f_m(X_i)}\\\\\n", "V_{alternative} = \\sum_i \\frac{V_0 f_m(X_i)}{|f(X_i)| + V_0 f_m(X_i)}\n", "\\end{eqnarray}\n", "\n", "The two quantities will converge towards\n", "\\begin{eqnarray}\n", "V_{physical} &=& {\\cal C}\\int dX\\; (|f(X)| + V_0 f_m(X)) \\frac{f(X)}{|f(X)| + V_0 f_m(X)} = {\\cal C} \\int dX f(X) \\\\\n", "V_{alternative} &=& {\\cal C} \\int dX\\; (|f(X)| + V_0 f_m(X)) \\frac{V_0 f_m(X)}{|f(X)| + V_0 f_m(X)}={\\cal C}\\; V_0\n", "\\end{eqnarray}\n", "\n", "The desired integral will again be\n", "\\begin{eqnarray}\n", "\\int dX f(X) = V_0 \\frac{V_{physical}}{V_{alternative}}\n", "\\end{eqnarray}\n", "\n", "During the simulations of the Markov chain we will adjust $V_0$ so that \n", "\\begin{eqnarray}\n", "\\frac{\\widetilde{V}_{physical}}{V_{alternative}} \\approx 10,\n", "\\end{eqnarray}\n", "where \n", "\\begin{eqnarray}\n", "\\widetilde{V}_{physical}=\\sum_i \\frac{|f(X_i)|}{|f(X_i)| + V_0 f_m(X_i)}\n", "\\end{eqnarray}\n", "\n", "Suppose that during simulation we realize that currently $\\frac{\\widetilde{V}_{physical}}{V_{alternative}} \\approx 1$. It means that $V_{alternative}$ is around 10-times too large, hence we would reduce $V_0$ for a factor (maybe 2 initially, and than recheck). We would also need to reduce with the same constant the current sum $V_{alternative}$, because it is proportional to $V_0$. We will keep adjusting $V_0$ untill the ratio of $\\frac{\\widetilde{V}_{physical}}{V_{alternative}}$ is close to the desired number." ] }, { "cell_type": "markdown", "id": "considered-cherry", "metadata": {}, "source": [ "## Measuring function\n", "\n", "We are left to determine the optimal function $f_m(X)$, which is as similar as possible to $|f(X)|$, but with added constrained that is normalizable, i.e., $\\int dX f_m(X)=1$.\n", "\n", "An obvious choice (think of Vegas) is a separable ansatz:\n", "\\begin{eqnarray}\n", "f_m(X=(\\vec{r}_1,\\vec{r}_r,\\cdots,\\vec{r}_N))=g_1(r_1) g_2(r_2)\\cdots g_N(r_N)\n", "\\end{eqnarray}\n", "\n", "To determine the projections $g_i(r_i)$, we would self-consistently project the sampled function $|f(X)|$ to all axis, just like in Vegas algorithm:\n", "\\begin{eqnarray}\n", "g_i(x)\\propto \\int d\\vec{r_1} d\\vec{r}_2 \\cdots d\\vec{r}_N |f(X)|\\delta(r_i-x)\n", "\\end{eqnarray}\n", "\n", "The integration of separable function is simple\n", "\\begin{eqnarray}\n", "\\int dX f_m(X) = \\prod_{i} \\int d\\vec{r}_i g_i(r_i)\n", "\\end{eqnarray}\n", "To avoid systematic error, we will not treat $g_i(r_i)$ function as continuous function, but rather as a step-wise constant function, with the following property\n", "\\begin{eqnarray}\n", "g(x) = \\sum_{l=0}^{M-1} g[l]\\theta(x_lk_F) $$\n", "\n", "Later it is adjusted to\n", "\n", "\\begin{eqnarray}\n", " f_m(\\vec{r}_1,\\vec{r}_2,\\cdots,\\vec{r}_n)= g_1(r_1) h_1(|\\vec{r}_n-\\vec{r}_1|)\n", "g_2(r_2)h_2(|\\vec{r}_n-\\vec{r}_2|)\\cdots g_n(r_n)\n", "\\end{eqnarray}\n", "\n", "where $g_i$ and $h_i$ are determined self-consistently from the histograms." ] }, { "cell_type": "markdown", "id": "convertible-invention", "metadata": {}, "source": [ "The external variable $r_0$ will be computed on the user defined mesh, which is named `qx[i]`.\n", "\n", "Since $r_0$ is only the length of the vector in 3D, we will sample (and integrate) over its angles $\\theta$ and $\\phi$. Here \n", "$$\\vec{r}_0=\\left(qx_i \\sin(\\theta)\\cos(\\phi), qx_i \\sin(\\theta)\\sin(\\phi), qx_i \\cos(\\theta)\\right).$$\n", "\n", "However, when we choose variables $(r,\\theta,\\phi)$ instead of $(x,y,z)$ the trial step probability is not symmetric, because we want to integrate uniformly over the entire volume $d(\\cos(\\theta)) d\\phi\\, d^3r_1 d^3 r_2\\cdots d^3 r_N $. \n", "\n", "The probability to jump into any configuration is proportional to its contribution to the volume, i.e, $\\omega_{X\\rightarrow X'} = \\frac{d\\Omega_{X'}}{d\\Omega_{X}}= \\frac{sin(\\theta_{X'}) d\\theta d\\phi}{sin(\\theta_{X}) d\\theta d\\phi} = \\frac{sin(\\theta_{X'})}{sin(\\theta_{X})}$. If we were sampling the integral over $r$ as well, the trial step probability would be \n", "$\\omega_{X\\rightarrow X'} = \\frac{dV_{X'}}{dV_{X}}= \\frac{r_{X'}^2 sin(\\theta_{X'})}{r_X^2 sin(\\theta_{X})}$. \n", "In this example, $r_0$ is the external variable, which we do not integrate over, hence we should not add $r^2$ to trial step probability.\n", "The trial step will determine new $\\theta_{new} = \\xi_0 \\pi$, and $\\phi_{new}= \\xi_1 2\\pi$ with the trial step probability $\\frac{\\sin(\\theta_{new})}{\\sin(\\theta_{old})}$\n", "\n", "The internal variables of integration $r_1,r_2\\cdots r_N$ (are called `momentum`) are samples in cartesian coordinates, hence the trial step probability is symmetric. The trial step will be\n", "$$ \\vec{r}_{new} \\rightarrow \\vec{r}_{old} + dk\\;(2\\xi_1-1, 2\\xi_2-1, 2\\xi_3-1),$$ where $dk$=`p.dkF`.\n", "But this is only provided that $|r_{new}|<= \\Lambda_{cutoff}$. If $|r_{new}|>\\Lambda_{cutoff}$, we instantly reject the step. The sampling is thus constrained to a set of spheres, so that none of particles distances (or momenta) can be too large.\n" ] }, { "cell_type": "code", "execution_count": 17, "id": "unlikely-infrared", "metadata": {}, "outputs": [], "source": [ "def IntegrateByMetropolis2(func, qx, p):\n", " \"\"\" Integration by Metropolis:\n", " func(momentum) -- function to integrate\n", " qx -- mesh given by a user\n", " p -- other parameters\n", " Output:\n", " Pval(qx)\n", " \"\"\"\n", " random.seed(0) # make sure that we always get the same sequence of steps\n", " Pval = zeros(len(qx)) # Final results V_physical is stored in Pval\n", " Pnorm = 0.0 # V_alternative is stored in Pnorm\n", " Pval_sum = 0.0 # this is widetilde{V_physical}\n", " Pnorm_sum = 0.0 # this is widetilde{V_alternative}\n", " V0norm = p.V0norm # this is V0\n", " dk_hist = 1.0 # we are creating histogram by adding each configuration with weight 1.\n", " Ndim = func.Ndim # dimensions of the problem\n", " inc_recompute = (p.per_recompute+0.52)/p.per_recompute # How often to self-consistently recompute\n", " # the wight functions g_i and h_{ij}.\n", " \n", " momentum = zeros((Ndim,3)) # contains all variables (r1,r2,r3,....r_Ndim)\n", " # We call them momentum here, but could be real space vectors or momentum space vectors.\n", " iQ = int(len(qx)*random.rand()) # which bin do we currently visit for r0, iQ is current r0=qx[iQ]\n", " momentum[1:,:] = random.random((Ndim-1,3)) * p.kF / sqrt(3.) # Initial guess for r1,r2,....r_N is random\n", " momentum[0,:] = [0,0,qx[iQ]] # initial configuration for r_0 has to be consistent with iQ, and will be in z-direction\n", "\n", " # This is fm function, which is defined in mweight.py module\n", " mweight = meassureWeight(p.dexp, p.cutoff, p.kF, p.Nbin, Ndim) # measuring function fm in alternative space\n", " # fQ on the current configuration. Has two components (f(X), V0*f_m(X))\n", " fQ = func(momentum), V0norm * mweight( momentum ) # fQ=(f(X), V0*f_m(X))\n", " print('starting with f=', fQ, '\\nstarting momenta=', momentum)\n", "\n", " Nmeassure = 0 # How many measurements we had?\n", " Nall_q, Nall_k, Nall_w, Nacc_q, Nacc_k = 0, 0, 0, 0, 0\n", " c_recompute = 0 # when to recompute the auxiliary function?\n", " for itt in range(p.Nitt): # long loop\n", " iloop = int( Ndim * random.rand() ) # which variable to change, iloop=0 changes external r_0\n", " accept = False\n", " if (iloop == 0): # changing external variable : r_0==Q\n", " Nall_q += 1 # how many steps changig external variable\n", " tiQ = int( random.rand()*len(qx) ) # trial iQ for qx[iQ]\n", " Ka_new = qx[tiQ] # |r_0| length of the vector\n", " th, phi = pi*random.rand(), 2*pi*random.rand() # spherical angles for vector q in spherical coordinates\n", " sin_th = sin(th) # trial step probability is proportional to sin(theta) when using sperical coodinates\n", " Q_sin_th = Ka_new * sin_th\n", " K_new = array([Q_sin_th*cos(phi), Q_sin_th*sin(phi), Ka_new*cos(th)]) # new 3D vector r_0\n", " q2_sin2_old = sum(momentum[iloop,:2]**2) # x^2+y^2 = r_old^2 sin^2(theta_old)\n", " q2_old = q2_sin2_old + momentum[iloop,2]**2 # x^2+y^2+z^2 = r_old^2 \n", " trial_ratio = 1.\n", " if q2_old != 0: # make sure we do not get nan\n", " sin_th_old = sqrt(q2_sin2_old/q2_old) # sin(theta_old)\n", " if sin_th_old != 0: # make sure we do not get nan\n", " trial_ratio = sin_th/sin_th_old\n", " accept = True # trial step always succeeds\n", " else: # changing momentum ik>0\n", " Nall_k += 1 # how many steps of this type\n", " dk = (2*random.rand(3)-1)*p.dkF # change of k in cartesian coordinates of size p.dkF\n", " K_new = momentum[iloop,:] + dk # K_new = K_old + dK\n", " Ka_new = linalg.norm(K_new) # norm of the new vector\n", " trial_ratio = 1. # trial step probability is just unity\n", " accept = Ka_new <= p.cutoff # we might reject the step if the point is too far from the origin\n", " if (accept): # trial step successful. We did not yet accept, just the trial step.\n", " tmomentum = copy(momentum)\n", " tmomentum[iloop,:] = K_new # this is trial configuration X_{new}=momentum\n", " fQ_new = func(tmomentum), V0norm * mweight(tmomentum) # f_new\n", " # Notice that we take |f_new(X)+V0*fm_new(X)|/|f_old(X)+V0*fm_old(X)| * trial_ratio\n", " ratio = (abs(fQ_new[0])+fQ_new[1])/(abs(fQ[0])+fQ[1]) * trial_ratio \n", " accept = abs(ratio) > 1-random.rand() # Metropolis\n", " if accept: # the step succeeded\n", " momentum[iloop] = K_new\n", " fQ = fQ_new\n", " if iloop==0:\n", " Nacc_q += 1 # how many accepted steps of this type\n", " iQ = tiQ # the new external variable index\n", " else:\n", " Nacc_k += 1 # how many accepted steps of this type\n", " \n", " if (itt >= p.Nwarm and itt % p.tmeassure==0): # below is measuring every p.tmeassure steps\n", " Nmeassure += 1 # new meassurements\n", " W = abs(fQ[0])+fQ[1] # this is the weight we are using\n", " f0, f1 = fQ[0]/W, fQ[1]/W # the two measuring quantities\n", " Pval[iQ] += f0 # V_physical : integral up to a constant\n", " Pnorm += f1 # V_alternative : the normalization for the integral\n", " Pnorm_sum += f1 # widetilde{V}_alternative, accumulated over all steps\n", " Wphs = abs(f0) # widetilde{V}_{physical}, accumulated over all steps\n", " Pval_sum += Wphs\n", " # doing histogram of the simulation in terms of V_physical only.\n", " # While the probability for a configuration is proportional to f(X)+V0*fm(X), the histogram for\n", " # constructing g_i and h_{ij} is obtained from f(X) only. \n", " mweight.Add_to_K_histogram(dk_hist*Wphs, momentum, p.cutoff, p.cutoff)\n", " if itt>10000 and itt % (p.recomputew*p.tmeassure) == 0 :\n", " # Now we want to check if we should recompute g_i and h_{ij}\n", " # P_v_P is V_physical/V_alternative*0.1\n", " P_v_P = Pval_sum/Pnorm_sum * 0.1 \n", " # We expect V_physical/V_alternative*0.1=P_v_P to be of the order of 1.\n", " # We do not want to change V0 too much, only if P_V_P falls utside the\n", " # range [0.25,4], we should correct V0.\n", " change_V0 = 0\n", " if P_v_P < 0.25 and itt < 0.2*p.Nitt: # But P_v_P above 0.25 is fine\n", " change_V0 = -1 # V0 should be reduced\n", " V0norm /= 2 # V0 is reduced by factor 2\n", " Pnorm /= 2 # V_alternative is proportional to V0, hence needs to be reduced too. \n", " Pnorm_sum /= 2 # widetilde{V}_alternative also needs to be reduced\n", " if P_v_P > 4.0 and itt < 0.2*p.Nitt: # and P_v_P below 4 is also fine\n", " change_V0 = 1 # V0 should be increased \n", " V0norm *= 2 # actually increasing V0\n", " Pnorm *= 2\n", " Pnorm_sum *= 2\n", " if change_V0: # V0 was changed. Report that. \n", " schange = [\"V0 reduced to \", \"V0 increased to\"]\n", " print( ' ', itt/1e6, 'M P_v_P=', P_v_P, schange[int( (change_V0+1)/2 )], V0norm )\n", " # Here we decied to drop all prior measurements if V0 is changed.\n", " # We could keep them, but the convergence can be better when we drop them.\n", " Pval = zeros(len(Pval))\n", " Pnorm = 0\n", " Nmeasure = 0\n", " # Next we should check if g_i and h_ij need to be recomputed.\n", " # This should not be done too often, and only in the first half of the sampling.\n", " if (c_recompute==0 and itt<0.5*p.Nitt):\n", " # At the beginning we recompute quite often, later not so often anymore\n", " # as the per_recompute is increasing...\n", " p.per_recompute = int(p.per_recompute*inc_recompute+0.5)\n", " # We normalized f_m, hence all previous accumulated values are now of the order\n", " # of 1/norm. We also normalize the new additions to histogram with similar value, \n", " # but 5-times larger than before.\n", " dk_hist *= 5*mweight.Normalize_K_histogram()\n", " if dk_hist < 1e-8: # Once dk becomes too small, just start accumulating with weight 1.\n", " dk_hist = 1.0\n", " mweight.Recompute()# Here we actually recompute g_i and h_{ij}.\n", " fQ = (fQ[0], V0norm * mweight(momentum)) # And now we must recompute V0*f_m, because f_m has changed!\n", " c_recompute += 1\n", " if c_recompute>=p.per_recompute : c_recompute = 0 # counting when we will recompute next.\n", " \n", " if (itt+1)% p.Ncout == 0 : # This is just printing information\n", " P_v_P = Pval_sum/Pnorm_sum * 0.1 # what is curent P_v_P\n", " Qa = qx[iQ] # current r0\n", " ka = linalg.norm(momentum[1,:]) # current r1\n", " ratio = (abs(fQ_new[0])+fQ_new[1])/(abs(fQ[0])+fQ[1]) # current ratio\n", " print( '%9.2fM Q=%5.3f k=%5.3f fQ_new=%8.3g,%8.3g fQ_old=%8.3g,%8.3g P_v_P=%10.6f' % (itt/1e6, Qa, ka, fQ_new[0], fQ_new[1], fQ[0], fQ[1], P_v_P) )\n", " \n", "\n", " Pval *= len(qx) * V0norm / Pnorm # Finally, the integral is I = V0 *V_physical/V_alternative\n", " # This would be true if we are returning one single value. But we are sampling len(qx) values\n", " # And we jump between qx[i] uniformly, hence each value should be normalized with len(qx).\n", "\n", " print( 'Total acceptance rate=', (Nacc_k+Nacc_q)/(p.Nitt+0.0), 'k-acceptance=', Nacc_k/(Nall_k+0.0), 'q-acceptance=', Nacc_q/(Nall_q+0.0))\n", " print( 'k-trials=', Nall_k/(p.Nitt+0.0), 'q-trial=', Nall_q/(p.Nitt+0.0) )\n", " return Pval\n" ] }, { "cell_type": "markdown", "id": "right-cream", "metadata": {}, "source": [ "As a test, we will use $6\\times 3=18$-dimensional space, and Gaussians of width $1/\\sqrt{6}$. The result should be Gaussian of width 1." ] }, { "cell_type": "code", "execution_count": 18, "id": "destroyed-diesel", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "starting with f= (0.00013988835759192925, 5.321406330644421e-07) \n", "starting momenta= [[0. 0. 1.65 ]\n", " [0.41291477 0.3480056 0.31458845]\n", " [0.24459721 0.37290714 0.25264109]\n", " [0.51486538 0.55637095 0.22138006]\n", " [0.45710266 0.30535762 0.32796068]\n", " [0.53439347 0.04101269 0.05030412]]\n", " 0.02 M P_v_P= 859.1991966329406 V0 increased to 0.04\n", " 0.05M Q=0.050 k=0.384 fQ_new= 33.3, 0.0439 fQ_old= 33.3, 0.0439 P_v_P= 1.955198\n", " 0.10M Q=0.350 k=0.867 fQ_new= 0.234,0.000716 fQ_old= 0.234,0.000716 P_v_P= 0.995832\n", " 0.15M Q=0.050 k=0.206 fQ_new= 1.27,1.01e-05 fQ_old= 1.27,1.01e-05 P_v_P= 1.238653\n", " 0.20M Q=0.350 k=0.407 fQ_new= 2.66, 0.232 fQ_old= 2.66, 0.232 P_v_P= 1.201153\n", " 0.25M Q=0.050 k=0.374 fQ_new= 42, 0.116 fQ_old= 42, 0.116 P_v_P= 1.149085\n", " 0.30M Q=0.150 k=0.396 fQ_new= 3.06,0.000403 fQ_old= 3.06,0.000403 P_v_P= 1.033287\n", " 0.35M Q=0.750 k=0.659 fQ_new= 0.243, 0.107 fQ_old= 24.4, 0.107 P_v_P= 0.954332\n", " 0.40M Q=2.950 k=0.628 fQ_new=3.19e-31, 0.00217 fQ_old=3.19e-31, 0.00217 P_v_P= 0.992613\n", " 0.45M Q=0.450 k=0.332 fQ_new= 6.1,0.000165 fQ_old= 6.1,0.000165 P_v_P= 0.922527\n", " 0.50M Q=1.850 k=1.384 fQ_new= 0.00432,1.29e-10 fQ_old= 0.00432,1.29e-10 P_v_P= 0.909859\n", " 0.55M Q=0.850 k=0.768 fQ_new= 0.33,5.27e-07 fQ_old= 0.33,5.27e-07 P_v_P= 0.839232\n", " 0.60M Q=0.450 k=0.445 fQ_new= 7.07, 0.437 fQ_old= 7.07, 0.437 P_v_P= 0.831713\n", " 0.65M Q=0.750 k=0.789 fQ_new= 3.45,0.000113 fQ_old= 3.45,0.000113 P_v_P= 0.834054\n", " 0.70M Q=1.850 k=1.286 fQ_new= 0.00367,4.27e-14 fQ_old= 0.00367,4.27e-14 P_v_P= 0.860423\n", " 0.75M Q=0.950 k=0.945 fQ_new= 0.0272,2.12e-07 fQ_old= 0.0272,2.12e-07 P_v_P= 0.849908\n", " 0.80M Q=2.450 k=0.185 fQ_new=1.97e-15, 0.434 fQ_old=1.97e-15, 0.434 P_v_P= 0.833649\n", " 0.85M Q=0.050 k=0.536 fQ_new= 6.84, 0.0733 fQ_old= 6.84, 0.0733 P_v_P= 0.836855\n", " 0.90M Q=1.650 k=1.845 fQ_new= 0.105,1.88e-21 fQ_old= 0.105,1.88e-21 P_v_P= 0.830858\n", " 0.95M Q=0.250 k=0.443 fQ_new= 16.8, 0.249 fQ_old= 16.8, 0.249 P_v_P= 0.822716\n", " 1.00M Q=0.650 k=0.762 fQ_new= 14.7,0.000117 fQ_old= 14.7,0.000117 P_v_P= 0.842308\n", "Total acceptance rate= 0.707322 k-acceptance= 0.8162677725402996 q-acceptance= 0.1643429036466125\n", "k-trials= 0.832886 q-trial= 0.167114\n" ] } ], "source": [ "from numpy import random\n", "\n", "p = params()\n", "fnc = FuncNDiag(width=1./sqrt(6), Ndim=6)\n", "\n", "Nq = 30\n", "qx = linspace( 3*0.5/Nq, 3*(Nq-0.5)/Nq, Nq)\n", "Pval = IntegrateByMetropolis2(fnc, qx, p)" ] }, { "cell_type": "markdown", "id": "explicit-herald", "metadata": {}, "source": [ "We expect the result to be gausian function with width of unity, i.e.," ] }, { "cell_type": "code", "execution_count": 19, "id": "accepted-garbage", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from pylab import *\n", "%matplotlib inline\n", "\n", "plot(qx,Pval)\n", "plot(qx, exp(-qx**2));" ] }, { "cell_type": "markdown", "id": "experienced-defendant", "metadata": {}, "source": [ "# Speed up by numba\n", "\n", "We will speed up simulation using numba. All parts that are called every single step are being recast into numba functions." ] }, { "cell_type": "code", "execution_count": 20, "id": "ambient-acrobat", "metadata": {}, "outputs": [], "source": [ "@jit(nopython=True)\n", "def TrialStep0(qx, momentum):\n", " tiQ = int( random.rand()*len(qx) ) # trial iQ for qx[iQ]\n", " Ka_new = qx[tiQ] # |r_0| length of the vector\n", " th, phi = pi*random.rand(), 2*pi*random.rand() # spherical angles for vector q in spherical coordinates\n", " sin_th = sin(th) # trial step probability is proportional to sin(theta) when using sperical coodinates\n", " Q_sin_th = Ka_new * sin_th\n", " K_new = array([Q_sin_th*cos(phi), Q_sin_th*sin(phi), Ka_new*cos(th)]) # new 3D vector r_0\n", " q2_sin2_old = sum(momentum[0,:2]**2) # x^2+y^2 = r_old^2 sin^2(theta_old)\n", " q2_old = q2_sin2_old + momentum[0,2]**2 # x^2+y^2+z^2 = r_old^2 \n", " trial_ratio = 1.\n", " if q2_old != 0: # make sure we do not get nan\n", " sin_th_old = sqrt(q2_sin2_old/q2_old) # sin(theta_old)\n", " if sin_th_old != 0: # make sure we do not get nan\n", " trial_ratio = sin_th/sin_th_old\n", " accept=True\n", " return (K_new, Ka_new, trial_ratio, accept, tiQ)\n", "\n", "@jit(nopython=True)\n", "def TrialStep1(iloop,momentum,dkF,cutoff):\n", " dk = (2*random.rand(3)-1)*dkF # change of k in cartesian coordinates of size p.dkF\n", " K_new = momentum[iloop,:] + dk # K_new = K_old + dK\n", " Ka_new = linalg.norm(K_new) # norm of the new vector\n", " trial_ratio = 1. # trial step probability is just unity\n", " accept = Ka_new <= cutoff # we might reject the step if the point is too far from the origin\n", " return (K_new, Ka_new, trial_ratio, accept)\n", "\n", "@jit(nopython=True)\n", "def Give_new_X(momentum, K_new, iloop):\n", " tmomentum = copy(momentum)\n", " tmomentum[iloop,:] = K_new # this is trial configuration X_{new}=momentum\n", " return tmomentum\n" ] }, { "cell_type": "markdown", "id": "collective-commander", "metadata": {}, "source": [ "The function, which is being evaluated, will also be speed-up by Numba" ] }, { "cell_type": "code", "execution_count": 21, "id": "experienced-ending", "metadata": {}, "outputs": [], "source": [ "@jit(nopython=True)\n", "def cmpf(momentum, width, cnrm):\n", " kn = np.linalg.norm( momentum[-1] )\n", " res = exp( -(kn/width)**2 )/cnrm\n", " for i in range(len(momentum)-1):\n", " dk = np.linalg.norm( momentum[i+1]-momentum[i] )\n", " res *= exp( -(dk/width)**2 )\n", " return res\n", "\n", " \n", "class FuncNDiag2:\n", " \"\"\" Gaussian through all diagonals k_i=k_j, i.e.:\n", " We have the following variables : k_0, k_1, k_2, ... k_{N-1}\n", " The function is\n", " fPQ = exp(k_{N-1}^2/width^2) * exp(|k_{N-2}-k_{N-1}|^2/width^2) * exp(-|k_{N-3}-k_{N-2}|^2/width^2) *...* exp(-|k_1-k_0|^2/width^2) * normalization\n", " We integrate only over k_1,k_2,...k_{N-1} and keep k_0 as external independent variable.\n", " We want the final result to be\n", " exp(-k_0^2/(width^2*N)) = Integrate[ fPQ d^3k_1 d^3k_2....d^3k_{N-1} ]\n", " Hence the normalization is\n", " normalization = N^(3/2) / ( sqrt(pi)*width )^(3(N-1))\n", " \"\"\"\n", " def __init__(self, width=1, Ndim=1):\n", " self.width = width # width of gaussians\n", " self.Ndim = Ndim\n", " self.cnrm = ((sqrt(pi)*self.width)**3 )**(Ndim-1)/sqrt(Ndim)**3 # integral of gaussian convolution\n", "\n", " def __call__(self, momentum):\n", " return cmpf(momentum, self.width, self.cnrm)\n" ] }, { "cell_type": "markdown", "id": "suffering-honolulu", "metadata": {}, "source": [ "Checking that these Numba functions work." ] }, { "cell_type": "code", "execution_count": 23, "id": "august-wednesday", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[1. 1. 1. ]\n", " [1. 1. 1. ]\n", " [1. 1. 1. ]\n", " [0.1 0.2 0.3]]\n", "[[1. 1. 1.]\n", " [1. 1. 1.]\n", " [1. 1. 1.]\n", " [1. 1. 1.]]\n" ] } ], "source": [ "from numpy import random\n", "\n", "momentum = ones((4,3))\n", "Nq = 30\n", "qx = linspace( 3*0.5/Nq, 3*(Nq-0.5)/Nq, Nq)\n", "\n", "TrialStep0(qx, momentum)\n", "TrialStep1(2,momentum,0.2,10.)\n", "print(Give_new_X(momentum, array([0.1,0.2,0.3]), 3))\n", "print(momentum)" ] }, { "cell_type": "markdown", "id": "moving-winter", "metadata": {}, "source": [ "Finally, using these Numba function in the Metropolis routine. We will also time steps, to understand if the code is optimized." ] }, { "cell_type": "code", "execution_count": 24, "id": "dried-andrews", "metadata": {}, "outputs": [], "source": [ "import time\n", "\n", "def IntegrateByMetropolis3(func, qx, p):\n", " \"\"\" Integration by Metropolis:\n", " func(momentum) -- function to integrate\n", " qx -- mesh given by a user\n", " p -- other parameters\n", " Output:\n", " Pval(qx)\n", " \"\"\"\n", " tm1 = time.time()\n", " random.seed(0) # make sure that we always get the same sequence of steps\n", " # Next line needs CORRECTION for homework \n", " Pval = zeros(len(qx)) # Final results V_physical is stored in Pval\n", " Pnorm = 0.0 # V_alternative is stored in Pnorm\n", " Pval_sum = 0.0 # this is widetilde{V_physical}\n", " Pnorm_sum = 0.0 # this is widetilde{V_alternative}\n", " V0norm = p.V0norm # this is V0\n", " dk_hist = 1.0 # we are creating histogram by adding each configuration with weight 1.\n", " Ndim = func.Ndim # dimensions of the problem\n", " inc_recompute = (p.per_recompute+0.52)/p.per_recompute # How often to self-consistently recompute\n", " # the wight functions g_i and h_{ij}.\n", " \n", " momentum = zeros((Ndim,3)) # contains all variables (r1,r2,r3,....r_Ndim)\n", " # We call them momentum here, but could be real space vectors or momentum space vectors.\n", " iQ = int(len(qx)*random.rand()) # which bin do we currently visit for r0, iQ is current r0=qx[iQ]\n", " momentum[1:,:] = random.random((Ndim-1,3)) * p.kF / sqrt(3.) # Initial guess for r1,r2,....r_N is random\n", " momentum[0,:] = [0,0,qx[iQ]] # initial configuration for r_0 has to be consistent with iQ, and will be in z-direction\n", "\n", " # This is fm function, which is defined in mweight.py module\n", " mweight = meassureWeight(p.dexp, p.cutoff, p.kF, p.Nbin, Ndim) # measuring function fm in alternative space\n", " # fQ on the current configuration. Has two components (f(X), V0*f_m(X))\n", " fQ = func(momentum), V0norm * mweight( momentum ) # fQ=(f(X), V0*f_m(X))\n", " #print('starting with f=', fQ, '\\nstarting momenta=', momentum)\n", "\n", " t_sim, t_mes, t_prn, t_rec = 0.,0.,0.,0.\n", " Nmeassure = 0 # How many measurements we had?\n", " Nall_q, Nall_k, Nall_w, Nacc_q, Nacc_k = 0, 0, 0, 0, 0\n", " c_recompute = 0 # when to recompute the auxiliary function?\n", " for itt in range(p.Nitt): # long loop\n", " t0 = time.time()\n", " iloop = int( Ndim * random.rand() ) # which variable to change, iloop=0 changes external r_0\n", " accept = False\n", " if (iloop == 0): # changing external variable : r_0==Q\n", " Nall_q += 1 # how many steps changig external variable\n", " (K_new, Ka_new, trial_ratio, accept, tiQ) = TrialStep0(qx, momentum)\n", " else: # changing momentum ik>0\n", " Nall_k += 1 # how many steps of this type\n", " (K_new, Ka_new, trial_ratio, accept) = TrialStep1(iloop,momentum,p.dkF,p.cutoff)\n", " if (accept): # trial step successful. We did not yet accept, just the trial step.\n", " tmomentum = Give_new_X(momentum, K_new, iloop)\n", " fQ_new = func(tmomentum), V0norm * mweight(tmomentum) # f_new\n", " # Notice that we take |f_new(X)+V0*fm_new(X)|/|f_old(X)+V0*fm_old(X)| * trial_ratio\n", " # Next line needs CORRECTION for homework \n", " ratio = (abs(fQ_new[0])+fQ_new[1])/(abs(fQ[0])+fQ[1]) * trial_ratio \n", " accept = abs(ratio) > 1-random.rand() # Metropolis\n", " if accept: # the step succeeded\n", " momentum[iloop] = K_new\n", " fQ = fQ_new\n", " if iloop==0:\n", " Nacc_q += 1 # how many accepted steps of this type\n", " iQ = tiQ # the new external variable index\n", " else:\n", " Nacc_k += 1 # how many accepted steps of this type\n", " t1 = time.time()\n", " t_sim += t1-t0\n", " if (itt >= p.Nwarm and itt % p.tmeassure==0): # below is measuring every p.tmeassure steps\n", " Nmeassure += 1 # new meassurements\n", " # Next line needs CORRECTION for homework \n", " W = abs(fQ[0])+fQ[1] # this is the weight we are using\n", " f0, f1 = fQ[0]/W, fQ[1]/W # the two measuring quantities\n", " # Next line needs CORRECTION for homework \n", " Pval[iQ] += f0 # V_physical : integral up to a constant\n", " Pnorm += f1 # V_alternative : the normalization for the integral\n", " Pnorm_sum += f1 # widetilde{V}_alternative, accumulated over all steps\n", " # Next line needs CORRECTION for homework \n", " Wphs = abs(f0) # widetilde{V}_{physical}, accumulated over all steps\n", " Pval_sum += Wphs\n", " # doing histogram of the simulation in terms of V_physical only.\n", " # While the probability for a configuration is proportional to f(X)+V0*fm(X), the histogram for\n", " # constructing g_i and h_{ij} is obtained from f(X) only. \n", " mweight.Add_to_K_histogram(dk_hist*Wphs, momentum, p.cutoff, p.cutoff)\n", " if itt>10000 and itt % (p.recomputew*p.tmeassure) == 0 :\n", " # Now we want to check if we should recompute g_i and h_{ij}\n", " # P_v_P is V_physical/V_alternative*0.1\n", " P_v_P = Pval_sum/Pnorm_sum * 0.1 \n", " # We expect V_physical/V_alternative*0.1=P_v_P to be of the order of 1.\n", " # We do not want to change V0 too much, only if P_V_P falls utside the\n", " # range [0.25,4], we should correct V0.\n", " change_V0 = 0\n", " if P_v_P < 0.25 and itt < 0.2*p.Nitt: # But P_v_P above 0.25 is fine\n", " change_V0 = -1 # V0 should be reduced\n", " V0norm /= 2 # V0 is reduced by factor 2\n", " Pnorm /= 2 # V_alternative is proportional to V0, hence needs to be reduced too. \n", " Pnorm_sum /= 2 # widetilde{V}_alternative also needs to be reduced\n", " if P_v_P > 4.0 and itt < 0.2*p.Nitt: # and P_v_P below 4 is also fine\n", " change_V0 = 1 # V0 should be increased \n", " V0norm *= 2 # actually increasing V0\n", " Pnorm *= 2\n", " Pnorm_sum *= 2\n", " if change_V0: # V0 was changed. Report that. \n", " schange = [\"V0 reduced to \", \"V0 increased to\"]\n", " print('%9.2fM P_v_P=%10.6f' % (itt/1e6, P_v_P), schange[int( (change_V0+1)/2 )], V0norm )\n", " # Here we decied to drop all prior measurements if V0 is changed.\n", " # We could keep them, but the convergence can be better when we drop them.\n", " # Next line needs CORRECTION for homework \n", " Pval = zeros(shape(Pval))\n", " Pnorm = 0\n", " Nmeasure = 0\n", " # Next we should check if g_i and h_ij need to be recomputed.\n", " # This should not be done too often, and only in the first half of the sampling.\n", " if (c_recompute==0 and itt<0.7*p.Nitt):\n", " t5 = time.time()\n", " # At the beginning we recompute quite often, later not so often anymore\n", " # as the per_recompute is increasing...\n", " p.per_recompute = int(p.per_recompute*inc_recompute+0.5)\n", " # We normalized f_m, hence all previous accumulated values are now of the order\n", " # of 1/norm. We also normalize the new additions to histogram with similar value, \n", " # but 5-times larger than before.\n", " dk_hist *= 5*mweight.Normalize_K_histogram()\n", " if dk_hist < 1e-8: # Once dk becomes too small, just start accumulating with weight 1.\n", " dk_hist = 1.0\n", " mweight.Recompute()# Here we actually recompute g_i and h_{ij}.\n", " fQ = func(momentum), V0norm * mweight( momentum ) # And now we must recompute V0*f_m, because f_m has changed!\n", " t6 = time.time()\n", " print('%9.2fM recomputing f_m=%10.6f' % (itt/1e6, fQ[1]))\n", " t_rec += t6-t5\n", " c_recompute += 1\n", " if c_recompute>=p.per_recompute : c_recompute = 0 # counting when we will recompute next.\n", " t2 = time.time()\n", " t_mes += t2-t1\n", " if (itt+1)% p.Ncout == 0 : # This is just printing information\n", " P_v_P = Pval_sum/Pnorm_sum * 0.1 # what is curent P_v_P\n", " Qa = qx[iQ] # current r0\n", " ka = linalg.norm(momentum[1,:]) # current r1\n", " # Next line needs CORRECTION for homework \n", " ratio = (abs(fQ_new[0])+fQ_new[1])/(abs(fQ[0])+fQ[1]) # current ratio\n", " # Next line needs CORRECTION for homework \n", " print( '%9.2fM Q=%5.3f k=%5.3f fQ_new=%8.3g,%8.3g fQ_old=%8.3g,%8.3g P_v_P=%10.6f' % (itt/1e6, Qa, ka, fQ_new[0], fQ_new[1], fQ[0], fQ[1], P_v_P) )\n", " t3 = time.time()\n", " t_prn += t3-t2\n", " \n", " Pval *= len(qx) * V0norm / Pnorm # Finally, the integral is I = V0 *V_physical/V_alternative\n", " # This would be true if we are returning one single value. But we are sampling len(qx) values\n", " # And we jump between qx[i] uniformly, hence each value should be normalized with len(qx).\n", " tp1 = time.time()\n", " print('Total acceptance rate=', (Nacc_k+Nacc_q)/(p.Nitt+0.0), 'k-acceptance=', Nacc_k/(Nall_k+0.0), 'q-acceptance=', Nacc_q/(Nall_q+0.0))\n", " print('k-trials=', Nall_k/(p.Nitt+0.0), 'q-trial=', Nall_q/(p.Nitt+0.0) )\n", " print('t_simulate=%6.2f t_meassure=%6.2f t_recompute=%6.2f t_print=%6.2f t_total=%6.2f' % (t_sim, t_mes, t_rec, t_prn, tp1-tm1))\n", " return (Pval,mweight)" ] }, { "cell_type": "code", "execution_count": 26, "id": "healthy-monday", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 0.02M P_v_P=1324.512340 V0 increased to 0.04\n", " 0.02M recomputing f_m= 0.005120\n", " 0.04M P_v_P= 8.016355 V0 increased to 0.08\n", " 0.05M Q=0.750 k=0.850 fQ_new= 0.0898,1.38e-10 fQ_old= 0.0898,1.38e-10 P_v_P= 4.394104\n", " 0.10M Q=2.650 k=0.354 fQ_new= 6.5e-16, 1.01 fQ_old= 6.5e-16, 1.01 P_v_P= 0.817835\n", " 0.15M Q=0.150 k=0.288 fQ_new= 29.8, 1.82 fQ_old= 29.8, 1.82 P_v_P= 0.521219\n", " 0.18M recomputing f_m= 0.001133\n", " 0.20M Q=0.150 k=0.467 fQ_new=0.000215, 5.2e-08 fQ_old= 0.00106, 5.2e-08 P_v_P= 0.378995\n", " 0.25M Q=0.550 k=0.625 fQ_new= 3.86, 0.0175 fQ_old= 3.86, 0.0175 P_v_P= 0.369187\n", " 0.30M Q=1.150 k=0.430 fQ_new= 0.00169, 0.00601 fQ_old= 0.00169, 0.00601 P_v_P= 0.354699\n", " 0.35M Q=0.050 k=0.376 fQ_new=0.000394,0.000319 fQ_old= 0.0364,0.000319 P_v_P= 0.363482\n", " 0.36M recomputing f_m= 0.000000\n", " 0.40M Q=1.250 k=1.389 fQ_new= 0.0473,2.02e-09 fQ_old= 0.0772,5.09e-09 P_v_P= 0.349935\n", " 0.45M Q=0.350 k=0.194 fQ_new= 0.832, 0.00122 fQ_old= 0.832, 0.00122 P_v_P= 0.354019\n", " 0.50M Q=0.050 k=0.427 fQ_new=6.33e-07,0.000224 fQ_old= 0.548,0.000224 P_v_P= 0.347132\n", " 0.55M Q=1.050 k=0.331 fQ_new= 0.00951, 1.33 fQ_old= 0.00951, 1.33 P_v_P= 0.355100\n", " 0.56M recomputing f_m= 0.000093\n", " 0.60M Q=1.650 k=0.471 fQ_new=1.32e-05, 0.0519 fQ_old=1.32e-05, 0.0519 P_v_P= 0.366373\n", " 0.65M Q=0.750 k=0.279 fQ_new=0.000812, 1.58 fQ_old=0.000812, 1.58 P_v_P= 0.352944\n", " 0.70M Q=0.750 k=0.977 fQ_new= 0.857,1.38e-08 fQ_old= 0.857,1.38e-08 P_v_P= 0.364261\n", " 0.75M Q=0.150 k=0.528 fQ_new= 0.0445, 0.00117 fQ_old= 0.0541,0.000529 P_v_P= 0.378753\n", " 0.78M recomputing f_m= 0.020317\n", " 0.80M Q=0.650 k=0.693 fQ_new= 4.25,1.16e-05 fQ_old= 4.25,1.16e-05 P_v_P= 0.375510\n", " 0.85M Q=0.450 k=0.676 fQ_new= 1.87,2.11e-05 fQ_old= 1.87,2.11e-05 P_v_P= 0.370956\n", " 0.90M Q=0.950 k=0.299 fQ_new= 0.036, 0.0188 fQ_old= 0.0671, 0.0251 P_v_P= 0.367655\n", " 0.95M Q=0.150 k=0.213 fQ_new= 0.677,0.000444 fQ_old= 1.04,0.000468 P_v_P= 0.357078\n", " 1.00M Q=0.250 k=0.543 fQ_new= 28, 0.128 fQ_old= 28, 0.128 P_v_P= 0.357695\n", " 1.02M recomputing f_m= 0.000000\n", " 1.05M Q=0.350 k=0.354 fQ_new= 32.4, 0.00376 fQ_old= 32.4, 0.00376 P_v_P= 0.355432\n", " 1.10M Q=0.650 k=0.777 fQ_new= 0.0338,4.17e-06 fQ_old= 0.0338,4.17e-06 P_v_P= 0.355828\n", " 1.15M Q=0.050 k=0.290 fQ_new= 0.99, 0.00645 fQ_old= 2.48, 0.00799 P_v_P= 0.366714\n", " 1.20M Q=0.250 k=0.827 fQ_new= 0.949, 0.0419 fQ_old= 0.949, 0.0419 P_v_P= 0.364932\n", " 1.25M Q=0.850 k=0.438 fQ_new= 27.6, 0.134 fQ_old= 27.6, 0.134 P_v_P= 0.358307\n", " 1.28M recomputing f_m= 1.649135\n", " 1.30M Q=0.150 k=0.441 fQ_new= 1.61, 0.2 fQ_old= 1.61, 0.2 P_v_P= 0.348466\n", " 1.35M Q=0.950 k=1.228 fQ_new= 0.55,1.64e-12 fQ_old= 0.55,1.64e-12 P_v_P= 0.353874\n", " 1.40M Q=0.150 k=0.488 fQ_new= 1.07, 0.0962 fQ_old= 1.07, 0.0962 P_v_P= 0.356955\n", " 1.45M Q=2.850 k=0.629 fQ_new=4.44e-31, 0.0252 fQ_old=4.44e-31, 0.0252 P_v_P= 0.354096\n", " 1.50M Q=0.450 k=0.571 fQ_new= 16.3, 0.00227 fQ_old= 16.3, 0.00227 P_v_P= 0.355937\n", " 1.55M Q=0.050 k=0.468 fQ_new=6.07e-08,0.000997 fQ_old= 1.49,0.000997 P_v_P= 0.354518\n", " 1.56M recomputing f_m= 0.028958\n", " 1.60M Q=1.950 k=1.465 fQ_new= 0.00598, 6.3e-23 fQ_old= 0.00598, 6.3e-23 P_v_P= 0.349097\n", " 1.65M Q=0.150 k=0.587 fQ_new= 6.61, 0.858 fQ_old= 6.61, 0.858 P_v_P= 0.353487\n", " 1.70M Q=1.350 k=0.335 fQ_new=8.24e-09, 0.0404 fQ_old=8.24e-09, 0.0404 P_v_P= 0.353211\n", " 1.75M Q=0.150 k=0.615 fQ_new= 1.24,2.56e-05 fQ_old= 1.24,2.56e-05 P_v_P= 0.349374\n", " 1.80M Q=0.150 k=0.673 fQ_new= 0.00934, 5.2e-07 fQ_old= 0.232, 5.2e-07 P_v_P= 0.353808\n", " 1.85M Q=0.450 k=0.490 fQ_new= 1.73, 0.015 fQ_old= 3.71, 0.0187 P_v_P= 0.355118\n", " 1.86M recomputing f_m= 0.105081\n", " 1.90M Q=0.050 k=0.333 fQ_new= 41.1, 2.98 fQ_old= 41.1, 2.98 P_v_P= 0.353846\n", " 1.95M Q=0.950 k=0.611 fQ_new=2.16e-05, 0.00222 fQ_old=2.16e-05, 0.00222 P_v_P= 0.353465\n", " 2.00M Q=0.250 k=0.523 fQ_new= 7.94, 0.00522 fQ_old= 7.94, 0.00522 P_v_P= 0.346981\n", " 2.05M Q=0.050 k=0.361 fQ_new=2.89e-06, 0.577 fQ_old= 0.848, 0.577 P_v_P= 0.346967\n", " 2.10M Q=0.450 k=0.195 fQ_new= 0.00819,0.000476 fQ_old= 0.0271,0.000907 P_v_P= 0.348126\n", " 2.15M Q=1.250 k=0.963 fQ_new= 0.0352,0.000378 fQ_old= 0.927,0.000378 P_v_P= 0.346746\n", " 2.20M Q=0.050 k=0.715 fQ_new=7.59e-06,3.59e-09 fQ_old=2.82e-05,7.07e-09 P_v_P= 0.343250\n", " 2.25M Q=0.250 k=0.247 fQ_new= 141, 14.9 fQ_old= 141, 14.9 P_v_P= 0.347419\n", " 2.30M Q=0.750 k=0.598 fQ_new= 1.28,2.49e-05 fQ_old= 1.28,2.49e-05 P_v_P= 0.348441\n", " 2.35M Q=0.950 k=0.660 fQ_new= 2.71, 0.0132 fQ_old= 2.71, 0.0132 P_v_P= 0.350280\n", " 2.40M Q=1.650 k=0.637 fQ_new= 0.00025, 0.0411 fQ_old= 0.00025, 0.0411 P_v_P= 0.348447\n", " 2.45M Q=1.250 k=1.128 fQ_new= 0.22,8.09e-08 fQ_old= 0.22,8.09e-08 P_v_P= 0.350481\n", " 2.50M Q=0.750 k=0.731 fQ_new= 6.73,4.63e-05 fQ_old= 6.73,4.63e-05 P_v_P= 0.350451\n", " 2.55M Q=0.950 k=1.027 fQ_new= 9.69,5.85e-05 fQ_old= 15.3, 0.00017 P_v_P= 0.353219\n", " 2.60M Q=0.750 k=0.694 fQ_new= 2.83, 0.0103 fQ_old= 4.43, 0.0119 P_v_P= 0.351346\n", " 2.65M Q=0.550 k=1.011 fQ_new= 0.041,1.27e-09 fQ_old= 0.0792,6.29e-10 P_v_P= 0.353941\n", " 2.70M Q=0.150 k=0.245 fQ_new= 5.16, 0.0482 fQ_old= 5.16, 0.0482 P_v_P= 0.358162\n", " 2.75M Q=0.950 k=0.497 fQ_new= 0.265, 1.22 fQ_old= 0.265, 1.22 P_v_P= 0.359481\n", " 2.80M Q=2.450 k=0.647 fQ_new=2.42e-18, 0.299 fQ_old=2.42e-18, 0.299 P_v_P= 0.358782\n", " 2.85M Q=0.550 k=0.180 fQ_new= 1.02, 0.405 fQ_old= 1.33, 0.52 P_v_P= 0.358540\n", " 2.90M Q=1.150 k=0.847 fQ_new= 0.0757,2.59e-05 fQ_old= 0.0757,2.59e-05 P_v_P= 0.356943\n", " 2.95M Q=0.750 k=0.343 fQ_new= 0.104,3.96e-06 fQ_old= 0.104,3.96e-06 P_v_P= 0.355842\n", " 3.00M Q=0.650 k=0.888 fQ_new= 0.00277,1.64e-11 fQ_old= 0.00277,1.64e-11 P_v_P= 0.354200\n", "Total acceptance rate= 0.7214313333333333 k-acceptance= 0.8170588793082408 q-acceptance= 0.24401907185503152\n", "k-trials= 0.8331223333333333 q-trial= 0.16687766666666667\n", "t_simulate= 43.75 t_meassure= 43.13 t_recompute= 19.17 t_print= 0.74 t_total= 88.13\n" ] } ], "source": [ "from numpy import random\n", "\n", "p = params()\n", "p.Nitt = 3000000 \n", "Ndim = 6\n", "width = 1./sqrt(Ndim)\n", "fnc = FuncNDiag2(width, Ndim)\n", "\n", "Nq = 30\n", "qx = linspace( 3*0.5/Nq, 3*(Nq-0.5)/Nq, Nq)\n", "(Pval,mweight) = IntegrateByMetropolis3(fnc, qx, p)" ] }, { "cell_type": "code", "execution_count": 27, "id": "furnished-destiny", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from pylab import *\n", "%matplotlib inline\n", "\n", "\n", "plot(qx,Pval)\n", "plot(qx, exp(-qx**2));\n" ] }, { "cell_type": "markdown", "id": "champion-issue", "metadata": {}, "source": [ "Next plotting the auxiliary function $f_m$ projections $g(r)$ to all $r$." ] }, { "cell_type": "code", "execution_count": 28, "id": "confused-processing", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "gx = mweight.gx\n", "for ik in range(len(gx)):\n", " plot(linspace(0,p.cutoff,shape(gx)[1]), gx[ik,:])" ] }, { "cell_type": "markdown", "id": "answering-tournament", "metadata": {}, "source": [ "Here is the auxiliary function $f_m$ for convolutios $h(r)$ versus $r$." ] }, { "cell_type": "code", "execution_count": 29, "id": "stylish-covering", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "hx = mweight.gx_off\n", "for ik in range(len(hx)):\n", " plot(linspace(0,p.cutoff,shape(gx)[1]), hx[ik,:])" ] }, { "cell_type": "markdown", "id": "flying-victim", "metadata": {}, "source": [ "### 1D Convolutions\n", "\n", "The power of Metropolis integration is that we have freedom to pick an appropriate normalized function. This can come from physical intuition into processes being modeled.\n", "In most physical process the convolutions (correlations between particles) turn out to be important, hence convolution type ansatz considerably improves the precision. The convolutions can still be worked out analytically, even though they are more tedious to derive.\n", "\n", "To derive the integral, we will concentrate on a specific form of convolution,i.e.,\n", "\\begin{eqnarray}\n", "f_m(x_1,x_2,\\cdots,x_n)= \\sum_{j=1}^n g_j(x_j)\\prod_{i=1,i\\ne j}^n g_i(x_i) h_{ij}(x_j-x_i)\n", "\\end{eqnarray}\n", "As before, the two functions can be determined self-consistently by projections\n", "\\begin{eqnarray}\n", "&g_i(x)=&\\int dy_1 dy_2\\cdots dy_n |f(y_1,y_2,\\cdots,y_n)|\\delta(y_i-x)\\\\\n", "&h_{ij}(x_j-x_i)=&\\int dy_1 dy_2\\cdots dy_n |f(y_1,y_2,\\cdots,y_n)|\\delta(x_j-x_i-(y_j-y_i))\n", "\\end{eqnarray}\n", "\n", "\n", "To normalize $f_m$ we need to evaluate the integral\n", "\\begin{eqnarray}\n", "\\int dx_1\\cdots dx_n f_m = \\sum_{j=1}^n \\int dx_j g(x_j) \\prod_{i\\ne j}^{n} \\int dx_i g_i(x_i) h_{ij}(x_j-x_i) \n", "\\end{eqnarray}\n", "Withouth loss of generality, we will work out one term in the sum, namely,\n", "\\begin{eqnarray}\n", "I^N = \\int dx_N g(x_N) \\prod_{i\\ne N} \\int dx_i g_i(x_i) h_{ij}(x_j-x_i) \n", "\\end{eqnarray}\n", "so that the end result is\n", "\\begin{eqnarray}\n", "\\int dx_1\\cdots dx_n f_m = \\sum_j I^j\n", "\\end{eqnarray}" ] }, { "cell_type": "markdown", "id": "eligible-place", "metadata": {}, "source": [ "This integral is combersome because all the functions are pice-wise\n", "constant, which leads to somewhat lengthly derivations.\n", "We can write\n", "$x_N= \\Delta (j_N + t)$, $x_i = \\Delta(j_i + u)$ with $t\\in[0,1]$ and\n", "$u\\in[0,1]$ and $j_i$ integers. Note that $g(\\Delta(j+u))=g[j]$ for\n", "any $u\\in [0,1]$. For simplicity, \n", "below we will drop $\\Delta$ inside function arguments, i.e.,\n", "$g(\\Delta(j+u))\\equiv g(j+u)$\n", "\n", "The integral can thus be turned into\n", "\\begin{eqnarray}\n", "\\int f_m = \\Delta \\sum_{j_N} g[j_N] \\int_0^1 dt \\prod_{i=1}^{N-1} \n", "\\Delta \\sum_{j_i} \\int_0^1 du g_i(j_i+u) h_i(j_N+t-j_i-u) \\\\\n", "=\\Delta^N \\sum_{j_N} g[j_N] \\int_0^1 dt \\prod_{i=1}^{N-1} \n", "\\sum_{j_i} g_i[j_i] \\int_0^1 du\\; h_i(j_N-j_i+t-u) \n", "\\end{eqnarray}\n", "Since both $t$ and $u$ are in the interval $[0,1]$, $t-u$ is in the\n", "interval $[-1,1]$, and there are two possibilities,\n", "\n", "* $t-u<0$ $\\rightarrow$ $h_i(j_N-j_i+t-u)=h_i[j_N-j_i-1]$ \n", "* $t-u>0$ $\\rightarrow$ $h_i(j_N-j_i+t-u)=h_i[j_N-j_i]$\n", "\n", "we thus recognize\n", "\\begin{eqnarray}\n", "\\int_0^1 du\\; \n", "h_i(j_N-j_i+t-u) = \n", "\\int_0^1 du\\; \n", "\\left(\\begin{array}{c}\n", "h_i[j_N-j_i] \\Theta(04$, we define\n", "$$ I^p_k[j] = \\int_0^1 \\frac{t^k}{(j+t)^{p+1}} dt$$\n", "so that $K_n$ can be simply computed by\n", "\\begin{eqnarray}\n", "K_n[j_n]= \\sum_{k=0}^{4(n-1)} a_k I_k^{n-4}[j_n]\n", "\\end{eqnarray}\n", "and we derive the recursion relation for integrals\n", "$I_k^p[j]$. Notice that the previous case $n=4$ corresponds to $p=0$,\n", "but now we will derive recurison for any $n \\ge 4$.\n", "\n", "We notice that\n", "\\begin{eqnarray}\n", "I_{k+1}^p= I_k^{p-1}- j\\, I_k^p, \n", "\\label{Eq:recursion}\n", "\\end{eqnarray}\n", "which follows from the definition\n", "\\begin{eqnarray}\n", "I^p_{k+1} = \\int_0^1 \\frac{t^k(t+j-j)}{(j+t)^{p+1}} dt = \\int_0^1\n", " \\frac{t^k}{(j+t)^{p}} dt -j\\int_0^1 \\frac{t^k}{(j+t)^{p+1}} dt\n", "\\end{eqnarray}\n", "This can be used to compute any $I_k^p$ if we know \n", "$I^{-1}_k$, which is simply given by \n", "$$I^{-1}_k=\\frac{1}{k+1}$$ and \n", "$I_0^p$ for\n", "arbitrary $p$. We notice that\n", "\\begin{eqnarray}\n", "I^{p>0}_{0} = \\int_0^1 \\frac{1}{(j+t)^{p+1}} dt = \\frac{1}{p}\\left(\\frac{1}{j^p}-\\frac{1}{(j+1)^p}\\right)\n", "\\end{eqnarray}\n", "and $I^0_0 = \\log\\left(\\frac{j+1}{j}\\right)$\n", "hence the above recursion gives an arbitrary $I_k^p$.\n", "\n", "To show that all $I_k^p$ are now determined, lets show for a first few\n", "$p$. For $p=0$ we get\n", "\\begin{eqnarray}\n", "I^0_{k+1}= I^{-1}_k - j I^0_k = \\frac{1}{k+1} - j I^0_k \n", "\\end{eqnarray}\n", "which is exactly the recursion relation we derived earlier.\n", "Once all $I^0_k$ are determined, we can proceed to compute $I^1_{k}$ by the\n", "recursion\n", "\\begin{eqnarray}\n", "I^1_{k+1}= I^{0}_k - j I^1_k\n", "\\end{eqnarray}\n", "Since we know $I^1_0$, all $I^1_k$ can readily be obtained from this\n", "recursion relation. And once $I^1_k$ are known, $I^2_k$ are determined\n", "by the recursion relation specified above $I_{k+1}^p= I_k^{p-1}- j\\, I_k^p$ \n" ] }, { "cell_type": "markdown", "id": "oriental-equipment", "metadata": {}, "source": [ "# Homework\n", "\n", "\n", "Using Metropolis integration evaluate the following Linhardt function:\n", "\n", "\\begin{eqnarray}\n", "P(\\Omega,\\vec{q}) = -2 \\int \\frac{d^3k}{(2\\pi)^3} \\frac{f(\\varepsilon_{\\vec{k}+\\vec{q}})-f(\\varepsilon_{\\vec{k}})}{\\Omega-\\varepsilon_{\\vec{k}+\\vec{q}}+\\varepsilon_\\vec{k}+i\\delta}\n", "\\end{eqnarray}\n", "\n", "Here $\\varepsilon_\\vec{k}=k^2-k_F^2$.\n", "\n", "We will use $k_F=\\frac{(\\frac{9\\pi}{4})^{1/3}}{rs}$ with $r_s=2$, $f(x) = \\frac{1}{\\exp(x/T)+1}$, $T=0.02 k_F^2$, $\\delta = 0.002 k_F^2$, and cutoff is $3 k_F$.\n", "\n", "We will use linear mesh of frequency $\\Omega=[0,k_F^2]$ with 100 points, and $q$ mesh $q=[0.1 k_F,0.2 k_F,0.3 k_F,0.4 k_F]$. We will plot the family of curves for $P(\\Omega,q)$.\n", "\n", "We will run for `p.Nitt`=5000000 steps.\n", "\n", "The result for $P(\\Omega=0,q<< k_F)$ should be close to $-n_F$, where $n_F = \\frac{k_F}{2\\pi^2}$.\n", "\n", "We will use Linhardt function from previous homework, but slightly modify it, so that the input `momentum` contains $\\vec{q}$ is the first vector and $\\vec{k}$ as the second vector. (The dimension `Ndim` will thus be set to 2.) The function will return an array of values, corresponding to all frequencies.\n", "\n", "The Metropolis algorithm has to be modified so that it takes an array of values. The probability will be proportional to the value at zero frequency $P(\\Omega=0)$, but we will measure all frequencies at the same time.\n" ] }, { "cell_type": "markdown", "id": "coordinated-wilson", "metadata": {}, "source": [ "### Here we summarize all the necessary changes to the `IntegrateByMetropolis3` routine\n", "\n", "We marked all lines that require change by \n", "\n", "`# Next line needs CORRECTION for homework `\n", "\n", "* `Pval[iq,iOm]` becomes $q$ and $\\Omega$ array.\n", "\n", "* When we compute ratio, we need to take only the zero frequency value of the function, i.e., `abs(fQ_new[0][0])` and `fQ[0][0]`.\n", "\n", "* In measurement, the weight `W` should depend only zero frequency value only, to cancel the probability from the Metropolis, i.e., `abs(fQ[0][0])`\n", "\n", "* When measuring, we need to properly update the values `Pval[iQ,:]+= f0`.\n", "\n", "* The physical weight $\\widetilde{V}_{physical}$ for determining if `V0` is of the right magnitude, needs to be changed so that it depends on zero frequency only `f0[0]`\n", "\n", "* When we reset the stored values in `Pval`, we need to create array of proper size and type\n", "`Pval = zeros(shape(Pval), dtype=complex)` \n", "\n", "* Printing should be modified, for example `ratio` has to be correctly modified to depend on zero frequency obly, and only the zero frequency value of the function is printed out." ] }, { "cell_type": "code", "execution_count": null, "id": "afraid-september", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.5" } }, "nbformat": 4, "nbformat_minor": 5 }