{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Calliope Urban Scale Example Model " ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import calliope\n", "\n", "# We increase logging verbosity\n", "calliope.set_log_verbosity('INFO', include_solver_output=False)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[2022-02-07 16:53:31] INFO Model: initialising\n", "[2022-02-07 16:53:31] INFO Model: preprocessing stage 1 (model_run)\n", "[2022-02-07 16:53:32] INFO Model: preprocessing stage 2 (model_data)\n", "[2022-02-07 16:53:32] INFO Model: preprocessing complete\n" ] } ], "source": [ "model = calliope.examples.urban_scale()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
<xarray.Dataset>\n", "Dimensions: (loc_techs_supply_plus: 3, loc_techs: 26, loc_techs_finite_resource: 9, timesteps: 48, loc_techs_area: 3, loc_techs_export: 4, costs: 1, loc_techs_investment_cost: 20, loc_techs_om_cost: 9, loc_techs_transmission: 10, locs: 4, coordinates: 2, techs: 9, carrier_tiers: 3, loc_tech_carriers_conversion_plus: 3, loc_carriers: 10, loc_techs_non_conversion: 23, loc_techs_conversion: 2, loc_techs_conversion_plus: 1, carriers: 3)\n", "Coordinates: (12/20)\n", " * carrier_tiers (carrier_tiers) <U5 'in' 'out_2' 'out'\n", " * carriers (carriers) <U11 'electricity' ... '...\n", " * coordinates (coordinates) object 'x' 'y'\n", " * costs (costs) object 'monetary'\n", " * loc_carriers (loc_carriers) object 'X3::gas' ......\n", " * loc_tech_carriers_conversion_plus (loc_tech_carriers_conversion_plus) object ...\n", " ... ...\n", " * loc_techs_om_cost (loc_techs_om_cost) object 'X1::sup...\n", " * loc_techs_supply_plus (loc_techs_supply_plus) object 'X1:...\n", " * loc_techs_transmission (loc_techs_transmission) object 'X1...\n", " * locs (locs) object 'X1' 'N1' 'X3' 'X2'\n", " * techs (techs) object 'demand_heat' ... 'h...\n", " * timesteps (timesteps) datetime64[ns] 2005-07-...\n", "Data variables: (12/38)\n", " parasitic_eff (loc_techs_supply_plus) float64 0.8...\n", " energy_cap_max (loc_techs) float64 250.0 ... 2e+03\n", " resource_eff (loc_techs_finite_resource) float64 ...\n", " energy_con (loc_techs) float64 nan 1.0 ... nan\n", " force_resource (loc_techs_finite_resource) bool Tr...\n", " resource (loc_techs_finite_resource, timesteps) float64 ...\n", " ... ...\n", " lookup_loc_techs_conversion_plus (carrier_tiers, loc_techs_conversion_plus) object ...\n", " lookup_loc_techs_export (loc_techs_export) object 'X1::pv::...\n", " lookup_loc_techs_area (locs) object 'X1::pv' '' ... 'X2::pv'\n", " timestep_resolution (timesteps) float64 1.0 1.0 ... 1.0\n", " timestep_weights (timesteps) float64 1.0 1.0 ... 1.0\n", " max_demand_timesteps (carriers) datetime64[ns] 2005-07-0...\n", "Attributes:\n", " calliope_version: 0.6.8-dev\n", " applied_overrides: \n", " scenario: None\n", " defaults: available_area: null\\ncarrier_ratios: null\\ncharge_r...\n", " allow_operate_mode: 1
timesteps | \n", "2005-07-01 00:00:00 | \n", "2005-07-01 01:00:00 | \n", "2005-07-01 02:00:00 | \n", "2005-07-01 03:00:00 | \n", "2005-07-01 04:00:00 | \n", "2005-07-01 05:00:00 | \n", "2005-07-01 06:00:00 | \n", "2005-07-01 07:00:00 | \n", "2005-07-01 08:00:00 | \n", "2005-07-01 09:00:00 | \n", "... | \n", "2005-07-02 14:00:00 | \n", "2005-07-02 15:00:00 | \n", "2005-07-02 16:00:00 | \n", "2005-07-02 17:00:00 | \n", "2005-07-02 18:00:00 | \n", "2005-07-02 19:00:00 | \n", "2005-07-02 20:00:00 | \n", "2005-07-02 21:00:00 | \n", "2005-07-02 22:00:00 | \n", "2005-07-02 23:00:00 | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
loc_techs_finite_resource | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
X2::demand_electricity | \n", "-94.545801 | \n", "-76.960619 | \n", "-77.475750 | \n", "-77.475750 | \n", "-82.731496 | \n", "-148.533479 | \n", "-189.570817 | \n", "-238.734711 | \n", "-244.284493 | \n", "-231.440181 | \n", "... | \n", "-199.895515 | \n", "-221.324570 | \n", "-188.344877 | \n", "-249.962248 | \n", "-248.894106 | \n", "-269.344347 | \n", "-245.412357 | \n", "-196.280957 | \n", "-135.289242 | \n", "-103.741556 | \n", "
X3::demand_heat | \n", "-0.015600 | \n", "-0.860322 | \n", "-0.015600 | \n", "-0.015600 | \n", "-0.860407 | \n", "-7.263327 | \n", "-9.398229 | \n", "-5.792842 | \n", "-3.322585 | \n", "-1.927264 | \n", "... | \n", "-0.015600 | \n", "-0.015600 | \n", "-0.860335 | \n", "-0.015600 | \n", "-0.015600 | \n", "-0.860291 | \n", "-0.015600 | \n", "-0.860300 | \n", "-0.015600 | \n", "-0.860290 | \n", "
X1::pv | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.007857 | \n", "0.029143 | \n", "0.055571 | \n", "0.078429 | \n", "0.096000 | \n", "... | \n", "0.057857 | \n", "0.041143 | \n", "0.027000 | \n", "0.014714 | \n", "0.006143 | \n", "0.000857 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "
X1::demand_electricity | \n", "-0.455564 | \n", "-0.405798 | \n", "-0.393291 | \n", "-0.393992 | \n", "-0.440085 | \n", "-0.567821 | \n", "-0.732535 | \n", "-0.713803 | \n", "-0.689992 | \n", "-0.707650 | \n", "... | \n", "-0.683060 | \n", "-0.780370 | \n", "-0.940634 | \n", "-0.978388 | \n", "-1.022063 | \n", "-1.169519 | \n", "-1.307938 | \n", "-1.099334 | \n", "-0.826212 | \n", "-0.559499 | \n", "
X3::demand_electricity | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-30.212425 | \n", "-35.233307 | \n", "-61.395269 | \n", "-63.642962 | \n", "-62.679665 | \n", "... | \n", "-18.762912 | \n", "-18.954418 | \n", "-19.145924 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "-18.762912 | \n", "
X2::pv | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.007857 | \n", "0.029143 | \n", "0.055571 | \n", "0.078429 | \n", "0.096000 | \n", "... | \n", "0.057857 | \n", "0.041143 | \n", "0.027000 | \n", "0.014714 | \n", "0.006143 | \n", "0.000857 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "
X3::pv | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.007857 | \n", "0.029143 | \n", "0.055571 | \n", "0.078429 | \n", "0.096000 | \n", "... | \n", "0.057857 | \n", "0.041143 | \n", "0.027000 | \n", "0.014714 | \n", "0.006143 | \n", "0.000857 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "
X1::demand_heat | \n", "-0.215376 | \n", "-0.200838 | \n", "-0.207306 | \n", "-0.318949 | \n", "-0.650734 | \n", "-1.039384 | \n", "-1.181567 | \n", "-1.285403 | \n", "-1.209117 | \n", "-1.219912 | \n", "... | \n", "-0.491097 | \n", "-0.540068 | \n", "-0.641510 | \n", "-0.741098 | \n", "-0.761822 | \n", "-0.707075 | \n", "-0.634092 | \n", "-0.523707 | \n", "-0.400787 | \n", "-0.272040 | \n", "
X2::demand_heat | \n", "-64.731991 | \n", "-70.453439 | \n", "-77.192976 | \n", "-104.556436 | \n", "-123.228444 | \n", "-167.668819 | \n", "-264.887092 | \n", "-365.137675 | \n", "-258.172589 | \n", "-190.585578 | \n", "... | \n", "-105.261025 | \n", "-84.614417 | \n", "-104.549875 | \n", "-122.646451 | \n", "-166.442507 | \n", "-161.099889 | \n", "-166.931078 | \n", "-240.034833 | \n", "-143.576460 | \n", "-86.082014 | \n", "
9 rows × 48 columns
\n", "timesteps | \n", "2005-07-01 00:00:00 | \n", "2005-07-01 01:00:00 | \n", "2005-07-01 02:00:00 | \n", "2005-07-01 03:00:00 | \n", "2005-07-01 04:00:00 | \n", "2005-07-01 05:00:00 | \n", "2005-07-01 06:00:00 | \n", "2005-07-01 07:00:00 | \n", "2005-07-01 08:00:00 | \n", "2005-07-01 09:00:00 | \n", "... | \n", "2005-07-02 14:00:00 | \n", "2005-07-02 15:00:00 | \n", "2005-07-02 16:00:00 | \n", "2005-07-02 17:00:00 | \n", "2005-07-02 18:00:00 | \n", "2005-07-02 19:00:00 | \n", "2005-07-02 20:00:00 | \n", "2005-07-02 21:00:00 | \n", "2005-07-02 22:00:00 | \n", "2005-07-02 23:00:00 | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
techs | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
demand_electricity | \n", "-113.764277 | \n", "-96.129329 | \n", "-96.631954 | \n", "-96.632654 | \n", "-101.934493 | \n", "-179.313724 | \n", "-225.536658 | \n", "-300.843784 | \n", "-308.617446 | \n", "-294.827496 | \n", "... | \n", "-219.341487 | \n", "-241.059359 | \n", "-208.431436 | \n", "-269.703548 | \n", "-268.679081 | \n", "-289.276777 | \n", "-265.483207 | \n", "-216.143204 | \n", "-154.878366 | \n", "-123.063967 | \n", "
demand_heat | \n", "-64.962967 | \n", "-71.514599 | \n", "-77.415882 | \n", "-104.890985 | \n", "-124.739585 | \n", "-175.971530 | \n", "-275.466888 | \n", "-372.215920 | \n", "-262.704292 | \n", "-193.732754 | \n", "... | \n", "-105.767723 | \n", "-85.170084 | \n", "-106.051720 | \n", "-123.403148 | \n", "-167.219928 | \n", "-162.667255 | \n", "-167.580770 | \n", "-241.418840 | \n", "-143.992847 | \n", "-87.214344 | \n", "
pv | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.023571 | \n", "0.087429 | \n", "0.166714 | \n", "0.235286 | \n", "0.288000 | \n", "... | \n", "0.173571 | \n", "0.123429 | \n", "0.081000 | \n", "0.044143 | \n", "0.018429 | \n", "0.002571 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.000000 | \n", "
3 rows × 48 columns
\n", "<xarray.Dataset>\n", "Dimensions: (loc_techs: 26, loc_tech_carriers_prod: 21, timesteps: 48, loc_tech_carriers_con: 19, costs: 1, loc_techs_cost: 20, loc_techs_area: 3, loc_techs_supply_plus: 3, loc_tech_carriers_export: 4, loc_techs_om_cost: 9, loc_techs_investment_cost: 20, loc_carriers: 10, loc_carriers_system_balance_constraint: 10, loc_techs_balance_demand_constraint: 6, loc_techs_cost_investment_constraint: 20, carriers: 3, techs: 16)\n", "Coordinates: (12/17)\n", " * loc_carriers (loc_carriers) object 'N1::heat' ...\n", " * loc_carriers_system_balance_constraint (loc_carriers_system_balance_constraint) object ...\n", " * loc_tech_carriers_con (loc_tech_carriers_con) object 'N...\n", " * loc_tech_carriers_export (loc_tech_carriers_export) object ...\n", " * loc_tech_carriers_prod (loc_tech_carriers_prod) object '...\n", " * loc_techs_balance_demand_constraint (loc_techs_balance_demand_constraint) object ...\n", " ... ...\n", " * techs (techs) object 'boiler' ... 'supp...\n", " * carriers (carriers) <U11 'electricity' ......\n", " * costs (costs) object 'monetary'\n", " * loc_techs (loc_techs) object 'X1::pv' ... '...\n", " * loc_techs_area (loc_techs_area) object 'X1::pv' ...\n", " * timesteps (timesteps) datetime64[ns] 2005-0...\n", "Data variables: (12/19)\n", " energy_cap (loc_techs) float64 0.0 ... 0.01835\n", " carrier_prod (loc_tech_carriers_prod, timesteps) float64 ...\n", " carrier_con (loc_tech_carriers_con, timesteps) float64 ...\n", " cost (costs, loc_techs_cost) float64 0...\n", " resource_area (loc_techs_area) float64 0.0 ... ...\n", " resource_con (loc_techs_supply_plus, timesteps) float64 ...\n", " ... ...\n", " cost_investment_rhs (costs, loc_techs_cost_investment_constraint) float64 ...\n", " cost_var_rhs (costs, loc_techs_om_cost, timesteps) float64 ...\n", " capacity_factor (timesteps, loc_tech_carriers_prod) float64 ...\n", " systemwide_capacity_factor (carriers, techs) float64 0.0 ......\n", " systemwide_levelised_cost (carriers, costs, techs) float64 ...\n", " total_levelised_cost (carriers, costs) float64 0.08069...\n", "Attributes:\n", " termination_condition: optimal\n", " objective_function_value: 842.3529094335402\n", " solution_time: 0.997607\n", " time_finished: 2022-02-07 16:53:33\n", " calliope_version: 0.6.8-dev\n", " applied_overrides: \n", " scenario: None\n", " defaults: available_area: null\\ncarrier_ratios: null\\nch...\n", " allow_operate_mode: 1\n", " model_config: calliope_version: 0.6.8\\nname: Urban-scale exa...\n", " run_config: backend: pyomo\\nbigM: 1000000.0\\ncyclic_storag...
techs | \n", "boiler | \n", "chp | \n", "heat_pipes:N1 | \n", "heat_pipes:X1 | \n", "heat_pipes:X2 | \n", "heat_pipes:X3 | \n", "power_lines:X1 | \n", "power_lines:X2 | \n", "power_lines:X3 | \n", "pv | \n", "supply_gas | \n", "supply_grid_power | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|
timesteps | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
2005-07-01 00:00:00 | \n", "0.000000 | \n", "92.861360 | \n", "170.055601 | \n", "183.475520 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "
2005-07-01 01:00:00 | \n", "4.100046 | \n", "78.466297 | \n", "67.213715 | \n", "72.541074 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "
2005-07-01 02:00:00 | \n", "9.626102 | \n", "78.876806 | \n", "67.582474 | \n", "72.915564 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "
2005-07-01 03:00:00 | \n", "37.084989 | \n", "78.877367 | \n", "67.487047 | \n", "72.812606 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "
2005-07-01 04:00:00 | \n", "53.191064 | \n", "83.204646 | \n", "70.897788 | \n", "76.515868 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "
techs | \n", "boiler | \n", "chp | \n", "heat_pipes:N1 | \n", "heat_pipes:X1 | \n", "heat_pipes:X2 | \n", "heat_pipes:X3 | \n", "power_lines:X1 | \n", "power_lines:X2 | \n", "power_lines:X3 | \n", "pv | \n", "supply_gas | \n", "supply_grid_power | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|
locs | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
N1 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "0.16246 | \n", "0.051679 | \n", "0.003761 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
X1 | \n", "NaN | \n", "154.9988 | \n", "0.162460 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "0.008286 | \n", "0.000691 | \n", "0.000000 | \n", "569.159880 | \n", "14.73589 | \n", "
X2 | \n", "11.713117 | \n", "NaN | \n", "0.051679 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "0.008286 | \n", "NaN | \n", "NaN | \n", "30.598098 | \n", "41.987552 | \n", "NaN | \n", "
X3 | \n", "0.002496 | \n", "NaN | \n", "0.003761 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "0.000691 | \n", "NaN | \n", "NaN | \n", "18.692301 | \n", "0.011023 | \n", "NaN | \n", "