From 397c002932d18f363675a2a0fc7b240422432f3b Mon Sep 17 00:00:00 2001 From: Phionx Date: Sat, 19 Oct 2024 05:36:27 -0400 Subject: [PATCH] updated timing notebook --- tutorials/2-timing-comparisons.ipynb | 109 +++++++++++++++++++++------ 1 file changed, 84 insertions(+), 25 deletions(-) diff --git a/tutorials/2-timing-comparisons.ipynb b/tutorials/2-timing-comparisons.ipynb index 01f3dfe..58a6583 100644 --- a/tutorials/2-timing-comparisons.ipynb +++ b/tutorials/2-timing-comparisons.ipynb @@ -52,7 +52,74 @@ "metadata": {}, "outputs": [], "source": [ - "Na = 200\n", + "import qutip as qt\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### QuTiP" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "Na = 100\n", + "Nq = 2\n", + "\n", + "a = qt.tensor(qt.destroy(Na), qt.identity(Nq))\n", + "adag = qt.dag(a)\n", + "sigmaz = qt.tensor(qt.identity(Na), qt.sigmaz())\n", + "\n", + "g_state = qt.tensor(qt.basis(Na, 0), qt.basis(Nq, 0))\n", + "e_state = qt.tensor(qt.basis(Na, 0), qt.basis(Nq, 1))\n", + "\n", + "g_cd = .01 # [GHz]\n", + "H_g_cd = 1j * g_cd * (adag - a) * sigmaz\n", + "\n", + "ts = np.linspace(0,100,101) # [ns]\n", + "c_ops = []\n", + "initial_state = g_state" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12.4 ms ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", + "10.3 ms ± 204 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" + ] + } + ], + "source": [ + "%timeit -n1 -r1 states = qt.sesolve(H_g_cd, initial_state, ts)\n", + "%timeit states = qt.sesolve(H_g_cd, initial_state, ts)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### JaxQuantum" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "Na = 100\n", "Nq = 2\n", "\n", "a = jqt.destroy(Na) ^ jqt.identity(Nq)\n", @@ -68,13 +135,12 @@ " return H_g_cd\n", "\n", "ts = jnp.linspace(0,100,101) # [ns]\n", - "c_ops = []\n", "initial_state = g_state" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -89,32 +155,20 @@ "name": "stdout", "output_type": "stream", "text": [ - "2.06 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", - "733 ms ± 15.5 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" + "1.32 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", + "3.76 ms ± 47.6 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" ] } ], "source": [ "with jax.default_device(cpu_device):\n", - " %timeit -n1 -r1 states = jqt.mesolve(initial_state.to_dm(), ts, c_ops=c_ops, Ht=Ht) \n", - " %timeit states = jqt.mesolve(initial_state.to_dm(), ts, c_ops=c_ops, Ht=Ht) " - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "if gpu_device:\n", - " with jax.default_device(gpu_device):\n", - " %timeit -n1 -r1 states = jqt.mesolve(initial_state.to_dm(), ts, c_ops=c_ops, Ht=Ht) \n", - " %timeit states = jqt.mesolve(initial_state.to_dm(), ts, c_ops=c_ops, Ht=Ht) " + " %timeit -n1 -r1 states = jqt.sesolve(initial_state, ts, Ht=Ht) \n", + " %timeit states = jqt.sesolve(initial_state, ts, Ht=Ht) " ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -128,16 +182,16 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjIAAAIlCAYAAADPHxJ6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAB7CAAAewgFu0HU+AABEJElEQVR4nO3de5AddZ3//9dccuZMZjCERKpChosWjIGv+sViCWBCkMDiHykK8RKWFRGK21LsmspiBRcXQVduIsli9ruwigZZy40KlK5QWlZJAkSCAWR/isKG1cDmMgiBkMvknDk5M+f3x0yf6enp7tN9Tvfp/nQ/H1VTcy59+nymp+f0a96fz6e7o1ar1QQAAGCgzqQbAAAA0CyCDAAAMBZBBgAAGIsgAwAAjEWQAQAAxiLIAAAAYxFkAACAsQgyAADAWAQZAABgLIIMAAAwFkEGAAAYiyADAACMRZABAADGIsgAAABjEWQAAICxCDIAAMBYBBkAAGCs7qQbYKpyuazf/e53kqR3v/vd6u5mUwIA4KVarerNN9+UJH3gAx9QsViMZL0cfZv0u9/9TgsXLky6GQAAGGfLli069dRTI1kXXUsAAMBYVGSa9O53v7t+e9OmLZo3b17g1xZUiaNJgZXKZT25ebMkackZZ6g3ovJeGlRUSLoJ05TLJW3e/KQk6YwzlqhY7E2sLUnve3Hbt3+/rluxQm/v2SNJOmL2bP2/e+7Ruw47TFI694+oJPm7TetnSlZ/30E/U9L29z40NKSFixdLmnoMbRVBpkn2MTHz5s3TwMBAqNcn+qFTKmnu3LmSpIH589Xbm9yBNQ5p+/Cyb+/58wcS395p+3CL0t69e9VbLKpQGN8HeotFzT/qKM2aNUtS+vaNKPGZMl1Wf99BP1PS/Lce5bhSupYAwHBpPmAhGXnaJ6jIIHOsP+Cs/jcGAJaCKiqoK+lmJIqKTEI4yAIAmpGnaksQVGQSZIUZdkq0U0UF9jnAMPa/2VKC7UgjKjIpQHUGQLMIpd7YNvlARQaZVVCFkAjASISw4AgyKUG5H+3E/oa8SPPgf/4Go0GQSREOLtGjKoMs4/MiuDQEGn5f8WCMTMpw0I0eHx7u8rivsS9gfLpye/eDJN4zTwgyKVSZ2O0BwAsHxta0Y/sRYNqDriXkAl1MyBIOjtFgO2YDFZkU48ALAIA/gkzKEWaiw39fAJA9BBkgxwjK5iGQA1MRZAzAwQYAAHcEGUMQZqLBf7MwGfsvMB1BxiCEmWhwMICJ2G8BdwQZwxBmEDX2qfQjxADeCDIG4sDTOg4MMAX7KuCPIIPc4gABAOYjyBiKyxggSnnal0wJsJzeHgiGIGO4PB2AgDwgwADhEGQygDDTPA4YAGA2ggwASQTiNCBYA+ERZDKCg1DzOHjkT5p+54X6iLf0tAkwSXfSDUB0rDDDByKQfvydAtGgIpNBVGfC46Ayjn2nPdjfgOgQZADkUhJhgi4kIHoEmYziP+vwOMDkTzt/5+xfQDwYI5NhFRX48AypoAohMGfsfyOt/u75ewPajyCTcQwARlh5DsDOn9sr2OR1+wBpRJABAA8EFiD9GCOTE3SXBMfBCwDMkckgc8MNN6ijo6P+tXHjxqSbBBiF4AvAFJnrWvqv//ovrV69OulmpJJ1cKpoNOGWpB+DfgHADJmqyIyNjenqq69WtVrVkUcemXRzAKMR5ACYIFNB5hvf+IaeffZZLViwQFdccUXSzYHhGCsDAOmXmSDzv//7v7rpppskSffdd58KBf6bBAAg6zITZK677jodOHBAn/3sZ3XWWWcl3RxkRN6rMnQvAUi7TAz2/eEPf6hHH31URxxxhL7+9a8n3RyjVFRQFyfNAwAYyviKzDvvvKMVK1ZIku68807NnTs34RYhawh4AJBexldkVq1apddff12LFi2KdIDvjh07fJ8fGhqq3y6XSyqVSpG9d9zK5bLr7VEO2J5ambLutb1NUZI5Ya5UKmlsbKx+f2xsTKVSiTFzMTN9HzeNqdu7FFNbjQ4yTz31lO6//351d3frvvvuU0dHR2TrPvroowMvu3nzk8ZWgp555smkm5ArbO94DQ8P6609e+r339qzR49v2qS+vr4EW5UvTz7zTNJNyBWTtvfu3btjWa+xXUuVSkVXX321arWaVq5cqfe///1JNwkAALSZsRWZ2267TS+//LKOOeYY3XzzzZGvf/v27b7PDw0NaeHChZKkM85YovnzByJvQ1zK5XK9MnD66UtULBZdlzOlO6Fdmp3BE3R7p5kp+8LevXv14AMP1Ksyc2bP1tLFizVr1qyEW5Zt5XK5XhlYcvrpRu7jJjF1e+/YuTOW9RoZZF5++WXdfvvtkqS1a9fGUjYeGAgeTIrFXvX29kbehnYoFos+be815gDWDr1qfTqy//ZOMzP2hUqlos7OyUJzZ2enenvN/fs0kbn7uJlM2t69MQUuI4PMmjVrVKlU9N73vlcHDx7U+vXrpy3z4osv1m8//vjjev311yVJ559/Pv3lAABkhJFBZmRkRJL0pz/9SRdffHHD5f/pn/6pfnvbtm0EGTSNi0kCQLoYO9gX7VFRgQO3gwldLACQF0YGmQceeEC1Ws33yz4AeMOGDfXHjzvuuOQabjACDQAgjYwMMgAAABJBBmgK3UsAkA4EGYRC91I+EdwApBVBBqERZvKFEAMgzTIbZG655Zb6AN+PfOQjSTcncxj8ywEeANIgs0EG7ZH3MJN1hDUAaUeQAVqQ5QN9ln82ANlBkEHLqMpkS2Gi4xAATECQQSTyHGayctAnwAAwEUEGkclzmDEdAQaAqQgyiBRhxixUYQCYjiADRMC0MECAAZAV3Uk3ANlTUYGDZArxOwGQRVRkEAu6mNKD6guALCPIIDZ5CzNpDAtpbBMARIkgg1hxKYPkEGIA5AFjZICMIcAAyBMqMmiLvFRlkg4RSb8/ALQbQQZtk5cwkxRCDIA8IsigrQgz8SDEAMgrggwQsXaHCkIMgDwjyKDtmMkUHUIMgLwjyACGIsQAAEEGCaIqAwBoFUEGicpqmIm7WkI1BgDGEWSQuKyGmbgQYgBgEkEGqUCYCYYQAwBTEWSQGoQZAEBYBBmkSpbCTNTVE6oxADAdQSYCHGAQN/YxAHDH1a8j4jzQZKmy0G4VFThwAwACoSITEw7EreHsv5PYlwDAG0EmRhyAAACIF0EGqZb3qgxhGAD8EWRiVqh3knBAapbJYaaV3zv7DAA0RpBpIwJN80wOM81gPwGAYAgyCSDQNCdvYQYA0BhBBkbJQ5gh5AJAcASZBHHAghP7BACEwwnxEsaJ9MIz7YR5Qdtq0s8EAGlBRSZlOJgFk7XAx+8dAJpDkEkhDmrBZCXM8PsGgOYRZFKKg1swpocZfs8A0BrGyKSYdZAz/WAdN5PGzIxPve9KuhkAkBlUZAzAeWcAAHBHkDEIgcYbVSsAyCeCDDKDMAMA+UOQMRBVGW+EGQDIF4KMobiqtjfCDADkB0EmAwg00xFmACAfCDIZQpgBAOQNQSZjqM5MoioDANlHkEGmEWYAINsIMhnFYOBJhBkAyC6CTA4QaAgzAJBVBBkAAGAsgkyOUJWhKgMAWUOQyZm8dzMRZgAgWwgyOZfHUEOYAYDsIMiAMAMAMBZBBpLocgIAmIkgg9yiKgMA5iPIYIq8nUiPMAMAZiPIwFOeAg0AwEwEGTSU9TBDVQYAzEWQQSBZDzMAADMRZBAYXU0AgLQhyCC0LIYZupcAwEwEGTSF6gwAIA0IMmhJVgJNFn4GAMgjggwAADAWQQaRyEplBgBgFoIMImVioDGtvQCASQQZxMLEQAMAMA9BBrFKe5hJe/sAAP4IMogdYQEAEBdjg8xzzz2nr3zlKzrvvPM0MDCgnp4e9ff3a3BwUJdffrk2bdqUdBNhk8auprS1BwAQXnfSDWjGkiVL9NRTT017vFKp6JVXXtErr7yiBx54QJdeeqm+9a1vqVDgrK1pYYWHpM+kS4gBgGwwMsjs2rVLknTUUUfpU5/6lM4880wdc8wxGh0d1ebNm3X33Xdr586devDBB3Xo0CF9//vfT7jFcEoy0BBiACA7jAwyCxYs0G233aZPfOIT6urqmvLc6aefrs985jNatGiRtm7dqv/4j//Q3/zN32jJkiUJtRZ+Cqq0NcwQYgAgW4wcI/Poo49q+fLl00KMZe7cubr77rvr9x966KF2NQ1NaFe4IMQAQPYYGWSCOPvss+u3//jHPybYEgSRxsHAAID0y2yQGRkZqd/2qtwgfeIKNIQkAMgmI8fIBPHEE0/Ub5944omhX79jxw7f54eGhuq3S+WySqVS6PdISrlcdr2dLqXIxs4UVFGSvx0ztnc2lEoljY2N1e+PjY2pVCoxczFm7OPtZer2LsXU1kwGmbGxMd1xxx31+8uXLw+9jqOPPjrwsk9u3qy5c+eGfo80ePKZZ5JuQq6wveM1PDyst/bsqd9/a88ePb5pk/r6+hJsVb6wj7eXSdt79+7dsaw3k11La9as0ZYtWyRJH//4x3XKKack3CIAABCHzFVknnjiCX3hC1+QJB155JG69957m1rP9u3bfZ8fGhrSwoULJUlnnLFE8+cPGDMOo1wu11P8ktNPV7FYTLhFwQXtbkrT78Lk7W2avXv36sEHHqhXZebMnq2lixdr1qxZCbcs29jH28vU7b1j585Y1pupIPP73/9eF154oarVqorFon70ox/pyCOPbGpdAwMDgZctFnvV29srqbf+WJoOpH6KxeJE281gtdQv0Ixv+3T+TKZtb9NUKhV1dk4Wmjs7O9Xb28s2byP28fYyaXv3xhS4MhNktm3bpvPOO0979uxRV1eX1q9fn+hJ8KwDrSmBxjT27VpRge0MADmViTEyu3bt0rnnnqtdu3apo6ND3/nOd3TBBRck3SxJyV9TKA8IMQCQX8YHmd27d+sv//Iv9ac//UmStHbtWl166aUJt2oqwgwAAPEwumtp7969+uhHP6o//OEPkqQ77rhD1113XcKtcucMM1QRAABonbEVmYMHD2rZsmX6zW9+I0n64he/qBtuuCHhVgVXmTiHLQAAaJ6RQaZSqejCCy/Ur371K0nSihUr9NWvfjXhVjWHQAMAQPOM7Fq6+OKL9Ytf/EKStHTpUl1xxRV68cUXPZcvFAoaHBxsV/OawswbAADCMzLIPPLII/Xbjz/+uD74wQ/6Ln/sscfq1VdfjblVrWPKNgAA4RgZZLLO3tVEqAEAwJuRQaZWqyXdhLahSgMAgDcjB/vmEYOCAQCYjiADAACMZWTXUp5xYj0AACZRkTEcXU4AgDwjyGQEgQYAkEcEmYwhzAAA8oQgk0FUZwAAecFg3wzjxHoAgKwjyOTE1ApNKbF2AAAQJbqWcohuJwBAVhBkAACAsehayrmKCuriek4AAENRkUEds50AAKahIoNpmO0EADAFQQa+KnQ7Ae1RLk9/rFhsfzsAwxBkEAiBBmiSW0CJ+rUEHuQYQQah0O0E+GgltET9voQb5ARBBk0j1ABKLrw0Ym8XoQYZRpBBJAg1yJW0hhcvhBpkGEEGkXNO4SbYIDNMCzBurJ+BQIOMIMggdq2cm4YQhMTFGV4OHAi+bH9/tO9NlQYZQZABAC9RhJgwYaXZ9bQacsplwgyMRZABAKdWAkxUwaWV92wm2NDlBEMRZADA0myASSK8+LG3J2yoIdDAMAQZAEgiwDTzns2EC6uNBBpkFEEGqcVAX7RF2EARNrxEOVjYa11BwkazVRrGzyDlCDIA8imuAJPEFG3nezYKHmGrNFRnkGIEGQD5EyZsBAkwzYSXZrqlwgYPyT98NBNoCDNIGYIMUoluJcQmaOiIKsBEORDYa11+QSRINSVMoCHMIGUIMgDyIcoqjN+6mgkurZ4jJsj06yBVmgMHgocZv/UAbUSQQepQjUHkoqrCeK0nSHhptjLTTMhpNLDXr6pCdQaGIcgAyLZyWerpabycX2BoJsCECS5+QStIl5DFLXx4BZNGVZWw1RkgIQQZpArVGERqbKzxMlEGmGbW1UiYkONXiWkm0AStzoyM+D8PxIggAyC/wgaPMAEm6oHAjca9SFPDiFcI8Qs0rVZngAQQZJAaVGPQVl4hImiACRNeopi5FGTGktuAXq8qjVugaVSdIcwghQgySAVCDCLTSndSkBATNMCEeY+w3CovUuNQ4hZe3AKKV3UmSJgZGZF6e/2XASJEkEHiCDGITCvdOc7XBqnCBHlNVFO1vSovkn/1xSvQBKnONBtmmM2ENiLIIFGEGESm2RDTTBWmUYAJU6EJyu31zrAiTQ81XoEmSHXGq6uJMIMUIcggEQQYtF0UIcYvwLRanQmrWHSffu0MNUECTTNdTYyZQUoQZNBWBBjEolFACBIqwlRhwgSYqKszzVZh3J7zel3QrqZGYYaqDNqAIIO2IcQgFo1CzPCw9K53+b8maBUmyONB1u/1WCP9/eGqMM7nnYEmbHXGK8x0+xxKCDOIGUEGsSPAIDaNQszoaOPXRBli/MJNq11NXl1JfqHFel+vKkyjx93uuwWTgwf9206YQYwIMogVIQap0kyICRNg7I+1YwBwEH5VGOfjrYQZICEEGQBmCjtwNmiICRNWGgUYvwqNW5ta4QwmzvcLElycISfKMEP4QUwIMogN1RjEptUAECbEBH0sTDXHqx1RcAs0XiHFK7hYoYMwAwMQZBALQgwS02hcTFQhxhlgohgU3Cy38TNu7JWYRsElaJhxOniQsIK2IsggcoQYxMrv4D88PP2xkRGpUHBfPkxg8avCBFnWre2tVGQahRe30OK1fJiA41QuS52dUx9rtDxBBxEiyCBShBikivO6S25jWcKEmKABplE3k/N9g3AGgGZPSOfsbnJ2NQUJM873HhkJ3w4gIgQZAOZo5bpFfjOK7I81E2KCVGSirMaE5VWdCRpm7G32CjNOVGXQJgQZRIZqDBLTbIhpFFrcQkyQ14Sdmu1cVmr+go3Wa50Dep3ChBmvqdmEGaQAQQaAGaKcqmxfX6shxq9C43y9872dy7g9FtX1jNzCTbNhBkgRggwiQTUGsWq1S+mww6YuGybENOpK8gs3zUzJdgpypt6w42XcKjVhwoyzKtPT4/1eVGUQM4IMgGyxD/C1T8UOOial0YDdILeDzGaSNHroULA2SepytjFoAPDqXvI7KV6QddsDin22mN8sMSAGBBkA5mpmwKxf9aVRd5KzK8mrCuPxHvbgUnVpmr2u6YwC1UOHpnxgd6kJfheUdDt5XlRdTM3OsAICIMigZXQrIVZhxsZ4TQMOM1262RDjM25m9NChKcHF+RfjFmqsx+wf0hVNBhwr2IQONEHDjNTczCYpXNihewktIsgAMFPQ87IMDzeeWeN8fZAQ4+xKcqns2AOMFV78Ao0ba5l6gNHUD+5AgcbZvRQkzNiXa7T93IJIVOe9ARogyABIryhnKvmNV3Eb32Lddy7nFWJs6/ULMPbw4hZknEHFvqzfyJPQFRq3MCO5Dya2345jFhNVGbSAIAPAPEHHxrhdd0lqfG4X57lg7GHFK8Q4qjBuAcYeXJzdSW4Bxyu4+IaaQ4fcw4zXFbEl9/PX+HUxObldGsINVRnEgCADwHz2A7HfRSPdApBXl5L1nLPiYi3nCDHWQF4rxLgFGLeqjN+8Jeu5GbbX2QOMZ6CZaMu0QGOvtLg9bn/OrSpj8Qs2w8PS4Yd7vxaIGEEGQDpFfQI853rdgon9vrMCY702YIixwooz1EiTASXo5OtDmgwzofhVZyxeocZ5Qr64T4xH6EGTCDIAzOI3yNer4uLsVnGbYWS/73bmXZ8Q4+xKsqow9gDjDC9uM5Xsc66cp5izxs5YocYebrzG1Yy/oUeYsTiDi8XexWTd9+pumuGIWV7jbJzPAREgyADID68qT6Pw0qAS4xVi7BUYZ4BxThR3VmearsJM6La9f8MwI02vhji7mJzPUT1BShBkAKRPVN1K1ll+vSo1zsfdxsM0ULV9d4YYexXGGWDswcWtOmM93sqHdOjXus1isj/uNVbG6/w9YRGQ0ASCDABzhO1WCrIOr9cFqMY4x8Q4Q4y9CuMMMF6VGacRTe9makpUVZmgXUN0L6FNCDIA8sHtvDH2+25dSS2GGHtYcavKeEwOn+agxmcgWaGm6UpNkDBj5wwbbueVARJGkAGQLc7p18PDUl/f+G2/mUohBA0x9iqM/b7VwjAnxLOmWbfciXPokLqauVaS5H7SvAMHpJkzJ5cdHpZmzWq1lUBgBBkA6RLXtGu/9/MKND4DfO2ChhhngPEbG+PFLdDMkHfAcT3PjNc29pqWbQ8+cVdiqPQgJIIMADO0Mj7Gr1vJ/rjX+WNs3KoxXhqFmLCXW7VmIhUm1ucMM27c3sOze8lrsK+XRqGDcTJoA4IMgOxwniq/6lHbCNOt5FON8etScoYYr7P7+lVfGikoeFeTvTIz6hwrE3Twrteyzu1OSEEbEWQA5IPfFGx795JzkK+N25l7pWAhJshFJL0U5B14goSZKeeUmTAlyAQJdV5Tr4GEdSbdgCi89tpruv7667VgwQL19fXpiCOO0Kmnnqq77rpLBw8eTLp5mVfxvSYvkCKNxt/4dDv5VWPs3LqT7K+RpndLVXy+7M97hR+rm6kq98seuLVz9NCh5scjtXscE+DD+IrMT3/6U11yySXat29f/bGDBw/queee03PPPaf7779fjz32mI4//vgEWwkgMSMjU2fVhOVRlbFzDvC1cwYe53WYnOu2dDuWKdhuOysszn8lvMbOuF5V26/LyI2zElMuSz2RnOkGaIrRFZkXXnhBF110kfbt26f+/n7deuutevrpp/XLX/5SV111lSRp69atWrZsmfbv359wawHEIuwU6jAnznNUHpzBw372XjvnuBiLW4ip2r6cy9ofd7sIpX2d9qqM3SGPdk/TwnR0X3GsE7AxuiKzYsUKlUoldXd36xe/+IXOOOOM+nNLly7VCSecoFWrVmnr1q26++67dcsttyTXWADRabVrw+/g6jId2zoBnsUtTDhPemd/zu2K2HIs6xYuCrbl7DOW/Kox0tRwZb+wpHOdrueUsS6y6abVcTHMXEIMjK3IbNmyRU899ZQk6YorrpgSYizXX3+9TjzxREnSPffco0Mu539ANBgng1i1+l99kIG+XueTaVCVcftUsQ/wdYYet3Ey9nU6l/UbH+MMSc4p2Vb77G2cFpjcQqHXWY7dlvNCJQZtYmyQ+fGPf1y/ffnll7su09nZqUsvvVSS9M4772jDhg3taBqAJFgHTutCkTFw67Zx8ppB5BVW3NYf5ER5frOdGk3pnvZ8lKEjigtIMpgYIRgbZDZt2iRJ6uvr0ymnnOK53FlnnVW//atf/Sr2dgFoQdoOYCEP8I0CRJjw4beuIFO2nSEr7Mn3AFMYO0bmpZdekiQdf/zx6u72/jEWLFgw7TVR279/n/bu3RvLuuNQKpU0PHECq71796pSieYjrsBHpau4tncmeQUZ5wnX7P/1W2FjeFh7h4dVrVY1OnG9paqkvQcPTlZpRkakUmn8fUZGxr8qFenQofGvanX8a3R0/DW1mlSraXRiXSVNdvWUNNltMyrpgCa7dkY1OV7G6vqxD7p1TpP2Cy3Wp1tZ4+NdrPtWm7pt3w9p/PwwVU1eZHLmxOtmTDxemPganniua+Jn1MGDUm/v5DY4dEjq6hrfPh0d0oyJ0TZdXeNf1jbt7FSpWpX1G9orqWI9V6tN/S6Nr8/OeW0sSxSVnYwy9TNlX0yTbjpqNfseZoZyuaze3l5J0rJly/Too4/6Lt/f36/h4WGdfvrp2rx5c6D32LFjh+/zQ0NDWrhwoSTprLM+omKxN9B602BsbEx79rwlSZo9e446O6MpzHUqvpK+ycbGxvTWnj2SpDmzZ0e2vTPJq1vIebCzL2c9NzqqQ9Wq/r+tW1WZ+FgrSPq/xx03OQV5bGx8+Wp18rbzu/VlBZuxMdVqNY1Jqkkas31Z90cnbtccj8tx3/54zfHdT4fje+fEbft3t8c7NB5ovO53Suro6JA6O6Xu7vGwYgWVrq7xx53fu7snb0tSV5fGOjv11kQb5nR1qbOrq/7clO/S5OssXR4XTODvxJOpnymlclkbn3hCkrR9+3YNDAxEsl4jKzL2qdT9AUa89/X1aXh4WAdClImPPvrowMvu2fO2CgUzB7tagQbtYX34IB7VarUeYqTxCsjujg7fqm1cOh3f26WmqSfia/cUh7esIIi2MOkzJa7KkRkxzqFsKz8HCRA9EydrKpVKsbUJAAC0n5EVmaLtPARBEt7IRF+r1R0VxPbt232ft3ctzZ59BF1LomvJi6ll4ES02rXU2amdHR1Tupbm1mqaYZ16oYWuJWe3krPLaFTBupbkuC35dy91OG53Om6H6VrqtH3RtWQuUz9TSjEN5jcyyBx22GH120G6i6xBUUG6oSxh+u7uuef/6aij5gdePmmlUkmbNj0uSVq8eGmogOeHwb7uSqWSHp+YZbd08eLItncmRTDY98rbbtPuiXAzV9L9V16pWfbBvgcOjK/Puj0yMn6/XJ76fXhYeuut8essVavTBvtWJR1U84N9pcYDfu0f0DMcjxU0Ofi3MPF9hsaDS8/E9/6J79Zg315NDvbtnXhNV3e3VChIc+ZIfX3jX8Xi1O89PeMnruvpGb9v3Zak/n6VCgU9PtGupX19k/t4X199mTrn5QysZZycJ+pDnamfKTt37dL/OfnkyNdrZJApFouaM2eO3nrrrYaDcvfs2VMPMmHGvYRx2GHv0qxZs2JZdxwKhYL6Jj48Zs2aRZCJWVzbO5NmzXIPM87/2u3LdHRM+d7d3V2/snO3pFkzZ04Gmc7OyYqLNF51qdXGZ9KMjo5XG+wVh8MOk0ZG6jOEZmhqkOnSZGCZofGg062pJ8SzZhVVNB4e7Ce3c9Yi3K61ZCnYHi/YHut2fLeCTO/Edyvg9NmWKWh8xlK3pK6OjvFtZ1VdrG0wY8b4V6EwHj56esbDRW/v+JcVNGbOVKGnR1YcmdXXp17r2lZWgLEHGWdA8foHkyDjydTPlLguFWRGPcrFSSedJEn6n//5H1Wr3pMXX3755fpt6yy/ADLIOiDGWGZ3hosZDZ63s4/m81quO+DzjTRabtrzUV4mgAtIos2MDTKLFy+WNN5t9Pzzz3su98TEVC9JWrRoUeztyiuqMUg1twN1sTj+uPO723I2zukFzjBjdes4qyXO19urI14hx/68vUtJ8q/GONtnb+O06RFelY9G20XyD0CthCOqMQjB2CDzsY99rH573bp1rsuMjY3pwQcflCQdfvjhOvvss9vRNABRcx4UWz3Q+R1kXdbdNWPGtIBhv9+t8QDhDDXO5e0hxHqdfRnnlxzLuYUYNzM02a1kX4dz+a4ZLi0OGOgiwQUjEQFjg8zChQt15plnSpK+/e1vu57o7u67766fzXfFihWa4fZHC8BscRwM+/td1+sMAtaAWzsr1NirMvbn3MJMt6Z39zgfd77OuU6rGuPWreTWbtfupUbbsplt7Tc+BoiAkYN9Lffcc48WLVqkUqmk8847TzfeeKPOPvtslUolrV+/Xt/85jclSYODg7r++usTbi2ARDjHbPT3B7+GknXgtQ0utj407Z2p9jDjPAGdPURUHK8v2G7b1+31eme3lFdVxj7I19mt5BpgwgQMqihIGaODzIc+9CH94Ac/0CWXXKJ9+/bpxhtvnLbM4OCgHnvssSlTthEtxsfAGMVicxemLBbHr2F0aDKmOEOIxR4crKnY9tc4w4x9XX7cxslY7NUYt7qzZ7dSsxUS++uKxanXUgLazOggI0nnn3++fvvb3+qee+7RY489ph07dqhQKOj444/Xpz71Kf3t3/6tZlpTAQHkl1slJsiB3KUaIwUPISMBlgnCHkbsgcYZYpzVGOdYG99uJa8B0G7bicoMUsL4ICNJxx57rFavXq3Vq1cn3RQASXKeXM3rGkvWQThIF5PtIG6vyviFE+t0fd22+/blq/J+vXXuGadGIUa25+0hxj47agq/kOLGL7j09U09aSEhB22UiSADIAecFRV7N1GjcS9Bu5TsB2CP5Z0fmm4dq9aonEOaGmZGFbwbyet9reecIcaqxnitz16NcZ2tZAkz3bpRCGrmRHhASAQZAOnS7DiWZtdvP8B6PW53aOpw3kbBxBlm/F5jr9R4ndnXOhuwW4jxqsZM4+w6cjtfjFfFJu6ZR8xsQkgEGQDZ4nURQmlq5SZM95J99TNmTAszYXkFGmswsFv4sAcYaerAXr8QE6oa48U5NbtRNxPQRgQZANlmHVjtlRi3qk+Iro4uKXCYsa615GbE5TGvq+bYA4w0/aR3gUOMXzUmzFmOrdv9/d5XLQfagCADwByNxskEuSidcx3WAdutO8sn3IQJM5YejYeXGZrscvK+Utwke1ixr8telfEa3NswxPhxCzRBAx/jY9AmBBkA6RPVOBnrApJ+U6/dQo0lZBuamWZthRq/5y1uVRnrebcQE+gDPkg1ptHg356eqbOWmsX4GDSBIAMgP7wCkldVpsGBtZmqjBurUuP2uJ2zMmM/T4xbiAnVpeTkNvjX7TaQMIIMALM06l5yso/lsA/0PXBgelXGeYB2Dgx20WyYcVZirA9jr/PIzHC57Tzbr3OmUsMQY+cVbLwG+Vq3i0Vp1H7+YtGthLYiyABIp7imYVvr9ZvB1KiLyfG8V5ixZiFJk+Nh7I+58ZpTZA8v1vqs+25VGMkjxDh/Dq+qTLurMVR50CSCDADz2UOP2/Rrt/Di9lq3Lia3CsKBA+5hRgpUnbGHGsk/2DgvMeB83FmVmTLF2i3E+I2HcavG2Cta9set9TvZp18TTtAGBBkA5gl6BWuvc8p4VWXcupjsU7btXMKM5F6daVSNsXcrOR+zc14J23m23yldSVLjEGNxCzRBg4s0Hl7eftv9OTu6lRADggyA9Iqye8kZXrzOK+PW5SRNHVNjfyxgmHFyCzV+s57cKjPObqYpXUlS4xDjDDpBBvg2CjXNoHKDFhBkAJjJbdCv23lkGp1p1m3gr72LqVGY8dBlhSOXSxo4x8004talZH/ctQpj3XaGFLfl7M+7rcNPf79UdfkpGOSLNiHIoGUVFVTw7eUHWhBFVcZZhfG6b182gjAjTQaaLkmjHgOCJfcuJ7+LR04ZB2O127rvFUj8bttfY3FWX7zut4JqDFpEkAFgLmdVpsfr+s82fmFGmh5snM9LocOMpcv23RlqgnwYT7lOkl+4cHus0W23dbm9TxBUY9BGBBkA2WKdzVeaOtg36ABhZ3BxCzt2Xo+7sbWhK2ylyevcLs6g4VaZcd62lmsUfvzaYX+eC0UiQQQZRILuJcTK76DfKKB4nSTPr4spSJhxCzBhKzVBw5XzfdxCTaOgYj0XtILjd9/ZNnt1yVkV8wt5dCshAgQZAPnh1WUUJMxYmgkwXtO8rXZY63XyCg5ut/1CSKNxNI1e72wLXUVIEYIMIkNVBrFqtSrjdb6YoGHGbap1k2NlPNtordMvKHhNjw4TSMKGGK/3DzKjyQvVGESEIAPAHI3CzL593q/1q4rYHwsSZoIGGK/2Nvo5/NbntWzQikozIcbtsVaqMoQYRIggg0hRlUGq2Af+OjmDittjUYSZKAUZKxMkiLQaYpzcZovR/YQ2IcggcoQZxMqvmuE2e8Z+kHVWYoKGGT9hx9O0IkxFxu0xv/Eufq93ci5TqXg/70Q1BhEjyCAWhBkkxuv6SpZmwozbY17jZoKGl6AzluzLOwWdkm2/HbTq4rXuRj/bzJn+zwMRI8gAME8z52BxXtE6TJiRpnc12TUaoBuFRjOY7Mv4BZhGj/k97te1FQTVGMSAIIPYUJVBrNoZZuyvt88ucnvM+XxUGlVknMs0W3EhxMAwBBnEijCDVAkTZiT34GJ/3G9Z+4HfLdQ0M34mSFUmTFgJsqzbfUIJUoQgg9hVJi59R6BB5BpVZdzGywQNM85lg1Rn3ER9/plG53YJMiA46ONu993a3WhcDMEHMSLIoG2oziAWjcKM20ymsGFGalydsfg9Zz3f6niasN1MfkGl1RDT3++//QkxiBlBBm1FdQaxaBRm3GYIhQkzzuW9Ao3Xc5Yop2OHGfzb6Dm354OGmLBtBCJGkEEiqM6g7YKGGWnqGYDt94OGllYuKFkuBw8AYSszQZ4Psk6v5YAEEGSQGKoziFSxKO3d679MkDDjtlyYQGN/3m0ZO7fzyAQ5CV2Q1zRTUYkyxFCNQZsQZJA4qjOITJCDp1eYkfyrM26vbRRonG1yC0zNChp4ogwwXssGfS0QA4IMUoEwg8j4XV/J4nVW3WaqM9brJO/qi1ulJipewSJoJSXqEON23SUgRgQZpAZhBm0VNsxIwQON5F7dsQtzeQK/9diFCSBhAlCQ9wYSQpABkF9+YUYKF2icj7vNWHJbVyv8Kjxe6w8bYPxeA6QAQQapQlUGkQrazSS1HmiCrssu7CUWgggbYPzWHTTA0J2EBBFkAGRbmADg1d3jdZ6aRoHG4rfeVjUKG80EmCDrta+jVAq2LBADggxSh6oMIhf0ApONwozkH2gk99d7hYIw42TCdO+0eqK6MCEGSBhBBkA++AURO7/uIft6vNYVtBrjtmyzopoSTYCBgQgySCWqMohNmOqM5B9EgoSjqGYs+a3PT5QBJuj6gDYiyADIn6BhRgoXaKRwISkurQ4MbnW9QBsRZADkU9CuJkuQQGNfb5h1RyFMyCDAIEMIMkgtupfQFmGqM1LwQGOt200rAaeVUNFMJYgQg5QjyABA2OqM1HimUpD3a4dmu7EIMDAEQQYALM0EGqm1UBOHOC5GCaQUQQYAnMJ2N9mFmX4dlagGDxNiYCCCDAC4abY64xTFyfAaratVBBgYjCCDtmDQLowV1yykpC/ESHhBRhBkEDlCCzIrqipNkggwyBiCDCJBeEGuJHWumGYRXpBhBBk0jfACKL2hhvCCnCDIIBTCC+DDGR7SemZfIEMIMgiEAAM0oVG4CBN0CCqAK4IMfBFggBgRToCWEWTgigADADABQQZ1hBcAgGkIMjlXUEUFdSXdDAAAmtKZdAMAAACaRZDJIbqQAABZQddSjlgBppRwOwAAiApBJuOovgAAsowgk1EEGABAHhBkMoYAAwDIE4JMRhBgAAB5RJAxHAEGAJBnBBkDEV4AABjHeWQMQ4gBAGASFRlDEGAAAJiOIJNyBBgAALwRZFKKAAMAQGPGjpF59dVXtXbtWn3iE5/QCSecoJkzZ6pYLGpgYEAf+9jHtH79elWr1aSbGcr4lagrhBgAAAIysiJz00036dZbb1WtVpv23M6dO7Vz50795Cc/0erVq/XQQw/pmGOOSaCV4RBeAAAIz8ggMzQ0pFqtpr6+Pl144YU655xzdMIJJ6hYLOqll17SN77xDT377LN69tlnde655+o3v/mN+vv7k262KwIMAADNMzLIzJkzR3feeaeuvfZaHXbYYVOeO+WUU3TxxRfrr//6r/XDH/5Qr7zyilavXq0vfelLCbXWHQEGAIDWGTlG5s4779SqVaumhRhLV1eX/vVf/1WFQkGS9NBDD7WzeZ4YAwMAQLSMDDJBzJkzRx/84AclSX/84x8TbQvhBQCAeGQ2yEjSyMiIpPEKTVIIMPGrqJB0EwAACTFyjEwQb7zxhl566SVJ0oknntj29yfAxMsZXuz32fYAkB+ZDTJ33XVX/Twyy5cvD/36HTt2+D4/NDRUv10ul1QqlSRNHkRLod+xfcrlsuttE0wGFu8tXFK6wozJ29s0pVJJY2Nj9ftjY2MqlUr18XKIB/t4e5m6vUsxtbWj5nYyFsP9+te/1uLFi1WtVjUwMKD//u//1syZM0Oto6OjI/Cy999/v+bOnRu2mQAiNjw8rDVr1kx5bOXKlerr60uoRQAsu3fv1pVXXilJ2r59uwYGBiJZb+bGyPz5z3/WJz/5SVWrVXV0dOi73/1u6BADAADMEGvXUpiqhpd169bpsssuC7Ts/v37tWzZsnq30B133KGlS5c29b7bt2/3fX5oaEgLFy6UJC054wwNzJ/f1PskoVwu68lnnpEkLTn9dBWLxYRb5C6qQbxJdzOZsr2zYO/evXrwgQf01p49kqQ5s2dr6eLFmjVrVsItyzb28fYydXvv2LkzlvVmZoxMuVzWBRdcoOeff16S9PnPf16rVq1qen1hSl69xaJ6e3ubfq8kFVPa9ooKiq5VvYmHGUtat3dWVCoVdXZOFpo7OzvV29vLNm8j9vH2Mml798YUuGINMtasoVbMmzev4TLValXLly/Xhg0bJElXXnml7rrrrpbfG+0X11TqigqpCTMAgOjEGmQWLFgQ5+oljc9K+MxnPqOf/vSnkqSLLrpI//Zv/xb7+yJanAsGANAM4wf7XnPNNVq/fr0k6fzzz9f3vve9KaVlpF+7QgxhCQCyx+gj/t///d/r/vvvlySdc845+tGPfqTu7swM+8mFdocLwgwAZIuxQeaWW26pny/iwx/+sH7yk5+op6cn4VYhKOvymUm9NwAgG4wsX6xdu1Zf/vKXJUnz58/X1772NW3bts33Ne973/s0Y8aMdjQPPtISIhj8CwDZYGSQefjhh+u3d+7cqcWLFzd8zbZt23TcccfF2Co0kpYQYyHMAID5jAwyMEvaAgwAIDuMDDIbN25MugkIKO0hhqoMAJjN2MG+SL+0hxgAgPmMrMggvUwML1RlAMBcBBlEwsQAAwAwH11LAADAWAQZtCTJE9tFKQs/AwDkEUEGTePgDwBIGmNkEBoBBgCQFgQZBJblAMOsJQAwE11LCCTLIQYAYC6CDBrKeoihGgMA5qJrCZ6yHmAAAOYjyGCKvIUXqjEAYDa6lpBbhBgAMB8VGUjKXyUGAJANVGSQyxBDNQYAsoEgk3OEGACAyehaypnxayONJt2MxBBiACBbqMgAAABjEWRyJI/dSHZUYwAge+hayoG8BxiJEAMAWUWQyTACzDhCDABkF11LGUWIGUeIAYBsoyKTMQQYAECeUJHJEELMVFRjACD7qMhkAAFmOkIMAOQDQcZQhBdvhBgAyA+6lgxEiPFGiAGAfCHIIDMIMQCQP3QtGYRKjDdCDADkE0HGAAQYAADcEWRSjhDTmEnVmIoK6pr4nZrUbgBIK4JMShFgsq9CoAGAljHYN4UIMcEUVMlECOD3DQDNI8ikDAe1YLIQYOz4vQNAc+haShgHsPBMCzFBf8cVFYz72QAgaVRkEkSIgRP7BACEQ5CBUfJQsSDMAEBwBJmEcLAKLw8hBgAQDmNk2ojw0ry8hRjGywBAMFRk2qAyMVEYzTH5gN7K7519BgAaI8jEjINRa0wOMVFg/wEAfwSZGHEQAgAgXgSZmBBiWpf3aoyFfQkAvDHYN0IccKJBgAEABEVFJgIM5kXc2L8AwB1BBqmSpWpM1OGDMAMA0xFkkBpZCjEAgPYgyCAVCDHBUJUBgKkIMkgcISYcwgwATCLIIFFZDTGEDQBoD4IMYCCCEgCMI8ggMVmtxrQLYQYACDJICCEmGoQZAHlHkEHbZT3EtDtcEGYA5BlBBm2V9RCTFMIMgLwiyKBtCDHxIswAyCOCDNoiLyEm6TCR9PsDQLsRZICMIcwAyBOCDGKXl2pMmnBFdgB5QZBBrPIUYtIYHNLYJgCIUnfSDUA25SnApJ0VZvidAMgiggwixwEznezVGX5HALKCriUghxhDAyArCDKIVF7/0zc1FBBoAJiOIIPI5DXEZAFhBoCpCDKIRJ5DTFZCQFZ+DgD5QpBBy/IcYrKGriYApiHIAC3I6kGfQAPAFAQZtIRqDAAgSQQZNC3vISYPFYs8/IwAzEaQQWiFiY4H5ANhBkCaZS7I/OxnP1NHR0f965Zbbkm6SZlCgMknwgyAtMpUkBkeHta1116bdDOQAxzYASAdMhVkbrrpJr322ms68sgjk24KAABog8wEmeeff17f+MY31NPTo1tvvTXp5mQO42IAAGmUiSAzOjqqq666SqOjo7rxxht1/PHHJ92kzCDAAADSLBNBZs2aNXrhhRc0ODioG264IenmIOMYHwMA6WF8kHn11Vd18803S5Luvfde9fT0JNwiZBkhBgDSpTvpBrTq2muv1cGDB/XpT39aS5cujWy9O3bs8H1+aGiofrtcLqlUKkX23nErl8uut50Kqsicn6o9KhoN/Zqg2zvNTNkXSqWSxsbG6vfHxsZUKpVUKBBA45SFfdwkpm7vUkxtNTrIfP/739fPf/5zHX744Vq9enWk6z766KMDL7t585OaO3dupO/fLs8882TSTcgVtne8hoeH9daePfX7b+3Zo8c3bVJfX1+CrcqXJ595Jukm5IpJ23v37t2xrNfYrqW3335bK1eulCTdfvvtTLkGACCHjK3IfP7zn9cbb7yh0047TVdffXXk69++fbvv80NDQ1q4cKEk6Ywzlmj+/IHI2xCXcrlcrwycfvoSFYtFSZy1108rY2O8trdJTNk39u7dqwcfeKBelZkze7aWLl6sWbNmJdyybCuXy/XKwJLTTzdyHzeJqdt7x86dsaw31iDT0dHR8jrWrVunyy67bMpjGzdu1Lp169TV1aX77rtPnZ3RF5YGBoIHk2KxV729vZG3oR2KxWK97QV1Jdya9OqKaJCvfXubYjzEmNHmSqUy5fOgs7NTvb3m/n2ayMR93GQmbe/emAKXcV1LIyMjuuaaayRJn/vc53TyyScn2yBkHjOVACC9Yq3IvPTSSy2vY968eVPuP/LII9q6datmzJihk046SevXr5/2mj/84Q/12y+++GJ9mdNOO03vec97Wm5Tloyf8I5KDADATLEGmQULFkS+zpGREUnSoUOHdNVVVzVc/uGHH9bDDz8sabybiiCDMPJejTFlbAyA/DKuawkAAMBiXJC57LLLVKvVfL82bNhQX/7mm2+uP+4cNAz4yXs1BgBMYFyQAdAedCsBMIGx55FBeNaBaZQDVENUYwDADFRkAExDNQaAKQgyOcGBKTiqMQBgjkx2LX3kIx9RrVZLuhkADOcWavmnAEiXTAYZTOJDF2HleZ8JUo3zWibP2w1IEkEmw/hgDY9upfyJ6nfutx7+FoH4MEYmo/jgBBprV3CtTFwMBED0CDLABA40iBv7GBA9gkwGUY0JjwPMuDztO0n9zqnOANFijEyG5OkgBJjOCjP83QKtIchkBB+GzeO/4/xJ0+/c3hb+joHw6FoCgJRIU8ACTEGQyQD+i2seB45J7EcATESQMRwHHyBbGAwMhEOQMRghBlHJ075kSkgwpZ1A0ggyhsrTgScuHCiQduyjQGMEGQMRYlrHAQKmYF8F/BFkDEOIQdTYp9KPMAN4I8ggdzgowETst4A7goxB+M+5dRwMYDL2X2A6gowhCDEAAExHkDEAIQZxYd8yD1UZYCqCTMpxoAEAwBtBJsUIMdHiP1kAyB6ufo1cIMQgSyoq8I9OBOL+XOB31B5UZFKKPwAAfgjnrWnH9uN31B5UZFKGABM9Pkzc5XFfY19Au/cB+/vl8W+uHQgyKcJOHj0OXMgyupiCS8NnAaEmHgSZlGCnRjuxvyEv0hBg3Pi1i7/PcAgyyKy0foABgB+3zy7CjTcG+6YAOyiAZhHYvbFt8oEgkzBCDNqNfQ4wT0UFgpkHupYSwsEEABDWeKAZTboZqUKQQebwXwuAvKiooK6cj6mhawkADEd4h1Oe9gmCTALylJTbLU9/vM1g3wOQNXQtNalardZvDw0NBXpNWg4ipXJZu3fvliTt2LlTvcViwi2KThqDTLlcqm/vnTt3qFjsTawtadkH47Jv/36VymVVKuM/Z6lc1s5du7R//35J6dw/opLk7zatnylZ/X2H+UxJ09+8/VhpP4a2iiDTpDfffLN+e/HihQm2BICf/3PyyUk3AYDDm2++qeOOOy6SddG1BAAAjNVRq9VqSTfCROVyWb/73e8kSe9+97vV3W1OcWtoaEgLF45XkbZs2aJ58+Yl3KJsY3u3F9u7/djm7WXq9q5Wq/XejA984AMqRtQFac7RN2WKxaJOPfXUpJvRsnnz5mlgYCDpZuQG27u92N7txzZvL9O2d1TdSXZ0LQEAAGMRZAAAgLEIMgAAwFgEGQAAYCyCDAAAMBZBBgAAGIsgAwAAjMUJ8QAAgLGoyAAAAGMRZAAAgLEIMgAAwFgEGQAAYCyCDAAAMBZBBgAAGIsgAwAAjEWQAQAAxiLIAAAAYxFkEMjPfvYzdXR01L9uueWWpJuUCa+++qrWrl2rT3ziEzrhhBM0c+ZMFYtFDQwM6GMf+5jWr1+varWadDON8dprr+n666/XggUL1NfXpyOOOEKnnnqq7rrrLh08eDDp5mXGc889p6985Ss677zzNDAwoJ6eHvX392twcFCXX365Nm3alHQTc+OGG26Y8tm8cePGpJvUfjWggQMHDtSOPfbYmqT6180335x0s4z3j//4j7WOjo4p29Xt69RTT6299tprSTc39f7zP/+z9q53vctzOw4ODtZeeeWVpJtpvDPPPLPhPiupdumll9ZGRkaSbm6mvfDCC7Xu7u4p233Dhg1JN6vtqMigoZtuukmvvfaajjzyyKSbkilDQ0Oq1Wrq6+vTJZdconXr1mnTpk167rnn9O///u869dRTJUnPPvuszj33XB04cCDhFqfXCy+8oIsuukj79u1Tf3+/br31Vj399NP65S9/qauuukqStHXrVi1btkz79+9PuLVm27VrlyTpqKOO0ooVK/TQQw9py5Yt2rx5s1avXq358+dLkh588EFddtllCbY028bGxnT11VerWq3y2Zx0kkK6Pffcc7Wurq5aT09P7Vvf+hYVmQitWrWqduedd9b27dvn+ny1Wq0tX768vs2//OUvt7mF5rCqBN3d3bWnn3562vNf+9rX2HcjsmzZstoPfvCDWrVadX3+zTffrA0ODta39xNPPNHmFubDmjVrapJqCxYsqP3DP/xDrisyBBl4qlartQ996EP1g+iGDRs4GLTZ7t27a4VCoSap9oEPfCDp5qTSr3/96/p+ec0117guMzo6WjvxxBNrkmqHH354rVKptLmV+fLTn/60/jv5u7/7u6SbkzmvvfZarb+/vyaptnHjxtrNN9+c6yBD1xI8rVmzRi+88IIGBwd1ww03JN2cXJozZ44++MEPSpL++Mc/JtyadPrxj39cv3355Ze7LtPZ2alLL71UkvTOO+9ow4YN7Whabp199tn12+y30bvuuut04MABffazn9VZZ52VdHMSR5CBq1dffVU333yzJOnee+9VT09Pwi3Kr5GREUlSV1dXwi1JJ2uGTF9fn0455RTP5ewf+L/61a9ib1eeWfusxH4btR/+8Id69NFHdcQRR+jrX/960s1JBYIMXF177bU6ePCgPv3pT2vp0qVJNye33njjDb300kuSpBNPPDHh1qSTtX2OP/54dXd3ey63YMGCaa9BPJ544on6bfbb6LzzzjtasWKFJOnOO+/U3LlzE25ROhBkMM33v/99/fznP9fhhx+u1atXJ92cXLvrrrvq55FZvnx5wq1Jn3K5rN27d0uSBgYGfJedPXu2+vr6JEnbt2+PvW15NTY2pjvuuKN+n/02OqtWrdLrr7+uRYsW6Yorrki6OalBkMEUb7/9tlauXClJuv3225nWl6Bf//rX+ud//mdJ4wfpa6+9NtkGpZB9KnV/f3/D5a0gw1T2+KxZs0ZbtmyRJH384x/37e5DcE899ZTuv/9+dXd367777lNHR0fSTUoNggym+PznP6833nhDp512mq6++uqkm5Nbf/7zn/XJT35S1WpVHR0d+u53v6uZM2cm3azUKZfL9duFQqHh8tZYr1KpFFub8uyJJ57QF77wBUnSkUceqXvvvTfhFmVDpVLR1VdfrVqtppUrV+r9739/0k1KFYKMgeyno27264EHHpi23o0bN2rdunXq6urSfffdp85Odg8pvu3tZf/+/Vq2bJl27NghSbrjjjsYp+ShWCzWb1cqlYbLW4NQe3t7Y2tTXv3+97/XhRdeqGq1qmKxqB/96EdUdCNy22236eWXX9YxxxxTn4SBSRypIGn8A/6aa66RJH3uc5/TySefnGyDcqpcLuuCCy7Q888/L2m8QrZq1aqEW5Vehx12WP12kO6i4eFhScG6oRDctm3bdN5552nPnj3q6urS+vXrtWTJkqSblQkvv/yybr/9dknS2rVr692jmOQ9xB+pFcWMi3nz5k25/8gjj2jr1q2aMWOGTjrpJK1fv37aa/7whz/Ub7/44ov1ZU477TS95z3vablNaRXH9nZTrVa1fPny+jlOrrzySt11110tv3eWFYtFzZkzR2+99Va9guVlz5499SBz9NFHt6N5ubBr1y6de+652rVrlzo6OvSd73xHF1xwQdLNyow1a9aoUqnove99rw4ePOj62fziiy/Wbz/++ON6/fXXJUnnn39+PoJP0mfkQzqsW7cu0IXg3L7WrVuXdPONNzo6Wvurv/qr+ja96KKLaqOjo0k3ywjW5Qn6+vpqhw4d8lzu6aefrm/fL33pS21sYXa9+eabtZNOOqm+Xf/lX/4l6SZlzmc/+9mmP5u3bduWdPPbgq4lIAWuueaa+n9a559/vr73ve8xRimgxYsXSxrvNrK65NzYz22yaNGi2NuVdXv37tVHP/rReqX2jjvu0HXXXZdwq5BLSScpmINrLcVj5cqV9e16zjnn1MrlctJNMgrXWmq/4eHh2qJFi+rb/Ytf/GLSTco1rrUEIDG33HKL1qxZI0n68Ic/rJ/85CdcDiKkhQsX6swzz5Qkffvb39bmzZunLXP33XfXxzqtWLFCM2bMaGsbs6RSqejCCy+sX+ZhxYoV+upXv5pwq5BnDPYFErJ27Vp9+ctfliTNnz9fX/va17Rt2zbf17zvfe/jIOzinnvu0aJFi1QqlXTeeefpxhtv1Nlnn61SqaT169frm9/8piRpcHBQ119/fcKtNdvFF1+sX/ziF5KkpUuX6oorrpgy2NSpUChocHCwXc1DDhFkgIQ8/PDD9ds7d+6sj/Xws23bNh133HExtspMH/rQh/SDH/xAl1xyifbt26cbb7xx2jKDg4N67LHHpkzZRniPPPJI/fbjjz9evzq7l2OPPVavvvpqzK1CntG1BCATzj//fP32t7/VypUrNTg4qJkzZ+rwww/XX/zFX+jOO+/UCy+8oOOPPz7pZgKIWEetVqsl3QgAAIBmUJEBAADGIsgAAABjEWQAAICxCDIAAMBYBBkAAGAsggwAADAWQQYAABiLIAMAAIxFkAEAAMYiyAAAAGMRZAAAgLEIMgAAwFgEGQAAYCyCDAAAMBZBBgAAGIsgAwAAjEWQAQAAxiLIAAAAYxFkAACAsQgyAADAWAQZAABgLIIMAAAwFkEGAAAYiyADAACMRZABAADG+v8Bc+TDjlvR3s4AAAAASUVORK5CYII=", + "image/png": "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tVraRZioXC7rd7/7nSTp3e9+t7q7zWluDQ0NacGC8S7S5s2bNWfOnJQryje2d7LY3sljmyfL1O1drVbroxkf+MAHVCwWI1mvOXvfjCkWi5o/f37aZbRszpw5GhgYSLuMtsH2ThbbO3ls82SZtr2jGk6yY2gJAAAYiyADAACMRZABAADGIsgAAABjEWQAAICxCDIAAMBYBBkAAGAsTogHAACMRUcGAAAYiyADAACMRZABAADGIsgAAABjEWQAAICxCDIAAMBYBBkAAGAsggwAADAWQQYAABiLIINAfvazn6mjo6P+c9ttt6VdUi689tprWrNmjS655BKdcsopmj59uorFogYGBvTxj39c69atU7VaTbtMY7z++uu68cYbNW/ePPX19emYY47R/Pnzdc899+jQoUNpl5cbW7Zs0Ve+8hVdcMEFGhgYUE9Pj/r7+zU4OKgrr7xSGzduTLvEtnHTTTdN+m7esGFD2iUlrwY0cPDgwdqJJ55Yk1T/ufXWW9Muy3j/8A//UOvo6Ji0Xd1+5s+fX3v99dfTLjfz/uM//qP2rne9y3M7Dg4O1l599dW0yzTeOeec0/AzK6l2+eWX10ZGRtIuN9defPHFWnd396Ttvn79+rTLShwdGTR0yy236PXXX9exxx6bdim5MjQ0pFqtpr6+Pl122WVau3atNm7cqC1btuh73/ue5s+fL0n6zW9+o/PPP18HDx5MueLsevHFF3XppZdq//796u/v1+23367nnntOv/zlL3XNNddIkrZu3aqlS5fqwIEDKVdrtl27dkmSjjvuOC1fvlyPPvqoNm/erE2bNmnVqlWaO3euJOnhhx/WFVdckWKl+TY2NqZrr71W1WqV7+a0kxSybcuWLbWurq5aT09P7Vvf+hYdmQitXLmydvfdd9f279/v+ny1Wq0tW7asvs2//OUvJ1yhOawuQXd3d+25556b8vzXvvY1PrsRWbp0ae0HP/hBrVqtuj7/1ltv1QYHB+vb++mnn064wvawevXqmqTavHnzan//93/f1h0Zggw8VavV2oc+9KH6TnT9+vXsDBK2e/fuWqFQqEmqfeADH0i7nEz69a9/Xf9cXnfdda7LjI6O1k499dSapNrRRx9dq1QqCVfZXn7605/W/07+9m//Nu1ycuf111+v9ff31yTVNmzYULv11lvbOsgwtARPq1ev1osvvqjB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", "text/plain": [ "
" ] @@ -148,14 +202,19 @@ ], "source": [ "pts = jnp.linspace(-5,5,101)\n", - "states = jqt.mesolve(initial_state.to_dm(), ts, c_ops=c_ops, Ht=Ht) \n", + "states = jqt.sesolve(initial_state, ts, Ht=Ht) \n", "jqt.plot_wigner(jqt.ptrace(states[-1], 0), pts=pts)" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "jax-new", + "display_name": "jax-pypi", "language": "python", "name": "python3" },