-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation gas #1128
Open
AmeliaNadal
wants to merge
10
commits into
dev
Choose a base branch
from
documentation/gas
base: dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Documentation gas #1128
Changes from 9 commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
c1390a2
Merge branch 'dev' into features/doc_gas
AmeliaNadal 5d761d0
Improve documentation of gas_neighbours
AmeliaNadal 24bf7a4
Improve gas voronoi documentation
AmeliaNadal 92b96c0
Improve saltcavern documentation
AmeliaNadal 3eeb0d4
Merge branch 'dev' into documentation/gas
AmeliaNadal 610d762
Merge branch 'features/#1126_documentation_rst_structure' into docume…
AmeliaNadal 314cfd0
Add global documnetation for gas
AmeliaNadal a2a7081
Add images for gas documentation
AmeliaNadal be8ba27
Improve open cycle gas turbine dataset documentation
AmeliaNadal ff07e42
Merge branch 'dev' into documentation/gas
pieterhexen File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,62 @@ | ||
Information on electricity supply by carrier etc. | ||
Gas turbines | ||
~~~~~~~~~~~~ | ||
|
||
The gas turbines, or open cycle gas turbines (OCGTs) allow the production | ||
of electricity from methane and are modelled with unidirectional PyPSA *links*, | ||
which connect methane buses to power buses. | ||
|
||
The capacities of the gas turbines are invariable and considered as constant. | ||
The technical parameters (investment and marginal costs, efficiency, lifetime) | ||
comes from the PyPSA technology data [technoData]_. | ||
|
||
In Germany | ||
"""""""""" | ||
|
||
In Germany, the gas turbines listed in the Netzentwicklungsplan [NEP2021]_ | ||
are matched to the Marktstammdatenregister in order to get their geographical | ||
coordinates in :py:func:`allocate_conventional_non_chp_power_plants | ||
<egon.data.datasets.power_plants.allocate_conventional_non_chp_power_plants>`. | ||
The matched units are then associated to the corresponding power and methane | ||
buses. | ||
|
||
The implementation of gas turbines in the data model is detailed in the | ||
:py:mod:`OpenCycleGasTurbineEtrago <egon.data.datasets.power_etrago.OpenCycleGasTurbineEtrago>` | ||
page of our documentation. | ||
|
||
**Warning** | ||
|
||
OCGT in Germany are still missing in eGon100RE: https://github.com/openego/eGon-data/issues/983 | ||
|
||
In the neighboring countries | ||
"""""""""""""""""""""""""""" | ||
|
||
In the scenario eGon2035, the gas turbines capacities abroad comes from the | ||
TYNDP 2035 [TYNDP]_, the implementation is detailed in :py:func:`eGon2035.tyndp_gas_generation | ||
<egon.data.datasets.gas_neighbours.eGon2035.tyndp_gas_generation>`. | ||
|
||
In the scenario eGon100RE the gas turbines capacities in the neighboring | ||
countries are taken directly from the PyPSA-eur-sec run. | ||
|
||
Fuel cells | ||
~~~~~~~~~~ | ||
|
||
The fuel cells allow the production of electricity from hydrogen and are | ||
modelled with unidirectional PyPSA *links*, which connect hydrogen buses | ||
to power buses. | ||
|
||
The data model contains the potentials of this technology, whose capacities | ||
are optimized. The technical parameters (investment and marginal costs, | ||
efficiency, lifetime) comes from the PyPSA technology data [technoData]_. | ||
|
||
In the eGon2035 scenario, fuel cells are modelled at every hydrogen bus | ||
in Germany, as well as in the eGon100RE scenario. In eGon100RE, this technology | ||
is also modelled in the neighboring countries. In Germany, the potentials | ||
are generally not limited, except when the connected buses are located more | ||
than 500m far from each other. In this particular case, the potential has | ||
an upper limit of 1 MW. | ||
|
||
The implementation of fuel cells in the data model is detailed in the | ||
:py:mod:`power_to_h2 <egon.data.datasets.hydrogen_etrago.power_to_h2>` | ||
page of our documentation. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,81 @@ | ||
Information about gas demands and their spatial and temporal aggregation, including hydrogen and methane demands | ||
The industrial gas demand is modelled with PyPSA *loads*. | ||
|
||
In Germany | ||
~~~~~~~~~~ | ||
|
||
In the scenario eGon2035, the industrial gas loads in Germany are taken | ||
directly from the eXtremos project data [eXtremos]_. They model the hourly-resolved | ||
industrial loads in Germany with a NUTS-3 spatial resolution, for methane | ||
(:math:`CH_4`), as well as for hydrogen (:math:`H_2`), for the year 2035. | ||
|
||
The spatial repartition of these loads is represented in the figure below | ||
(methane demand in grey and hydrogen in cyan). The size of the rounds on | ||
the figure corresponds to the total annual demand at the considered spot | ||
in the scenario eGon2035. | ||
|
||
.. image:: images/eGon2035_gas_ind_load_repartition_DE_withTitle.png | ||
:width: 400 | ||
|
||
In eGon100RE, the global industrial demand for methane and hydrogen (for | ||
whole Germany and for one year) is calculated by the PyPSA-eur-sec run. | ||
The spatial and the temporal repartitions used to distribute these values | ||
are corresponding to the spatial and temporal repartition of the hydrogen | ||
industrial demand from the eXtremos project [eXtremos]_ for the year 2050. | ||
(The same repartition is used, due to the lack of data were available for | ||
methane, because the eXtremos project considers that there won't be any | ||
industrial methane load in 2050.) | ||
|
||
.. image:: images/ind_gas_demand.png | ||
:width: 400 | ||
|
||
The figure above shows the temporal evolution of the methane (in grey) and | ||
hydrogen (in cyan) industrial demands in the year for both scenarios | ||
(eGon100RE in dashed). | ||
The total demands for whole Germany are to be found in the following table. | ||
|
||
.. list-table:: Total indutrial hydrogen and methane demands in Germany considered in eGon-data | ||
:widths: 25 25 25 | ||
:header-rows: 1 | ||
|
||
* - | ||
- eGon2035 | ||
- eGon100RE | ||
* - :math:`CH_4` (in TWh) | ||
- 195 | ||
- 105 | ||
* - :math:`H_2` (in TWh) | ||
- 16 | ||
- 42 | ||
|
||
The hydrogen loads are attributed only to the *H2_grid* buses. | ||
|
||
The implementation of these data is detailed in the :py:mod:`industrial_gas_demand | ||
<egon.data.datasets.industrial_gas_demand>` page of our documentation. | ||
|
||
In the neighboring countries | ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
In the scenario **eGon2035**, there are no hydrogen buses modelled in the | ||
neighboring countries. For this reason, the hydrogen industrial demand | ||
is there attributed to the electrical sector. | ||
The total demand is taken from the 'Distributed Energy' scenario of the | ||
Ten-Year Network Development Plan 2020 ([TYNDP]_). For the year | ||
2035, it has been linearly interpolated between the values for the year 2030 | ||
and 2040. These industrial hydrogen loads are considered as constant in | ||
time. In other words, at each hour of the year, the same load should by | ||
fulfilled by electricity to supply the hydrogen industrial demand. | ||
|
||
Contrary to all the other loads described in the section, the modelled | ||
methane load abroad includes not only the industrial demand, but also the | ||
heat demand, that is supplied by methane. The total demand is again taken | ||
from the 'Distributed Energy' scenario of the TYNDP 2020 (linear interpolation | ||
between 2030 and 2040). For the temporal disaggregation of the demand in | ||
the year, the time series 'rural heat' from PyPSA-eur-sec is used to approximated | ||
the temporal profile, because the heat sector represents the biggest load. | ||
|
||
The implementation of these data is detailed in the :py:mod:`gas_neighbours.eGon2035 | ||
<egon.data.datasets.gas_neighbours.eGon2035>` page of our documentation. | ||
|
||
In the scenario **eGon100RE**, the industrial gas loads (for methane as | ||
well as for hydrogen) in the neighboring countries are directly imported | ||
from the PyPSA-eur-sec run. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,89 @@ | ||
Information about the gas grids and how they were created | ||
In the gas sector, only the transport grids are represented. They are modelled | ||
with bidirectional PyPSA *links* which allow to represent the energy exchange | ||
between distinct PyPSA *buses*. No losses are considered and the | ||
energy that can be transferred through a pipeline is limited by the e_nom | ||
parameter. | ||
|
||
Methane grid | ||
~~~~~~~~~~~~ | ||
In the scenario **eGon2035**, only the methane grid is modelled. | ||
|
||
Hydrogen grid | ||
~~~~~~~~~~~~~ | ||
In the scenario **eGon100RE**, there are tree type of gas grid: | ||
|
||
* the remaining methane grid, | ||
* the retrofitted hydrogen grid, | ||
* the potential hydrogen grid extension (only present in Germany). | ||
|
||
In Germany | ||
~~~~~~~~~~ | ||
|
||
To determine the topology of the grid, the status quo methane grid is used, | ||
with the data from SciGRID_gas [SciGRID_gas]_. | ||
|
||
eGon2035 | ||
"""""""" | ||
|
||
In the scenario eGon2035, the capacities of the methane pipelines are determined | ||
using the status quo pipeline diameters [SciGRID_gas]_ and the correspondence | ||
table [Kunz]_. These capacities are fixed. | ||
|
||
There are two types of hydrogen buses and none of them are connected through | ||
a grid: | ||
|
||
* H2_grid buses: these buses are located at the places than the methane | ||
buses, | ||
* H2_saltcavern buses: these buses are located at the intersection of power | ||
substations and potential saltcavern areas, adapted for hydrogen storage. | ||
|
||
In this scenario, there are no hydrogen bus modelled in the neighboring | ||
countries. | ||
|
||
The modelling of the methane grid in the scenario eGon2035 is represented | ||
below. | ||
|
||
.. image:: images/2035_gasgrid_enTitle_00.png | ||
:width: 400 | ||
|
||
The implementation of these data is detailed respectively in the | ||
:py:mod:`gas_grid <egon.data.datasets.gas_grid>` and :py:mod:`hydrogen_etrago.bus | ||
<egon.data.datasets.hydrogen_etrago.bus>` pages of our documentation. | ||
|
||
eGon100RE | ||
""""""""" | ||
|
||
In the scenario eGon100RE, the methane grid has the same topology than in | ||
the scenario eGon2035. The capacities of the methane pipelines are still | ||
fixed, but they are reduced, because a part of the grid is retrofitted | ||
into an hydrogen grid. | ||
|
||
The retrofitted hydrogen grid has the same topology than the methane grid. | ||
The share of the methane grid which is retrofitted is calculated by the | ||
PyPSA-eur-sec run. | ||
|
||
The potential hydrogen grid extensions link each hydrogen saltcavern to | ||
its nearest (retrofitted) hydrogen grid bus. The extension has no upper | ||
boundary and its technical parameters are taken from the PyPSA technology | ||
data [technoData]_. This option is modelled exclusively in Germany. | ||
|
||
The modelling of the methane grid in the scenario eGon100RE is represented | ||
below. | ||
|
||
.. image:: images/100RE_gasgrid_enTitle_00.png | ||
:width: 400 | ||
|
||
The implementation of these data is detailed respectively in the :py:mod:`gas_grid | ||
<egon.data.datasets.gas_grid>` and :py:mod:`h2_grid <egon.data.datasets.hydrogen_etrago.h2_grid>` | ||
pages of our documentation. | ||
|
||
|
||
Cross-bordering pipelines | ||
~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
The cross-bordering pipelines capacities are taken respectively from the | ||
TYNDP [TYNDP]_ for eGon2035 and from PyPSA-eur-sec for eGon100RE. | ||
|
||
For the cross-bordering gas pipelines with Germany, the capacity is uniformly | ||
distributed between the all pipelines connecting one country to Germany. | ||
|
||
The implementation of these data is detailed respectively in the | ||
:py:func:`gas_neighbours.eGon2035.grid <egon.data.datasets.gas_neighbours.eGon2035.grid>` and | ||
:py:func:`insert_gas_neigbours_eGon100RE <egon.data.datasets.gas_neighbours.eGon100RE.insert_gas_neigbours_eGon100RE>` | ||
pages of our documentation. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,59 @@ | ||
Description of methods and assumptions to include potential h2 stores in the system | ||
|
||
Hydrogen stores | ||
--------------- | ||
~~~~~~~~~~~~~~~ | ||
|
||
In both scenarios is there the option to store hydrogen. In the scenario | ||
eGon2035, these potentials are modelled only in Germany, because the hydrogen | ||
sector is not modelled in the neighboring countries. | ||
Hydrogen is stored either in steel tanks (*overground storage*) or in saltcavern | ||
(*underground storage*), which are modelled by PyPSA *stores*. The technical | ||
parameters (investment and marginal costs, efficiency, lifetime) comes | ||
from the PyPSA technology data [technoData]_. The steel tank storage potentials | ||
are not limited. On the contrary, the saltcavern storage potentials do have | ||
an upper boundary. | ||
|
||
In Germany | ||
"""""""""" | ||
|
||
The saltcavern potentials are located at the intersection between the power | ||
substations and the adapted saltcavern surface areas, defined in the InSpEE-DS | ||
report from the Bundesanstalt für Geowissenschaften und Rohstoffe [BGR]_. | ||
These potentials, identical in the both scenarios, are represented in the | ||
figure below. | ||
|
||
.. image:: images/H2_underground_stores_withTitle.png | ||
:width: 400 | ||
|
||
The implementation of these data is detailed in the :py:mod:`hydrogen_etrago.storage | ||
<egon.data.datasets.hydrogen_etrago.storage>` page of our documentation. | ||
|
||
In eGon100RE, the retrofitted hydrogen grid can also be used as storage, | ||
with unvariable capacity. This implementation is detailed in the | ||
:py:mod:`grid_storage <egon.data.datasets.ch4_storages>` page of our documentation. | ||
|
||
In the neighboring countries | ||
"""""""""""""""""""""""""""" | ||
|
||
In the scenario eGon100RE the hydrogen storage potentials in the neighboring | ||
countries are taken directly from the PyPSA-eur-sec run. | ||
|
||
Methane stores | ||
-------------- | ||
~~~~~~~~~~~~~~ | ||
|
||
The methane stores are modelled as PyPSA *stores* and they are invariable. | ||
In Germany, two types of methane stores are modelled: | ||
|
||
* the underground caverns: capacities from SciGRID_gas [SciGRID_gas]_, | ||
* the storage capacity of the German gas grid. | ||
|
||
The storage capacity of the gas grid (130 GWh according to the Bundesnetzagentur | ||
[Bna]_) is uniformly distributed between all the methane nodes in Germany | ||
in the scenario eGon2035. | ||
In the scenario eGon100RE, the retrofitted hydrogen grid take a share of | ||
this storage capacity over. | ||
|
||
The implementation of the methane storage in the data model is detailed in the | ||
:py:mod:`ch4_storages <egon.data.datasets.ch4_storages>` page of our documentation. | ||
|
||
In the neighboring countries, the methane store capacities from SciGRID_gas [SciGRID_gas]_ | ||
are used in the eGon2035 scenario and data from PyPSA-eur-sec are used in | ||
the eGon100RE scenario. |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these buses are located at the places of the methane