{ "cells": [ { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The autoreload extension is already loaded. To reload it, use:\n", " %reload_ext autoreload\n" ] } ], "source": [ "from notepad import WaterStorage, Heatpump\n", "# from pyrecoy.forecasts import Mipf\n", "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "ename": "ModuleNotFoundError", "evalue": "No module named 'cufflinks'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", "\u001b[1;32mc:\\Users\\20190478\\Desktop\\shahla\\engymodel\\Test2-simulation.ipynb Cell 2'\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mpandas\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mpd\u001b[39;00m\n\u001b[1;32m----> 2\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mcufflinks\u001b[39;00m\n\u001b[0;32m 3\u001b[0m cufflinks\u001b[39m.\u001b[39mgo_offline()\n\u001b[0;32m 4\u001b[0m \u001b[39mfrom\u001b[39;00m \u001b[39mnumpy\u001b[39;00m\u001b[39m.\u001b[39;00m\u001b[39mpolynomial\u001b[39;00m \u001b[39mimport\u001b[39;00m Polynomial\n", "\u001b[1;31mModuleNotFoundError\u001b[0m: No module named 'cufflinks'" ] } ], "source": [ "import pandas as pd\n", "import cufflinks\n", "cufflinks.go_offline()\n", "from numpy.polynomial import Polynomial" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "ename": "NameError", "evalue": "name 'Mipf' is not defined", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[1;32mc:\\Users\\20190478\\Desktop\\shahla\\engymodel\\Test2-simulation.ipynb Cell 3'\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[0m mipf \u001b[39m=\u001b[39m Mipf(\n\u001b[0;32m 2\u001b[0m start\u001b[39m=\u001b[39m\u001b[39m'\u001b[39m\u001b[39m2018-11-01\u001b[39m\u001b[39m'\u001b[39m, \n\u001b[0;32m 3\u001b[0m end\u001b[39m=\u001b[39m\u001b[39m'\u001b[39m\u001b[39m2018-11-02\u001b[39m\u001b[39m'\u001b[39m, \n\u001b[0;32m 4\u001b[0m tidy\u001b[39m=\u001b[39m\u001b[39mFalse\u001b[39;00m, \n\u001b[0;32m 5\u001b[0m include_nextQ\u001b[39m=\u001b[39m\u001b[39mFalse\u001b[39;00m,\n\u001b[0;32m 6\u001b[0m folder_path\u001b[39m=\u001b[39m\u001b[39mr\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mC:\u001b[39m\u001b[39m\\\u001b[39m\u001b[39mUsers\u001b[39m\u001b[39m\\\u001b[39m\u001b[39mShahla Huseynova\u001b[39m\u001b[39m\\\u001b[39m\u001b[39mRecoy\u001b[39m\u001b[39m\\\u001b[39m\u001b[39mRecoy - Documents\u001b[39m\u001b[39m\\\u001b[39m\u001b[39m03 - Libraries\u001b[39m\u001b[39m\\\u001b[39m\u001b[39m12 - Data Management\u001b[39m\u001b[39m\\\u001b[39m\u001b[39mForecast Data\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 7\u001b[0m )\u001b[39m.\u001b[39mdata\n\u001b[0;32m 9\u001b[0m price_data \u001b[39m=\u001b[39m mipf[[\u001b[39m'\u001b[39m\u001b[39mDAM\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39mPOS\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39mNEG\u001b[39m\u001b[39m'\u001b[39m]]\n\u001b[0;32m 10\u001b[0m price_data\n", "\u001b[1;31mNameError\u001b[0m: name 'Mipf' is not defined" ] } ], "source": [ "mipf = Mipf(\n", " start='2018-11-01', \n", " end='2018-11-02', \n", " tidy=False, \n", " include_nextQ=False,\n", " folder_path=r\"C:\\Users\\Shahla Huseynova\\Recoy\\Recoy - Documents\\03 - Libraries\\12 - Data Management\\Forecast Data\"\n", ").data\n", "\n", "price_data = mipf[['DAM', 'POS', 'NEG']]\n", "price_data" ] }, { "cell_type": "code", "execution_count": 170, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Tsource (VDG)Tsink (VDG)MW (VDG)Tsource (NDG)Tsink (NDG)MW (NDG)
2018-11-01 00:00:0064.964783142.0031090.00000019.897433147.7318140.000000
2018-11-01 00:15:0054.578777138.9604930.00000017.950905148.1389640.000000
2018-11-01 00:30:0065.166672139.8853290.00000033.500757147.5854260.000000
2018-11-01 00:45:0065.358078139.7319010.00000042.203876147.5476120.000000
2018-11-01 01:00:0064.947536139.5778710.00000018.702675148.2603350.000000
2018-11-01 01:15:0065.073433139.4233570.00000019.903652149.1868650.000000
2018-11-01 01:30:0047.711559140.3287300.00000019.574467147.8000160.000000
2018-11-01 01:45:0029.525829140.2989020.00000017.065464147.9068860.000000
2018-11-01 02:00:0065.715569139.99165010.13958749.339708149.6037413.333301
2018-11-01 02:15:0065.929909148.34232519.58510461.721718155.8879056.455359
\n", "
" ], "text/plain": [ " Tsource (VDG) Tsink (VDG) MW (VDG) Tsource (NDG) \\\n", "2018-11-01 00:00:00 64.964783 142.003109 0.000000 19.897433 \n", "2018-11-01 00:15:00 54.578777 138.960493 0.000000 17.950905 \n", "2018-11-01 00:30:00 65.166672 139.885329 0.000000 33.500757 \n", "2018-11-01 00:45:00 65.358078 139.731901 0.000000 42.203876 \n", "2018-11-01 01:00:00 64.947536 139.577871 0.000000 18.702675 \n", "2018-11-01 01:15:00 65.073433 139.423357 0.000000 19.903652 \n", "2018-11-01 01:30:00 47.711559 140.328730 0.000000 19.574467 \n", "2018-11-01 01:45:00 29.525829 140.298902 0.000000 17.065464 \n", "2018-11-01 02:00:00 65.715569 139.991650 10.139587 49.339708 \n", "2018-11-01 02:15:00 65.929909 148.342325 19.585104 61.721718 \n", "\n", " Tsink (NDG) MW (NDG) \n", "2018-11-01 00:00:00 147.731814 0.000000 \n", "2018-11-01 00:15:00 148.138964 0.000000 \n", "2018-11-01 00:30:00 147.585426 0.000000 \n", "2018-11-01 00:45:00 147.547612 0.000000 \n", "2018-11-01 01:00:00 148.260335 0.000000 \n", "2018-11-01 01:15:00 149.186865 0.000000 \n", "2018-11-01 01:30:00 147.800016 0.000000 \n", "2018-11-01 01:45:00 147.906886 0.000000 \n", "2018-11-01 02:00:00 149.603741 3.333301 \n", "2018-11-01 02:15:00 155.887905 6.455359 " ] }, "execution_count": 170, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data = pd.read_excel('Demand_Data_Smurfit_Preprocessed.xlsx', sheet_name='nov2018', index_col=0)\n", "start, end = '2018-11-01 00:00:00', '2018-11-01 12:00:00'\n", "df = data[start:end]\n", "df = df.resample('15T', origin=start).mean()\n", "df=df.drop(['Unnamed: 7', 'Unnamed: 8', 'Unnamed: 9', 'Unnamed: 10', 'Unnamed: 11', 'Unnamed: 12'], axis=1)\n", "df[:10]" ] }, { "cell_type": "code", "execution_count": 171, "metadata": {}, "outputs": [ { "ename": "AttributeError", "evalue": "'DataFrame' object has no attribute 'iplot'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", "\u001b[1;32mc:\\Users\\20190478\\Desktop\\shahla\\engymodel\\Test2-simulation.ipynb Cell 5'\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[0m df[[\u001b[39m'\u001b[39;49m\u001b[39mTsource (VDG)\u001b[39;49m\u001b[39m'\u001b[39;49m, \u001b[39m'\u001b[39;49m\u001b[39mTsink (VDG)\u001b[39;49m\u001b[39m'\u001b[39;49m]]\u001b[39m.\u001b[39;49miplot()\n", "File \u001b[1;32m~\\Desktop\\shahla\\engymodel\\myenv\\lib\\site-packages\\pandas\\core\\generic.py:5575\u001b[0m, in \u001b[0;36mNDFrame.__getattr__\u001b[1;34m(self, name)\u001b[0m\n\u001b[0;32m 5568\u001b[0m \u001b[39mif\u001b[39;00m (\n\u001b[0;32m 5569\u001b[0m name \u001b[39mnot\u001b[39;00m \u001b[39min\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_internal_names_set\n\u001b[0;32m 5570\u001b[0m \u001b[39mand\u001b[39;00m name \u001b[39mnot\u001b[39;00m \u001b[39min\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_metadata\n\u001b[0;32m 5571\u001b[0m \u001b[39mand\u001b[39;00m name \u001b[39mnot\u001b[39;00m \u001b[39min\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_accessors\n\u001b[0;32m 5572\u001b[0m \u001b[39mand\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_info_axis\u001b[39m.\u001b[39m_can_hold_identifiers_and_holds_name(name)\n\u001b[0;32m 5573\u001b[0m ):\n\u001b[0;32m 5574\u001b[0m \u001b[39mreturn\u001b[39;00m \u001b[39mself\u001b[39m[name]\n\u001b[1;32m-> 5575\u001b[0m \u001b[39mreturn\u001b[39;00m \u001b[39mobject\u001b[39;49m\u001b[39m.\u001b[39;49m\u001b[39m__getattribute__\u001b[39;49m(\u001b[39mself\u001b[39;49m, name)\n", "\u001b[1;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'iplot'" ] } ], "source": [ "df[['Tsource (VDG)', 'Tsink (VDG)']].iplot()" ] }, { "cell_type": "code", "execution_count": 172, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "15" ] }, "execution_count": 172, "metadata": {}, "output_type": "execute_result" } ], "source": [ "waterstorage = WaterStorage(\n", " name='MyStorage',\n", " max_power=10,\n", " min_power=-10,\n", " roundtrip_eff=0.90,\n", " capacity_per_volume = 50 * 1e-3,\n", " volume = 1000,\n", " lifetime = 25,\n", " temperature = 368, #K\n", " min_storagelevel = 5,\n", " # max_storagelevel = 50\n", " \n", ")\n", "waterstorage.set_freq('15T')\n", "waterstorage.set_storagelevel(15)\n", "waterstorage.storagelevel\n" ] }, { "cell_type": "code", "execution_count": 173, "metadata": {}, "outputs": [], "source": [ "Tsink = 140 #Celcius\n", "Tsource = 60\n", "Tref = 0\n", "hp_capacity = 31 #MW\n", "process_demand_MW = 25 #MW\n", "Cp = 4190.0 #J/kgK\n", "MW_to_J_per_s = 1000000\n", "hp_capacity *= MW_to_J_per_s\n", "process_demand_MW *= MW_to_J_per_s\n", "efficiency = 0.9\n", "Tstorage = 95" ] }, { "cell_type": "code", "execution_count": 174, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "50.0" ] }, "execution_count": 174, "metadata": {}, "output_type": "execute_result" } ], "source": [ "waterstorage.max_storage_capacity" ] }, { "cell_type": "code", "execution_count": 175, "metadata": {}, "outputs": [], "source": [ "from numpy.polynomial import Polynomial\n", "\n", "def hp_mass_flow (hp_capacity, Tsink, Tref, Cp):\n", " return hp_capacity /(Cp*(Tsink - Tref)) \n", "\n", "def process_mass_flow (process_demand_MW, Tsink, Tref, Cp):\n", " return process_demand_MW /(Cp*(Tsink - Tref)) \n", "\n", "def COP_calculation(Tsink, Tsource):\n", " return Tsink / (Tsink - Tsource)\n", "\n", "def cop_curve(Tsink, Tsource):\n", " c0 = Tsink / (Tsink - Tsource) \n", " return Polynomial([c0])\n", "\n", "def charge_mass_flow(hp_mass_flow, process_mass_flow):\n", " return hp_mass_flow - process_mass_flow\n", "\n", "def charged_heat (charge_mass_flow, Cp, Tsink, Tref):\n", " return charge_mass_flow * Cp * (Tsink - Tref) / MW_to_J_per_s\n", "\n", "def discharged_heat(charged_heat, efficiency):\n", " return charged_heat * efficiency\n", "\n", "\n", "def discharge_mass_flow (discharged_heat, Cp, Tstorage, Tref):\n", " return discharged_heat * MW_to_J_per_s /(Cp*(Tstorage - Tref))\n", "\n", "def Tsource_calculation(Tstorage, discharge_mass_flow, Tsource, process_mass_flow):\n", " return ((Tstorage * discharge_mass_flow + Tsource * process_mass_flow)\n", " / (discharge_mass_flow + process_mass_flow))" ] }, { "cell_type": "code", "execution_count": 176, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'name': 'Heatpump',\n", " 'max_th_power': 40,\n", " 'min_th_power': 5,\n", " 'cop_curve': }" ] }, "execution_count": 176, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# heatpump = Heatpump(\"heatpump1\", 50, cop_curve, 10)\n", "# heatpump.set_heat_output(50, Tsource=333, Tsink=413)\n", "cop_curve(140, 60)\n", "\n", "heatpump = Heatpump(\n", " name='Heatpump',\n", " max_th_power=40,\n", " min_th_power=5,\n", " cop_curve=cop_curve\n", ")\n", "\n", "heatpump.__dict__\n", "\n" ] }, { "cell_type": "code", "execution_count": 177, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "5.1625" ] }, "execution_count": 177, "metadata": {}, "output_type": "execute_result" } ], "source": [ "heatpump.get_cop(50, Tsource=333, Tsink=413)" ] }, { "cell_type": "code", "execution_count": 178, "metadata": {}, "outputs": [], "source": [ "def test_heatpump_and_waterstorage_system(Tsink, Tsource, process_demand_MW, e_price):\n", " \"\"\"\n", " 1. Follow a certain logic based on given price:\n", " - If price is low --> Heatpump at full power, and charge the heatbuffer\n", " - If price is high --> Discharge the heat buffer, and increase Tsource, which will increase COP\n", " 2. Above logic should adhere to a couple of constraints:\n", " - Storage levels\n", " - Capacity of the heat pump \n", " - Process demand\n", " - ....\n", " 3. This function should contain: \n", " - Heat pump \n", " - Water storage\n", " - Interactions / logic between them\n", " 4. Output of the function:\n", " - Power of the heatpump (MWe)\n", " - \"New\" water storage level\n", " - (optional) Thermal output of the heatpump\n", " - (optional) In/outflow from the storage\n", " \"\"\"\n", " \n", " if e_price < 50:\n", " hp_load = heatpump.max_th_power\n", " energy_to_storage = hp_load - process_demand_MW\n", " waterstorage.charge(energy_to_storage)\n", " new_cl = waterstorage.storagelevel\n", " if e_price > 100:\n", " energy_from_storage = discharged_heat\n", " waterstorage.discharge(energy_from_storage)\n", " new_cl = waterstorage.storagelevel\n", " def Tsource_calculation(Tstorage, discharge_mass_flow, Tsource, process_mass_flow):\n", " return ((Tstorage * discharge_mass_flow(discharged_heat, Cp, Tstorage, Tref) + Tsource * process_mass_flow(process_demand_MW, Tsink, Tref, Cp))\n", " / (discharge_mass_flow(discharged_heat, Cp, Tstorage, Tref) + process_mass_flow(process_demand_MW, Tsink, Tref, Cp)))\n", " new_COP = cop_curve (Tsink, Tsource_calculation(Tstorage, discharge_mass_flow, Tsource, process_mass_flow))\n", " hp_load = heatpump.set_heat_output(process_demand_MW, Tsink, Tsource) #bu da hemcinin set load assetin funksiyasidir, \n", " #heatpump da overwrite edilib. men evezinde yazdim ki set_heat_output\n", " #sen gor hansi funksiya sene lazimdir.\n", "\n", " return hp_load, new_cl" ] }, { "cell_type": "code", "execution_count": 179, "metadata": {}, "outputs": [], "source": [ "# waterstorage.get_soc (30, 50)" ] }, { "cell_type": "code", "execution_count": 180, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Tsource (VDG)Tsink (VDG)MW (VDG)Tsource (NDG)Tsink (NDG)MW (NDG)hp_massprocess_massCOPcharge_masscharge_heatdischarged_heatdischarge_massTsource_newnew_COP
2018-11-01 00:00:0064.964783142.0031090.00000019.897433147.7318140.00000052.10145142.017299(5.386969459992516)10.0841526.05.413.566135345.295417(5.953476543042116)
2018-11-01 00:15:0054.578777138.9604930.00000017.950905148.1389640.00000053.24224142.937291(4.882106135030027)10.3049506.05.413.566135337.283671(5.516577736203686)
2018-11-01 00:30:0065.166672139.8853290.00000033.500757147.5854260.00000052.89023642.653416(5.5258665771869335)10.2368206.05.413.566135345.365643(6.115036342983261)
2018-11-01 00:45:0065.358078139.7319010.00000042.203876147.5476120.00000052.94831042.700250(5.549424302045392)10.2480606.05.413.566135345.504908(6.139377727001776)
2018-11-01 01:00:0064.947536139.5778710.00000018.702675148.2603350.00000053.00674142.747372(5.528286493353138)10.2593696.05.413.566135345.187288(6.122188736008785)
2018-11-01 01:15:0065.073433139.4233570.00000019.903652149.1868650.00000053.06548542.794746(5.547058190973266)10.2707396.05.413.566135345.276795(6.142136614098925)
2018-11-01 01:30:0047.711559140.3287300.00000019.574467147.8000160.00000052.72311742.518642(4.462765657815752)10.2044746.05.413.566135332.149982(5.091587841259815)
2018-11-01 01:45:0029.525829140.2989020.00000017.065464147.9068860.00000052.73432642.527682(3.731041234226957)10.2066446.05.413.566135318.360577(4.353340984575257)
2018-11-01 02:00:0065.715569139.99165010.13958749.339708149.6037413.33330152.85006742.621021(5.560223997670469)10.2290456.05.413.566135345.786162(6.145207240951149)
2018-11-01 02:15:0065.929909148.34232519.58510461.721718155.8879056.45535949.87496340.221745(5.112607341877656)9.6532196.05.413.566135346.261835(5.61187501279911)
2018-11-01 02:30:0064.958149149.59962119.97666662.090279158.4944246.57024549.45579439.883705(4.9928198565013675)9.5720896.05.413.566135345.583089(5.487128666091509)
2018-11-01 02:45:0064.986305150.48135120.13457361.710773161.1729106.60319749.16601339.650010(4.953285261562575)9.5160026.05.413.566135345.637552(5.440142346671779)
2018-11-01 03:00:0064.997940151.07812520.04312261.676767163.1802646.55820648.97180239.493389(4.926547541990172)9.4784136.05.413.566135345.668797(5.40851620571899)
2018-11-01 03:15:0065.007706151.78977219.83743061.732315161.8530636.51141248.74220439.308229(4.894902723368221)9.4339756.05.413.566135345.702919(5.371180630920103)
2018-11-01 03:30:0065.017475151.83552219.87444561.648869161.4821236.52781548.72751739.296385(4.89340104404814)9.4311326.05.413.566135345.711905(5.369263184422139)
2018-11-01 03:45:0065.027245151.88123319.89946661.293957160.8630126.54282948.71285239.284558(4.891902378691214)9.4282946.05.413.566135345.720889(5.367349502862809)
2018-11-01 04:00:0065.078491155.58650119.83622161.054382159.8317056.56918947.55276338.349002(4.735343316767779)9.2037616.05.413.566135345.897390(5.1831068924125105)
2018-11-01 04:15:0065.162819159.82560920.03588961.265831159.2995806.68409346.29150537.331859(4.572288732349114)8.9596466.05.413.566135346.115494(4.991639210075494)
2018-11-01 04:30:0065.009438159.77052620.66183861.344606158.1472846.90460346.30746537.344730(4.566964499091226)8.9627356.05.413.566135346.000974(4.9875851092226595)
2018-11-01 04:45:0065.131508159.71538820.62268261.096634156.5948706.90738146.32345237.357622(4.574938019623583)8.9658296.05.413.566135346.088501(4.995162647362516)
2018-11-01 05:00:0064.973846159.66017920.55412160.758636155.2215556.89823046.33947037.370540(4.569404748614581)8.9689306.05.413.566135345.970812(4.990925576584593)
2018-11-01 05:15:0065.065392159.60491620.61215360.820210155.1015096.91837246.35551537.383480(4.575915928004264)8.9720356.05.413.566135346.035951(4.997228698670104)
2018-11-01 05:30:0065.012028159.54958520.66427360.545910155.8635846.92723946.37159037.396444(4.575425857588348)8.9751476.05.413.566135345.994765(4.997406082677272)
2018-11-01 05:45:0064.914375159.49419920.73774461.934345157.7084796.93168846.38769337.409430(4.572795565301379)8.9782636.05.413.566135345.921067(4.995709283347026)
2018-11-01 06:00:0065.008305159.43874120.59138662.095495158.6659666.87201946.40382937.422443(4.579442377135362)8.9813866.05.413.566135345.987962(5.002138186898098)
2018-11-01 06:15:0064.896576159.38323020.60277462.043797159.7308286.86388246.41999137.435476(4.576130201489353)8.9845146.05.413.566135345.903913(4.999845610137759)
2018-11-01 06:30:0064.913509159.32764720.57203662.008900159.1044776.85970646.43618437.448536(4.579056236814606)8.9876496.05.413.566135345.914294(5.003018981720621)
2018-11-01 06:45:0064.930443159.27200920.52867862.056747158.0285926.85606146.45240637.461618(4.581988892854711)8.9907886.05.413.566135345.924674(5.006199787644315)
2018-11-01 07:00:0064.947380159.21630220.57958061.756916157.2611436.88057846.46865937.474725(4.584928855375525)8.9939346.05.413.566135345.935057(5.0093887731351225)
2018-11-01 07:15:0064.964310159.16054020.66921761.671547157.3404536.90911146.48493937.487854(4.587875121041952)8.9970856.05.413.566135345.945434(5.012584929093059)
2018-11-01 07:30:0064.981247159.10470520.72955661.952133157.7174636.92466946.50125237.501010(4.590829055058798)9.0002426.05.413.566135345.955816(5.015789631637271)
2018-11-01 07:45:0064.998184159.04881320.76160962.045223157.8628206.93322446.51759337.514188(4.593789718661315)9.0034056.05.413.566135345.966197(5.019001893273372)
2018-11-01 08:00:0065.015114158.99285320.63696161.945326158.4233476.88504946.53396637.527392(4.5967572478674885)9.0065746.05.413.566135345.976573(5.022221979878481)
2018-11-01 08:15:0065.032051158.09262620.72800461.805672158.8462976.90129646.79894437.741084(4.63238728861577)9.0578606.05.413.566135345.955872(5.063531390353244)
2018-11-01 08:30:0065.048981158.08025820.68792261.974689160.4119536.87106246.80260637.744037(4.633713185319376)9.0585696.05.413.566135345.967870(5.064835636292873)
2018-11-01 08:45:0065.065918158.06788820.78693564.020584162.2392956.88404446.80626937.746991(4.635040406512749)9.0592786.05.413.566135345.979873(5.066141119919892)
2018-11-01 09:00:0065.081432158.05551020.67140963.844805161.9277496.84901346.80993437.749947(4.636297768824248)9.0599876.05.413.566135345.990831(5.067385329128207)
2018-11-01 09:15:0065.077782158.04313320.78574763.860462161.8635766.88746746.81360037.752903(4.6365998277661316)9.0606976.05.413.566135345.987689(5.067790055930502)
2018-11-01 09:30:0065.065968158.03075320.75179763.746675161.9025216.87566346.81726737.755861(4.63649490283444)9.0614076.05.413.566135345.978542(5.0678371544740095)
2018-11-01 09:45:0065.054153158.01836920.66863463.841488161.4183806.85319846.82093637.758820(4.636390085845393)9.0621176.05.413.566135345.969395(5.067884361444745)
2018-11-01 10:00:0065.042343158.00598320.51741663.604210158.6809326.83201846.82460737.761780(4.636285594422067)9.0628276.05.413.566135345.960249(5.067931876036881)
2018-11-01 10:15:0064.989166157.99359320.56244863.693844158.5800336.84795046.82827937.764741(4.634119126966711)9.0635386.05.413.566135345.920670(5.066166486255051)
2018-11-01 10:30:0064.985981157.98120020.64890364.003714161.7226476.84287346.83195237.767703(4.6344447036181)9.0642496.05.413.566135345.917868(5.066592062531787)
2018-11-01 10:45:0064.975281157.96880120.69196464.258675164.0096016.83232546.83562837.770668(4.634396034548163)9.0649606.05.413.566135345.909538(5.066688630522301)
2018-11-01 11:00:0064.964016157.95640120.69558764.458424165.1083256.82137946.83930537.773633(4.634319240969633)9.0656726.05.413.566135345.900791(5.066760457771209)
2018-11-01 11:15:0064.952751157.94399920.72826964.658173166.2272256.81972346.84298337.776599(4.634242555022484)9.0663846.05.413.566135345.892045(5.066832397378636)
2018-11-01 11:30:0064.942787157.93159420.72693364.697697166.5629326.81545046.84666237.779566(4.634230831076715)9.0670966.05.413.566135345.884254(5.066961504304182)
2018-11-01 11:45:0064.940338157.91918520.80135464.613983166.8364356.83675946.85034337.782535(4.634593773846146)9.0678086.05.413.566135345.881993(5.067420220709067)
2018-11-01 12:00:0064.940338157.91091120.75257964.558167167.0168666.81864446.85279837.784515(4.634917246100044)9.0682836.05.413.566135345.881687(5.067797775346913)
\n", "
" ], "text/plain": [ " Tsource (VDG) Tsink (VDG) MW (VDG) Tsource (NDG) \\\n", "2018-11-01 00:00:00 64.964783 142.003109 0.000000 19.897433 \n", "2018-11-01 00:15:00 54.578777 138.960493 0.000000 17.950905 \n", "2018-11-01 00:30:00 65.166672 139.885329 0.000000 33.500757 \n", "2018-11-01 00:45:00 65.358078 139.731901 0.000000 42.203876 \n", "2018-11-01 01:00:00 64.947536 139.577871 0.000000 18.702675 \n", "2018-11-01 01:15:00 65.073433 139.423357 0.000000 19.903652 \n", "2018-11-01 01:30:00 47.711559 140.328730 0.000000 19.574467 \n", "2018-11-01 01:45:00 29.525829 140.298902 0.000000 17.065464 \n", "2018-11-01 02:00:00 65.715569 139.991650 10.139587 49.339708 \n", "2018-11-01 02:15:00 65.929909 148.342325 19.585104 61.721718 \n", "2018-11-01 02:30:00 64.958149 149.599621 19.976666 62.090279 \n", "2018-11-01 02:45:00 64.986305 150.481351 20.134573 61.710773 \n", "2018-11-01 03:00:00 64.997940 151.078125 20.043122 61.676767 \n", "2018-11-01 03:15:00 65.007706 151.789772 19.837430 61.732315 \n", "2018-11-01 03:30:00 65.017475 151.835522 19.874445 61.648869 \n", "2018-11-01 03:45:00 65.027245 151.881233 19.899466 61.293957 \n", "2018-11-01 04:00:00 65.078491 155.586501 19.836221 61.054382 \n", "2018-11-01 04:15:00 65.162819 159.825609 20.035889 61.265831 \n", "2018-11-01 04:30:00 65.009438 159.770526 20.661838 61.344606 \n", "2018-11-01 04:45:00 65.131508 159.715388 20.622682 61.096634 \n", "2018-11-01 05:00:00 64.973846 159.660179 20.554121 60.758636 \n", "2018-11-01 05:15:00 65.065392 159.604916 20.612153 60.820210 \n", "2018-11-01 05:30:00 65.012028 159.549585 20.664273 60.545910 \n", "2018-11-01 05:45:00 64.914375 159.494199 20.737744 61.934345 \n", "2018-11-01 06:00:00 65.008305 159.438741 20.591386 62.095495 \n", "2018-11-01 06:15:00 64.896576 159.383230 20.602774 62.043797 \n", "2018-11-01 06:30:00 64.913509 159.327647 20.572036 62.008900 \n", "2018-11-01 06:45:00 64.930443 159.272009 20.528678 62.056747 \n", "2018-11-01 07:00:00 64.947380 159.216302 20.579580 61.756916 \n", "2018-11-01 07:15:00 64.964310 159.160540 20.669217 61.671547 \n", "2018-11-01 07:30:00 64.981247 159.104705 20.729556 61.952133 \n", "2018-11-01 07:45:00 64.998184 159.048813 20.761609 62.045223 \n", "2018-11-01 08:00:00 65.015114 158.992853 20.636961 61.945326 \n", "2018-11-01 08:15:00 65.032051 158.092626 20.728004 61.805672 \n", "2018-11-01 08:30:00 65.048981 158.080258 20.687922 61.974689 \n", "2018-11-01 08:45:00 65.065918 158.067888 20.786935 64.020584 \n", "2018-11-01 09:00:00 65.081432 158.055510 20.671409 63.844805 \n", "2018-11-01 09:15:00 65.077782 158.043133 20.785747 63.860462 \n", "2018-11-01 09:30:00 65.065968 158.030753 20.751797 63.746675 \n", "2018-11-01 09:45:00 65.054153 158.018369 20.668634 63.841488 \n", "2018-11-01 10:00:00 65.042343 158.005983 20.517416 63.604210 \n", "2018-11-01 10:15:00 64.989166 157.993593 20.562448 63.693844 \n", "2018-11-01 10:30:00 64.985981 157.981200 20.648903 64.003714 \n", "2018-11-01 10:45:00 64.975281 157.968801 20.691964 64.258675 \n", "2018-11-01 11:00:00 64.964016 157.956401 20.695587 64.458424 \n", "2018-11-01 11:15:00 64.952751 157.943999 20.728269 64.658173 \n", "2018-11-01 11:30:00 64.942787 157.931594 20.726933 64.697697 \n", "2018-11-01 11:45:00 64.940338 157.919185 20.801354 64.613983 \n", "2018-11-01 12:00:00 64.940338 157.910911 20.752579 64.558167 \n", "\n", " Tsink (NDG) MW (NDG) hp_mass process_mass \\\n", "2018-11-01 00:00:00 147.731814 0.000000 52.101451 42.017299 \n", "2018-11-01 00:15:00 148.138964 0.000000 53.242241 42.937291 \n", "2018-11-01 00:30:00 147.585426 0.000000 52.890236 42.653416 \n", "2018-11-01 00:45:00 147.547612 0.000000 52.948310 42.700250 \n", "2018-11-01 01:00:00 148.260335 0.000000 53.006741 42.747372 \n", "2018-11-01 01:15:00 149.186865 0.000000 53.065485 42.794746 \n", "2018-11-01 01:30:00 147.800016 0.000000 52.723117 42.518642 \n", "2018-11-01 01:45:00 147.906886 0.000000 52.734326 42.527682 \n", "2018-11-01 02:00:00 149.603741 3.333301 52.850067 42.621021 \n", "2018-11-01 02:15:00 155.887905 6.455359 49.874963 40.221745 \n", "2018-11-01 02:30:00 158.494424 6.570245 49.455794 39.883705 \n", "2018-11-01 02:45:00 161.172910 6.603197 49.166013 39.650010 \n", "2018-11-01 03:00:00 163.180264 6.558206 48.971802 39.493389 \n", "2018-11-01 03:15:00 161.853063 6.511412 48.742204 39.308229 \n", "2018-11-01 03:30:00 161.482123 6.527815 48.727517 39.296385 \n", "2018-11-01 03:45:00 160.863012 6.542829 48.712852 39.284558 \n", "2018-11-01 04:00:00 159.831705 6.569189 47.552763 38.349002 \n", "2018-11-01 04:15:00 159.299580 6.684093 46.291505 37.331859 \n", "2018-11-01 04:30:00 158.147284 6.904603 46.307465 37.344730 \n", "2018-11-01 04:45:00 156.594870 6.907381 46.323452 37.357622 \n", "2018-11-01 05:00:00 155.221555 6.898230 46.339470 37.370540 \n", "2018-11-01 05:15:00 155.101509 6.918372 46.355515 37.383480 \n", "2018-11-01 05:30:00 155.863584 6.927239 46.371590 37.396444 \n", "2018-11-01 05:45:00 157.708479 6.931688 46.387693 37.409430 \n", "2018-11-01 06:00:00 158.665966 6.872019 46.403829 37.422443 \n", "2018-11-01 06:15:00 159.730828 6.863882 46.419991 37.435476 \n", "2018-11-01 06:30:00 159.104477 6.859706 46.436184 37.448536 \n", "2018-11-01 06:45:00 158.028592 6.856061 46.452406 37.461618 \n", "2018-11-01 07:00:00 157.261143 6.880578 46.468659 37.474725 \n", "2018-11-01 07:15:00 157.340453 6.909111 46.484939 37.487854 \n", "2018-11-01 07:30:00 157.717463 6.924669 46.501252 37.501010 \n", "2018-11-01 07:45:00 157.862820 6.933224 46.517593 37.514188 \n", "2018-11-01 08:00:00 158.423347 6.885049 46.533966 37.527392 \n", "2018-11-01 08:15:00 158.846297 6.901296 46.798944 37.741084 \n", "2018-11-01 08:30:00 160.411953 6.871062 46.802606 37.744037 \n", "2018-11-01 08:45:00 162.239295 6.884044 46.806269 37.746991 \n", "2018-11-01 09:00:00 161.927749 6.849013 46.809934 37.749947 \n", "2018-11-01 09:15:00 161.863576 6.887467 46.813600 37.752903 \n", "2018-11-01 09:30:00 161.902521 6.875663 46.817267 37.755861 \n", "2018-11-01 09:45:00 161.418380 6.853198 46.820936 37.758820 \n", "2018-11-01 10:00:00 158.680932 6.832018 46.824607 37.761780 \n", "2018-11-01 10:15:00 158.580033 6.847950 46.828279 37.764741 \n", "2018-11-01 10:30:00 161.722647 6.842873 46.831952 37.767703 \n", "2018-11-01 10:45:00 164.009601 6.832325 46.835628 37.770668 \n", "2018-11-01 11:00:00 165.108325 6.821379 46.839305 37.773633 \n", "2018-11-01 11:15:00 166.227225 6.819723 46.842983 37.776599 \n", "2018-11-01 11:30:00 166.562932 6.815450 46.846662 37.779566 \n", "2018-11-01 11:45:00 166.836435 6.836759 46.850343 37.782535 \n", "2018-11-01 12:00:00 167.016866 6.818644 46.852798 37.784515 \n", "\n", " COP charge_mass charge_heat \\\n", "2018-11-01 00:00:00 (5.386969459992516) 10.084152 6.0 \n", "2018-11-01 00:15:00 (4.882106135030027) 10.304950 6.0 \n", "2018-11-01 00:30:00 (5.5258665771869335) 10.236820 6.0 \n", "2018-11-01 00:45:00 (5.549424302045392) 10.248060 6.0 \n", "2018-11-01 01:00:00 (5.528286493353138) 10.259369 6.0 \n", "2018-11-01 01:15:00 (5.547058190973266) 10.270739 6.0 \n", "2018-11-01 01:30:00 (4.462765657815752) 10.204474 6.0 \n", "2018-11-01 01:45:00 (3.731041234226957) 10.206644 6.0 \n", "2018-11-01 02:00:00 (5.560223997670469) 10.229045 6.0 \n", "2018-11-01 02:15:00 (5.112607341877656) 9.653219 6.0 \n", "2018-11-01 02:30:00 (4.9928198565013675) 9.572089 6.0 \n", "2018-11-01 02:45:00 (4.953285261562575) 9.516002 6.0 \n", "2018-11-01 03:00:00 (4.926547541990172) 9.478413 6.0 \n", "2018-11-01 03:15:00 (4.894902723368221) 9.433975 6.0 \n", "2018-11-01 03:30:00 (4.89340104404814) 9.431132 6.0 \n", "2018-11-01 03:45:00 (4.891902378691214) 9.428294 6.0 \n", "2018-11-01 04:00:00 (4.735343316767779) 9.203761 6.0 \n", "2018-11-01 04:15:00 (4.572288732349114) 8.959646 6.0 \n", "2018-11-01 04:30:00 (4.566964499091226) 8.962735 6.0 \n", "2018-11-01 04:45:00 (4.574938019623583) 8.965829 6.0 \n", "2018-11-01 05:00:00 (4.569404748614581) 8.968930 6.0 \n", "2018-11-01 05:15:00 (4.575915928004264) 8.972035 6.0 \n", "2018-11-01 05:30:00 (4.575425857588348) 8.975147 6.0 \n", "2018-11-01 05:45:00 (4.572795565301379) 8.978263 6.0 \n", "2018-11-01 06:00:00 (4.579442377135362) 8.981386 6.0 \n", "2018-11-01 06:15:00 (4.576130201489353) 8.984514 6.0 \n", "2018-11-01 06:30:00 (4.579056236814606) 8.987649 6.0 \n", "2018-11-01 06:45:00 (4.581988892854711) 8.990788 6.0 \n", "2018-11-01 07:00:00 (4.584928855375525) 8.993934 6.0 \n", "2018-11-01 07:15:00 (4.587875121041952) 8.997085 6.0 \n", "2018-11-01 07:30:00 (4.590829055058798) 9.000242 6.0 \n", "2018-11-01 07:45:00 (4.593789718661315) 9.003405 6.0 \n", "2018-11-01 08:00:00 (4.5967572478674885) 9.006574 6.0 \n", "2018-11-01 08:15:00 (4.63238728861577) 9.057860 6.0 \n", "2018-11-01 08:30:00 (4.633713185319376) 9.058569 6.0 \n", "2018-11-01 08:45:00 (4.635040406512749) 9.059278 6.0 \n", "2018-11-01 09:00:00 (4.636297768824248) 9.059987 6.0 \n", "2018-11-01 09:15:00 (4.6365998277661316) 9.060697 6.0 \n", "2018-11-01 09:30:00 (4.63649490283444) 9.061407 6.0 \n", "2018-11-01 09:45:00 (4.636390085845393) 9.062117 6.0 \n", "2018-11-01 10:00:00 (4.636285594422067) 9.062827 6.0 \n", "2018-11-01 10:15:00 (4.634119126966711) 9.063538 6.0 \n", "2018-11-01 10:30:00 (4.6344447036181) 9.064249 6.0 \n", "2018-11-01 10:45:00 (4.634396034548163) 9.064960 6.0 \n", "2018-11-01 11:00:00 (4.634319240969633) 9.065672 6.0 \n", "2018-11-01 11:15:00 (4.634242555022484) 9.066384 6.0 \n", "2018-11-01 11:30:00 (4.634230831076715) 9.067096 6.0 \n", "2018-11-01 11:45:00 (4.634593773846146) 9.067808 6.0 \n", "2018-11-01 12:00:00 (4.634917246100044) 9.068283 6.0 \n", "\n", " discharged_heat discharge_mass Tsource_new \\\n", "2018-11-01 00:00:00 5.4 13.566135 345.295417 \n", "2018-11-01 00:15:00 5.4 13.566135 337.283671 \n", "2018-11-01 00:30:00 5.4 13.566135 345.365643 \n", "2018-11-01 00:45:00 5.4 13.566135 345.504908 \n", "2018-11-01 01:00:00 5.4 13.566135 345.187288 \n", "2018-11-01 01:15:00 5.4 13.566135 345.276795 \n", "2018-11-01 01:30:00 5.4 13.566135 332.149982 \n", "2018-11-01 01:45:00 5.4 13.566135 318.360577 \n", "2018-11-01 02:00:00 5.4 13.566135 345.786162 \n", "2018-11-01 02:15:00 5.4 13.566135 346.261835 \n", "2018-11-01 02:30:00 5.4 13.566135 345.583089 \n", "2018-11-01 02:45:00 5.4 13.566135 345.637552 \n", "2018-11-01 03:00:00 5.4 13.566135 345.668797 \n", "2018-11-01 03:15:00 5.4 13.566135 345.702919 \n", "2018-11-01 03:30:00 5.4 13.566135 345.711905 \n", "2018-11-01 03:45:00 5.4 13.566135 345.720889 \n", "2018-11-01 04:00:00 5.4 13.566135 345.897390 \n", "2018-11-01 04:15:00 5.4 13.566135 346.115494 \n", "2018-11-01 04:30:00 5.4 13.566135 346.000974 \n", "2018-11-01 04:45:00 5.4 13.566135 346.088501 \n", "2018-11-01 05:00:00 5.4 13.566135 345.970812 \n", "2018-11-01 05:15:00 5.4 13.566135 346.035951 \n", "2018-11-01 05:30:00 5.4 13.566135 345.994765 \n", "2018-11-01 05:45:00 5.4 13.566135 345.921067 \n", "2018-11-01 06:00:00 5.4 13.566135 345.987962 \n", "2018-11-01 06:15:00 5.4 13.566135 345.903913 \n", "2018-11-01 06:30:00 5.4 13.566135 345.914294 \n", "2018-11-01 06:45:00 5.4 13.566135 345.924674 \n", "2018-11-01 07:00:00 5.4 13.566135 345.935057 \n", "2018-11-01 07:15:00 5.4 13.566135 345.945434 \n", "2018-11-01 07:30:00 5.4 13.566135 345.955816 \n", "2018-11-01 07:45:00 5.4 13.566135 345.966197 \n", "2018-11-01 08:00:00 5.4 13.566135 345.976573 \n", "2018-11-01 08:15:00 5.4 13.566135 345.955872 \n", "2018-11-01 08:30:00 5.4 13.566135 345.967870 \n", "2018-11-01 08:45:00 5.4 13.566135 345.979873 \n", "2018-11-01 09:00:00 5.4 13.566135 345.990831 \n", "2018-11-01 09:15:00 5.4 13.566135 345.987689 \n", "2018-11-01 09:30:00 5.4 13.566135 345.978542 \n", "2018-11-01 09:45:00 5.4 13.566135 345.969395 \n", "2018-11-01 10:00:00 5.4 13.566135 345.960249 \n", "2018-11-01 10:15:00 5.4 13.566135 345.920670 \n", "2018-11-01 10:30:00 5.4 13.566135 345.917868 \n", "2018-11-01 10:45:00 5.4 13.566135 345.909538 \n", "2018-11-01 11:00:00 5.4 13.566135 345.900791 \n", "2018-11-01 11:15:00 5.4 13.566135 345.892045 \n", "2018-11-01 11:30:00 5.4 13.566135 345.884254 \n", "2018-11-01 11:45:00 5.4 13.566135 345.881993 \n", "2018-11-01 12:00:00 5.4 13.566135 345.881687 \n", "\n", " new_COP \n", "2018-11-01 00:00:00 (5.953476543042116) \n", "2018-11-01 00:15:00 (5.516577736203686) \n", "2018-11-01 00:30:00 (6.115036342983261) \n", "2018-11-01 00:45:00 (6.139377727001776) \n", "2018-11-01 01:00:00 (6.122188736008785) \n", "2018-11-01 01:15:00 (6.142136614098925) \n", "2018-11-01 01:30:00 (5.091587841259815) \n", "2018-11-01 01:45:00 (4.353340984575257) \n", "2018-11-01 02:00:00 (6.145207240951149) \n", "2018-11-01 02:15:00 (5.61187501279911) \n", "2018-11-01 02:30:00 (5.487128666091509) \n", "2018-11-01 02:45:00 (5.440142346671779) \n", "2018-11-01 03:00:00 (5.40851620571899) \n", "2018-11-01 03:15:00 (5.371180630920103) \n", "2018-11-01 03:30:00 (5.369263184422139) \n", "2018-11-01 03:45:00 (5.367349502862809) \n", "2018-11-01 04:00:00 (5.1831068924125105) \n", "2018-11-01 04:15:00 (4.991639210075494) \n", "2018-11-01 04:30:00 (4.9875851092226595) \n", "2018-11-01 04:45:00 (4.995162647362516) \n", "2018-11-01 05:00:00 (4.990925576584593) \n", "2018-11-01 05:15:00 (4.997228698670104) \n", "2018-11-01 05:30:00 (4.997406082677272) \n", "2018-11-01 05:45:00 (4.995709283347026) \n", "2018-11-01 06:00:00 (5.002138186898098) \n", "2018-11-01 06:15:00 (4.999845610137759) \n", "2018-11-01 06:30:00 (5.003018981720621) \n", "2018-11-01 06:45:00 (5.006199787644315) \n", "2018-11-01 07:00:00 (5.0093887731351225) \n", "2018-11-01 07:15:00 (5.012584929093059) \n", "2018-11-01 07:30:00 (5.015789631637271) \n", "2018-11-01 07:45:00 (5.019001893273372) \n", "2018-11-01 08:00:00 (5.022221979878481) \n", "2018-11-01 08:15:00 (5.063531390353244) \n", "2018-11-01 08:30:00 (5.064835636292873) \n", "2018-11-01 08:45:00 (5.066141119919892) \n", "2018-11-01 09:00:00 (5.067385329128207) \n", "2018-11-01 09:15:00 (5.067790055930502) \n", "2018-11-01 09:30:00 (5.0678371544740095) \n", "2018-11-01 09:45:00 (5.067884361444745) \n", "2018-11-01 10:00:00 (5.067931876036881) \n", "2018-11-01 10:15:00 (5.066166486255051) \n", "2018-11-01 10:30:00 (5.066592062531787) \n", "2018-11-01 10:45:00 (5.066688630522301) \n", "2018-11-01 11:00:00 (5.066760457771209) \n", "2018-11-01 11:15:00 (5.066832397378636) \n", "2018-11-01 11:30:00 (5.066961504304182) \n", "2018-11-01 11:45:00 (5.067420220709067) \n", "2018-11-01 12:00:00 (5.067797775346913) " ] }, "execution_count": 180, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for i in df.index:\n", " df.loc[i, 'hp_mass'] = hp_mass_flow(hp_capacity, df.loc[i, 'Tsink (VDG)']+273, Tref + 273, Cp)\n", " df.loc[i, 'process_mass'] = process_mass_flow(process_demand_MW, df.loc[i, 'Tsink (VDG)']+273,Tref + 273, Cp)\n", " df.loc[i, 'COP'] = cop_curve(df.loc[i, 'Tsink (VDG)']+273, df.loc[i, 'Tsource (VDG)']+273)\n", " df.loc[i, 'charge_mass'] = charge_mass_flow(df.loc[i, 'hp_mass'], df.loc[i, 'process_mass'])\n", " df.loc[i, 'charge_heat'] = charged_heat(df.loc[i, 'charge_mass'], Cp, df.loc[i, 'Tsink (VDG)']+273, Tref + 273)\n", " df.loc[i, 'discharged_heat'] = discharged_heat(charged_heat(df.loc[i, 'charge_mass'], Cp, df.loc[i, 'Tsink (VDG)']+273, Tref + 273), efficiency)\n", " df.loc[i, 'discharge_mass'] = discharge_mass_flow(df.loc[i, 'discharged_heat'], Cp, Tstorage+273, Tref+273)\n", " df.loc[i, 'Tsource_new'] = Tsource_calculation(Tstorage + 273, df.loc[i, 'discharge_mass'], df.loc[i, 'Tsource (VDG)']+273, df.loc[i, 'process_mass'])\n", " df.loc[i, 'new_COP'] = cop_curve(df.loc[i, 'Tsink (VDG)']+273, df.loc[i, 'Tsource_new'])\n", " \n", "\n", "df\n", "\n", "# charge_mass i de funksiya sekilinde yazmaq lazimdi belke de, cunki charged heat-i hemise 6 hesablayir hansi ki charge_mass den qaynaqlanir." ] }, { "cell_type": "code", "execution_count": 161, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "6.000000181313591" ] }, "execution_count": 161, "metadata": {}, "output_type": "execute_result" } ], "source": [ "charge_mass_flow = 9.653219\n", "Cp = 4190\n", "T_sink = 148.342325 + 273\n", "Tref = 273\n", "\n", "charged_heat(charge_mass_flow, Cp, T_sink, Tref)\n", "\n" ] }, { "cell_type": "code", "execution_count": 154, "metadata": {}, "outputs": [], "source": [ "for i in df.index:\n", " # df.loc[i, 'MWe'] = test_heatpump_and_waterstorage_system(df.loc[i, 'Tsink (VDG)']+273, df.loc[i, 'Tsource (VDG)']+273, df.loc[i, 'MW (VDG)'], 130)[0][0]\n", " df.loc[i, 'new_cl'] = test_heatpump_and_waterstorage_system(df.loc[i, 'Tsink (VDG)']+273, df.loc[i, 'Tsource (VDG)']+273, df.loc[i, 'MW (VDG)'], 30)[1]\n" ] }, { "cell_type": "code", "execution_count": 155, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Tsource (VDG)Tsink (VDG)MW (VDG)Tsource (NDG)Tsink (NDG)MW (NDG)hp_massprocess_massCOPcharge_masscharged_heatdischarged_heatdischarge_massTsource_newnew_COPcharge_heatnew_cl
2018-11-01 00:00:0064.964783142.0031090.00000019.897433147.7318140.00000052.10145142.017299(5.386969459992516)10.0841526.05.413.566135345.295417(5.953476543042116)2.53515647.5
2018-11-01 00:15:0054.578777138.9604930.00000017.950905148.1389640.00000053.24224142.937291(4.882106135030027)10.3049506.05.413.566135337.283671(5.516577736203686)2.59066447.5
2018-11-01 00:30:0065.166672139.8853290.00000033.500757147.5854260.00000052.89023642.653416(5.5258665771869335)10.2368206.05.413.566135345.365643(6.115036342983261)2.57353747.5
2018-11-01 00:45:0065.358078139.7319010.00000042.203876147.5476120.00000052.94831042.700250(5.549424302045392)10.2480606.05.413.566135345.504908(6.139377727001776)2.57636247.5
2018-11-01 01:00:0064.947536139.5778710.00000018.702675148.2603350.00000053.00674142.747372(5.528286493353138)10.2593696.05.413.566135345.187288(6.122188736008785)2.57920547.5
2018-11-01 01:15:0065.073433139.4233570.00000019.903652149.1868650.00000053.06548542.794746(5.547058190973266)10.2707396.05.413.566135345.276795(6.142136614098925)2.58206447.5
2018-11-01 01:30:0047.711559140.3287300.00000019.574467147.8000160.00000052.72311742.518642(4.462765657815752)10.2044746.05.413.566135332.149982(5.091587841259815)2.56540547.5
2018-11-01 01:45:0029.525829140.2989020.00000017.065464147.9068860.00000052.73432642.527682(3.731041234226957)10.2066446.05.413.566135318.360577(4.353340984575257)2.56595047.5
2018-11-01 02:00:0065.715569139.99165010.13958749.339708149.6037413.33330152.85006742.621021(5.560223997670469)10.2290456.05.413.566135345.786162(6.145207240951149)2.57158247.5
2018-11-01 02:15:0065.929909148.34232519.58510461.721718155.8879056.45535949.87496340.221745(5.112607341877656)9.6532196.05.413.566135346.261835(5.61187501279911)2.42681947.5
\n", "
" ], "text/plain": [ " Tsource (VDG) Tsink (VDG) MW (VDG) Tsource (NDG) \\\n", "2018-11-01 00:00:00 64.964783 142.003109 0.000000 19.897433 \n", "2018-11-01 00:15:00 54.578777 138.960493 0.000000 17.950905 \n", "2018-11-01 00:30:00 65.166672 139.885329 0.000000 33.500757 \n", "2018-11-01 00:45:00 65.358078 139.731901 0.000000 42.203876 \n", "2018-11-01 01:00:00 64.947536 139.577871 0.000000 18.702675 \n", "2018-11-01 01:15:00 65.073433 139.423357 0.000000 19.903652 \n", "2018-11-01 01:30:00 47.711559 140.328730 0.000000 19.574467 \n", "2018-11-01 01:45:00 29.525829 140.298902 0.000000 17.065464 \n", "2018-11-01 02:00:00 65.715569 139.991650 10.139587 49.339708 \n", "2018-11-01 02:15:00 65.929909 148.342325 19.585104 61.721718 \n", "\n", " Tsink (NDG) MW (NDG) hp_mass process_mass \\\n", "2018-11-01 00:00:00 147.731814 0.000000 52.101451 42.017299 \n", "2018-11-01 00:15:00 148.138964 0.000000 53.242241 42.937291 \n", "2018-11-01 00:30:00 147.585426 0.000000 52.890236 42.653416 \n", "2018-11-01 00:45:00 147.547612 0.000000 52.948310 42.700250 \n", "2018-11-01 01:00:00 148.260335 0.000000 53.006741 42.747372 \n", "2018-11-01 01:15:00 149.186865 0.000000 53.065485 42.794746 \n", "2018-11-01 01:30:00 147.800016 0.000000 52.723117 42.518642 \n", "2018-11-01 01:45:00 147.906886 0.000000 52.734326 42.527682 \n", "2018-11-01 02:00:00 149.603741 3.333301 52.850067 42.621021 \n", "2018-11-01 02:15:00 155.887905 6.455359 49.874963 40.221745 \n", "\n", " COP charge_mass charged_heat \\\n", "2018-11-01 00:00:00 (5.386969459992516) 10.084152 6.0 \n", "2018-11-01 00:15:00 (4.882106135030027) 10.304950 6.0 \n", "2018-11-01 00:30:00 (5.5258665771869335) 10.236820 6.0 \n", "2018-11-01 00:45:00 (5.549424302045392) 10.248060 6.0 \n", "2018-11-01 01:00:00 (5.528286493353138) 10.259369 6.0 \n", "2018-11-01 01:15:00 (5.547058190973266) 10.270739 6.0 \n", "2018-11-01 01:30:00 (4.462765657815752) 10.204474 6.0 \n", "2018-11-01 01:45:00 (3.731041234226957) 10.206644 6.0 \n", "2018-11-01 02:00:00 (5.560223997670469) 10.229045 6.0 \n", "2018-11-01 02:15:00 (5.112607341877656) 9.653219 6.0 \n", "\n", " discharged_heat discharge_mass Tsource_new \\\n", "2018-11-01 00:00:00 5.4 13.566135 345.295417 \n", "2018-11-01 00:15:00 5.4 13.566135 337.283671 \n", "2018-11-01 00:30:00 5.4 13.566135 345.365643 \n", "2018-11-01 00:45:00 5.4 13.566135 345.504908 \n", "2018-11-01 01:00:00 5.4 13.566135 345.187288 \n", "2018-11-01 01:15:00 5.4 13.566135 345.276795 \n", "2018-11-01 01:30:00 5.4 13.566135 332.149982 \n", "2018-11-01 01:45:00 5.4 13.566135 318.360577 \n", "2018-11-01 02:00:00 5.4 13.566135 345.786162 \n", "2018-11-01 02:15:00 5.4 13.566135 346.261835 \n", "\n", " new_COP charge_heat new_cl \n", "2018-11-01 00:00:00 (5.953476543042116) 2.535156 47.5 \n", "2018-11-01 00:15:00 (5.516577736203686) 2.590664 47.5 \n", "2018-11-01 00:30:00 (6.115036342983261) 2.573537 47.5 \n", "2018-11-01 00:45:00 (6.139377727001776) 2.576362 47.5 \n", "2018-11-01 01:00:00 (6.122188736008785) 2.579205 47.5 \n", "2018-11-01 01:15:00 (6.142136614098925) 2.582064 47.5 \n", "2018-11-01 01:30:00 (5.091587841259815) 2.565405 47.5 \n", "2018-11-01 01:45:00 (4.353340984575257) 2.565950 47.5 \n", "2018-11-01 02:00:00 (6.145207240951149) 2.571582 47.5 \n", "2018-11-01 02:15:00 (5.61187501279911) 2.426819 47.5 " ] }, "execution_count": 155, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[:10]" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "line": { "color": "rgba(255, 153, 51, 1.0)", "dash": "solid", "shape": "linear", "width": 1.3 }, "mode": "lines", "name": "Total demand", "text": "", "type": "scatter", "x": [ "2018-11-01 00:00:00", "2018-11-01 01:00:00", "2018-11-01 02:00:00", "2018-11-01 03:00:00", "2018-11-01 04:00:00", "2018-11-01 05:00:00", "2018-11-01 06:00:00", "2018-11-01 07:00:00", "2018-11-01 08:00:00", "2018-11-01 09:00:00", "2018-11-01 10:00:00", "2018-11-01 11:00:00", "2018-11-01 12:00:00" ], "y": [ 0, 0, 22.136305576196264, 26.466385499756743, 27.03229093604222, 27.54794718804935, 27.440281686151753, 27.583654471580218, 27.577044662052625, 27.581801797517297, 27.436184420796337, 27.550800509445207, 27.57122371725145 ] } ], "layout": { "height": 400, "legend": { "bgcolor": "#F5F6F9", "font": { "color": "#4D5663" } }, "paper_bgcolor": "#F5F6F9", "plot_bgcolor": "#F5F6F9", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "font": { "color": "#4D5663" }, "text": "Smurfit Kappa: Heat demand in MW" }, "width": 800, "xaxis": { "autorange": true, "gridcolor": "#E1E5ED", "range": [ "2018-11-01", "2018-11-01 12:00" ], "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "" }, "type": "date", "zerolinecolor": "#E1E5ED" }, "yaxis": { "autorange": true, "gridcolor": "#E1E5ED", "range": [ -1.5324252484211232, 29.11607972000134 ], "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "MW" }, "type": "linear", "zerolinecolor": "#E1E5ED" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data['Total demand'] = data['MW (VDG)'] + data['MW (NDG)']\n", "data = data[start:end]\n", "fig_demands_nov2018 = data['Total demand'].resample('1H').mean().iplot(\n", " title='Smurfit Kappa: Heat demand in MW', \n", " yTitle='MW', \n", " asFigure=True,\n", " dimensions=(800, 400)\n", ")\n", "fig_demands_nov2018" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "variable=new_cl
index=%{x}
value=%{y}", "legendgroup": "new_cl", "line": { "color": "#636efa", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "new_cl", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ "2018-11-01T00:00:00", "2018-11-01T00:15:00", "2018-11-01T00:30:00", "2018-11-01T00:45:00", "2018-11-01T01:00:00", "2018-11-01T01:15:00", "2018-11-01T01:30:00", "2018-11-01T01:45:00", "2018-11-01T02:00:00", "2018-11-01T02:15:00", "2018-11-01T02:30:00", "2018-11-01T02:45:00", "2018-11-01T03:00:00", "2018-11-01T03:15:00", "2018-11-01T03:30:00", "2018-11-01T03:45:00", "2018-11-01T04:00:00", "2018-11-01T04:15:00", "2018-11-01T04:30:00", "2018-11-01T04:45:00", "2018-11-01T05:00:00", "2018-11-01T05:15:00", "2018-11-01T05:30:00", "2018-11-01T05:45:00", "2018-11-01T06:00:00", "2018-11-01T06:15:00", "2018-11-01T06:30:00", "2018-11-01T06:45:00", "2018-11-01T07:00:00", "2018-11-01T07:15:00", "2018-11-01T07:30:00", "2018-11-01T07:45:00", "2018-11-01T08:00:00", "2018-11-01T08:15:00", "2018-11-01T08:30:00", "2018-11-01T08:45:00", "2018-11-01T09:00:00", "2018-11-01T09:15:00", "2018-11-01T09:30:00", "2018-11-01T09:45:00", "2018-11-01T10:00:00", "2018-11-01T10:15:00", "2018-11-01T10:30:00", "2018-11-01T10:45:00", "2018-11-01T11:00:00", "2018-11-01T11:15:00", "2018-11-01T11:30:00", "2018-11-01T11:45:00", "2018-11-01T12:00:00" ], "xaxis": "x", "y": [ 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5, 47.5 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "variable" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ "2018-11-01", "2018-11-01 12:00" ], "title": { "text": "index" }, "type": "date" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 46.5, 48.5 ], "title": { "text": "value" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAABHsAAAFoCAYAAADHK/d8AAAAAXNSR0IArs4c6QAAIABJREFUeF7t3X+sZGd54PljE0wzo17j9SRYDVmIPVGMvOAJK4vWSJbQxH9s7EGRLLWWTUYRMtiAdyOsxljtlkAjIzUtAy3QzJofxg4TTRDZltiJGDNB8uxaIrPqibUkwFo42sELO8QyTDyEeFkaJ8arU1CX6nLdW/U+z3NvnTr16X+gu+t565zPe/p2369PVV30/PPPP9/5QYAAAQIECBAgQIAAAQIECBAgMAqBi8SeUeyjkyBAgAABAgQIECBAgAABAgQITATEHhcCAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCo449588/273vQw9OtuueO2/pDh26ZPL/z3zybPfAZx6a/P/Xveaq7r7Td3SXXXp44bY+8a0nu7ff9eHuye88vfP7y2ZGdH04FQIECBAgQIAAAQIECBAgQGDDBEYbe6ah56GHz3U33XB0J/Z87gtf6s59+bFdfz6/f33sOXn6U92pE2/rrnzVkQ3bXodLgAABAgQIECBAgAABAgQIbJvAaGNPf/fOq195xWQ/Z+NO/+v9j+O3HZv876Nfebw78/Gzu97dI/Zs2x8J50uAAAECBAgQIECAAAECBDZbYJSxZzbozN/JM31Z1q//2tFJ8JlGoZtvvH7hTs6/jMtLuDb7gnf0BAgQIECAAAECBAgQIEBg7AKjiz193Pnmt5/auXNnPvZMX971/b/+QffHf/K1pe/ZM38B9HHoqe8+fcF7AI39InF+BAgQIECAAAEC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xtW/AfOyl2VNn7t/XP/x77PvATRudWdHgAABAgQIEPiJgNjjSiBAgAABAgTKBVpjT/+JXfMz0zdf/tXX/vLOmzj3d+z8m3977oJP8ern/uNf/KfJy7Xm37C5vzPoY//iX73gU7/KT9iCBAgQIECAAIEBCYg9A9oMh0KAAAECBMYiEIk9/bnPfqx6/5Hrr3vNVd1Xv/6NPT96ffoR7pe97PDkzp/rfvXqnTd5Pn/+2cl7AfUxaPox8GMxdh4ECBAgQIAAgd0ExB7XBgECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIExB7XAAECBAgQIECAAAECBAgQIEBgRAJiz4g206kQIECAAAECBAgQIECAAAECBMQe1wABAgQIECBAgAABAgQIECBAYEQCYs+INtOpECBAgAABAgQIECBAgAABAgTEHtcAAQIECBAgQIAAAQIECBAgQGBEAmLPiDbTqRAgQIAAAQIECBAgQIAAAQIE/n+YzZCZTIejvQAAAABJRU5ErkJggg==", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.express as px\n", "\n", "fig = px.line(df['new_cl'])\n", "fig.show()" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [], "source": [ "df.index = df.index.tz_localize('Europe/Amsterdam')" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "for col in price_data.columns:\n", " df[col] = price_data[col]\n", "\n", "df['nomination_MWh'] = 10\n", "df['heatpump_cons_MWh'] = 9\n", "df['imbalance_MWh'] = df['nomination_MWh'] - df['heatpump_cons_MWh']\n", "df['day-ahead costs'] = df['nomination_MWh'] * df['DAM'] \n", "\n", "is_pos = df['imbalance_MWh'] > 0\n", "df.loc[is_pos, 'imbalance costs'] = -df.loc[is_pos, 'imbalance_MWh'] * df['POS'] \n", "\n", "is_neg = df['imbalance_MWh'] < 0\n", "df.loc[is_neg, 'imbalance costs'] = -df.loc[is_neg, 'imbalance_MWh'] * df['NEG'] \n", "\n", "df['total cost'] = df['day-ahead costs'] + df['imbalance costs']" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Tsource (VDG)Tsink (VDG)MW (VDG)Tsource (NDG)Tsink (NDG)MW (NDG)hp_massprocess_massCOPcharge_mass...new_clDAMPOSNEGnomination_MWhheatpump_cons_MWhimbalance_MWhday-ahead costsimbalance coststotal cost
2018-11-01 00:00:00+01:0064.964783142.0031090.019.897433147.7318140.052.10145142.017299(5.386969459992516)10.084152...47.544.9046.3946.391091449.0-46.39402.61
2018-11-01 00:15:00+01:0054.578777138.9604930.017.950905148.1389640.053.24224142.937291(4.882106135030027)10.304950...47.544.9043.0843.081091449.0-43.08405.92
2018-11-01 00:30:00+01:0065.166672139.8853290.033.500757147.5854260.052.89023642.653416(5.5258665771869335)10.236820...47.544.9043.1343.131091449.0-43.13405.87
2018-11-01 00:45:00+01:0065.358078139.7319010.042.203876147.5476120.052.94831042.700250(5.549424302045392)10.248060...47.544.9046.2946.291091449.0-46.29402.71
2018-11-01 01:00:00+01:0064.947536139.5778710.018.702675148.2603350.053.00674142.747372(5.528286493353138)10.259369...47.542.4632.0332.031091424.6-32.03392.57
\n", "

5 rows × 23 columns

\n", "
" ], "text/plain": [ " Tsource (VDG) Tsink (VDG) MW (VDG) \\\n", "2018-11-01 00:00:00+01:00 64.964783 142.003109 0.0 \n", "2018-11-01 00:15:00+01:00 54.578777 138.960493 0.0 \n", "2018-11-01 00:30:00+01:00 65.166672 139.885329 0.0 \n", "2018-11-01 00:45:00+01:00 65.358078 139.731901 0.0 \n", "2018-11-01 01:00:00+01:00 64.947536 139.577871 0.0 \n", "\n", " Tsource (NDG) Tsink (NDG) MW (NDG) hp_mass \\\n", "2018-11-01 00:00:00+01:00 19.897433 147.731814 0.0 52.101451 \n", "2018-11-01 00:15:00+01:00 17.950905 148.138964 0.0 53.242241 \n", "2018-11-01 00:30:00+01:00 33.500757 147.585426 0.0 52.890236 \n", "2018-11-01 00:45:00+01:00 42.203876 147.547612 0.0 52.948310 \n", "2018-11-01 01:00:00+01:00 18.702675 148.260335 0.0 53.006741 \n", "\n", " process_mass COP charge_mass \\\n", "2018-11-01 00:00:00+01:00 42.017299 (5.386969459992516) 10.084152 \n", "2018-11-01 00:15:00+01:00 42.937291 (4.882106135030027) 10.304950 \n", "2018-11-01 00:30:00+01:00 42.653416 (5.5258665771869335) 10.236820 \n", "2018-11-01 00:45:00+01:00 42.700250 (5.549424302045392) 10.248060 \n", "2018-11-01 01:00:00+01:00 42.747372 (5.528286493353138) 10.259369 \n", "\n", " ... new_cl DAM POS NEG nomination_MWh \\\n", "2018-11-01 00:00:00+01:00 ... 47.5 44.90 46.39 46.39 10 \n", "2018-11-01 00:15:00+01:00 ... 47.5 44.90 43.08 43.08 10 \n", "2018-11-01 00:30:00+01:00 ... 47.5 44.90 43.13 43.13 10 \n", "2018-11-01 00:45:00+01:00 ... 47.5 44.90 46.29 46.29 10 \n", "2018-11-01 01:00:00+01:00 ... 47.5 42.46 32.03 32.03 10 \n", "\n", " heatpump_cons_MWh imbalance_MWh day-ahead costs \\\n", "2018-11-01 00:00:00+01:00 9 1 449.0 \n", "2018-11-01 00:15:00+01:00 9 1 449.0 \n", "2018-11-01 00:30:00+01:00 9 1 449.0 \n", "2018-11-01 00:45:00+01:00 9 1 449.0 \n", "2018-11-01 01:00:00+01:00 9 1 424.6 \n", "\n", " imbalance costs total cost \n", "2018-11-01 00:00:00+01:00 -46.39 402.61 \n", "2018-11-01 00:15:00+01:00 -43.08 405.92 \n", "2018-11-01 00:30:00+01:00 -43.13 405.87 \n", "2018-11-01 00:45:00+01:00 -46.29 402.71 \n", "2018-11-01 01:00:00+01:00 -32.03 392.57 \n", "\n", "[5 rows x 23 columns]" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "interpreter": { "hash": "dd1accba5c44bbc1a722925963d63420d7a225a16ee8ad40deae87a5c5fb7f29" }, "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.9.12" } }, "nbformat": 4, "nbformat_minor": 4 }