{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Lennard-Jones Potentials for modelling phase transitions in materials\n", "\n", "Nested Sampling is the ideal tool for computing the partition function.\n", "\n", "$$Z(\\beta) = \\int_\\mathcal{X} e^{-\\beta E(x)} \\, \\mathrm{d}x$$\n", "\n", "where $\\beta \\in [0, \\infty)$ is the inverse temperature parameter $\\beta=(k_B T)^{-1}$, $\\mathcal{X}$ is the set of all configurations of the system, and $E : \\mathcal{X} \\to \\mathbb{R}$ is the potential function, which in this case will be the Lennard-Jones potential,\n", "\n", "$$E(x) = 4 \\epsilon \\sum_{i,j} \\left( \\left(\\frac{\\sigma}{r_{ij}}\\right)^{12} - \\left(\\frac{\\sigma}{r_{ij}}\\right)^6 \\right).$$\n", "\n", "In this equation, the $-\\epsilon$ represents the energy of the ground state, and $\\sigma$ is the equilibrium distance when the potential energy is zero.\n", "\n", "The system is invariant to changes in sigma and the total size of the region. Therefore, we choose $\\sigma$ as a ratio with the size of the box. We'll chose to sample states within a unit box, therefore, we are choosing how big the box is in units of $\\sigma$. Choosing $\\sigma=0.01$ is equivalent to choosing, means the volume is roughly 100 particles per side." ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "execution": { "iopub.execute_input": "2024-09-25T16:17:58.586289Z", "iopub.status.busy": "2024-09-25T16:17:58.586121Z", "iopub.status.idle": "2024-09-25T16:17:59.976308Z", "shell.execute_reply": "2024-09-25T16:17:59.975591Z" }, "ExecuteTime": { "end_time": "2024-10-09T16:43:04.151253Z", "start_time": "2024-10-09T16:43:04.146800Z" } }, "outputs": [], "source": [ "\n", "import jax\n", "\n", "jax.config.update(\"jax_enable_x64\", True)\n", "\n", "import tensorflow_probability.substrates.jax as tfp\n", "from jax import random, numpy as jnp\n", "from jax import vmap\n", "\n", "from jaxns import Model\n", "from jaxns import Prior\n", "\n", "tfpd = tfp.distributions\n" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "execution": { "iopub.execute_input": "2024-09-25T16:17:59.978783Z", "iopub.status.busy": "2024-09-25T16:17:59.978511Z", "iopub.status.idle": "2024-09-25T16:18:00.636271Z", "shell.execute_reply": "2024-09-25T16:18:00.635677Z" }, "ExecuteTime": { "end_time": "2024-10-09T16:43:04.172449Z", "start_time": "2024-10-09T16:43:04.160865Z" } }, "outputs": [], "source": [ "\n", "def pairwise_distances_squared(points):\n", " n = points.shape[0]\n", " pair_indices = jnp.triu_indices(n, 1) # Upper triangular indices, excluding diagonal\n", "\n", " # Create function that calculates the distance between two points\n", " def dist_fn(ij):\n", " i, j = ij\n", " return jnp.sum(jnp.square(points[i] - points[j]))\n", "\n", " # Apply this function to each pair of indices\n", " pairwise_distances = vmap(dist_fn)(pair_indices)\n", "\n", " return pairwise_distances\n", "\n", "\n", "# test pairwise_distances_squared\n", "points = jnp.array([[1, 2], [3, 4], [5, 6], [7, 8]])\n", "assert jnp.all(pairwise_distances_squared(points) == jnp.asarray([8, 32, 72, 8, 32, 8]))" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "execution": { "iopub.execute_input": "2024-09-25T16:18:00.638629Z", "iopub.status.busy": "2024-09-25T16:18:00.638418Z", "iopub.status.idle": "2024-09-25T16:18:02.096125Z", "shell.execute_reply": "2024-09-25T16:18:02.095538Z" }, "ExecuteTime": { "end_time": "2024-10-09T16:43:04.730031Z", "start_time": "2024-10-09T16:43:04.198430Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/albert/git/jaxns/jaxns/framework/context.py:98: UserWarning: Using a constant initializer for state. This is not recommended as it may induce closure issues.\n", " warnings.warn(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "{'beta': Array(0.39933333, dtype=float64)}\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:jaxns:Sanity check...\n", "INFO:jaxns:Sanity check passed\n" ] } ], "source": [ "\n", "\n", "from jaxns.internals.log_semiring import LogSpace\n", "import jaxns.framework.context as ctx\n", "\n", "num_particles = 7\n", "num_pairs = num_particles * (num_particles - 1) // 2\n", "sigma = jnp.asarray(1., jnp.float64) # 0.3405 nm\n", "box_size = jnp.asarray(1.56, jnp.float64) # 4 sigma in each direction\n", "epsilon_over_beta = jnp.asarray(119.8, jnp.float64) # 119.8 K\n", "k_B = jnp.asarray(1.38064852e-23, jnp.float64) # J/K\n", "beta_init = epsilon_over_beta / 300. # Simulate at 300 K\n", "\n", "\n", "def prior_model():\n", " x = yield Prior(\n", " tfpd.Uniform(\n", " low=jnp.zeros((num_particles, 3)),\n", " high=box_size * jnp.ones((num_particles, 3))),\n", " name='x'\n", " )\n", " beta = ctx.get_parameter('beta', init=beta_init, dtype=jnp.float64)\n", " return x, beta\n", "\n", "\n", "def log_likelihood(x, beta):\n", " \"\"\"\n", " negative V12-6 potential.\n", " \"\"\"\n", " r2_ij = pairwise_distances_squared(x / sigma)\n", " r6_ij = r2_ij ** 3\n", " r12_ij = r6_ij ** 2\n", " r6_ij_inv = jnp.reciprocal(r6_ij)\n", " r12_ij_inv = jnp.reciprocal(r12_ij)\n", " E_pairs = 4. * (r12_ij_inv - r6_ij_inv)\n", " E = jnp.sum(E_pairs)\n", " return -beta * E\n", "\n", "\n", "model = Model(\n", " prior_model=prior_model,\n", " log_likelihood=log_likelihood\n", ")\n", "params = model.params\n", "\n", "print(params)\n", "\n", "model.sanity_check(random.PRNGKey(42), 1000)\n" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "execution": { "iopub.execute_input": "2024-09-25T16:18:02.098132Z", "iopub.status.busy": "2024-09-25T16:18:02.097977Z", "iopub.status.idle": "2024-09-25T16:18:19.032636Z", "shell.execute_reply": "2024-09-25T16:18:19.032111Z" }, "ExecuteTime": { "end_time": "2024-10-09T16:44:51.469087Z", "start_time": "2024-10-09T16:43:04.731355Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--------\n", "Termination Conditions:\n", "All live-points are on a single plateau (sign of possible precision error)\n", "no seed points left (consider decreasing shell_fraction)\n", "--------\n", "likelihood evals: 189471362\n", "samples: 172498\n", "phantom samples: 0\n", "likelihood evals / sample: 1098.4\n", "phantom fraction (%): 0.0%\n", "--------\n", "logZ=-8.87 +- 0.14\n", "max(logL)=6.59\n", "H=-11.75\n", "ESS=1598\n", "--------\n", "x[#]: mean +- std.dev. | 10%ile / 50%ile / 90%ile | MAP est. | max(L) est.\n", "x[0]: 0.75 +- 0.55 | 0.08 / 0.6 / 1.49 | 0.0 | 0.0\n", "x[1]: 0.82 +- 0.56 | 0.07 / 1.0 / 1.49 | 1.38 | 1.38\n", "x[2]: 0.79 +- 0.56 | 0.08 / 0.89 / 1.49 | 0.62 | 0.62\n", "x[3]: 0.88 +- 0.54 | 0.1 / 1.09 / 1.5 | 1.1 | 1.1\n", "x[4]: 0.86 +- 0.55 | 0.09 / 1.04 / 1.5 | 1.17 | 1.17\n", "x[5]: 0.7 +- 0.56 | 0.05 / 0.5 / 1.47 | 0.54 | 0.54\n", "x[6]: 0.77 +- 0.54 | 0.09 / 0.73 / 1.48 | 1.27 | 1.27\n", "x[7]: 0.73 +- 0.57 | 0.05 / 0.57 / 1.48 | 0.07 | 0.07\n", "x[8]: 0.8 +- 0.55 | 0.08 / 0.86 / 1.5 | 0.56 | 0.56\n", "x[9]: 0.63 +- 0.55 | 0.05 / 0.38 / 1.47 | 0.41 | 0.41\n", "x[10]: 0.83 +- 0.54 | 0.09 / 0.97 / 1.49 | 0.48 | 0.48\n", "x[11]: 0.78 +- 0.56 | 0.07 / 0.7 / 1.48 | 1.14 | 1.14\n", "x[12]: 0.82 +- 0.55 | 0.08 / 0.95 / 1.49 | 0.67 | 0.67\n", "x[13]: 0.87 +- 0.55 | 0.1 / 1.08 / 1.5 | 1.49 | 1.49\n", "x[14]: 0.84 +- 0.56 | 0.08 / 1.0 / 1.51 | 1.52 | 1.52\n", "x[15]: 0.72 +- 0.55 | 0.06 / 0.53 / 1.48 | 0.37 | 0.37\n", "x[16]: 0.66 +- 0.53 | 0.06 / 0.47 / 1.46 | 0.5 | 0.5\n", "x[17]: 0.8 +- 0.55 | 0.08 / 0.87 / 1.48 | 0.03 | 0.03\n", "x[18]: 0.88 +- 0.55 | 0.09 / 1.1 / 1.5 | 1.45 | 1.45\n", "x[19]: 0.68 +- 0.53 | 0.06 / 0.5 / 1.43 | 0.69 | 0.69\n", "x[20]: 0.7 +- 0.54 | 0.07 / 0.58 / 1.46 | 1.48 | 1.48\n", "--------\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/albert/git/jaxns/jaxns/plotting.py:45: UserWarning: Found samples with zero likelihood evaluations.\n", " warnings.warn(\"Found samples with zero likelihood evaluations.\")\n" ] }, { "data": { "text/plain": "
", "image/png": "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l5fS09Od9qenp1d4STQfHx9169ZNe/bskSTzuPT0dLVo0cLpnDExMaWeY+rUqUpKSjIfZ2dnc7vzGjBz5kxJ0g033KCIiAiLuwEAAPWF282RLrZ792716dPHpWN9fX0VGxur5ORkc5/D4VBycrLTqHN5ioqKtHXrVjM0R0VFKTw83Omc2dnZWrduXZnn9PPzU1BQkNOG6rVjxw699dZbks7+wwUAAKC2uN2IdLH8/Hx99913Lh+flJSkMWPGqEePHurVq5dmzZql3NxcjR07VpI0evRoXXTRRZoxY4Yk6YknntDll1+utm3bKjMzU88995z279+vu+66S9LZpfAmT56sp556Su3atTOXv4uIiNDQoUOr/H7hmkcffVQOh0M33XSTevbsaXU7AACgHnHbIF1VI0aM0NGjRzVt2jSlpaUpJiZGK1euNC8WTE1NdboF+YkTJzR+/HilpaWpSZMmio2N1dq1axUdHW3WTJkyRbm5uZowYYIyMzPVu3dvrVy5kjWkLbJ27Vp9/PHHstvt+sc//mF1OwAAoJ6xbB3pu+++W7GxserWrZu6dOlSYqWF7du3q0uXLioqKrKivRrBOtLV65prrtGaNWt01113af78+Va3AwAAPEBl8pplI9Jbt27V22+/rdzcXPn4+Cg6Olrdu3dXbGysunfv7jRaDJxv9erVWrNmjXx9fTV9+nSr2wEAAPWQZUH6+++/l2EY2rVrlzZt2mRuy5YtM+8uWNW7G8JzPf/885KkP/7xj2rZsqXF3QAAgPrI7W4RLkl79+7Vxo0btXnzZj399NNWt1NtmNpRPXbu3Kno6GjZbDbt2rVL7dq1s7olAADgIerE1I5p06ZpyJAhio2NLfFcmzZt1KZNG91yyy0WdAZ3V7zSypAhQwjRAADAMpZNRD548KAGDhyoli1bauLEifr888+Vn59vVTuoI/bu3aslS5ZIkh577DGLuwEAAPWZZUH69ddfV1pamt555x01atRIkydPVrNmzTRs2DC98cYbOn78uFWtwY09//zzKioqUmJionr06GF1OwAAoB5zqznSO3fu1H/+8x99/PHH2rhxo3r16qU//OEPuvXWW3XRRRdZ3V6VMUe6ao4ePaqLL75YZ86c0ddff61rrrnG6pYAAICHqUxec6s15jp27KgpU6bo+++/14EDB3TnnXfq22+/1TvvvGN1a3ADL730ks6cOaMePXq4fPt4AACA6uK2dzbMzMzU4sWLtWbNGqtbgRs4fvy45syZI0l6/PHHWRoRAABYzq1GpM+Vn5+v7777zuo24CbmzZunnJwcde7cWTfccIPV7QAAALhvkAaK5eXl6eWXX5YkTZkyhbteAgAAt2DZ1I67775bsbGx6tatm7p06SJfX1+rWoGb++ijj5SRkaGIiAiNHDnS6nYAAAAkWRikt27dqrffflu5ubny8fFRdHS0unfvrtjYWHXv3p1RR0iSioqK9MQTT0g6+48vb2+3ndYPAADqGctSyffffy/DMLRr1y5t2rTJ3JYtW6bMzExJ4oIy6P3339fPP/+skJAQ/eUvf7G6HQAAAJOlw3s2m00dOnRQhw4ddNttt5n79+7dq40bN2rz5s0WdgerGYahZ555RpI0efJkBQcHW9wRAADA/7jVDVk8HTdkqZxvvvlGffr0UUBAgA4ePKiQkBCrWwIAAB6uzt6QBTjXP//5T0nS7bffTogGAABuhyANt5Samqply5ZJkiZNmmRxNwAAACURpOGWZs+eraKiIvXt21ddunSxuh0AAIASCNJwOydPntSCBQskSUlJSRZ3AwAAUDqCNNzO66+/rszMTLVt21YDBw60uh0AAIBSEaThVgoLCzVr1ixJ0gMPPMCNeQAAgNsipcCtfPjhh9q3b5+aNWum0aNHW90OAABAmQjScBuGYejFF1+UJE2cOFGBgYEWdwQAAFA2gjTcxpdffqn169crICBA99xzj9XtAAAAlIsgDbcxc+ZMSdL48eMVFhZmcTcAAADl8+ggPXfuXLVu3Vr+/v6Ki4vT+vXry6ydP3++rrrqKjVp0kRNmjRRQkJCifo777xTNpvNaRswYEBNv416YefOnfryyy9ls9k0efJkq9sBAAC4II8N0kuXLlVSUpKmT5+uTZs2qWvXrkpMTFRGRkap9atXr9att96qr7/+WikpKYqMjFT//v116NAhp7oBAwboyJEj5vbOO+/UxtvxeLNnz5Yk/eEPf1BUVJTF3QAAAFyYzTAMw+omakJcXJx69uypOXPmSJIcDociIyN177336pFHHrng8UVFRWrSpInmzJljrh5x5513KjMzU8uXL3epp+zsbAUHBysrK0tBQUEuncMTZWRkKCoqSqdOnVJycrL69u1rdUsAAKCeqkxe88gR6fz8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+eefO9X+9ttvJWrc0ZYtWxQbG1vqc7/99pu6du2qUaNGqV27dpo4caKWL1+uuLg4derUSbt375YkXX/99YqNjVWnTp309ttvS5JSUlLUq1cvFRYWKj09Xe3atVNaWlqJ13B1akeLFi0UHR3ttK9jx46l1lblmOrCiDSqXU5Ojv79739Lkh555BFGowEAta5BgwaW11bUJZdcIl9fX33//fdq1aqVJKmgoEAbNmwwLyRs06aNfHx8tGHDBl188cWSpKysLP3yyy+6+uqrnc7366+/KjMzs9wR6Z07d+q9995T27Zt1alTJzVs2FDr1q3Tv/71L82ZM0cvv/yy3njjDYWEhCg3N1c9e/bUzTffrPj4eF199dV69tlntXnzZk2bNk3h4eElzu/q1I4rr7xSu3btctr3yy+/mH8vpXHlmOpCkEa1mzVrljIzM9W+fXsNHjzY6nYAAHBrDRo00MSJE/XQQw8pJCREF198sWbOnKlTp05p3LhxkqRGjRppzJgxZk1oaKimT58uu91eYsCq+AJELy8vbdu2zdzv6+urSy+9VJLUvn17c1pIx44dzbsOd+7cWZ999pmksytvffLJJ5Kk1NRUpaamql27dnrqqacUExOjtm3blrm8nqtTO+6//35dccUVevrppzV8+HCtX79er732ml577TWzZs6cOVq2bJmSk5MrfExNIUijWmVkZOjZZ5+VdHZutJeXl8UdAQDg/p555hk5HA7dcccdysnJUY8ePfTf//7XaS3kF198UXfffbeuv/56BQUFacqUKTpw4ECJCwqLg/Tll1/utL9379769ttvJUl+fn7mfrvdbj622+0qKirS119/re+//17r1q2Tv7+/evTooby8PEln/1+fn5+vY8eOqaioqFr/X9+zZ08tW7ZMU6dO1RNPPKGoqCjNmjVLo0aNMmuOHTumX3/9tVLH1BSbUdVLTVFh2dnZCg4OVlZWloKCgqxup0bcc889euWVV9SjRw+tX7+eaR0AgBpz5swZ7du3T1FRUZatTmGl3NxcXXTRRXrhhRfMkeuK+O2333TzzTebd/67+eabNWnSJF1zzTX64Ycf9NRTT2n8+PF666239P7772vLli3q2bOnNm/erE6dOikxMVF/+ctftHLlSkVGRmrKlCk19RZrTHlfO5XJa4xIo9ocOnTInBv93HPPEaIBAKhGmzdv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pAEAQH3h8sWGxXbu3KmYmBinfYMGDdIrr7yitWvXVvX0cFPnBulzEaQBAEB9UeUg3bNnTy1evLjE/s6dO2v9+vVVPT3cVPGqHb6+vkztAAAA9VKVp3a8+OKL6tu3r/bv36/7779fnTp1Un5+vl544QU1a9asOnqEGyqeztGsWTOnFVsI0gAAoL6ocpCOjY3VunXrNGnSJMXExMjHx0cOh0Pe3t5asGBBdfQIN1Q8tePcpe8kgjQAAKg/qhykJalDhw768ssvlZqaqi1btshutys2NlYtWrSojtPDDRUH6XOXvpMI0gAAoP6oliBd7OKLL9bFF19cnaeEm8rMzJQk7dq1S7m5uWaAJkgDAID6osoXG5Zl9+7d6tOnT02dHhYrKCgodT9BGgAA1Bc1FqTz8/P13Xff1dTpYTGWvwMAAPVdjQVpeLa8vLxS9zds2FASQRoAAHg+l+dI33333YqNjVW3bt3UpUuXEhedwbNdaGrHyZMna7MdAACAWudykN66davefvtt5ebmysfHR9HR0erevbtiY2PVvXt32e0MdnuyC03tOHXqlBwOB18HAADAY7kcpL///nsZhqFdu3Zp06ZN5rZs2TJzRYfim3bA81woSEvS6dOnnR4DAAB4kiotf2ez2dShQwd16NBBt912m7l/79692rhxozZv3lzlBuGeiqd2REREON0iPDAw0PzzucviAQAAeJpqXUe6WJs2bdSmTRvdcsstNXF6uAHDMCRJ1113ndMtwu12uwICAnT69GkuOAQAAB6t2iawrlu3rrpOhTqgrFuESyyBBwAA6odqC9KMPtcvP/30kyTp119/LfEcQRoAANQHlQrSw4cPL3W75ZZbdPz48Wprau7cuWrdurX8/f0VFxen9evXl1v//vvvq0OHDvL391fnzp312WefOT1vGIamTZumFi1aKCAgQAkJCdq9e7dTzfHjxzVq1CgFBQWpcePGGjdunNMSbqtXr9aQIUPUokULNWjQQDExMXr77ber7T3XNcXz37/66qsSgZkgDQAA6oNKzZH+8ssv9eabb5o33ShmGIa++eabamlo6dKlSkpK0rx58xQXF6dZs2YpMTFRu3btUmhoaIn6tWvX6tZbb9WMGTN0/fXXa8mSJRo6dKg2bdqkTp06SZJmzpyp2bNna/HixYqKitJf//pXJSYmaseOHeb83lGjRunI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iIiIiFo/idCYhZp12I4dOzB58mR8++238Pf3x6pVq/Dzzz/j8uXLcHBwQGhoKDp16oSoqCi16wYNGoROnTph+/btauX5+flYsmQJXnrpJchkMly/fh3z589HXl4ezp07V6+R59zcXFhZWSEnJweWlpZNer9ERERE1HgNyde0OrXj7Nmz8PDwgIGBAc6ePVtr3T59+jSo7fHjx+P+/fuIjIyEUqmEt7c3YmNjxQcQ09LSYGCgPiB/5coVHDlyBH/88UeV9qRSKc6ePYtNmzYhOzsbcrkcw4cPx6effsrpG0RERERtkFZHpA0MDKBUKmFvbw8DAwNIJJJqdzKUSCQ1rozRmnBEmoiIiEi3tZoR6Zs3b8LOzk78moiIiIiotdBqIt21a9dqvyYiIiIi0nU6s2pHVFRUtdt3b9iwAdHR0VqIiIiIiIioZjqTSH/77bfo2bNnlfKnnnoK69at00JEREREREQ105lEWqlUVrses52dHdLT07UQERERERFRzXQmkXZycqp2B8OjR49CLpdrISIiIiIioprpzBbh06ZNQ1hYGMrKyjB06FAAgEKhwPz58zF37lwtR0dEREREpE5nEul58+bhwYMHeOedd1BaWgoAMDU1xYcffoiIiAgtR0dEREREpE7ntgjPz8/HpUuXYGZmBjc3N73aNZAbshARERHptlazIUt12rVrBz8/P22HQURERERUK60m0uPGjUNMTAwsLS0xbty4Wuv++uuvLRQVEREREVHdtJpIW1lZQSKRAAAsLS3Fr4mIiIiIdJ1WE+kXX3wRpqamAICYmBhthkJERERE1CBaXUf6xRdfRHZ2NgBAKpUiMzNTm+EQEREREdWbVhNpOzs7HD9+HAAgCAKndhARERFRq6HVqR0zZszAmDFjIJFIIJFIIJPJaqyrUqlaMDIiIiIiotppNZH++OOPMWHCBKSmpuKFF17Axo0bYW1trc2QiIiIiIjqRauJ9G+//YYRI0agZ8+eWLx4MV555RWYm5trMyQiIiIionrR6s6GUqkUSqUSdnZ2kEqlSE9Ph729vbbCaXbc2ZCIiIhItzUkX+PDhkREREREGuDDhkREREREGuDDhkREREREGtBqIg0APXv25MOGRERERNTqaHWO9N8tXrwYxsbGOHDgAL799lvk5eUBAO7du4f8/HwtR0dEREREpE7rI9KVbt26hZCQ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" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import jax\n", "from jaxns import NestedSampler, TerminationCondition\n", "\n", "# Create the nested sampler class. In this case without any tuning.\n", "ns = NestedSampler(\n", " model=model,\n", " max_samples=500000,\n", " shell_fraction=0.\n", ")\n", "\n", "# Crucial for Lenard-Jones potential is to go deep enough. \n", "# Since we know min(E)=-1 for a single pair, we know that the log_L_max = num_pairs \n", "# Thus we can use the log_L_contour termination condition.\n", "\n", "term_cond = TerminationCondition(\n", " log_L_contour=0.9995 * num_pairs\n", ")\n", "ns_compiled = jax.jit(ns).lower(jax.random.PRNGKey(42), term_cond=term_cond).compile()\n", "\n", "termination_reason, state = ns_compiled(random.PRNGKey(42), term_cond=term_cond)\n", "\n", "results = ns.to_results(\n", " termination_reason=termination_reason,\n", " state=state\n", ")\n", "\n", "ns.summary(results)\n", "ns.plot_diagnostics(results)\n", "ns.save_results(results, 'results.json')" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "execution": { "iopub.execute_input": "2024-09-25T16:18:19.034736Z", "iopub.status.busy": "2024-09-25T16:18:19.034579Z", "iopub.status.idle": "2024-09-25T16:18:24.656094Z", "shell.execute_reply": "2024-09-25T16:18:24.655559Z" }, "ExecuteTime": { "end_time": "2024-10-09T16:45:08.364835Z", "start_time": "2024-10-09T16:44:51.472682Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "2024-10-09 18:44:53.773979: E external/xla/xla/service/slow_operation_alarm.cc:65] Constant folding an instruction is taking > 2s:\n", "\n", " %negate = f64[172498,7,3]{2,1,0} negate(f64[172498,7,3]{2,1,0} %constant.37)\n", "\n", "This isn't necessarily a bug; constant-folding is inherently a trade-off between compilation time and speed at runtime. XLA has some guards that attempt to keep constant folding from taking too long, but fundamentally you'll always be able to come up with an input program that takes a long time.\n", "\n", "If you'd like to file a bug, run with envvar XLA_FLAGS=--xla_dump_to=/tmp/foo and attach the results.\n", "2024-10-09 18:44:54.102546: E external/xla/xla/service/slow_operation_alarm.cc:133] The operation took 2.328634594s\n", "Constant folding an instruction is taking > 2s:\n", "\n", " %negate = f64[172498,7,3]{2,1,0} negate(f64[172498,7,3]{2,1,0} %constant.37)\n", "\n", "This isn't necessarily a bug; constant-folding is inherently a trade-off between compilation time and speed at runtime. XLA has some guards that attempt to keep constant folding from taking too long, but fundamentally you'll always be able to come up with an input program that takes a long time.\n", "\n", "If you'd like to file a bug, run with envvar XLA_FLAGS=--xla_dump_to=/tmp/foo and attach the results.\n", "WARNING:matplotlib.legend:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n", "WARNING:matplotlib.legend:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n", "WARNING:matplotlib.legend:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n", "WARNING:matplotlib.legend:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n", "WARNING:matplotlib.legend:No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n" ] }, { "data": { "text/plain": "
", "image/png": "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OAEAAFhEcAIAALCI4AQAAGARwQkAAMAighMAAIBFBCcAAACLCE4AAAAWEZwAAAAsIjgBAABYRHACAACwiOAEAABgEcEJAADAIoITAACARQQnAAAAiwhOAAAAFhGcAAAALCI4AQAAWERwAgAAsIjgVM11112nzp07KyQkRB06dNDtt9+uPXv2uLRZt26dLr/8coWEhCghIUFTpkzxULUAAKA5EZyqGThwoD788ENt3bpVf//73/XTTz/pt7/9rfP94uJiDR48WImJiVqzZo1eeOEFPfXUU3rrrbc8WDUAAGgONmOM8XQR3uyf//ynhg0bptLSUgUFBWn69Ol6/PHH5XA4FBwcLEnKzMzUxx9/rC1btlg+bnFxsSIiIlRUVKTw8HB3lQ8AAOrRkN9kepzqcPDgQb3//vu69NJLFRQUJEnKzs7WL37xC2dokqT09HRt3bpVhw4dOu2xSktLVVxc7LIBAICWheBUi0cffVRnnXWW2rVrp9zcXH3yySfO9xwOh2JjY13aV712OBynPWZWVpYiIiKcW0JCgnuKBwAAbuMXwSkzM1M2m63O7dRhtvHjx+u7777Tl19+qcDAQN1xxx060xHNCRMmqKioyLnl5eWd6dcCAADNrJWnC7CivLxcDodDR48eVXR0tNq2bdugzz/88MO6884762zTtWtX5z+3b99e7du313nnnafzzz9fCQkJWrFihVJTUxUXF6f8/HyXz1a9jouLO+3x7Xa77HZ7g+oGAADexWuD0+HDh/W///u/mjNnjlatWqWysjIZY2Sz2dSpUycNHjxY99xzjy6++OJ6jxUdHa3o6OhG1VFZWSnp5BwlSUpNTdXjjz+u8vJy57ynhQsXqlu3boqKimrUOQAAQMvglUN1L7/8spKSkjRr1iylpaXp448/Vk5Ojn744QdlZ2dr0qRJOnHihAYPHqwhQ4Zo27ZtTXLelStX6o033lBOTo527typxYsX65ZbbtHZZ5+t1NRUSdKtt96q4OBgjRo1Shs3btTcuXP12muvKSMjo0lqAAAA3ssrlyO45ZZb9MQTT6hHjx51tistLdWsWbMUHBys//mf/znj865fv14PPvigvv/+e5WUlKhDhw4aMmSInnjiCXXs2NHZbt26dRo7dqxWr16t9u3b6/7779ejjz7aoHOxHAEAAN6hIb/JXhmc/AHBCQAA78A6TgAAAG7gtZPDT/Xtt9/qww8/VG5ursrKylze++ijjzxUFQAA8Dde3+M0Z84cXXrppdq8ebP+8Y9/qLy8XBs3btTixYsVERHh6fIAAIAf8frg9Nxzz+mVV17Rp59+quDgYL322mvasmWLbrrpJnXu3NnT5QEAAD/i9cHpp59+0tChQyVJwcHBKikpkc1m00MPPaS33nrLw9UBAAB/4vXBKSoqSocPH5YkdezYURs2bJAkFRYW6ujRo54sDQAA+Bmvnxz+i1/8QgsXLlTPnj1144036sEHH9TixYu1cOFCXXnllZ4uDwAA+BGvD05vvPGGjh8/Lkl6/PHHFRQUpG+++UY33HCDnnjiCQ9XBwAA/AkLYHoIC2ACAOAdfGoBzMDAQBUUFNTYf+DAAQUGBnqgIgAA4K+8PjidrkOstLRUwcHBzVwNAADwZ147x+n111+XJNlsNr399ttq3bq1872Kigp9/fXX6t69u6fKAwAAfshrg9Mrr7wi6WSP04wZM1yG5YKDg5WUlKQZM2Z4qjwAAOCHvDY4bd++XZI0cOBAffTRR4qKivJwRQAAwN95/Rynr776SlFRUSorK9PWrVt14sQJT5cEAAD8lNcHp2PHjmnUqFEKCwtTjx49lJubK0m6//77NXnyZA9XBwAA/InXB6fMzEx9//33WrJkiUJCQpz709LSNHfuXA9WBgAA/I3XznGq8vHHH2vu3Lm65JJLZLPZnPt79Oihn376yYOVAQAAf+P1PU779u1TTExMjf0lJSUuQQoAAMDdvD449evXT59//rnzdVVYevvtt5WamuqpsgAAgB/y+qG65557TldffbU2bdqkEydO6LXXXtOmTZv0zTffaOnSpZ4uDwAA+BGv73EaMGCAcnJydOLECfXs2VNffvmlYmJilJ2drb59+3q6PAAA4Eds5nQPg4NbNeRJzAAAwH0a8pvs9UN10sln0/3jH//Q5s2bJUkXXHCBrr/+erVq1SLKBwAAPsLrk8fGjRt13XXXyeFwqFu3bpKk559/XtHR0fr000914YUXerhCAADgL7x+jtNdd92lHj16aNeuXVq7dq3Wrl2rvLw89erVS/fcc4+nywMAAH7E63uccnJy9O2337o85DcqKkrPPvusLr74Yg9WBgAA/I3X9zidd955ys/Pr7G/oKBA55xzjgcqAgAA/sorg1NxcbFzy8rK0gMPPKC//e1v2rVrl3bt2qW//e1vGjdunJ5//nlPlwoAAPyIVy5HEBAQ4PI4laoSq/ad+rqioqL5C2wCLEcAAIB3aPHLEXz11VeeLgEAAKAGrwxOV1xxhcfOfd111yknJ0cFBQWKiopSWlqann/+ecXHx0uSduzYoS5dutT4XHZ2ti655JLmLhcAADQjr5zjlJub26D2u3fvbrJzDxw4UB9++KG2bt2qv//97/rpp5/029/+tka7//u//9PevXudG49/AQDA93llcLr44ot17733avXq1adtU1RUpJkzZ+rCCy/U3//+9yY790MPPaRLLrlEiYmJuvTSS5WZmakVK1aovLzcpV27du0UFxfn3IKCgpqsBgAA4J28cqhu06ZNevbZZ3XVVVcpJCREffv2VXx8vEJCQnTo0CFt2rRJGzdu1EUXXaQpU6bommuucUsdBw8e1Pvvv69LL720RjC67rrrdPz4cZ133nl65JFHdN1119V5rNLSUpWWljpfFxcXu6VmAADgPl7Z49SuXTu9/PLL2rt3r9544w2de+652r9/v7Zt2yZJGj58uNasWaPs7Gy3hKZHH31UZ511ltq1a6fc3Fx98sknzvdat26tl156SfPmzdPnn3+uAQMGaNiwYfrnP/9Z5zGzsrIUERHh3BISEpq8bgAA4F5euRyBJP3888/q0qWLy7IEjZWZmVnvmk+bN29W9+7dJUn79+/XwYMHtXPnTj399NOKiIjQZ599dtpa7rjjDm3fvl3Lli077fFr63FKSEhgOQIAADysIcsReG1wCgwM1N69exUTEyNJuvnmm/X6668rNja2wcfat2+fDhw4UGebrl27Kjg4uMb+Xbt2KSEhQd98841SU1Nr/ey0adP0xz/+UXv37rVcE+s4AQDgHVr8Ok7Sfxe5rPLFF18oKyurUceKjo5WdHR0oz5bWVkpSS69RdXl5OSoQ4cOjTo+AABoObw2OHnCypUrtXr1ag0YMEBRUVH66aef9OSTT+rss8929jbNnj1bwcHBSk5OliR99NFHeuedd/T22297snQAANAMvDY42Wy2GnOKmmK+U13CwsL00UcfadKkSSopKVGHDh00ZMgQPfHEE7Lb7c52zzzzjHbu3KlWrVqpe/fumjt3bq1rPQEAAN/itXOcAgICdPXVVzsDy6effqpBgwbprLPOcmn30UcfeaK8M8Yc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mhurlvuFFhWcPv/8c6WkpCg0NFRRUVEaNmyYy/u5ubkaOnSowsLCFBMTo/Hjx+vEiRMubZYsWaKLLrpIdrtd55xzjt59990a55k2bZqSkpIUEhKilJQUrVq1yuX948ePa+zYsWrXrp1at26tG264Qfn5+U39dQEALVltk8wZzmvxWkxw+vvf/67bb79dI0eO1Pfff69///vfuvXWW53vV1RUaOjQoSorK9M333yj2bNn691339XEiROdbbZv366hQ4dq4MCBysnJ0bhx43TXXXdpwYIFzjZz585VRkaGJk2apLVr16p3795KT09XQUGBs81DDz2kTz/9VPPmzdPSpUu1Z88e/eY3v2meCwEAaLlYtbzlMy1AeXm56dixo3n77bdP2+aLL74wAQEBxuFwOPdNnz7dhIeHm9LSUmOMMY888ojp0aOHy+duvvlmk56e7nzdv39/M3bsWOfriooKEx8fb7KysowxxhQWFpqgoCAzb948Z5vNmzcbSSY7O9vydyoqKjKSTFFRkeXPAAB8zPTpxiQmnvyzrn1wq4b8JreIHqe1a9dq9+7dCggIUHJysjp06KCrr75aGzZscLbJzs5Wz549FRsb69yXnp6u4uJibdy40dkmLS3N5djp6enKzs6WJJWVlWnNmjUubQICApSWluZss2bNGpWXl7u06d69uzp37uxsU5vS0lIVFxe7bAAAP8dwXovTIoLTzz//LEl66qmn9MQTT+izzz5TVFSUfvnLX+rgwYOSJIfD4RKaJDlfOxyOOtsUFxfr2LFj2r9/vyoqKmptc+oxgoODFRkZedo2tcnKylJERIRzS0hIaOBVAAD4BYbzvJpHg1NmZqZsNlud25YtW1RZWSlJevzxx3XDDTeob9++mjVrlmw2m+bNm+fJr2DZhAkTVFRU5Nzy8vI8XRIAwBtxd55Xa+XJkz/88MO6884762zTtWtX7d27V5J0wQUXOPfb7XZ17dpVubm5kqS4uLgad79V3ekWFxfn/LP63W/5+fkKDw9XaGioAgMDFRgYWGubU49RVlamwsJCl16nU9vUxm63y2631/ldAQCoYfTomiuRn9oLNXo0q5Y3I4/2OEVHR6t79+51bsHBwerbt6/sdru2bt3q/Gx5ebl27NihxMRESVJqaqrWr1/vcvfbwoULFR4e7gxcqampWrRokUsNCxcuVGpqqiQ5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l+9y1VVXKTo6WuHh4UpNTdWCBQtcjjF9+nT16tVL4eHhzjb/+te/XNr89NNP+vWvf+08zk033aT8/HyXNmvXrtVVV12lyMhItWvXTvfcc4+OHDni0sZms9XY5syZ06B6JWn37t267bbb1K5dO4WGhqpnz5769ttvLV1XqfF/JwDg7whOHlZSUqLevXtr2rRpXnO+kpISDRgwQM8//3yTnLOiokKhoaF64IEHlJaWZvlzv/rVr3TixAktXrxYa9asUe/evfWrX/1KDofDedyhQ4eqrKxM33zzjWbPnq13331XEydOdB7j66+/1lVXXaUvvvhCa9as0cCBA3Xttdfqu+++c7bp1KmTJk+erDVr1ujbb7/VoEGDdP3112vjxo3O6zF48GDZbDYtXrxY//73v1VWVqZrr71WlZWVkqQ9e/YoLS1N55xzjlauXKn58+dr48aNuvPOO2t8r1mzZmnv3r3O7dTQYqXeQ4cO6bLLLlNQUJD+9a9/adOmTXrppZcUFRVl+do29u8EAPyegdeQZP7xj3+47Dt+/Lh5+OGHTXx8vAkLCzP9+/c3X331ldvOd6rt27cbSea7775rkvMZY8yIESPM9ddfX2+7ffv2GUnm66+/du4rLi42kszChQuNMcZ88cUXJiAgwDgcDmeb6dOnm/DwcFNaWnraY19wwQXm6aefrvP8UVFR5u233zbGGLNgwQITEBBgioqKnO8XFhYam83mrOXNN980MTExpqKiwtlm3bp1RpLZtm2bc19919xKvY8++qgZMGBAnZ9pyL83Vv9OAADG0OPk5e677z5lZ2drzpw5WrdunW688UYNGTJE27Zt83RpbtWuXTt169ZN7733nkpKSnTixAm9+eabiomJUd++fSVJ2dnZ6tmzp2JjY52fS09PV3FxsbO3qLrKykodPnxYbdu2rfX9iooKzZkzRyUlJUpNTZUklZaWymazyW63O9uFhIQoICBAy5cvd7YJDg5WQMB//5MKDQ2VJGebKmPHjlX79u3Vv39/vfPOOzLGnPY61FbvP//5T/Xr10833nijYmJilJycrJkzZ7p8zl//vQEAdyM4ebHc3FzNmjVL8+bN0+WXX66zzz5b/+///T8NGDBAs2bN8nR5bmWz2fR///d/+u6779SmTRuFhITo5Zdf1vz5851DUg6HwyU0SXK+rhrOq+7FF1/UkSNHdNNNN7nsX79+vVq3bi273a7Ro0frH//4hy644AJJ0iWXXKKzzjpLjz76qI4ePaqSkhL9v//3/1RRUaG9e/dKkgYNGiSHw6EXXnhBZWVlOnTokDIzMyXJ2UaS/vCHP+jDDz/UwoULdcMNN+j3v/+9pk6detrrUFu9P//8s6ZPn65zzz1XCxYs0JgxY/TAAw9o9uzZkvz73xsAcDeCkxdbv369KioqdN5556l169bObenSpfrpp58kSVu2bKl1wvGpW9UPeFO65JJL6jxnXFzcGR3fGKOxY8cqJiZGy5Yt06pVqzRs2DBde+21LkGkIf7617/q6aef1ocffqiYmBiX97p166acnBytXLlSY8aM0YgRI7Rp0yZJUnR0tObNm6dPP/1UrVu3VkREhAoLC3XRRRc5e5h69Oih2bNn66WXXlJYWJji4uLUpUsXxcbGuvRCPfnkk7rsssuUnJysRx99VI888oheeOGFBtVbWVmpiy66SM8995ySk5N1zz336O6779aMGTMkWfv3BgDQOK08XQBO78iRIwoMDNSaNWsUGBjo8l7r1q0lSV27dtXmzZvrPE67du2avLa5c+fq2LFjp32/Vasz+1dr8eLF+uyzz3To0CGFh4dLkv70pz9p4cKFmj17tjIzMxUXF6dVq1a5fK7qTrfqwW3OnDm66667NG/evFonQwcHB+ucc86RJPXt21erV6/Wa6+9pjfffFOSNHjwYP3000/av3+/WrVqpcjISMXFxalr167OY9x666269dZblZ+fr7POOks2m00vv/yyS5vqUlJS9Mwzz6i0tNRlKLCuejt06ODsDaty/vnn6+9//7ska//eAAAah+DkxZKTk1VRUaGCggJdfvnltbYJDg5W9+7dm7kyKTEx0a3HP3r0qCS59NZUva66ky01NVXPPvusCgoKnD0yCxcuVHh4uEuw+OCDD/Q///M/mjNnjoYOHWrp/JWVlSotLa2xv3379pJOBruCggJdd911NdpUDRe+8847CgkJ0VVXXXXa8+Tk5CgqKsolNNVX72WXXaatW7e67Pvhhx+cfydW/r0BADQOwcnDjhw5oh9//NH5evv27crJyVHbtm113nnnafjw4brjjjv00ksvKTk5Wfv27dOiRYvUq1cvyyHA6vk6d+4sSTp48KByc3O1Z88eSXL+SMfFxTV6CG7Tpk0qKyvTwYMH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" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from typing import NamedTuple\n", "\n", "quantity_names = ['logZ(beta)', 'F(beta)', 'S(beta)', 'C(beta)', 'E(beta)']\n", "colors = ['b', 'g', 'r', 'c', 'm']\n", "\n", "\n", "class Quantities(NamedTuple):\n", " logZ: jax.Array\n", " F: jax.Array\n", " S: jax.Array\n", " C: jax.Array\n", " E: jax.Array\n", "\n", "\n", "class IntermediateQuantities(NamedTuple):\n", " beta_E: jax.Array\n", " beta_E2: jax.Array\n", "\n", "\n", "def compute_integrands_of_interest(model, U) -> IntermediateQuantities:\n", " # Divide out beta_init\n", " beta_E = -model.forward(U) / beta_init # beta * E(x)\n", " beta_E2 = beta_E ** 2\n", " return IntermediateQuantities(beta_E=beta_E, beta_E2=beta_E2)\n", "\n", "\n", "@jax.jit\n", "def compute_quantities(beta) -> Quantities:\n", " integrands = jax.vmap(\n", " lambda U: compute_integrands_of_interest(model({'beta': beta}), U)\n", " )(results.U_samples)\n", " weights = LogSpace(results.log_dp_mean)\n", " # Z(beta) = int exp(-beta E(x)) dx\n", " Z_beta = (LogSpace(-integrands.beta_E) * weights).sum()\n", " F_beta = -Z_beta.log_abs_val / beta\n", " exp_beta_E = (LogSpace.from_signed_value(integrands.beta_E) * weights).sum()\n", " exp_beta_E2 = (LogSpace.from_signed_value(integrands.beta_E2) * weights).sum()\n", " S_beta = (exp_beta_E - Z_beta.log()).value\n", " C_beta = (exp_beta_E2 - exp_beta_E ** 2).value\n", " E_beta = (exp_beta_E / LogSpace(jnp.log(beta))).value\n", " return Quantities(\n", " logZ=Z_beta.log_abs_val,\n", " F=F_beta,\n", " S=S_beta,\n", " C=C_beta,\n", " E=E_beta\n", " )\n", "\n", "\n", "x = []\n", "y = []\n", "import pylab as plt\n", "\n", "fig, axs = plt.subplots(len(quantity_names), 1, figsize=(6, len(quantity_names) * 2), squeeze=False, sharex=True)\n", "\n", "T_min = 0.1 # K\n", "T_max = 300 # K\n", "beta_min = epsilon_over_beta / T_max\n", "beta_max = epsilon_over_beta / T_min\n", "for beta in jnp.linspace(beta_min, beta_max, 100):\n", " quantities = compute_quantities(beta)\n", " x.append(beta)\n", " y.append(quantities)\n", " for i, (name, q, c) in enumerate(zip(quantity_names, quantities, colors)):\n", " axs[i, 0].scatter(beta, q, color=c, s=1)\n", "\n", "for i, (name, c) in enumerate(zip(quantity_names, colors)):\n", " axs[i, 0].set_ylabel(name)\n", " # Only 1 label on legend, despite labelling each beta\n", " axs[i, 0].legend()\n", "axs[-1, 0].set_xlabel('beta')\n", "plt.tight_layout()\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 1 }