{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# NEMO User's Guide: a Jupyter notebook\n", "\n", "Note that this is a Jupyter notebook that uses some magic IPython commands (starting with %). It may not work in other notebooks like the one included with Pycharm." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Installing a configuration file" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Before you can run NEMO, __you need a configuration file__. The default configuration file (`nemo.cfg`) is installed with the NEMO package and can be copied into your working directory as a starting point. On Unix systems, this can be found at `/usr/local/etc/nemo.cfg`. Alternatively, you can set the `NEMORC` environment variable to point to a configuration file. See the \"Configuration file\" section below for more details on the format of this file." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## A simple example" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "NEMO can be driven by your own Python code. Some simple examples of how to do this appear below. First, we will create a simulation with a single combined cycle gas turbine (CCGT). The \"NSW1:31\" notation indicates that the generator is sited in polygon 31 in the NSW1 region." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[CCGT (NSW1:31), 0.00 MW]\n" ] } ], "source": [ "import nemo\n", "from nemo import scenarios\n", "c = nemo.Context()\n", "scenarios._one_ccgt(c)\n", "print(c.generators)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then run the simulation:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timesteps: 8760 h\n", "Demand energy: 204.37 TWh\n", "Unused surplus energy: 0.00 MWh\n", "Unserved energy: 100.000%\n", "WARNING: reliability standard exceeded\n", "Unserved total hours: 8760\n", "Number of unserved energy events: 1\n", "Shortfalls (min, max): (15.47 GW, 33.65 GW)\n" ] } ], "source": [ "nemo.run(c)\n", "print(c)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The CCGT is configured with a zero capacity. Hence, no electricity is served in the simulation (100% unserved energy) and the largest shortfall was 33,645 MW (33.6 GW). This figure corresponds to the peak demand in the simulated year.\n", "\n", "Let's now do a run with the default scenario (two CCGTs: 13.2 GW and 20 GW, respectively) such that almost of the demand is met except for a few hours of unserved energy:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timesteps: 8760 h\n", "Demand energy: 204.37 TWh\n", "Unused surplus energy: 0.00 MWh\n", "Unserved energy: 0.001%\n", "Unserved total hours: 6\n", "Number of unserved energy events: 2\n", "Shortfalls (min, max): (88.36 MW, 445.14 MW)\n" ] } ], "source": [ "c = nemo.Context()\n", "c.generators[0].set_capacity(13.2)\n", "c.generators[1].set_capacity(20)\n", "nemo.run(c)\n", "print(c)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we print the `unserved` attribute in the context, we can see when the six hours of unserved energy occurred and how large the shortfalls were:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Date_Time\n", "2010-01-11 13:00:00 88.360\n", "2010-01-11 14:00:00 245.200\n", "2010-01-11 15:00:00 445.140\n", "2010-01-11 16:00:00 113.530\n", "2010-01-12 13:00:00 245.860\n", "2010-01-12 14:00:00 178.365\n", "dtype: float64\n" ] } ], "source": [ "print(c.unserved)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "NEMO includes a `utils.py` module that includes a `plot` function to show the time sequential dispatch. The following example demonstrates its use:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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IiKitRACN910k+7LL7+8AAAvvfRSxvTp06v16tWrvRBC3nLLLYVr1669MHfu3MsTJkxo3rNnz3bBwcH6hg0bFr/++utXnR1r5MiR12bNmhUybty4rDlz5jS5dOlS0IQJE1oAQGRkZPL999+fc++9917r0aNH+7p16xZv2LDhHAD8+9//Dl28eHHSHXfckX/TTTcV9+zZs93NN99cNGPGjCtBQUFywoQJV8LDw9sFBQXpV61adc7ymMHBwXLNmjVnJ02aFFpYWOjn7+8vR40alWHa3qJFi4ImTZroAEMQlZiYWL1///65pu0JCQnBd911Vy6c4GSXRERERFRlVLXJLh955JEWn3zySVKjRo2cD/nlZb/88ktNe0MsW092ySCGiIiIiKqMqhbEVBbWQQz7xBARERERkU9hEENERERERD6FQQwREREREfkUBjFERERERORTGMQQEREREZFP4TwxRERERFRlzRQze7ozv0gZGecsza5du2q++eabzaWU8Pf3l/PmzUu6884787755pu6H3zwQVMhBGrUqKH/9NNPL3bq1KlwwYIFjdasWdPQ398fwcHB+gULFiQtWrTopjNnzgSfPXs2uGnTpkU1atTQv/XWWykPPPBAtuk4c+fObdyhQ4eCYcOGZfft27ft8ePHayxbtuzc6NGjrwPA2LFjbzl58mT1/Px8v8mTJ6c+/fTTWZblHDhw4G3Xr1/3B4DFixdf7NevX/7FixcDRo8efWt+fr7/uHHjrr744ouZlvvk5eWJiRMnNo+Pj6/h5+eHkJCQohUrVlwYP3586PPPP58+cODA3FmzZt20e/fuuvv27UvU6/Vo06ZNp8TExOMRERGttmzZctbPz3k9C4MYIiIiIiIPuXLliv/EiRNb/PTTT4ktWrTQZWRk+J88eTLo6NGjQfPmzQvZs2fP6QYNGujPnz8feP36db9NmzbV3r59e70DBw6cDg4Olqmpqf7JycmBq1evvgAAI0aMaDlt2rTU3r17l5rlXq/XY9u2bfWmTZuWCABr1649t3jx4saWaZYtW3YpODhYZmVl+YWHh7e3DmI+/vjjix07diyKj48PeuWVV0L37NlzZubMmSFTpkxJvf/++7N79+7d/qmnnsqqUaOGec6WadOmhTRp0kQXFxd3CgBiY2ODdTqd6NOnT+7vv/9ec+DAgbl//PFHjYCAAAkAx44dC2rdunWBn58f+vbtm7Nx48Y6I0aMuOHsfWRzMiIiIiIiD9mwYUPdIUOGXGvRooUOABo2bFjSv3//vK+//rrBv//977QGDRroAaBly5a6bt26Fa5evbrBa6+9diU4OFgCQNOmTUt69uxZ4OgYABAbG1u9RYsWhablli1b6qzTmPLMycnxa9OmTb719o4dOxYBQFBQkBRCAAD++OOPmhEREdmBgYHo1q1b7qFDh6pb7rNly5b6kZGR5skqe/fuXdCkSZOSAQMG5ERHR9cEgPz8fL+OHTvmHz16NGjfvn21wsLCcgBgyJAhN77//vt6Tt9EMIghIiIiIvKYlJSUas2aNSuysT6wefPmZQKN1NTUaqGhoUUAMGPGjCbdunVrP23atKbOjnPs2LHgVq1aFTpLN3To0Fbdu3fvdM8999it/Xj55ZdDp0yZkgoAOp1O+Pv7AwDq1q1bkp6eXqpll06n8zMFR8OHD2/Zvn37jps3b67do0ePgjNnzlRPTk4OaNSoUXHfvn1zf/vtt5rR0dE1+/fvnwsAHTp0KDx9+nR1KMAghoiIiIjIQ5o1a1aUnJxczcZ63aVLlwKt1zdt2rTowoUL1QBgxowZV959993kzMxMt3UJ2bp169mEhIQ/33///ZCSkpIy21999dVmYWFhOffdd18OAAQGBkpTuuvXr/s3atSo2DJ9YGCgPj8/XwDAxo0bzw8ZMuRabm6un7+/P+rXr6/79ttv64aFheUOGDAgNzo6utaxY8dqmIIYNRjEEBERERF5yMMPP3z9xx9/rHfhwoVAAMjMzPTbv39/jTFjxmQuX768cWZmph8AXLhwITA+Pj7osccey/zggw+amAKD4uJiR9mbderUqeDs2bNBjtKY8qxVq5a+Zs2aJaYaFpPFixc3TE5ODpw9e7a5eVj37t1zt23bVlun0+Ho0aM1e/ToUaoZWkRERFZkZKS5psiyvL169cpdunRpk/79++e2aNFCd/78+SAhBGrVqiUB4OTJk0G2mrXZwo79REREREQe0qRJk5KPP/74wsiRI1uZRiebP39+UteuXQunTp16edCgQW1Mo5MtXbr0woMPPph95syZoH79+rULCgrSBwUF6WfOnJni7Dh9+vTJnzJlijmIGTlyZMuDBw/W3r59e71jx45VnzNnTmpERESrGzduBOh0OjF16tTLALBhw4Y6eXl5fo899ti1yZMnt+jSpUteWFhYu1tuuaVww4YN5yMjI1NHjx7dMjIy8uZnnnkmzRSAmMydO/fyhAkTmvfs2bNdcHCwvmHDhsWvv/76VQAIDw/PXb58+U3du3cvAICaNWuWtGzZ0tzkbfv27XUefPDBa0reRyGldJ6KiIiIiKgSiI+PP9+tW7d0b5fDE957773GHTt2LBg2bFi289TepdfrERER0Wrz5s1nrWuEACA+Pr5Rt27dWpqWWRNDRERERFQJTZ8+Pc3bZVDKz88P27ZtO6s4vZaFISIiIiIicjcGMURERERE5FMYxBARERFRVaLX6/XC24Ug5Yyfl95yHYMYIiIiIqpK/kxLS6vLQMY36PV6kZaWVhfAn5br2bGfiIiIiKqM4uLicampqZ+npqZ2Bh/o+wI9gD+Li4vHWa7kEMtERERERORTGH0SEREREZFPYRBDREREREQ+pcr1iWnUqJFs2bKlt4tBRERERJVYXFxcupSysbfLUVlVuSCmZcuWOHTokLeLQURERESVmBDigrfLUJmxORkREREREfkUBjFERERERORTGMQQEREREZFPYRBDREREREQ+hUEMERERERH5FAYxRERERETkUxjEVGB1hUAdISAU/DWpXt3bxSUiIiIi8ggGMRVYQLVqqANgIgDp4G8CgBatW3urmEREREREHsUgpgJb8tVXSAfwBYDLdtJcBvAlgM9Xr/ZYuYiIiIiIvIlBTAX26KOPoma1amgAYI6dNO8C6NypE7p27erBkhEREREReY9mQYwQIlgIESOEiBdCHBdCzDSuXyGEOCeEOGL8625cL4QQi4UQZ4QQR4UQPSzyelIIkWj8e9JifU8hxDHjPouFEEKr1+MtjmpjWAtDRERERFWRljUxhQAGSim7AegOYLAQoq9x2xQpZXfj3xHjuvsAtDH+PQfgUwAQQjQAEAmgD4AwAJFCiPrGfT4F8KzFfoM1fD1e4ag2hrUwRERERFQVaRbESIMc42Kg8U862GUYgJXG/aIA1BNChAC4F8AuKWWmlDILwC4YAqIQAHWklFFSSglgJYAHtXo93mSrNoa1MERERERUVWnaJ0YI4S+EOALgKgyBSLRx07vGJmMLhRBBxnU3A7hksXuScZ2j9Uk21tsqx3NCiENCiENpaWnlfl2eZqs2hrUwRERERFRVaRrESClLpJTdATQH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zWwjMD7cttHdXwMws98D88zsRWAqcGy4zw0EC3JelebziYiIiIhIiUp3ONnPgM+BU8NemdFNeM4zzOy5cLhZ57CsN/BWzD6bwrJE5XsA22ICqki5iIiIiIiUuXSHk50F/AfQLfy+2czObMTzXQUMBMYA7wL/0ohzZMzMVprZOjNbt3nz5nw8pYiIiIiI5Ei6w8lOAia4+w4AM/sJQbrlKzJ5Mnd/P/KzmV0D3Bk+fBvoG7Nrn7CMBOUfAZ3MrFnYGxO7f7znvRq4GmDcuHHxV0kSEREREZGSkFZPDGDArpjHu8KyjJhZ7LKwRwCRzGV3AIvMrKWZ1QCDgSeBp4DBYSayFgST/+9wdwfWAAvC45cBt2daHxERERERKT3p9sRcDzxhZreGj+cD1yY7wMx+BxwM7Glmm4BLgYPNbAzgwBvAKQDu/jcz+wPwd+Ar4HR33xWe5wzgXqAauM7d/xY+xQXA783shwRZ05LWR0REREREykNaQYy7/9zMHgSmhEUnuPszKY5ZHKc4YaDh7j8CfhSn/G7g7jjlr/F1BjMREREREakQSYMYM2sFnAoMAp4Hrkw3xbKIiIiIiEgupJoTcwMwjiCAmQ38LOc1EhERERERSSLVcLJh7j4SwMyuJZhsLyIiIiIiUjCpemK+jPygYWQiIiIiIlIMUvXEjDazT8KfDWgdPjbA3b1DTmsnIiIiIiJST9Igxt2r81URERERERGRdKS72KWIiIiIiEhRSHexS2mC3bt3s3P3Tj7n80JXRURERKRi7Ny9k927d1NVpfv25UZBTB7s2LGDZ6uf5YuuXxS6KiIiIiIVo2V1S3bs2EH79u0LXRXJMgUxedC+fXsm+SS2bt5a6KqIiIiIVIzO7TsrgClT6lsTEREREZGSoiBGRERERERKioIYEREREREpKQpiRERERESkpCiIERERERGRkqIgRkRERERESoqCGBERERERKSkKYkREREREpKQoiBERERERkZKiIEZEREREREqKghgRERERESkpCmJERERERKSkKIgREREREZGSoiBGRERERERKioIYEREREREpKQpiRERERESkpCiIERERERGRkqIgRkRERERESoqCGBERERERKSk5C2LM7Doz+8DMXogp62Jmq81sQ/hv57DczOxXZrbRzJ4zs31jjlkW7r/BzJbFlI81s+fDY35lZpar30VERERERIpHLntifgvMqld2IXC/uw8G7g8fA8wGBoffK4GrIAh6gEuBCcB44NJI4BPuc3LMcfWfS0REREREylDOghh3fwjYUq94HnBD+PMNwPyY8hs98DjQycx6AjOB1e6+xd23AquBWeG2Du7+uLs7cGPMuUREREREpIzle05Md3d/N/z5PaB7+HNv4K2Y/TaFZcnKN8Upj8vMVprZOjNbt3nz5qb9BiIiIiIiUlAFm9gf9qB4np7rancf5+7junbtmo+nFBERERGRHMl3EPN+OBSM8N8PwvK3gb4x+/UJy5KV94lTLiIiIiIiZS7fQcwdQCTD2DLg9pjypWGWsonAx+Gws3uBGWbWOZzQPwO4N9z2iZlNDLOSLY05l4iIiIiIlLFmuTqxmf0OOBjY08w2EWQZ+2fgD2Z2IvAmcEy4+93AYcBG4DPgBAB332JmlwNPhftd5u6RZAGrCDKgtQb+J/wWEREREZEyl7Mgxt0XJ9g0Lc6+Dpye4DzXAdfFKV8HjGhKHUVEREREpPQUbGK/iIiIiIhIYyiIERERERGRkqIgRkRERERESoqCGBERERERKSkKYkREREREpKQoiBERERERkZKiIEZEREREREqKghgRERERESkpCmJERERERKSkKIgREREREZGSoiBGRERERERKioIYEREREREpKQpiRERERESkpCiIERERERGRkqIgRkRERERESoqCGBERERERKSkKYkREREREpKQoiBERERERkZKiIEZEREREREqKghgRERERESkpCmJERERERKSkKIgREREREZGSoiBGRERERERKioIYEREREREpKQpiRERERESkpCiIERERERGRkqIgRkRERERESoqCGBERERERKSkKYkREREREpKQUJIgxszfM7Hkze9bM1oVlXcxstZltCP/tHJabmf3KzDaa2XNmtm/MeZaF+28ws2WF+F1ERERERCS/CtkTc4i7j3H3ceHjC4H73X0wcH/4GGA2MDj8XglcBUHQA1wKTADGA5dGAh8RERERESlfxTScbB5wQ/jzDcD8mPIbPfA40MnMegIzgdXuvsXdtwKrgVn5rrSIiIiIiORXoYIYB+4zs/VmtjIs6+7u74Y/vwd0D3/uDbwVc+ymsCxReQNmttLM1pnZus2bN2frdxARERERkQJoVqDnneLub5tZN2C1mb0Uu9Hd3cw8W0/m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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from matplotlib.pyplot import ioff\n", "from nemo import utils\n", "ioff()\n", "utils.plt.rcParams[\"figure.figsize\"] = (12, 6) # 12\" x 6\" figure\n", "utils.plot(c)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The previous plot is rather bunched up. Instead, you can also pass a pair of dates to the `plot()` function to limit the range of dates shown. For example:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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A7hgTTDy2o514Pn3wHta629vE89nQBMg7yKRf5iuWWt9DegHTMP60B4A7MxzfA3wL+ALW5erX4Gut6nzdmZhHQ90Detns6mgF2qtjwCjsA7gv4R1HMvFO1y2HGvSFId10oKcMTGbbXWfwNptL40/drPL6zPbOVHAb/wvOS1IzIlAZ6An1p/nSayTOgB8CKwFvlVKJdrKbXWzcoQQQhQfMimAEELchm1Q/DKt9cKbHKtFngkECljeEGCk1rpdnn2/AX211r8VRsxCCCHuTCYFKJluNimALKwphBB2Yuuy9jwwN88+J+AzSWaEEMJYk9XkkMIsb5KeFFmY5Ylbky5nQghhB0qph7GOD7mMtdsVAFrrDK31NMMCE0IIYZj169d7hISEBIaGhgb26NGjztWrV80A2dnZvPrqq1VCQkICW7ZsGdinT59aaWlpKiUlRQ0fPrxGzjWPPPJI7djYWHNYWFhgWFhYoLu7e/Oc95cvX847WyX9+/f3v3btmnn58uUVmjZt2iAkJCRw2LBhuRO1vP3225VbtGjRoGPHjvXi4uL+lCM899xz1UJCQgJ79+5dOz09XQF88sknXs2bN2/QunXr+r///rtj/msiIyNd7rvvvoDQ0NDAkJCQwGnTplVKT09XQUFBDXPOadiwYdB//vMfL4ClS5d6jho1qtrWrVvdJ06cWOAZJiWhEUKI29Ba33+z7ma2Y2e11qog3c201pu11u5a616ypokQQojLly+bX3nllRrr1q37fd++fcd79ux5fcSIETUBPvroI+8LFy447du37/j+/fuPv/DCC1ezsrIYP358FV9f38zIyMjj+/btOz5x4sRLWVlZREREHI+IiDheu3bttJz3vr6+uZPXHD9+3MlsNuPj45MdGhqaGhkZeSwyMvL4tWvXHHbs2OF26dIlh40bN3ru37//WL9+/eJmzJhROW+su3fvdo2OjnaKjIw8HhgYmPrpp596ZWZmMnv2bN/du3cfnzx5ctTEiRP/sGRBWlqaeuKJJ+r8+9//Pr9v377j+/btO96sWbNUZ2dn7ebmZomNjTXfuHHD5OnpmbV37153gD179ri3adMmqWPHjsk//fSTR3Z23vl3bk0SGiGEEEIIIexs9erVFbp37369atWqWQDPPvts3IEDB9yzs7NZuXKl96RJky6ZTNZH9U6dOiWXK1dOr1u3zmvS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H36YGTNm7HLfWbNm8cYbb1BGGf3pn6UIC19f+tKUpsydOze+ts/u1NbWxhP7gQzMZHgFL7GX5pRTTmHx4sW7fxKx+a/r16+PD1+WPXccx3EN13ASJ9GWtvHE8lt8S/NmJC8k20OzgljPzCTgT8QqkA0ys2+Z2bcyFVy2lFIav1N9ww03JFVGePTo0Sxfvpy92Iv92C/TIRa0Sio5gROA2GKbmzZt2uX+y5cvjyc+uqBumMT1IG666aakVq8fM2YM69evZ2/21pCnNGhNaw7lUCC2cvquhENyBjBAiXwalVIan0vz4x//mJdffrnefd2df//73wwYMIAFCxbQhCYq2d9AhnEqp1JFFa+++ip9+vSp9+bW1q1bmT17No8++ih33HEHEBs+q97KhmtMY4YwhEu4hIu4iAu4gH70izoskaQkm9CMAaYBBxBbVPPUhMc3MhNadvWiF53oxJo1a3a7cnTiSutHcITeSNNgAANoT3uWL1++2zLaI0eOpLq6mp70pHVy67rKLvSkJ13owrp16/jjH/+42/3DYgCDGazXfpocxVGUU85zzz3Hiy+++KWfuzs333xzvBKXygOn30AG0o52LF68mGOPPZYLLriAdevWxX++Zs0annnmGYYMGcKpp57KzJkzaUITzuAMTZROg4505FIupQc92LRpE9/97nc5/fTTueyyyzjzzDMZPHgwHTp0oKqqin79+nH22WdTU1PDQRxEBzpEHX5BMYyOdKTzF9YrF8lttifVjQpBR+voF3PxF7YtYhGjGEVlZSULFy6kffu658U8//zznHDCCTSmMVdxlcbtpsliFnM/91NeXs6cOXPYd98vVy5buXIl/fr1Y8WKFZzLuapuliZh2zdq1IiFCxfSoUPdFwjvvPMOAwcOpIIKruEaKqjIcqSF61Ve5UVepF+/fowePZq+ffsCseGtF154IQ899BAQuxutMuWZUU01E5nIK7xCLbW0bduWAQMGMGPGDFasWBHfr4oqjuIoBjGIcsojjLjwOM47vMOzPEs11V/6uWG0oAVtaEMHOnAkR1JJZQSRiqTmJm562911NypDkroSN7PvAY+4e52zJc1sP6CDu7+ezuCybR/2oQc9mLd1HjfffHOdFVcWLlzIVVddBcAQhiiZSaMudKEf/Zi1YxZnnnkmt956K8cccwxmsV6Axx9/nIsvvpg1a9bQ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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from matplotlib.pyplot import ioff\n", "from datetime import datetime\n", "ioff()\n", "utils.plt.rcParams[\"figure.figsize\"] = (12, 6) # 12\" x 6\" figure\n", "utils.plot(c, xlim=[datetime(2010, 1, 5), datetime(2010, 1, 12)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scripting simulations " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Writing NEMO in Python allows the simulation framework to be easily scripted using Python language constructs, such as for loops. Using the previous example, the following small script demonstrates how simulation runs can be automated:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[CCGT (NSW1:31), 34000.00 MW]\n" ] } ], "source": [ "c = nemo.Context()\n", "scenarios._one_ccgt(c)\n", "for i in range(0, 40):\n", " c.generators[0].set_capacity(i)\n", " nemo.run(c)\n", " if c.unserved_energy() == 0:\n", " break\n", "print(c.generators)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once the generator capacity reaches 34 GW, there is no unserved energy." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scenarios" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "NEMO contains two types of scenarios: supply-side and demand-side scenarios. The supply-side scenario modifies the list of generators. For example:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[CCGT (NSW1:31), 0.00 MW, poly 17 pumped-hydro (QLD1:17), 500.00 MW, poly 36 pumped-hydro (NSW1:36), 1740.00 MW, poly 24 hydro (NSW1:24), 42.50 MW, poly 31 hydro (NSW1:31), 43.00 MW, poly 35 hydro (NSW1:35), 71.00 MW, poly 36 hydro (NSW1:36), 2513.90 MW, poly 38 hydro (VIC1:38), 450.00 MW, poly 39 hydro (VIC1:39), 13.80 MW, poly 40 hydro (TAS1:40), 586.60 MW, poly 41 hydro (TAS1:41), 280.00 MW, poly 42 hydro (TAS1:42), 590.40 MW, poly 43 hydro (TAS1:43), 462.50 MW, OCGT (NSW1:31), 0.00 MW]\n" ] } ], "source": [ "c = nemo.Context()\n", "scenarios.ccgt(c)\n", "print(c.generators)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A list of the current supply-side scenarios (with descriptions) can be obtained by running `evolve --list-scenarios` from the shell (without the leading !):" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " __one_ccgt__ \t One CCGT only.\r\n", " ccgt \t All gas scenario.\r\n", " ccgt-ccs \t CCGT CCS scenario.\r\n", " coal-ccs \t Coal CCS scenario.\r\n", " re+ccs \t Mostly renewables with fossil and CCS augmentation.\r\n", " re+fossil \t Mostly renewables with some fossil augmentation.\r\n", " re100 \t 100% renewable electricity.\r\n", " re100+batteries \t Use lots of renewables plus battery storage.\r\n", " re100+dsp \t Mostly renewables with demand side participation.\r\n", " re100-nocst \t 100% renewables, but no CST.\r\n", " re100-nsw \t 100% renewables in New South Wales only.\r\n", " re100-qld \t 100% renewables in Queensland only.\r\n", " re100-sa \t 100% renewables in South Australia only.\r\n", " replacement \t Replace the current NEM fleet, more or less.\r\n" ] } ], "source": [ "!python3 evolve --list-scenarios" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Demand-side scenarios modify the electricity demand time series before the simulation runs. Demand-side scenarios behave like operators that can be combined in any combination to modify the demand as desired. These are:\n", "\n", " * roll:X rolls the load by x timesteps\n", " * scale:X scales the load by x percent\n", " * scaletwh:X scales the load to x TWh\n", " * shift:N:H1:H2 shifts n megawatts every day from hour h1 to hour h2\n", " * peaks:N:X adjust demand peaks over n megawatts by x percent\n", " * npeaks:N:X adjust top n demand peaks by x percent\n", "\n", "For example, applying `scale:-10` followed by `shift:1000:16:12` will reduce the overall demand by 10% and then shift 1 MW of demand from 4pm to noon every day of the year." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Configuration file" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "NEMO uses a configuration file to give users control over where data such as demand time series are to be found. The location of the configuration file can be specified by setting the NEMORC environment variable. The configuration file format is similar to Windows INI files; it has sections (in brackets) and, within sections, key=value pairs.\n", "\n", "The default configuration file is called `nemo.cfg`. The keys currently recognised are:\n", "\n", " * [costs]\n", " * * co2-price-per-t\n", " * * ccs-storage-costs-per-t\n", " * * coal-price-per-gj\n", " * * discount-rate -- as a fraction (eg 0.05)\n", " * * gas-price-per-gj\n", " * * technology-cost-class -- default cost class\n", " * [limits]\n", " * * hydro-twh-per-yr\n", " * * bioenergy-twh-per-yr\n", " * * nonsync-penetration -- as a fraction (eg 0.75)\n", " * * minimum-reserves-mw\n", " * [optimiser]\n", " * * generations -- number of CMA-ES generations to run\n", " * * sigma -- initial step-size\n", " * [generation]\n", " * * cst-trace -- URL of CST generation traces\n", " * * egs-geothermal-trace -- URL of EGS geothermal generation traces\n", " * * hsa-geothermal-trace -- URL of HSA geothermal generation traces\n", " * * wind-trace -- URL of wind generation traces\n", " * * pv1axis-trace -- URL of 1-axis PV generation traces\n", " * * rooftop-pv-trace -- URL of rooftop PV generation traces\n", " * * offshore-wind-trace -- URL of offshore wind generation traces\n", " * [demand]\n", " * * demand-trace -- URL of demand trace data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Running an optimisation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Instead of running a single simulation, it is more interesting to use `evolve` which drives an evolutionary algorithm to find the least cost portfolio that meets demand. There are many options which you can discover by running `evolve --help`. Here is a simple example to find the least cost portfolio using the `ccgt` scenario (all-gas scenario with CCGT and OCGT generation):\n", "\n", "`$ evolve -s ccgt`\n", "\n", "It is possible to distribute the workload across multiple CPUs and multiple computers. See the [SCOOP](http://scoop.readthedocs.io/en/0.7/usage.html#how-to-launch-scoop-programs) documentation for more details. To run the same evolution, but using all of your locally available CPU cores, you need to load the SCOOP module like so:\n", "\n", "`$ python3 -m scoop evolve -s ccgt`\n", "\n", "At the end of a run, details of the least cost system are printed on the console: the capacity of each generator, the energy supplied, CO2 emissions, costs, and the average cost of generation in dollars per MWh. If you want to see a plot of the system dispatch, you need to use the `replay.py` script described in the next section.\n", "\n", "Many of the optimisation parameters can be controlled from the command line, requiring no changes to the source code. Typically, source code changes are only required to add [new supply scenario functions](https://git.ozlabs.org/?p=nemo.git;a=blob;f=scenarios.py;hb=HEAD) or [cost classes](https://git.ozlabs.org/?p=nemo.git;a=blob;f=costs.py;hb=HEAD). The command line options for `evolve` are documented as follows:\n", "\n", "| Short option | Long option | Description | Default |\n", "|--------------|-------------|----------------------------------------------|---------|\n", "| -h | --help | Show help and then exit | |\n", "| -c | --carbon-price | Carbon price in \\$/tonne | 25 |\n", "| -d | --demand-modifier | Demand modifier | unchanged |\n", "| -g | --generations | Number of generations to run | 100 |\n", "| -o | --output | Filename of results output file (will overwrite) | results.json |\n", "| -p | --plot | Plot an hourly energy balance on completion | |\n", "| -r | --discount-rate | Discount rate | 0.05 |\n", "| -s | --supply-scenario | Generation mix scenario | `re100` |\n", "| -v | --verbose | Be verbose | False |\n", "| | --bioenergy-limit | Limit on annual energy from bioenergy in TWh/year | 20 |\n", "| | --ccs-storage-costs | CCS storage costs in \\$/tonne | 27 |\n", "| | --coal-price | Coal price in \\$/GJ | 1.86 |\n", "| | --costs | Use different cost scenario | AETA2013-in2030-mid |\n", "| | --emissions-limit | Limit total emissions to N Mt/year | $\\infty$ |\n", "| | --fossil-limit | Limit share of energy from fossil sources | 1.0 |\n", "| | --gas-price | Gas price in \\$/GJ | 11 |\n", "| | --hydro-limit | Limit on annual energy from hydro in TWh/year| 12 |\n", "| | --lambda | CMA-ES lambda value | None (autodetect) |\n", "| | --list-scenarios | Print list of scenarios and exit | |\n", "| | --min-regional-generation | Minimum share of energy generated intra-region | 0.0\n", "| | --nsp-limit | Non-synchronous penetration limit | 0.75 |\n", "| | --reliability-std | Reliability standard (% unserved) | 0.002 |\n", "| | --seed | Seed for random number generator | None |\n", "| | --sigma | CMA-ES sigma value | 2.0 |\n", "| | --trace-file | Filename for evaluation trace | None |\n", "| | --version | Print version number and exit | |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Replaying a simulation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To avoid having to re-run a long optimisation just to examine the resulting system, it is possible to reproduce a single run using the results from an earlier optimisation. The `evolve` script writes an output file at the end of the run (default filename `results.json`). This file encodes all of the relevant information from the optimisation run so that the solution it found can be replayed easily and accurately by `replay`.\n", "\n", "The input file for `replay` may consist of any number of scenarios and configurations to replay, one per line. Blank lines are ignored and comment lines (`#`) are shown for information. Each non-comment line must contain a JSON record from the results file that `evolve` writes. Typically the input file for `replay` will just be the output file from `evolve` unmodified. However, if you want multiple simulations to be replayed, this is easy to achieve by pasting multiple JSON strings into the file, one per line.\n", "\n", "A run is replayed using `replay` like so:\n", "\n", "`$ replay -f results.json -p`\n", "\n", "The `-f` option specifies the name of the input data file (the default is `results.json`) and the `-p` option enables a graphical plot of the system dispatch that you can navigate using zoom in, zoom out and pan controls. By including the `--spills` option, surplus energy in each hour will be plotted above the demand line in a lighter shade than the usual colour of the spilling generator. All command line options can be displayed using:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "usage: replay [-h] [-f FILE] [-p] [-v] [--spills] [--no-legend]\r\n", "\r\n", "Bug reports via via https://nemo.ozlabs.org\r\n", "\r\n", "optional arguments:\r\n", " -h, --help show this help message and exit\r\n", " -f FILE filename of results file\r\n", " -p, --plot plot an energy balance\r\n", " -v verbosity level\r\n", " --spills plot surplus generation\r\n", " --no-legend hide legend\r\n" ] } ], "source": [ "!python3 replay --help" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Summarising the optimiser output" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "NEMO includes another script called `summary` that processes the verbose output from `evolve` and summarises it in a convenient table. You can either pipe the `evolve` output directly into `summary` (as below) or you can save the `evolve` output into a text file and use shell redirection to read the file as input. An example of piping:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "# scenario 1\r\n", "# options {'demand_modifier': None, 'list_scenarios': False, 'output': 'results.json', 'reliability_std': 0.002, 'reserves': 0, 'supply_scenario': 'ccgt', 'carbon_price': 25, 'costs': 'AETA2013-in2030-mid', 'ccs_storage_costs': 27.0, 'coal_price': 1.86, 'gas_price': 11.0, 'discount_rate': 0.05, 'bioenergy_limit': 20.0, 'emissions_limit': inf, 'fossil_limit': 1.0, 'hydro_limit': 12.0, 'min_regional_generation': 0.0, 'nsp_limit': 0.75, 'lambda_': None, 'seed': None, 'sigma': 2.0, 'generations': 10, 'trace_file': None, 'verbose': False}\r\n", "# demand 204.37 TWh\r\n", "# emissions 79.70 Mt\r\n", "# unserved \r\n", "# score 100.91 $/MWh\r\n", "# tech\t GW\tshare\t TWh\tshare\tCF\r\n", " CCGT\t24.9\t0.652\t198.2\t0.970\t0.908\r\n", " hydro\t 3.7\t0.096\t 5.6\t0.028\t0.175\r\n", " PSH\t 1.5\t0.038\t 0.0\t0.000\t0.001\r\n", " OCGT\t 8.2\t0.214\t 0.5\t0.003\t0.007\r\n", "\r\n" ] } ], "source": [ "!python3 evolve -s ccgt -g10 | python3 summary" ] } ], "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.8.10" } }, "nbformat": 4, "nbformat_minor": 1 }