Prepare Release v0.2.0 (#165)

* prepare release v0.2.0

* prepare release v0.2.0 v2 [skip travis]
This commit is contained in:
Fabian Neumann 2020-06-08 20:43:35 +02:00 committed by GitHub
parent 8f981e1703
commit 2627c96a9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 235 additions and 161 deletions

View File

@ -6,7 +6,6 @@ SPDX-License-Identifier: CC-BY-4.0
![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/pypsa/pypsa-eur?include_prereleases)
[![Build Status](https://travis-ci.org/PyPSA/pypsa-eur.svg?branch=master)](https://travis-ci.org/PyPSA/pypsa-eur)
[![Documentation](https://readthedocs.org/projects/pypsa-eur/badge/?version=latest)](https://pypsa-eur.readthedocs.io/en/latest/?badge=latest)
![GitHub](https://img.shields.io/github/license/pypsa/pypsa-eur)
![Size](https://img.shields.io/github/repo-size/pypsa/pypsa-eur)
[![Zenodo](https://zenodo.org/badge/DOI/10.5281/zenodo.3520875.svg)](https://doi.org/10.5281/zenodo.3520875)
[![Gitter](https://badges.gitter.im/PyPSA/community.svg)](https://gitter.im/PyPSA/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

View File

@ -2,7 +2,7 @@
#
# SPDX-License-Identifier: CC0-1.0
version: 0.1.0
version: 0.2.0
tutorial: false
logging:

View File

@ -2,7 +2,7 @@
#
# SPDX-License-Identifier: CC0-1.0
version: 0.1.0
version: 0.2.0
tutorial: true
logging:
level: INFO

View File

@ -74,9 +74,9 @@ author = u'Jonas Hoersch (KIT, FIAS), Fabian Hofmann (FIAS), David Schlachtberge
# built documents.
#
# The short X.Y version.
version = u'0.1'
version = u'0.2'
# The full version, including alpha/beta/rc tags.
release = u'0.1.0'
release = u'0.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.

BIN
doc/img/elec_s_128.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 825 KiB

BIN
doc/img/elec_s_256.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 938 KiB

BIN
doc/img/elec_s_37.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 611 KiB

BIN
doc/img/elec_s_512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
doc/img/eligibility.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

BIN
doc/img/onwind-gridcell.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 54 KiB

BIN
doc/img/solar-gridcell.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 KiB

View File

@ -16,9 +16,6 @@ PyPSA-Eur: An Open Optimisation Model of the European Transmission System
:target: https://pypsa-eur.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. image:: https://img.shields.io/github/license/pypsa/pypsa-eur
:alt: GitHub
.. image:: https://img.shields.io/github/repo-size/pypsa/pypsa-eur
:alt: GitHub repo size

View File

@ -7,17 +7,46 @@
Release Notes
##########################################
Upcoming Release
================
* ...
PyPSA-Eur 0.2.0 (8th June 2020)
==================================
* The optimization is now performed using the ``pyomo=False`` setting in the :func:`pypsa.lopf.network_lopf`. This speeds up the solving process significantly and consumes much less memory. The inclusion of additional constraints were adjusted to the new implementation. They are all passed to the :func:`network_lopf` function via the ``extra_functionality`` argument. The rule ``trace_solve_network`` was integrated into the rule :mod:`solve_network` and can be activated via configuration with ``solving: options: track_iterations: true``. The charging and discharging capacities of batteries modelled as store-link combination are now coupled (`#116 <https://github.com/PyPSA/pypsa-eur/pull/116>`_).
* An updated extract of the `ENTSO-E Transmission System Map <https://www.entsoe.eu/data/map/>`_ (including Malta) was added to the repository using the `GridKit <https://github.com/PyPSA/GridKit>`_ tool. This tool has been updated to retrieve up-to-date map extracts using a single `script <https://github.com/PyPSA/GridKit/blob/master/entsoe/runall_in_docker.sh>`_. The update extract features 5322 buses, 6574 lines, 46 links. (`#118 <https://github.com/PyPSA/pypsa-eur/pull/118>`_).
* Removed the ``id`` column for custom power plants in ``data/custom_powerplants.csv`` to avoid custom power plants with conflicting ids getting attached to the wrong bus (`#131 <https://github.com/PyPSA/pypsa-eur/pull/131>`_).
* Added `FSFE REUSE <https://reuse.software>`_ compliant license information. Documentation now licensed under CC-BY-4.0 (`#160 <https://github.com/PyPSA/pypsa-eur/pull/160>`_).
* Added a 30 minute `video introduction <https://pypsa-eur.readthedocs.io/en/latest/introduction.html>`_ and a 20 minute `video tutorial <https://pypsa-eur.readthedocs.io/en/latest/tutorial.html>`_
* Networks now store a color and a nicely formatted name for each carrier, accessible via ``n.carrier['color']`` and ``n.carrier['nice_name'] ``(networks after ``elec.nc``).
* Added an option to skip iterative solving usually performed to update the line impedances of expanded lines at ``solving: options: skip_iterations:``.
* ``snakemake`` rules for retrieving cutouts and the natura raster can now be disabled independently from their respective rules to build them; via ``config.*yaml`` (`#136 <https://github.com/PyPSA/pypsa-eur/pull/136>`_).
* Add option ``renewables: {carrier}: keep_all_available_areas: `` to use all availabe weather cells for renewable profile and potential generation. The default ignores weather cells where only less than 1 MW can be installed (`#150 <https://github.com/PyPSA/pypsa-eur/pull/150>`_).
* Removed the ``id`` column for custom power plants in ``data/custom_powerplants.csv`` to avoid custom power plants with conflicting ids getting attached to the wrong bus (`#131 <https://github.com/PyPSA/pypsa-eur/pull/131>`_).
* Add option ``renewables: {carrier}: keep_all_available_areas:`` to use all availabe weather cells for renewable profile and potential generation. The default ignores weather cells where only less than 1 MW can be installed (`#150 <https://github.com/PyPSA/pypsa-eur/pull/150>`_).
* Added a function ``_helpers.load_network()`` which loads a network with overridden components specified in ``snakemake.config['override_components']`` (`#128 <https://github.com/PyPSA/pypsa-eur/pull/128>`_).
* Bugfix in :mod:`base_network` which now finds all closest links, not only the first entry (`#143 <https://github.com/PyPSA/pypsa-eur/pull/143>`_).
* Bugfix in :mod:`cluster_network` which now skips recalculation of link parameters if there are no links (`#149 <https://github.com/PyPSA/pypsa-eur/pull/149>`_).
* Added information on pull requests to contribution guidelines (`#151 <https://github.com/PyPSA/pypsa-eur/pull/151>`_).
* Improved documentation on open-source solver setup and added usage warnings.
* Updated ``conda`` environment regarding ``pypsa``, ``pyproj``, ``gurobi``, ``lxml``. This release requires PyPSA v0.17.0.
* Added `FSFE REUSE <https://reuse.software>`_ compliant license information. Documentation now licensed under CC-BY-4.0 (`#160 <https://github.com/PyPSA/pypsa-eur/pull/160>`_).
PyPSA-Eur 0.1.0 (9th January 2020)
==================================

View File

@ -1,237 +1,237 @@
# SPDX-FileCopyrightText: : 2017-2020 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: GPL-3.0-or-later
name: pypsa-eur
name: pypsa-eur-v0.2.0
channels:
- bioconda
- gurobi
- conda-forge
- http://conda.anaconda.org/gurobi
- defaults
dependencies:
- _libgcc_mutex=0.1
- affine=2.3.0
- appdirs=1.4.3
- atlite=0.0.2
- atlite=0.0.3
- attrs=19.3.0
- backcall=0.1.0
- beautifulsoup4=4.8.2
- blosc=1.17.0
- bokeh=1.4.0
- boost-cpp=1.70.0
- bottleneck=1.3.1
- beautifulsoup4=4.9.1
- blas=1.0
- blosc=1.16.3
- bokeh=2.0.2
- bottleneck=1.3.2
- bzip2=1.0.8
- ca-certificates=2019.11.28
- cairo=1.16.0
- ca-certificates=2020.1.1
- cairo=1.14.12
- cartopy=0.17.0
- certifi=2019.11.28
- cffi=1.13.2
- certifi=2020.4.5.1
- cffi=1.14.0
- cfitsio=3.470
- cftime=1.0.4.2
- cftime=1.1.2
- chardet=3.0.4
- click=7.0
- click=7.1.2
- click-plugins=1.1.1
- cligj=0.5.0
- cloudpickle=1.2.2
- configargparse=0.13.0
- cryptography=2.8
- curl=7.65.3
- cloudpickle=1.4.1
- coincbc=2.10.5
- configargparse=1.1
- cryptography=2.9.2
- curl=7.67.0
- cycler=0.10.0
- cytoolz=0.10.1
- dask=2.9.1
- dask-core=2.9.1
- datrie=0.8
- dbus=1.13.6
- decorator=4.4.1
- distributed=2.9.1
- docutils=0.15.2
- dask=2.17.2
- dask-core=2.17.2
- datrie=0.8.2
- dbus=1.13.14
- decorator=4.4.2
- distributed=2.17.0
- docutils=0.16
- entsoe-py=0.2.10
- expat=2.2.5
- fiona=1.8.6
- fontconfig=2.13.1
- freetype=2.10.0
- expat=2.2.6
- fiona=1.8.11
- fontconfig=2.13.0
- freetype=2.9.1
- freexl=1.0.5
- fsspec=0.6.2
- gdal=2.4.1
- fsspec=0.7.4
- gdal=3.0.2
- geographiclib=1.50
- geopandas=0.6.2
- geopy=1.20.0
- geos=3.7.2
- geotiff=1.4.3
- gettext=0.19.8.1
- giflib=5.1.7
- gitdb2=2.0.6
- gitpython=3.0.5
- glib=2.58.3
- gst-plugins-base=1.14.5
- gstreamer=1.14.5
- geopandas=0.6.1
- geopy=1.22.0
- geos=3.8.0
- geotiff=1.5.1
- giflib=5.1.4
- gitdb=4.0.2
- gitpython=3.1.1
- glib=2.63.1
- gst-plugins-base=1.14.0
- gstreamer=1.14.0
- gurobi=9.0.2
- hdf4=4.2.13
- hdf5=1.10.5
- hdf5=1.10.4
- heapdict=1.0.1
- icu=58.2
- idna=2.8
- importlib_metadata=1.3.0
- ipython=7.11.1
- idna=2.9
- importlib-metadata=1.6.0
- importlib_metadata=1.6.0
- intel-openmp=2020.1
- ipopt=3.13.2
- ipython=7.13.0
- ipython_genutils=0.2.0
- jedi=0.15.2
- jinja2=2.10.3
- joblib=0.14.1
- jpeg=9c
- jedi=0.17.0
- jinja2=2.11.2
- joblib=0.15.1
- jpeg=9b
- json-c=0.13.1
- jsonschema=3.2.0
- kealib=1.4.10
- kiwisolver=1.1.0
- jupyter_core=4.6.3
- kealib=1.4.7
- kiwisolver=1.2.0
- krb5=1.16.4
- ld_impl_linux-64=2.33.1
- libblas=3.8.0
- libboost=1.67.0
- libcblas=3.8.0
- libcurl=7.65.3
- libdap4=3.20.4
- libedit=3.1.20170329
- libffi=3.2.1
- libgcc-ng=9.2.0
- libgdal=2.4.1
- libcurl=7.67.0
- libdap4=3.19.1
- libedit=3.1.20181209
- libffi=3.3
- libgcc-ng=9.1.0
- libgdal=3.0.2
- libgfortran-ng=7.3.0
- libgomp=9.2.0
- libiconv=1.15
- libkml=1.3.0
- liblapack=3.8.0
- libnetcdf=4.6.2
- libopenblas=0.3.7
- libnetcdf=4.6.1
- libpng=1.6.37
- libpq=11.5
- libspatialindex=1.9.3
- libspatialite=4.3.0a
- libssh2=1.8.2
- libstdcxx-ng=9.2.0
- libssh2=1.9.0
- libstdcxx-ng=9.1.0
- libtiff=4.1.0
- libuuid=2.32.1
- libuuid=1.0.3
- libxcb=1.13
- libxml2=2.9.9
- libxslt=1.1.33
- locket=0.2.0
- lz4-c=1.8.3
- lxml=4.5.0
- lz4-c=1.8.1.2
- lzo=2.10
- markupsafe=1.1.1
- matplotlib=3.1.1
- matplotlib-base=3.1.1
- memory_profiler=0.56.0
- mock=3.0.5
- more-itertools=8.0.2
- msgpack-python=0.6.2
- matplotlib=3.1.3
- matplotlib-base=3.1.3
- memory_profiler=0.55.0
- metis=5.1.0
- mkl=2020.1
- mkl-service=2.3.0
- mkl_fft=1.0.15
- mkl_random=1.1.1
- mock=4.0.2
- more-itertools=8.3.0
- msgpack-python=1.0.0
- munch=2.5.0
- ncurses=6.1
- netcdf4=1.5.1.2
- nbformat=5.0.6
- ncurses=6.2
- netcdf4=1.4.2
- networkx=2.4
- nose=1.3.7
- numexpr=2.7.1
- numpy=1.17.3
- numpy=1.18.1
- numpy-base=1.18.1
- olefile=0.46
- openjpeg=2.3.1
- openmp_impl=4.5
- openssl=1.1.1d
- owslib=0.19.0
- packaging=20.0
- pandas=0.25.3
- parso=0.5.2
- openjpeg=2.3.0
- openssl=1.1.1g
- owslib=0.19.2
- packaging=20.3
- pandas=1.0.3
- parso=0.7.0
- partd=1.1.0
- patsy=0.5.1
- pcre=8.43
- pexpect=4.7.0
- pexpect=4.8.0
- pickleshare=0.7.5
- pillow=7.0.0
- pip=19.3.1
- pillow=7.1.2
- pip=20.0.2
- pixman=0.38.0
- pluggy=0.13.0
- pluggy=0.13.1
- ply=3.11
- poppler=0.67.0
- poppler=0.65.0
- poppler-data=0.4.9
- postgresql=11.5
- powerplantmatching=0.4.3
- progressbar2=3.47.0
- proj4=5.2.0
- prompt_toolkit=3.0.2
- psutil=5.6.7
- pthread-stubs=0.4
- powerplantmatching=0.4.5
- progressbar2=3.37.1
- proj=6.2.1
- prompt-toolkit=3.0.5
- prompt_toolkit=3.0.5
- psutil=5.7.0
- ptyprocess=0.6.0
- py=1.8.1
- pycountry=19.8.18
- pycparser=2.19
- pycparser=2.20
- pyepsg=0.4.0
- pygments=2.5.2
- pygments=2.6.1
- pykdtree=1.3.1
- pyomo=5.6.8
- pyomo=5.6.9
- pyopenssl=19.1.0
- pyparsing=2.4.6
- pyproj=1.9.6
- pypsa=0.16.0
- pyparsing=2.4.7
- pyproj=2.6.1.post1
- pypsa=0.17.0
- pyqt=5.9.2
- pyrsistent=0.15.7
- pyrsistent=0.16.0
- pyshp=2.1.0
- pysocks=1.7.1
- pytables=3.6.1
- pytest=5.3.2
- pytest=5.4.2
- pytest-runner=5.2
- python=3.7.6
- python=3.7.7
- python-dateutil=2.8.1
- python-utils=2.3.0
- pytz=2019.3
- pyutilib=5.7.3
- pyyaml=5.3
- python_abi=3.7
- pytz=2020.1
- pyutilib=5.8.0
- pyyaml=5.3.1
- qt=5.9.7
- rasterio=1.0.25
- rasterio=1.1.0
- ratelimiter=1.2.0
- readline=8.0
- requests=2.22.0
- rtree=0.9.3
- requests=2.23.0
- rtree=0.9.4
- scikit-learn=0.22.1
- scipy=1.4.1
- seaborn=0.9.0
- setuptools=44.0.0
- shapely=1.6.4
- seaborn=0.10.1
- setuptools=47.1.1
- shapely=1.7.0
- sip=4.19.8
- six=1.13.0
- smmap2=2.0.5
- snakemake-minimal=5.9.1
- six=1.15.0
- smmap=3.0.2
- snakemake-minimal=5.19.2
- snappy=1.1.7
- snuggs=1.4.7
- sortedcontainers=2.1.0
- soupsieve=1.9.4
- sqlite=3.30.1
- statsmodels=0.10.2
- soupsieve=2.0.1
- sqlite=3.31.1
- tbb=2018.0.5
- tblib=1.6.0
- tk=8.6.10
- tiledb=1.6.3
- tk=8.6.8
- toolz=0.10.0
- tornado=6.0.3
- toposort=1.5
- tornado=6.0.4
- traitlets=4.3.3
- tzcode=2019a
- urllib3=1.25.7
- wcwidth=0.1.8
- wheel=0.33.6
- wrapt=1.11.2
- xarray=0.14.1
- typing_extensions=3.7.4.1
- tzcode=2020a
- urllib3=1.25.8
- wcwidth=0.1.9
- wheel=0.34.2
- wrapt=1.12.1
- xarray=0.15.1
- xerces-c=3.2.2
- xlrd=1.2.0
- xorg-kbproto=1.0.7
- xorg-libice=1.0.10
- xorg-libsm=1.2.3
- xorg-libx11=1.6.9
- xorg-libxau=1.0.9
- xorg-libxdmcp=1.1.3
- xorg-libxext=1.3.4
- xorg-libxrender=0.9.10
- xorg-renderproto=0.11.1
- xorg-xextproto=7.3.0
- xorg-xproto=7.0.31
- xz=5.2.4
- yaml=0.2.2
- zict=1.0.0
- zipp=0.6.0
- xz=5.2.5
- yaml=0.1.7
- zict=2.0.0
- zipp=3.1.0
- zlib=1.2.11
- zstd=1.4.4
- zstd=1.3.7
- pip:
- cdsapi==0.2.5
- cdsapi==0.2.7
- countrycode==0.2
- descartes==1.1.0
- geokit==1.1.2
- glaes==1.1.2
- tqdm==4.41.1
- vresutils==0.3
- tqdm==4.46.1
- vresutils==0.3.1

BIN
scenarios.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -96,26 +96,31 @@ Outputs
.. image:: ../img/profile_ts.png
:scale: 33 %
:align: center
- **p_nom_max**
.. image:: ../img/p_nom_max_hist.png
:scale: 33 %
:align: center
- **potential**
.. image:: ../img/potential_heatmap.png
:scale: 33 %
:align: center
- **average_distance**
.. image:: ../img/distance_hist.png
:scale: 33 %
:align: center
- **underwater_fraction**
.. image:: ../img/underwater_hist.png
:scale: 33 %
:align: center
Description
-----------
@ -134,11 +139,31 @@ cutout grid cell and each node using the `GLAES
<https://github.com/FZJ-IEK3-VSA/glaes>`_ library. This uses the CORINE land use data,
Natura2000 nature reserves and GEBCO bathymetry data.
.. image:: ../img/eligibility.png
:scale: 50 %
:align: center
To compute the layout of generators in each node's Voronoi cell, the
installable potential in each grid cell is multiplied with the capacity factor
at each grid cell. This is done since we assume more generators are installed
at cells with a higher capacity factor.
.. image:: ../img/offwinddc-gridcell.png
:scale: 50 %
:align: center
.. image:: ../img/offwindac-gridcell.png
:scale: 50 %
:align: center
.. image:: ../img/onwind-gridcell.png
:scale: 50 %
:align: center
.. image:: ../img/solar-gridcell.png
:scale: 50 %
:align: center
This layout is then used to compute the generation availability time series
from the weather data cutout from ``atlite``.

View File

@ -93,6 +93,30 @@ Description
for all ``scenario`` s in the configuration file
the rule :mod:`cluster_network`.
Exemplary unsolved network clustered to 512 nodes:
.. image:: ../img/elec_s_512.png
:scale: 40 %
:align: center
Exemplary unsolved network clustered to 256 nodes:
.. image:: ../img/elec_s_256.png
:scale: 40 %
:align: center
Exemplary unsolved network clustered to 128 nodes:
.. image:: ../img/elec_s_128.png
:scale: 40 %
:align: center
Exemplary unsolved network clustered to 37 nodes:
.. image:: ../img/elec_s_37.png
:scale: 40 %
:align: center
"""
import logging

View File

@ -2,7 +2,7 @@
#
# SPDX-License-Identifier: CC0-1.0
version: 0.1.0
version: 0.2.0
tutorial: true
logging:
level: INFO