Commit Graph

211 Commits

Author SHA1 Message Date
Heronimonimo
1c192253bf Remove capital costs for existing conventional capacity
All the existing conventional capacity has sunk capital costs. Therefore these should be put to 0.
2019-02-22 15:03:53 +01:00
Jonas Hoersch
8b819569bc cluster_network: Fix busmap_for_n_clusters for single country (fixes #18)
Also update debugging helper.
2019-02-20 21:10:45 +01:00
Heronimonimo
9c78d6591d Add CCGT to the weight factor for conventional carriers 2019-02-20 19:18:06 +01:00
Jonas Hoersch
9279c7f027 solve_network: Remove hard-coded solver fallback in busmap_for_n_clusters
Necessary for when `clustering_for_n_clusters` is used from the simplify_network
rule.

Fixes #12
2019-02-20 19:08:25 +01:00
Heronimonimo
6f1b387804 Add CCGT to plot 2019-02-20 17:31:14 +01:00
Jonas Hörsch
2e02c8366e
fixup! add_electricity: add CCGT to extendable generators 2019-02-18 00:43:09 +01:00
Fabian Neumann
02e1a12667 add_electricity: add CCGT to extendable generators 2019-02-16 12:52:18 +01:00
Jonas Hoersch
33823c9012 build_country_flh: Fix aggregated flh reports for wind 2019-02-15 20:59:42 +01:00
Jonas Hoersch
6bb9cd1025 add_electricity: Refactor extendable generators to provide a OCGT-ext technology
Partially adresses #7.
2019-02-15 18:28:41 +01:00
Jonas Hoersch
50abd6c0c9 build_country_flh: Add rule for per-country full load hours tables and plots 2019-02-15 18:27:04 +01:00
Jonas Hoersch
f49682c61d build_renewable_profiles: Extend calculate_potential to optionally save the exclusion map 2019-02-15 11:11:41 +01:00
Jonas Hoersch
c858ed0b0d build_renewable_profiles: Pass all globals with init_globals 2019-02-15 11:11:31 +01:00
Jonas Hoersch
7f3f096ba6 Fix model for country selections without DC links (fixes #5) 2019-02-13 19:03:57 +01:00
Jonas Hoersch
1b6fe5be80 base_network: Fix _add_links_from_tyndp if there are none left (fixes #5) 2019-02-12 16:41:07 +01:00
Jonas Hoersch
15e986a0ec make_summary: Update summary creation for new line volume/cost constraints
Fixes #4.
2019-02-10 16:08:39 +01:00
Jonas Hoersch
448e8c238e cluster_network: Fall back to using ipopt in distribute_clusters
if the configured solver does not support quadratic objectives.
2019-02-10 15:33:53 +01:00
Jonas Hoersch
6284cf7e8b add_electicity: Report countries missing from the hydro inflow time-series 2019-02-07 17:41:01 +01:00
Jonas Hoersch
3e11d569d0 build_shapes: Fix pycountry API change (fixes #1)
See also
72b1927b3c
2019-02-07 13:03:18 +01:00
Jonas Hoersch
d57df6b0c8 Merge branch 'glaes' 2019-02-06 12:06:32 +01:00
Jonas Hoersch
8c9e650feb fixup! trace_solve_network: Save intermediate line capacities 2019-02-06 11:48:59 +01:00
Jonas Hoersch
2cf8f1374f add_electricity: Fix for pandas 0.24 breaking change 2019-02-05 23:02:59 +01:00
Jonas Hoersch
5c3fcb642c add_electricity: Add heuristic for estimating renewable capacities from country totals
Split per-country capacity totals reported in entsoe SO&AF 2016 in proportion to
yearly generation potential at each bus, i.e. p_nom_max * mean(p_max_pu)
2019-02-05 23:00:35 +01:00
Jonas Hoersch
b9f1f5a8b5 Fix for pycountry 18.12.8
72b1927b3c (chg-HISTORY.txt)
2019-02-05 17:46:51 +01:00
Jonas Hoersch
5dfeb6efbc trace_solve_network: Save intermediate line capacities 2019-02-04 18:32:56 +01:00
Jonas Hoersch
80d86487de plot_network: Extend plot title with line volume/cost 2019-02-04 18:31:15 +01:00
Jonas Hoersch
8d3127ff1a fixup! Include an optional total line cost constraint 2019-02-03 16:06:35 +01:00
Jonas Hoersch
9715c9d42b fixup! solve_network: Extract line limit duals and radically refactor 2019-02-03 15:44:40 +01:00
Jonas Hoersch
60dda9f909 plot_p_nom_max: Add plots for the cumulative renewable expansion potential
The wildcards `clusters` and `technology` accept lists of values separated by ','
2019-02-03 14:22:12 +01:00
Jonas Hoersch
a069bef380 solve_network: Extract line limit duals and radically refactor
remove all persistent solver features, rebuild the model every time
2019-02-03 14:18:05 +01:00
Jonas Hoersch
dde0d91168 Include an optional total line cost constraint
elec_s_37_lc1.25_... adds a constraint on the total line cost for an extension
by a 25%, compare with elec_s_37_lv1.25_... for the line volume limit.

`ll` is an acronym for line limit.
2019-02-03 13:50:05 +01:00
Jonas Hoersch
d49bea00a8 Remove the heuristic 80% availability factor 2019-02-01 18:34:11 +01:00
Jonas Hoersch
8ee596ae2c Make the additive potential aggregation the default and call it simple 2019-02-01 18:33:21 +01:00
Jonas Hoersch
aa5525ab41 cluster_network: Remove old distribute_clusters code paths 2019-01-22 11:48:00 +01:00
Jonas Hoersch
7ba6fefd67 simplify_network: Refactor clustering for readability 2019-01-22 11:46:45 +01:00
Jonas Hoersch
39cb17a7a1 cluster_network: Fix distribute_clusters_optim for high numbers of clusters
distribute_clusters_optim should never try to assign more clusters to
a (country, sub_network) than there are substations there.
2019-01-22 11:25:01 +01:00
Jonas Hoersch
6feebedc0d cluster_network, simplify_network: Improve debugging facilities for clustering 2019-01-22 11:24:07 +01:00
Jonas Hoersch
4247051c3c simplify_network: Include a special case if renewable carriers are skipped 2019-01-22 10:14:05 +01:00
Jonas Hoersch
bfb92a5d29 base_network: Remove unconnected components after removing under_construction branches 2019-01-22 10:11:43 +01:00
Jonas Hoersch
4cba751331 base_network: Warn about TYNDP links which fall outside of the area of interest
Happens when countries is only a subset.
2019-01-22 10:10:00 +01:00
Jonas Hoersch
47bc13cf51 add_electricity: OCGT plants don't need to be extendable 2019-01-21 18:45:19 +01:00
Jonas Hoersch
f70e0304e5 Fix plotting settings 2019-01-16 12:08:46 +01:00
Jonas Hoersch
a340e4f1a3 base_network: Remove tyndp links outside of desired countries 2019-01-02 18:13:30 +01:00
Jonas Hoersch
0096b184a0 fixup! cluster_network: Implement 'heuristic' potential clustering 2019-01-02 17:54:07 +01:00
Jonas Hoersch
495b6f8015 cluster_network: Implement 'heuristic' potential clustering 2018-12-31 15:10:35 +01:00
Jonas Hoersch
9c6c89dfad build_*_profile(s): Make caps on p_nom_max and inflow optional 2018-12-31 14:10:55 +01:00
Jonas Hoersch
77095c3b94 simplify_network: Improve displacement log message 2018-12-21 16:16:54 +01:00
Jonas Hoersch
21b428d841 build_*_profile(s): Move clip_p_min_pu into profile generation 2018-12-21 13:44:59 +01:00
Jonas Hoersch
6b29f34d51 build_shapes: Ensure name of index for offshore_shapes is 'name' 2018-12-19 15:42:03 +01:00
Jonas Hoersch
f60c1fdb41 Rename index column in geojson imports 2018-12-19 15:37:18 +01:00
Jonas Hoersch
aa24686517 build_shapes: Update save_to_geojson to new fiona version 2018-12-19 15:25:39 +01:00
Jonas Hoersch
8f171396cb build_natura_raster: Fix snakemake specifics 2018-12-19 15:25:03 +01:00
Jonas Hoersch
db073d8daa Split offshore wind turbines into AC and DC connections 2018-12-19 10:34:25 +01:00
Jonas Hoersch
bddea86b1e build_renewable_profiles: Move progressbar around atlite calls into atlite 2018-12-19 10:28:35 +01:00
Jonas Hoersch
350af4a273 build_renewable_profiles: Compute potentials in EPSG:3035 to ensure a metric of meters 2018-12-19 10:27:46 +01:00
Jonas Hoersch
135e4ace47 cluster_network: Disable stricter schema enforcement by geopandas 2018-12-19 10:14:41 +01:00
Jonas Hoersch
448ba651a0 build_renewable_profiles: Compute underwater_fraction 2018-12-11 17:30:25 +01:00
Jonas Hoersch
4dc8e8fc35 build_renewable_profiles: Fix incomplete renaming 2018-12-11 17:29:54 +01:00
Jonas Hoersch
eeba4a81d4 Remove build_renewable_potentials
Superseded by GLAES in build_renewable_profiles
2018-12-11 16:46:34 +01:00
Jonas Hoersch
a035bee9c6 Merge branch 'windcosts' 2018-12-11 16:09:24 +01:00
Jonas Hoersch
5ed5974e86 Disable stricter schema enforcement of GeoPandas 2018-12-11 15:39:46 +01:00
Jonas Hoersch
802261eedd Use GLAES library by FZJ-IEK-3 for computing GIS potentials 2018-12-11 15:39:42 +01:00
Jonas Hoersch
04a291b91b Move from countrycodes to maintained pycountry 2018-12-10 18:34:22 +01:00
Arnaud Leroy
8a7ffbdb4e add a variable to select the clustering algorithm in busmap_for_country. Default k-manes 2018-11-26 16:10:32 +01:00
Jonas Hörsch
1fa62b9aab simplify_network: Allow to remove stubs across country borders 2018-11-12 22:00:54 +01:00
Jonas Hörsch
761b1b998f make_summary: Add summary about capacities and allow single country summaries 2018-11-12 22:00:50 +01:00
Jonas Hörsch
c5e8c9ad25 add_electricity: Extend the assignment of max_hours 2018-11-12 22:00:46 +01:00
Jonas Hörsch
e7d007bc8f build_powerplants: Assign power plants only within the right country
Also update the delivered powerplants snapshots.
2018-11-12 21:40:05 +01:00
Jonas Hörsch
9df54c9530 simplify_network: Refactor compute_distance 2018-10-27 16:42:58 +02:00
Jonas Hörsch
91b83930dd base_network: Important small fixes
- Allow connecting at substations
- Fix offshore shape selection
2018-10-27 03:46:48 +02:00
Jonas Hörsch
cc7d356db0 simplify_network: Set up logger correctly 2018-10-27 03:45:28 +02:00
Jonas Hörsch
9c64034950 simplify_network: Add simplification cost updates
Depends on pypsa commit https://github.com/PyPSA/PyPSA/commit/9ec406252add1b6
2018-10-27 03:41:38 +02:00
Jonas Hörsch
f87d7d9f94 base_network: Important small fixes
- Allow connecting at substations
- Fix offshore shape selection
2018-10-27 03:34:40 +02:00
Jonas Hörsch
b30f4a2fff Update technology costs for wind
Calculate grid extension costs for offshore based on weighted average distance
from weather cell to substation.
2018-10-26 21:32:04 +02:00
Jonas Hörsch
c0fe95a31d base_network: Improve assignment of countries 2018-10-26 16:08:50 +02:00
Jonas Hörsch
98b3ef5e20 Add _helpers, used by plot_network 2018-10-26 10:33:58 +02:00
Jonas Hörsch
ddbc02ba35 prepare_network: Fix set_line_s_max_pu
- Wrong denominator in linear s_max_pu
- DC lines do not have a security margin
2018-10-26 10:31:44 +02:00
Jonas Hörsch
a012344ca7 prepare_network: Pass Nyears to set_line_volume_limit
Sets the transmission capital costs in the optimum line_volume case properly for
multi-year optimizations.
2018-10-26 10:29:44 +02:00
Jonas Hörsch
5b201de7d4 {make,plot}_summary: Add rules to flexibly create summaries and plot them 2018-10-26 10:28:54 +02:00
Jonas Hörsch
0070b1c87c plot_network: Add functionality to produce a network plot of each solution 2018-10-25 16:43:24 +02:00
Tom Brown
540985164f Plot summary; take account of snapshot weightings correctly 2018-10-23 17:02:03 +02:00
Tom Brown
f3a12e7aee Add CSV summaries 2018-10-23 17:00:06 +02:00
Jonas Hörsch
71512c15a5 Copy over make_summary.py from sector branch co2 2018-10-23 16:59:41 +02:00
Jonas Hörsch
1df85468aa add_electricity, prepare_network: Enable lv='inf' and remove converter link costs 2018-10-22 23:23:51 +02:00
Jonas Hörsch
0b60159575 solve_network: Fix numeric instabilities
Measure load shedding in kW and remove the eps_storage_constraint
2018-10-22 23:20:51 +02:00
Jonas Hörsch
c1ae9b16d5 build_shapes: Update debugging helper 2018-10-22 23:20:18 +02:00
Jonas Hörsch
f9012c41e1 add_electricity: Allow extension of OCGT plants 2018-10-09 15:44:46 +02:00
Jonas Hörsch
6f3b44e5e4 fixup! base_network: Don't update the capacity of TYNDP links from links_p_nom 2018-10-09 15:44:20 +02:00
Jonas Hörsch
b74c19e6ba base_network: Don't update the capacity of TYNDP links from links_p_nom 2018-09-27 18:29:44 +02:00
Jonas Hörsch
07e36a4854 base_network: Some TYNDP links replace existing links and buses 2018-09-27 18:28:52 +02:00
Jonas Hörsch
37d817c70f base_network: Fix bug in _closest_links and fix SACOI capacity 2018-09-27 18:27:33 +02:00
Jonas Hörsch
72b484dd6b base_network: Only buses with at least one finished connection may have load 2018-09-27 18:25:41 +02:00
Jonas Hörsch
6635732cb7 Fix HDFStore writing modes 2018-09-27 12:18:47 +02:00
Jonas Hörsch
52e214a3b2 base_network: Add links from TYNDP
Manually collected from https://tyndp.entsoe.eu/. Deactivated by default.
2018-09-24 20:19:47 +02:00
Jonas Hörsch
9c629560db cluster_network: Adjust n_init, maxiter and tol parameters of KMeans
By changing the parameters by several orders of magnitude, we ensure to recover
consistently the same results.
2018-09-24 18:43:24 +02:00
Jonas Hörsch
1678f319d8 prepare_network: Allow lv=inf to designate a fully cost-optimal expansion 2018-09-24 18:43:24 +02:00
Jonas Hörsch
2c06fef22b prepare_network: Scale security margin from 0.5 at 37 clusters to 0.7 at 200 clusters 2018-09-24 18:43:24 +02:00
Jonas Hörsch
2372bb156d Prepare Snakefile and scripts for other solvers 2018-09-14 11:22:13 +02:00
Jonas Hörsch
4d99780f6d simplify_network: Carry underwater_fraction through simplification steps 2018-09-03 23:46:57 +02:00
Jonas Hörsch
265ef27394 fixup! base_network, config: Links do not follow the n-1 constraint 2018-09-03 23:46:30 +02:00
Jonas Hörsch
21267a59e0 costs: Add costs for submarine HVDC based on own analysis 2018-09-03 23:33:06 +02:00