2020-05-29 07:50:55 +00:00
# SPDX-FileCopyrightText: : 2017-2020 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: CC0-1.0
2021-09-14 14:15:25 +00:00
version : 0.4 .0
2019-11-05 11:53:21 +00:00
tutorial : false
2019-11-28 07:22:52 +00:00
logging :
level : INFO
format : '%(levelname)s:%(name)s:%(message)s'
2017-12-18 19:34:15 +00:00
2018-08-02 10:10:46 +00:00
summary_dir : results
2017-12-18 19:34:15 +00:00
scenario :
2018-02-10 16:19:46 +00:00
simpl : [ '' ]
2019-10-02 13:49:01 +00:00
ll : [ 'copt' ]
2020-01-09 13:09:28 +00:00
clusters : [ 37 , 128 , 256 , 512 , 1024 ]
2019-10-02 13:49:01 +00:00
opts : [ Co2L-3H]
2017-12-18 19:34:15 +00:00
2019-12-09 20:29:15 +00:00
countries : [ 'AL' , 'AT' , 'BA' , 'BE' , 'BG' , 'CH' , 'CZ' , 'DE' , 'DK' , 'EE' , 'ES' , 'FI' , 'FR' , 'GB' , 'GR' , 'HR' , 'HU' , 'IE' , 'IT' , 'LT' , 'LU' , 'LV' , 'ME' , 'MK' , 'NL' , 'NO' , 'PL' , 'PT' , 'RO' , 'RS' , 'SE' , 'SI' , 'SK' ]
2017-12-18 19:34:15 +00:00
2021-06-01 10:00:55 +00:00
clustering :
simplify :
to_substations : false # network is simplified to nodes with positive or negative power injection (i.e. substations or offwind connections)
2021-06-01 09:00:31 +00:00
2018-01-29 21:28:33 +00:00
snapshots :
start : "2013-01-01"
end : "2014-01-01"
closed : 'left' # end is not inclusive
2017-12-18 19:34:15 +00:00
2018-08-13 12:09:20 +00:00
enable :
2020-02-25 10:28:38 +00:00
prepare_links_p_nom : false
2019-11-19 14:56:44 +00:00
retrieve_databundle : true
2019-11-05 11:53:21 +00:00
build_cutout : false
2020-03-16 14:51:47 +00:00
retrieve_cutout : true
2019-11-05 11:53:21 +00:00
build_natura_raster : false
2020-03-16 14:51:47 +00:00
retrieve_natura_raster : true
2020-12-03 14:17:16 +00:00
custom_busmap : false
2018-08-13 12:09:20 +00:00
2017-12-18 19:34:15 +00:00
electricity :
voltages : [ 220 ., 300., 380.]
2018-01-29 21:28:33 +00:00
co2limit : 7.75e+7 # 0.05 * 3.1e9*0.5
2021-06-28 13:52:37 +00:00
co2base : 1.487e+9
2019-06-17 14:56:13 +00:00
agg_p_nom_limits : data/agg_p_nom_minmax.csv
2022-03-31 14:20:25 +00:00
# parameters used for the min renewable constraint, can be used with the RE wildcard in opts
renewable_aim : # installed capacity aim 2030 of BMWi for Germany https://www.bmwi.de/Redaktion/DE/Downloads/Energie/220111_eroeffnungsbilanz_klimaschutz.pdf?__blob=publicationFile&v=22
onwind : 100 #GW
offwind : 30 #GW
solar : 200 #GW
# parameters used for the base load constraint, can be used with the BL wildcard in opts
base_load :
lignite : 0.2 #min_p_pu value for lignite
nuclear : 0.354
2017-12-18 19:34:15 +00:00
extendable_carriers :
2020-01-09 13:09:28 +00:00
Generator : [ ]
2020-11-25 12:18:30 +00:00
StorageUnit : [ ] # battery, H2
Store : [ battery, H2]
2019-12-02 11:22:30 +00:00
Link : [ ]
2017-12-18 19:34:15 +00:00
max_hours :
2018-02-19 09:19:00 +00:00
battery : 6
H2 : 168
2017-12-18 19:34:15 +00:00
2019-11-04 15:45:41 +00:00
powerplants_filter : false # use pandas query strings here, e.g. Country not in ['Germany']
custom_powerplants : false # use pandas query strings here, e.g. Country in ['Germany']
2020-01-09 13:09:28 +00:00
conventional_carriers : [ nuclear, oil, OCGT, CCGT, coal, lignite, geothermal, biomass]
2020-12-03 22:13:41 +00:00
renewable_capacities_from_OPSD : [ ] # onwind, offwind, solar
2022-04-04 17:03:09 +00:00
estimate_renewable_capacities :
# Renewable capacities are based on existing capacities reported by IRENA
# Reference year, any of 2000 to 2020
year : 2020
# Artificially limit maximum capacities to factor * (IRENA capacities),
# i.e. 110% of <years>'s capacities => expansion_limit: 1.1
# false: Use estimated renewable potentials determine by the workflow
expansion_limit : false
technology_mapping :
# Wind is the Fueltype in ppm.data.Capacity_stats, onwind, offwind-{ac,dc} the carrier in PyPSA-Eur
Offshore : [ offwind-ac, offwind-dc]
Onshore : [ onwind]
PV : [ solar]
2019-02-05 22:00:35 +00:00
2018-08-03 09:54:28 +00:00
atlite :
2018-08-03 10:46:42 +00:00
nprocesses : 4
2018-08-03 09:54:28 +00:00
cutouts :
Atlite availability (#224)
* adjust buil_cutout.py and Snakefile
* try adjusting build_renewable_profiles, currently crashing due to weird pyproj error
* build_renewable_profiles: -remove printing gid
* build_renewable_profiles: use dask for paralellization, use dense functions
* build_renewable_profiles:
- revise imports
- add logging for long calculation
- revise explaining comment
- revise distance calculation
* build profiles: adjust to cutout.grid
* * fix area to square km
* rename potmatrix -> capacity_potential
* rename available to availibility
* config.default update cutout params
build_renewable_potentials: major refactoring and simplification
hydro_profiles: update code
* build profiles: fix weight output dimensions
* build profiles: fix typo, fix selection of buses
* build profiles: reinsert paths variable
* follow up
* build profiles: move to dask calculation only
* CI: set build cutout to true (add CDSAPI)
* build profiles: use pyproj, test with gleas and geokit upstream
* environment.yaml fix atlite version
* build profiles: use dask 'processes' for more than 25 regions
* build profiles: specify dask scheduler according to number of regions
* backpedal a bit, only allow scheduler='processes'
* follow up, code style and fixup
* build profiles: add logger info for underwater fraction calc
* config adjust cutout parameters
Snakefile fixup
* config.default.yaml: adjust resolution
* config: use one cutout in total
build_cutout: automatic detetection of geographical boundaries
* env: add python>=3.8 requirement
build_cutout: fixup for region bound
* config: allow base cutout
* folllow up, fix up
* follow up II
* clean up
* clean up II
* build profiles: move back to multiprocessing due to performance issues
* small code style corrections
* move in pool context
* swqitch to ratsterio
* switch to rasterio for availibility calculation
* tiny fixup
* * build continental raster for offshore distance calculation
* adjust Snakefile to new script build_raster
* rename continental raster to onshore raster
add projected_mask function (not yet tested)
add docstrings, modularize
* Snakefile: remove build_onhore_raster rule, build mask directly from geometry instead
build_natura_raster: adjust code, add function for exporting
build_profiles:
* add buffer to shore distance to init_globals function
* update docstrings
* improve handling of nodata grid codes
* add geometry mask if natura raster not activated
(the 255 value is an 'eligible' value for the corine data base,
do this for excluding data outside the shape)
* build_profiles: adjust docstrings
* update environment
* build profiles: fixup reproject woth padding
* follow up, small fixups
* fix resampling method
checkpoint: reproduces solar profile in tut data
* reintegrate plot map
code style
* config: rename cutout into "base"
* build profiles: adjust to new atlite code
* natura raster: small fixup
* build natura raster: compress tiff file
* config: adjust cutout names
* build profiles: cover case if no or partial overlap between natura raster and cutout
* config-tutorial: adjust cutout params
* buid-profifiles: fixup in gebco filter
* follow up
* update config files
* build profiles: select layoutmatrix != 0
* build profiles: speed up average_distance and underwaterfraction
* build profiles: fix typo
* update release notes
build_cutout: only build needed features
* update envs
* config: add temperature to sarah features
* temporary fix for atlite v0.2.1 and new xarray version release
* env: remove xarray specification
* * remove rule build_country_flh
* build profiles: remove sneaked in line
* doc: update configuration.rst (section atlite) and corresponding csv table
* release notes: fix quotes
* build profiles: use 3035 for area calculation
* Update envs/environment.docs.yaml
* Update scripts/build_cutout.py
* Update doc/release_notes.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update doc/configuration.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update scripts/build_cutout.py
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* update release notes
* release notes: add deprecation of 'keep_all_available_areas'
build profiles: remove warning for 'keep_all_available_areas'
* build cutout: rearrage code, set buffer correctly
* Rename tutorial cutout to remove name clash with real cutout.
* Update release_notes.rst: Rename tutorial cutout.
* retrieve: update cutouts and downloads (alternative) (#237)
* retrieve: update cutouts and downloads
* retrieve: remove unnecessary import
* use snakemake remote file functionality
* Snakefile: update zenodo link
* update natura remote link (closes #234)
* env: update atlite version to 0.2.2
* env: fix dask version due to memory issues
* test: retrieve cutout instead of build
* test: use tutorial cutout for CI
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2021-04-27 15:58:31 +00:00
# use 'base' to determine geographical bounds and time span from config
# base:
# module: era5
2018-08-03 09:54:28 +00:00
europe-2013-era5 :
Atlite availability (#224)
* adjust buil_cutout.py and Snakefile
* try adjusting build_renewable_profiles, currently crashing due to weird pyproj error
* build_renewable_profiles: -remove printing gid
* build_renewable_profiles: use dask for paralellization, use dense functions
* build_renewable_profiles:
- revise imports
- add logging for long calculation
- revise explaining comment
- revise distance calculation
* build profiles: adjust to cutout.grid
* * fix area to square km
* rename potmatrix -> capacity_potential
* rename available to availibility
* config.default update cutout params
build_renewable_potentials: major refactoring and simplification
hydro_profiles: update code
* build profiles: fix weight output dimensions
* build profiles: fix typo, fix selection of buses
* build profiles: reinsert paths variable
* follow up
* build profiles: move to dask calculation only
* CI: set build cutout to true (add CDSAPI)
* build profiles: use pyproj, test with gleas and geokit upstream
* environment.yaml fix atlite version
* build profiles: use dask 'processes' for more than 25 regions
* build profiles: specify dask scheduler according to number of regions
* backpedal a bit, only allow scheduler='processes'
* follow up, code style and fixup
* build profiles: add logger info for underwater fraction calc
* config adjust cutout parameters
Snakefile fixup
* config.default.yaml: adjust resolution
* config: use one cutout in total
build_cutout: automatic detetection of geographical boundaries
* env: add python>=3.8 requirement
build_cutout: fixup for region bound
* config: allow base cutout
* folllow up, fix up
* follow up II
* clean up
* clean up II
* build profiles: move back to multiprocessing due to performance issues
* small code style corrections
* move in pool context
* swqitch to ratsterio
* switch to rasterio for availibility calculation
* tiny fixup
* * build continental raster for offshore distance calculation
* adjust Snakefile to new script build_raster
* rename continental raster to onshore raster
add projected_mask function (not yet tested)
add docstrings, modularize
* Snakefile: remove build_onhore_raster rule, build mask directly from geometry instead
build_natura_raster: adjust code, add function for exporting
build_profiles:
* add buffer to shore distance to init_globals function
* update docstrings
* improve handling of nodata grid codes
* add geometry mask if natura raster not activated
(the 255 value is an 'eligible' value for the corine data base,
do this for excluding data outside the shape)
* build_profiles: adjust docstrings
* update environment
* build profiles: fixup reproject woth padding
* follow up, small fixups
* fix resampling method
checkpoint: reproduces solar profile in tut data
* reintegrate plot map
code style
* config: rename cutout into "base"
* build profiles: adjust to new atlite code
* natura raster: small fixup
* build natura raster: compress tiff file
* config: adjust cutout names
* build profiles: cover case if no or partial overlap between natura raster and cutout
* config-tutorial: adjust cutout params
* buid-profifiles: fixup in gebco filter
* follow up
* update config files
* build profiles: select layoutmatrix != 0
* build profiles: speed up average_distance and underwaterfraction
* build profiles: fix typo
* update release notes
build_cutout: only build needed features
* update envs
* config: add temperature to sarah features
* temporary fix for atlite v0.2.1 and new xarray version release
* env: remove xarray specification
* * remove rule build_country_flh
* build profiles: remove sneaked in line
* doc: update configuration.rst (section atlite) and corresponding csv table
* release notes: fix quotes
* build profiles: use 3035 for area calculation
* Update envs/environment.docs.yaml
* Update scripts/build_cutout.py
* Update doc/release_notes.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update doc/configuration.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update scripts/build_cutout.py
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* update release notes
* release notes: add deprecation of 'keep_all_available_areas'
build profiles: remove warning for 'keep_all_available_areas'
* build cutout: rearrage code, set buffer correctly
* Rename tutorial cutout to remove name clash with real cutout.
* Update release_notes.rst: Rename tutorial cutout.
* retrieve: update cutouts and downloads (alternative) (#237)
* retrieve: update cutouts and downloads
* retrieve: remove unnecessary import
* use snakemake remote file functionality
* Snakefile: update zenodo link
* update natura remote link (closes #234)
* env: update atlite version to 0.2.2
* env: fix dask version due to memory issues
* test: retrieve cutout instead of build
* test: use tutorial cutout for CI
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2021-04-27 15:58:31 +00:00
module : era5 # in priority order
x : [ -12 ., 35.]
y : [ 33 ., 72]
dx : 0.3
dy : 0.3
time : [ '2013' , '2013' ]
2018-08-03 09:54:28 +00:00
europe-2013-sarah :
Atlite availability (#224)
* adjust buil_cutout.py and Snakefile
* try adjusting build_renewable_profiles, currently crashing due to weird pyproj error
* build_renewable_profiles: -remove printing gid
* build_renewable_profiles: use dask for paralellization, use dense functions
* build_renewable_profiles:
- revise imports
- add logging for long calculation
- revise explaining comment
- revise distance calculation
* build profiles: adjust to cutout.grid
* * fix area to square km
* rename potmatrix -> capacity_potential
* rename available to availibility
* config.default update cutout params
build_renewable_potentials: major refactoring and simplification
hydro_profiles: update code
* build profiles: fix weight output dimensions
* build profiles: fix typo, fix selection of buses
* build profiles: reinsert paths variable
* follow up
* build profiles: move to dask calculation only
* CI: set build cutout to true (add CDSAPI)
* build profiles: use pyproj, test with gleas and geokit upstream
* environment.yaml fix atlite version
* build profiles: use dask 'processes' for more than 25 regions
* build profiles: specify dask scheduler according to number of regions
* backpedal a bit, only allow scheduler='processes'
* follow up, code style and fixup
* build profiles: add logger info for underwater fraction calc
* config adjust cutout parameters
Snakefile fixup
* config.default.yaml: adjust resolution
* config: use one cutout in total
build_cutout: automatic detetection of geographical boundaries
* env: add python>=3.8 requirement
build_cutout: fixup for region bound
* config: allow base cutout
* folllow up, fix up
* follow up II
* clean up
* clean up II
* build profiles: move back to multiprocessing due to performance issues
* small code style corrections
* move in pool context
* swqitch to ratsterio
* switch to rasterio for availibility calculation
* tiny fixup
* * build continental raster for offshore distance calculation
* adjust Snakefile to new script build_raster
* rename continental raster to onshore raster
add projected_mask function (not yet tested)
add docstrings, modularize
* Snakefile: remove build_onhore_raster rule, build mask directly from geometry instead
build_natura_raster: adjust code, add function for exporting
build_profiles:
* add buffer to shore distance to init_globals function
* update docstrings
* improve handling of nodata grid codes
* add geometry mask if natura raster not activated
(the 255 value is an 'eligible' value for the corine data base,
do this for excluding data outside the shape)
* build_profiles: adjust docstrings
* update environment
* build profiles: fixup reproject woth padding
* follow up, small fixups
* fix resampling method
checkpoint: reproduces solar profile in tut data
* reintegrate plot map
code style
* config: rename cutout into "base"
* build profiles: adjust to new atlite code
* natura raster: small fixup
* build natura raster: compress tiff file
* config: adjust cutout names
* build profiles: cover case if no or partial overlap between natura raster and cutout
* config-tutorial: adjust cutout params
* buid-profifiles: fixup in gebco filter
* follow up
* update config files
* build profiles: select layoutmatrix != 0
* build profiles: speed up average_distance and underwaterfraction
* build profiles: fix typo
* update release notes
build_cutout: only build needed features
* update envs
* config: add temperature to sarah features
* temporary fix for atlite v0.2.1 and new xarray version release
* env: remove xarray specification
* * remove rule build_country_flh
* build profiles: remove sneaked in line
* doc: update configuration.rst (section atlite) and corresponding csv table
* release notes: fix quotes
* build profiles: use 3035 for area calculation
* Update envs/environment.docs.yaml
* Update scripts/build_cutout.py
* Update doc/release_notes.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update doc/configuration.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update scripts/build_cutout.py
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* update release notes
* release notes: add deprecation of 'keep_all_available_areas'
build profiles: remove warning for 'keep_all_available_areas'
* build cutout: rearrage code, set buffer correctly
* Rename tutorial cutout to remove name clash with real cutout.
* Update release_notes.rst: Rename tutorial cutout.
* retrieve: update cutouts and downloads (alternative) (#237)
* retrieve: update cutouts and downloads
* retrieve: remove unnecessary import
* use snakemake remote file functionality
* Snakefile: update zenodo link
* update natura remote link (closes #234)
* env: update atlite version to 0.2.2
* env: fix dask version due to memory issues
* test: retrieve cutout instead of build
* test: use tutorial cutout for CI
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2021-04-27 15:58:31 +00:00
module : [ sarah, era5] # in priority order
x : [ -12 ., 45.]
y : [ 33 ., 65]
dx : 0.2
dy : 0.2
time : [ '2013' , '2013' ]
sarah_interpolate : false
sarah_dir :
features : [ influx, temperature]
2018-08-03 09:54:28 +00:00
Atlite availability (#224)
* adjust buil_cutout.py and Snakefile
* try adjusting build_renewable_profiles, currently crashing due to weird pyproj error
* build_renewable_profiles: -remove printing gid
* build_renewable_profiles: use dask for paralellization, use dense functions
* build_renewable_profiles:
- revise imports
- add logging for long calculation
- revise explaining comment
- revise distance calculation
* build profiles: adjust to cutout.grid
* * fix area to square km
* rename potmatrix -> capacity_potential
* rename available to availibility
* config.default update cutout params
build_renewable_potentials: major refactoring and simplification
hydro_profiles: update code
* build profiles: fix weight output dimensions
* build profiles: fix typo, fix selection of buses
* build profiles: reinsert paths variable
* follow up
* build profiles: move to dask calculation only
* CI: set build cutout to true (add CDSAPI)
* build profiles: use pyproj, test with gleas and geokit upstream
* environment.yaml fix atlite version
* build profiles: use dask 'processes' for more than 25 regions
* build profiles: specify dask scheduler according to number of regions
* backpedal a bit, only allow scheduler='processes'
* follow up, code style and fixup
* build profiles: add logger info for underwater fraction calc
* config adjust cutout parameters
Snakefile fixup
* config.default.yaml: adjust resolution
* config: use one cutout in total
build_cutout: automatic detetection of geographical boundaries
* env: add python>=3.8 requirement
build_cutout: fixup for region bound
* config: allow base cutout
* folllow up, fix up
* follow up II
* clean up
* clean up II
* build profiles: move back to multiprocessing due to performance issues
* small code style corrections
* move in pool context
* swqitch to ratsterio
* switch to rasterio for availibility calculation
* tiny fixup
* * build continental raster for offshore distance calculation
* adjust Snakefile to new script build_raster
* rename continental raster to onshore raster
add projected_mask function (not yet tested)
add docstrings, modularize
* Snakefile: remove build_onhore_raster rule, build mask directly from geometry instead
build_natura_raster: adjust code, add function for exporting
build_profiles:
* add buffer to shore distance to init_globals function
* update docstrings
* improve handling of nodata grid codes
* add geometry mask if natura raster not activated
(the 255 value is an 'eligible' value for the corine data base,
do this for excluding data outside the shape)
* build_profiles: adjust docstrings
* update environment
* build profiles: fixup reproject woth padding
* follow up, small fixups
* fix resampling method
checkpoint: reproduces solar profile in tut data
* reintegrate plot map
code style
* config: rename cutout into "base"
* build profiles: adjust to new atlite code
* natura raster: small fixup
* build natura raster: compress tiff file
* config: adjust cutout names
* build profiles: cover case if no or partial overlap between natura raster and cutout
* config-tutorial: adjust cutout params
* buid-profifiles: fixup in gebco filter
* follow up
* update config files
* build profiles: select layoutmatrix != 0
* build profiles: speed up average_distance and underwaterfraction
* build profiles: fix typo
* update release notes
build_cutout: only build needed features
* update envs
* config: add temperature to sarah features
* temporary fix for atlite v0.2.1 and new xarray version release
* env: remove xarray specification
* * remove rule build_country_flh
* build profiles: remove sneaked in line
* doc: update configuration.rst (section atlite) and corresponding csv table
* release notes: fix quotes
* build profiles: use 3035 for area calculation
* Update envs/environment.docs.yaml
* Update scripts/build_cutout.py
* Update doc/release_notes.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update doc/configuration.rst
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* Update scripts/build_cutout.py
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
* update release notes
* release notes: add deprecation of 'keep_all_available_areas'
build profiles: remove warning for 'keep_all_available_areas'
* build cutout: rearrage code, set buffer correctly
* Rename tutorial cutout to remove name clash with real cutout.
* Update release_notes.rst: Rename tutorial cutout.
* retrieve: update cutouts and downloads (alternative) (#237)
* retrieve: update cutouts and downloads
* retrieve: remove unnecessary import
* use snakemake remote file functionality
* Snakefile: update zenodo link
* update natura remote link (closes #234)
* env: update atlite version to 0.2.2
* env: fix dask version due to memory issues
* test: retrieve cutout instead of build
* test: use tutorial cutout for CI
Co-authored-by: euronion <42553970+euronion@users.noreply.github.com>
Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2021-04-27 15:58:31 +00:00
2018-01-29 21:28:33 +00:00
renewable :
onwind :
2018-08-03 09:54:28 +00:00
cutout : europe-2013-era5
2018-01-29 21:28:33 +00:00
resource :
method : wind
turbine : Vestas_V112_3MW
2019-10-02 13:49:01 +00:00
capacity_per_sqkm: 3 # ScholzPhd Tab 4.3.1 : 10MW/km^2
2018-02-19 08:56:15 +00:00
# correction_factor: 0.93
2018-01-29 21:28:33 +00:00
corine :
2019-10-02 13:49:01 +00:00
# Scholz, Y. (2012). Renewable energy based electricity supply at low costs:
# development of the REMix model and application for Europe. ( p.42 / p.28)
2018-01-29 21:28:33 +00:00
grid_codes : [ 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 ,
24 , 25 , 26 , 27 , 28 , 29 , 31 , 32 ]
distance : 1000
distance_grid_codes : [ 1 , 2 , 3 , 4 , 5 , 6 ]
2018-12-10 17:40:54 +00:00
natura : true
2019-02-01 17:33:21 +00:00
potential : simple # or conservative
2018-12-21 12:44:59 +00:00
clip_p_max_pu : 1.e-2
2018-12-19 09:30:25 +00:00
offwind-ac :
2018-08-03 09:54:28 +00:00
cutout : europe-2013-era5
2018-01-29 21:28:33 +00:00
resource :
method : wind
turbine : NREL_ReferenceTurbine_5MW_offshore
2021-10-05 10:18:10 +00:00
capacity_per_sqkm : 2
2021-09-23 06:57:18 +00:00
correction_factor : 0.8855
# proxy for wake losses
# from 10.1016/j.energy.2018.08.153
# until done more rigorously in #153
2018-12-10 17:40:54 +00:00
corine : [ 44 , 255 ]
natura : true
max_depth : 50
2019-10-03 10:37:23 +00:00
max_shore_distance : 30000
2019-02-01 17:33:21 +00:00
potential : simple # or conservative
2018-12-21 12:44:59 +00:00
clip_p_max_pu : 1.e-2
2018-12-19 09:30:25 +00:00
offwind-dc :
cutout : europe-2013-era5
resource :
method : wind
turbine : NREL_ReferenceTurbine_5MW_offshore
# ScholzPhd Tab 4.3.1: 10MW/km^2
2021-10-05 10:18:10 +00:00
capacity_per_sqkm : 2
2021-09-23 06:57:18 +00:00
correction_factor : 0.8855
# proxy for wake losses
# from 10.1016/j.energy.2018.08.153
# until done more rigorously in #153
2018-12-19 09:30:25 +00:00
corine : [ 44 , 255 ]
natura : true
max_depth : 50
2019-10-03 10:37:23 +00:00
min_shore_distance : 30000
2019-02-01 17:33:21 +00:00
potential : simple # or conservative
2018-12-21 12:44:59 +00:00
clip_p_max_pu : 1.e-2
2018-01-29 21:28:33 +00:00
solar :
2018-08-03 09:54:28 +00:00
cutout : europe-2013-sarah
2018-01-29 21:28:33 +00:00
resource :
method : pv
panel : CSi
2018-07-10 14:32:47 +00:00
orientation :
slope : 35 .
azimuth : 180 .
2019-10-02 13:49:01 +00:00
capacity_per_sqkm: 1.7 # ScholzPhd Tab 4.3.1 : 170 MW/km^2
2022-01-13 14:42:48 +00:00
# Correction factor determined by comparing uncorrected area-weighted full-load hours to those
2019-02-15 19:58:37 +00:00
# published in Supplementary Data to
# Pietzcker, Robert Carl, et al. "Using the sun to decarbonize the power
# sector: The economic potential of photovoltaics and concentrating solar
# power." Applied Energy 135 (2014): 704-720.
2022-01-13 14:42:48 +00:00
# This correction factor of 0.854337 may be in order if using reanalysis data.
2022-01-24 10:16:23 +00:00
# for discussion refer to https://github.com/PyPSA/pypsa-eur/pull/304
2022-01-13 14:42:48 +00:00
# correction_factor: 0.854337
2018-12-10 17:40:54 +00:00
corine : [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 ,
14 , 15 , 16 , 17 , 18 , 19 , 20 , 26 , 31 , 32 ]
natura : true
2019-02-01 17:33:21 +00:00
potential : simple # or conservative
2018-12-21 12:44:59 +00:00
clip_p_max_pu : 1.e-2
2018-01-29 21:28:33 +00:00
hydro :
2018-08-06 19:38:36 +00:00
cutout : europe-2013-era5
2018-01-29 21:28:33 +00:00
carriers : [ ror, PHS, hydro]
PHS_max_hours : 6
2020-12-03 22:47:38 +00:00
hydro_max_hours : "energy_capacity_totals_by_country" # one of energy_capacity_totals_by_country, estimate_by_large_installations or a float
2018-12-21 12:44:59 +00:00
clip_min_inflow : 1.0
2019-10-02 13:49:01 +00:00
2017-12-18 19:34:15 +00:00
lines :
types :
220. : "Al/St 240/40 2-bundle 220.0"
300. : "Al/St 240/40 3-bundle 300.0"
380. : "Al/St 240/40 4-bundle 380.0"
s_max_pu : 0.7
2020-09-26 11:10:50 +00:00
s_nom_max : .inf
2017-12-18 19:34:15 +00:00
length_factor : 1.25
2018-08-27 17:13:41 +00:00
under_construction: 'zero' # 'zero': set capacity to zero, 'remove': remove, 'keep' : with full capacity
2022-09-07 11:09:35 +00:00
dynamic_line_rating :
activate : false
# factor compensate overestimation of the wind speed in hourly averaged wind data
correction_factor : 0.95
max_voltage_difference : 45 # in deg or `false` to disable
max_line_rating : false # over capacity relative to nominal capacity e.g. 1.3 or `false`to disable
2017-12-18 19:34:15 +00:00
links :
2018-09-03 18:19:45 +00:00
p_max_pu : 1.0
2020-09-26 11:10:50 +00:00
p_nom_max : .inf
2018-10-22 21:26:18 +00:00
include_tyndp : true
2018-08-28 08:39:56 +00:00
under_construction: 'zero' # 'zero': set capacity to zero, 'remove': remove, 'keep' : with full capacity
2017-12-18 19:34:15 +00:00
transformers :
x : 0.1
s_nom : 2000 .
type : ''
2019-02-22 20:47:41 +00:00
load :
2020-12-03 11:49:04 +00:00
power_statistics : True # only for files from <2019; set false in order to get ENTSOE transparency data
interpolate_limit : 3 # data gaps up until this size are interpolated linearly
time_shift_for_large_gaps : 1w # data gaps up until this size are copied by copying from
manual_adjustments : true # false
2019-02-22 20:47:41 +00:00
scaling_factor : 1.0
2017-12-18 19:34:15 +00:00
costs :
2018-01-29 21:28:33 +00:00
year : 2030
2019-10-02 13:49:01 +00:00
discountrate : 0.07 # From a Lion Hirth paper, also reflects average of Noothout et al 2016
USD2013_to_EUR2013: 0.7532 # [EUR/USD] ECB : https://www.ecb.europa.eu/stats/exchange/eurofxref/html/eurofxref-graph-usd.en.html
2021-03-23 17:29:59 +00:00
marginal_cost : # EUR/MWh
2018-01-29 21:28:33 +00:00
solar : 0.01
onwind : 0.015
offwind : 0.015
hydro : 0 .
2018-01-30 22:12:36 +00:00
H2 : 0 .
2021-03-23 19:30:06 +00:00
electrolysis : 0 .
fuel cell : 0 .
2018-01-30 22:12:36 +00:00
battery : 0 .
2021-03-23 19:30:06 +00:00
battery inverter : 0 .
2020-08-25 10:12:00 +00:00
emission_prices : # in currency per tonne emission, only used with the option Ep
2018-01-29 21:28:33 +00:00
co2 : 0 .
2017-12-18 19:34:15 +00:00
solving :
options :
formulation : kirchhoff
2019-10-02 13:49:01 +00:00
load_shedding : false
2017-12-18 19:34:15 +00:00
noisy_costs : true
2020-02-25 21:00:36 +00:00
min_iterations : 4
max_iterations : 6
2019-02-03 13:24:12 +00:00
clip_p_max_pu : 0.01
2020-02-19 16:03:19 +00:00
skip_iterations : false
2020-02-10 11:06:43 +00:00
track_iterations : false
2019-10-02 13:49:01 +00:00
#nhours: 10
2017-12-18 19:34:15 +00:00
solver :
2018-03-09 14:43:55 +00:00
name : gurobi
2017-12-18 19:34:15 +00:00
threads : 4
2018-09-20 12:30:01 +00:00
method : 2 # barrier
crossover : 0
2017-12-18 19:34:15 +00:00
BarConvTol : 1.e-5
FeasibilityTol : 1.e-6
2019-03-02 17:54:22 +00:00
AggFill : 0
PreDual : 0
GURO_PAR_BARDENSETHRESH : 200
2018-09-20 12:30:01 +00:00
# solver:
# name: cplex
# threads: 4
# lpmethod: 4 # barrier
# solutiontype: 2 # non basic solution, ie no crossover
2021-10-05 09:00:30 +00:00
# barrier.convergetol: 1.e-5
# feasopt.tolerance: 1.e-6
2017-12-18 19:34:15 +00:00
plotting :
map :
figsize : [ 7 , 7 ]
2018-10-22 21:31:13 +00:00
boundaries : [ -10.2 , 29 , 35 , 72 ]
2017-12-18 19:34:15 +00:00
p_nom :
bus_size_factor : 5.e+4
2019-10-02 13:49:01 +00:00
linewidth_factor : 3.e+3
2017-12-18 19:34:15 +00:00
costs_max : 800
2018-08-02 14:14:38 +00:00
costs_threshold : 1
energy_max : 15000 .
energy_min : -10000 .
energy_threshold : 50 .
2019-01-16 11:08:46 +00:00
vre_techs : [ "onwind" , "offwind-ac" , "offwind-dc" , "solar" , "ror" ]
2017-12-18 19:34:15 +00:00
conv_techs : [ "OCGT" , "CCGT" , "Nuclear" , "Coal" ]
2018-10-22 21:31:13 +00:00
storage_techs : [ "hydro+PHS" , "battery" , "H2" ]
2019-10-02 13:49:01 +00:00
load_carriers : [ "AC load" ]
2017-12-18 19:34:15 +00:00
AC_carriers : [ "AC line" , "AC transformer" ]
2019-12-09 20:29:15 +00:00
link_carriers : [ "DC line" , "Converter AC-DC" ]
2017-12-18 19:34:15 +00:00
tech_colors :
2019-04-06 11:58:13 +00:00
"onwind" : "#235ebc"
"onshore wind" : "#235ebc"
'offwind' : "#6895dd"
'offwind-ac' : "#6895dd"
'offshore wind' : "#6895dd"
'offshore wind ac' : "#6895dd"
'offwind-dc' : "#74c6f2"
'offshore wind dc' : "#74c6f2"
"hydro" : "#08ad97"
"hydro+PHS" : "#08ad97"
"PHS" : "#08ad97"
"hydro reservoir" : "#08ad97"
'hydroelectricity' : '#08ad97'
"ror" : "#4adbc8"
"run of river" : "#4adbc8"
'solar' : "#f9d002"
'solar PV' : "#f9d002"
'solar thermal' : '#ffef60'
'biomass' : '#0c6013'
'solid biomass' : '#06540d'
'biogas' : '#23932d'
'waste' : '#68896b'
'geothermal' : '#ba91b1'
"OCGT" : "#d35050"
"gas" : "#d35050"
"natural gas" : "#d35050"
"CCGT" : "#b20101"
"nuclear" : "#ff9000"
"coal" : "#707070"
"lignite" : "#9e5a01"
"oil" : "#262626"
"H2" : "#ea048a"
"hydrogen storage" : "#ea048a"
"battery" : "#b8ea04"
"Electric load" : "#f9d002"
"electricity" : "#f9d002"
"lines" : "#70af1d"
"transmission lines" : "#70af1d"
"AC-AC" : "#70af1d"
"AC line" : "#70af1d"
"links" : "#8a1caf"
"HVDC links" : "#8a1caf"
"DC-DC" : "#8a1caf"
"DC link" : "#8a1caf"
2017-12-18 19:34:15 +00:00
nice_names :
2019-10-02 13:49:01 +00:00
OCGT : "Open-Cycle Gas"
CCGT : "Combined-Cycle Gas"
offwind-ac : "Offshore Wind (AC)"
offwind-dc : "Offshore Wind (DC)"
onwind : "Onshore Wind"
2020-01-29 16:01:57 +00:00
solar : "Solar"
PHS : "Pumped Hydro Storage"
hydro : "Reservoir & Dam"
2019-10-02 13:49:01 +00:00
battery : "Battery Storage"
H2 : "Hydrogen Storage"
2020-12-03 18:50:53 +00:00
lines : "Transmission Lines"
ror : "Run of River"