configuration table descriptions

This commit is contained in:
Fabian Neumann 2019-08-07 10:56:23 +02:00
parent 45d67c1158
commit 7a4e9f22d4
26 changed files with 397 additions and 6 deletions

View File

@ -19,7 +19,7 @@ import shlex
# If extensions (or modules to document with autodoc) are in another directory, # If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the # add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here. # documentation root, use os.path.abspath to make it absolute, like shown here.
#sys.path.insert(0, os.path.abspath('.')) sys.path.insert(0, os.path.abspath('../scripts'))
# -- General configuration ------------------------------------------------ # -- General configuration ------------------------------------------------
@ -35,7 +35,7 @@ extensions = [
'sphinx.ext.intersphinx', 'sphinx.ext.intersphinx',
'sphinx.ext.todo', 'sphinx.ext.todo',
'sphinx.ext.mathjax', 'sphinx.ext.mathjax',
#'sphinx.ext.napoleon', 'sphinx.ext.napoleon',
#'sphinx.ext.pngmath', #'sphinx.ext.pngmath',
#'sphinxcontrib.tikz', #'sphinxcontrib.tikz',
#'rinoh.frontend.sphinx', #'rinoh.frontend.sphinx',

View File

@ -0,0 +1,13 @@
,Unit,Values,Description
nprocesses,--,{'E'},TODO
cutouts,--,E,TODO
-- europe-2013-era5,--,E,TODO
-- -- module,--,E,TODO
-- -- xs,--,E,TODO
-- -- ys,--,E,TODO
-- -- years,--,E,TODO
-- europe-2013-sarah,--,E,TODO
-- -- module,--,E,TODO
-- -- xs,--,E,TODO
-- -- ys,--,E,TODO
-- -- years,--,E,TODO
1 Unit Values Description
2 nprocesses -- {'E'} TODO
3 cutouts -- E TODO
4 -- europe-2013-era5 -- E TODO
5 -- -- module -- E TODO
6 -- -- xs -- E TODO
7 -- -- ys -- E TODO
8 -- -- years -- E TODO
9 -- europe-2013-sarah -- E TODO
10 -- -- module -- E TODO
11 -- -- xs -- E TODO
12 -- -- ys -- E TODO
13 -- -- years -- E TODO

View File

@ -0,0 +1,7 @@
,Unit,Values,Description
year,--,{'E'},TODO
discountrate,--,E,TODO
USD2013_to_EUR2013,--,E,TODO
capital_cost,--,E,TODO
marginal_cost,--,E,TODO
emission_prices,--,E,TODO
1 Unit Values Description
2 year -- {'E'} TODO
3 discountrate -- E TODO
4 USD2013_to_EUR2013 -- E TODO
5 capital_cost -- E TODO
6 marginal_cost -- E TODO
7 emission_prices -- E TODO

View File

@ -0,0 +1,10 @@
,Unit,Values,Description
voltages,--,{'E'},TODO
co2limit,--,E,TODO
extendable_carriers,--,E,TODO
-- Generator,--,E,TODO
-- StorageUnit,--,E,TODO
max_hours,--,E,TODO
-- battery,--,E,TODO
-- H2,--,E,TODO
conventional_carriers,--,E,TODO
1 Unit Values Description
2 voltages -- {'E'} TODO
3 co2limit -- E TODO
4 extendable_carriers -- E TODO
5 -- Generator -- E TODO
6 -- StorageUnit -- E TODO
7 max_hours -- E TODO
8 -- battery -- E TODO
9 -- H2 -- E TODO
10 conventional_carriers -- E TODO

View File

@ -0,0 +1,6 @@
,Unit,Values,Description
cutout,--,{'E'},TODO
carriers,--,E,TODO
PHS_max_hours,--,E,TODO
hydro_max_hours,--,E,TODO
clip_min_inflow,--,E,TODO
1 Unit Values Description
2 cutout -- {'E'} TODO
3 carriers -- E TODO
4 PHS_max_hours -- E TODO
5 hydro_max_hours -- E TODO
6 clip_min_inflow -- E TODO

View File

@ -0,0 +1,9 @@
,Unit,Values,Description
types,--,{'E'},TODO
-- 220.,--,E,TODO
-- 300.,--,E,TODO
-- 380.,--,E,TODO
s_max_pu,--,E,TODO
length_factor,--,E,TODO
length_factor,--,E,TODO
under_construction,--,E,TODO
1 Unit Values Description
2 types -- {'E'} TODO
3 -- 220. -- E TODO
4 -- 300. -- E TODO
5 -- 380. -- E TODO
6 s_max_pu -- E TODO
7 length_factor -- E TODO
8 length_factor -- E TODO
9 under_construction -- E TODO

View File

@ -0,0 +1,4 @@
,Unit,Values,Description
p_max_pu,--,{'E'},TODO
include_tyndp,--,E,TODO
under_construction,--,E,TODO
1 Unit Values Description
2 p_max_pu -- {'E'} TODO
3 include_tyndp -- E TODO
4 under_construction -- E TODO

View File

@ -0,0 +1,2 @@
,Unit,Values,Description
scaling_factor,--,{'E'},TODO
1 Unit Values Description
2 scaling_factor -- {'E'} TODO

View File

@ -0,0 +1,12 @@
,Unit,Values,Description
cutout,--,{'E'},TODO
resource,--,E,TODO
-- method,--,E,TODO
-- turbine,--,E,TODO
capacity_per_sqkm,--,E,TODO
corine,--,E,TODO
natura,--,E,TODO
max_depth,--,E,TODO
min_shore_distance,--,E,TODO
potential,--,E,TODO
clip_p_max_pu,--,E,TODO
1 Unit Values Description
2 cutout -- {'E'} TODO
3 resource -- E TODO
4 -- method -- E TODO
5 -- turbine -- E TODO
6 capacity_per_sqkm -- E TODO
7 corine -- E TODO
8 natura -- E TODO
9 max_depth -- E TODO
10 min_shore_distance -- E TODO
11 potential -- E TODO
12 clip_p_max_pu -- E TODO

View File

@ -0,0 +1,12 @@
,Unit,Values,Description
cutout,--,{'E'},TODO
resource,--,E,TODO
-- method,--,E,TODO
-- turbine,--,E,TODO
capacity_per_sqkm,--,E,TODO
corine,--,E,TODO
natura,--,E,TODO
max_depth,--,E,TODO
min_shore_distance,--,E,TODO
potential,--,E,TODO
clip_p_max_pu,--,E,TODO
1 Unit Values Description
2 cutout -- {'E'} TODO
3 resource -- E TODO
4 -- method -- E TODO
5 -- turbine -- E TODO
6 capacity_per_sqkm -- E TODO
7 corine -- E TODO
8 natura -- E TODO
9 max_depth -- E TODO
10 min_shore_distance -- E TODO
11 potential -- E TODO
12 clip_p_max_pu -- E TODO

View File

@ -0,0 +1,13 @@
,Unit,Values,Description
cutout,--,{'E'},TODO
resource,--,E,TODO
-- method,--,E,TODO
-- turbine,--,E,TODO
capacity_per_sqkm,--,E,TODO
corine,--,E,TODO
-- grid_codes,--,E,TODO
-- distance,--,E,TODO
-- distance_grid_codes,--,E,TODO
natura,--,E,TODO
potential,--,E,TODO
clip_p_max_pu,--,E,TODO
1 Unit Values Description
2 cutout -- {'E'} TODO
3 resource -- E TODO
4 -- method -- E TODO
5 -- turbine -- E TODO
6 capacity_per_sqkm -- E TODO
7 corine -- E TODO
8 -- grid_codes -- E TODO
9 -- distance -- E TODO
10 -- distance_grid_codes -- E TODO
11 natura -- E TODO
12 potential -- E TODO
13 clip_p_max_pu -- E TODO

View File

@ -0,0 +1,24 @@
,Unit,Values,Description
map,--,{'E'},TODO
-- figsize,--,E,TODO
-- boundaries,--,E,TODO
-- p_nom,--,E,TODO
-- -- bus_size_factor,--,E,TODO
-- -- linewidth_factor,--,E,TODO
costs_max,--,E,TODO
costs_threshold,--,E,TODO
energy_max,--,E,TODO
energy_min,--,E,TODO
energy_threshold,--,E,TODO
vre_techs,--,E,TODO
conv_techs,--,E,TODO
storage_techs,--,E,TODO
store_techs,--,E,TODO
load_carriers,--,E,TODO
AC_carriers,--,E,TODO
link_carriers,--,E,TODO
heat_links,--,E,TODO
heat_generators,--,E,TODO
tech_colors,--,E,TODO
nice_names,--,E,TODO
nice_names_n,--,E,TODO
1 Unit Values Description
2 map -- {'E'} TODO
3 -- figsize -- E TODO
4 -- boundaries -- E TODO
5 -- p_nom -- E TODO
6 -- -- bus_size_factor -- E TODO
7 -- -- linewidth_factor -- E TODO
8 costs_max -- E TODO
9 costs_threshold -- E TODO
10 energy_max -- E TODO
11 energy_min -- E TODO
12 energy_threshold -- E TODO
13 vre_techs -- E TODO
14 conv_techs -- E TODO
15 storage_techs -- E TODO
16 store_techs -- E TODO
17 load_carriers -- E TODO
18 AC_carriers -- E TODO
19 link_carriers -- E TODO
20 heat_links -- E TODO
21 heat_generators -- E TODO
22 tech_colors -- E TODO
23 nice_names -- E TODO
24 nice_names_n -- E TODO

View File

@ -0,0 +1,6 @@
,Unit,Values,Description
sectors,--,{'E'},TODO
simpl,--,E,TODO
ll,--,E,TODO
clusters,--,E,TODO
opts,--,E,TODO
1 Unit Values Description
2 sectors -- {'E'} TODO
3 simpl -- E TODO
4 ll -- E TODO
5 clusters -- E TODO
6 opts -- E TODO

View File

@ -0,0 +1,4 @@
,Unit,Values,Description
start,--,{'E'},TODO
end,--,E,TODO
closed,--,E,TODO
1 Unit Values Description
2 start -- {'E'} TODO
3 end -- E TODO
4 closed -- E TODO

View File

@ -0,0 +1,14 @@
,Unit,Values,Description
cutout,--,{'E'},TODO
resource,--,E,TODO
-- method,--,E,TODO
-- panel,--,E,TODO
-- orientation,--,E,TODO
-- -- slope,--,E,TODO
-- -- azimuth,--,E,TODO
capacity_per_sqkm,--,E,TODO
correction_factor,--,E,TODO
corine,--,E,TODO
natura,--,E,TODO
potential,--,E,TODO
clip_p_max_pu,--,E,TODO
1 Unit Values Description
2 cutout -- {'E'} TODO
3 resource -- E TODO
4 -- method -- E TODO
5 -- panel -- E TODO
6 -- orientation -- E TODO
7 -- -- slope -- E TODO
8 -- -- azimuth -- E TODO
9 capacity_per_sqkm -- E TODO
10 correction_factor -- E TODO
11 corine -- E TODO
12 natura -- E TODO
13 potential -- E TODO
14 clip_p_max_pu -- E TODO

View File

@ -0,0 +1,8 @@
,Unit,Values,Description
formulation,--,{'E'},TODO
load_shedding,--,E,TODO
noisy_costs,--,E,TODO
min_iterations,--,E,TODO
max_iterations,--,E,TODO
nhours,--,E,TODO
clip_p_max_pu,--,E,TODO
1 Unit Values Description
2 formulation -- {'E'} TODO
3 load_shedding -- E TODO
4 noisy_costs -- E TODO
5 min_iterations -- E TODO
6 max_iterations -- E TODO
7 nhours -- E TODO
8 clip_p_max_pu -- E TODO

View File

@ -0,0 +1,3 @@
,Unit,Values,Description
name,--,{'E'},TODO
opts,--,E,TODO
1 Unit Values Description
2 name -- {'E'} TODO
3 opts -- E TODO

View File

@ -0,0 +1,8 @@
,Unit,Values,Description
version,--,{'E'},TODO
logging_level,--,E,TODO
summary_dir,--,E,TODO
countries,--,E,TODO
enable,--,E,TODO
-- powerplantmatching,--,{'E'},TODO
-- prepare_links_p_nom,--,E,TODO
1 Unit Values Description
2 version -- {'E'} TODO
3 logging_level -- E TODO
4 summary_dir -- E TODO
5 countries -- E TODO
6 enable -- E TODO
7 -- powerplantmatching -- {'E'} TODO
8 -- prepare_links_p_nom -- E TODO

View File

@ -0,0 +1,4 @@
,Unit,Values,Description
x,--,{'E'},TODO
s_nom,--,E,TODO
type,--,E,TODO
1 Unit Values Description
2 x -- {'E'} TODO
3 s_nom -- E TODO
4 type -- E TODO

View File

@ -2,8 +2,175 @@
Configuration Configuration
########################################## ##########################################
Section A Single-level entries
========= ====================
Section B .. literalinclude:: ../config.yaml
========= :language: yaml
:lines: 1-5,15
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/toplevel.csv
Wildcards and ``scenario``
==========================
.. literalinclude:: ../config.yaml
:language: yaml
:lines: 6-13
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/scenario.csv
``snapshots``
=============
.. literalinclude:: ../config.yaml
:language: yaml
:lines: 17-21
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/snapshots.csv
``electricity``
===============
.. literalinclude:: ../config.yaml
:language: yaml
:lines: 27-44
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/electricity.csv
``atlite``
=============
.. literalinclude:: ../config.yaml
:language: yaml
:lines: 46-59
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/atlite.csv
``renewable``
=============
``onwind``
----------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/onwind.csv
``offwind-ac``
--------------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/offwind-ac.csv
``offwind-dc``
---------------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/offwind-dc.csv
``solar``
---------------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/solar.csv
``hydro``
---------------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/hydro.csv
``lines``
=============
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/lines.csv
``links``
=============
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/links.csv
``transformers``
================
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/transformers.csv
``load``
=============
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/load.csv
``costs``
=============
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/costs.csv
``solving``
=============
``options``
-----------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/solving-options.csv
``solver``
----------
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/solving-solver.csv
``plotting``
=============
.. csv-table::
:header-rows: 1
:align: left
:file: configtables/plotting.csv

BIN
doc/dconf/user Normal file

Binary file not shown.

View File

@ -1,3 +1,5 @@
.. _installation:
########################################## ##########################################
Installation Installation
########################################## ##########################################
@ -23,6 +25,7 @@ Clone the PyPSA-Eur repository using ``git``
The path to the directory into which the ``git repository`` is cloned, The path to the directory into which the ``git repository`` is cloned,
must not have any spaces. must not have any spaces.
.. _deps:
Install Python Dependencies Install Python Dependencies
=============================== ===============================
@ -43,6 +46,7 @@ The environment can be installed and activated using
After opening a new terminal window, After opening a new terminal window,
one needs to reissue the second command! one needs to reissue the second command!
.. _data:
Download Data Dependencies Download Data Dependencies
============================== ==============================

View File

@ -1,3 +1,5 @@
.. _intro:
########################################## ##########################################
Introduction Introduction
########################################## ##########################################
@ -7,3 +9,8 @@ Section A
Section B Section B
========= =========
System Requirements
===================
Building the model with the scripts in this repository uses up to 20 GB of memory. Computing optimal investment and operation scenarios requires a strong interior-point solver compatible with the modelling library `Pyomo <https://www.pyomo.org>`_ like `Gurobi <http://www.gurobi.com/>`_ or `CPLEX <https://www.ibm.com/analytics/cplex-optimizer>`_ with up to 100 GB of memory.

View File

@ -5,6 +5,8 @@ Plotting and Summary
Make Summary Make Summary
============ ============
.. automodule:: make_summary
Plot Summary Plot Summary
============ ============

View File

@ -1,3 +1,5 @@
########################################## ##########################################
Simplifying Networks Simplifying Networks
########################################## ##########################################
@ -5,8 +7,45 @@ Simplifying Networks
Simplify Network Simplify Network
================ ================
The rule simplify_network does up to four things:
1. Create an equivalent transmission network in which all voltage levels are mapped to the 380 kV level by the function ``simplify_network(...)``.
2. DC only sub-networks that are connected at only two buses to the AC network are reduced to a single representative link by the function ``simplify_links(...)``. The components attached to buses in between are moved to the nearest endpoint. The grid connection cost of offshore wind generators are added to the captial costs of the generator.
3. Stub lines and links, i.e. dead-ends of the network, are sequentially removed from the network by the function ``remove_stubs(...)``. Components are moved along.
4. If a number was provided after the s (as in elec_s500_...), the network is clustered to this number of clusters with the routines from the cluster_network rule by the function cluster. This step is usually skipped.
Cluster Network Cluster Network
=============== ===============
The rule cluster_network instead clusters the network to a given number of buses.
-Why is this cluster function used?
-Why the user can set a number behind the elec_sXXX for simplification?
As you found out for yourself, elec_s100_50.nc for example is a network in which simplify_network clusters the network to 100 buses and in a second step cluster_network reduces it down to 50 buses.
Well, let me provide a use-case where this makes sense:
In preliminary tests, it turns out, that the principal effect of changing spatial resolution is actually only partially due to the transmission network. It is more important to differentiate between wind generators with higher capacity factors from those with lower capacity factors, ie to have a higher spatial resolution in the renewable generation than in the number of buses.
This two-step clustering can take advantage of that fact (and allows to study it)
by looking at networks like networks/elec_s100_50m.nc (note the additional m in the cluster wildcard). For this example simplify_network clusters to 100 buses and then cluster_network clusters to 50m buses, which means 50 buses for the network topology but only moving instead of aggregating the generators to the clustered buses. So in this network you still have up to 100 different wind generators, 2 at each bus on average.
In combination these two features allow you to study the spatial resolution of the transmission network separately from the spatial resolution of renewable generators. Beware: There is no clear evidence telling you what is a good representation of the full model. These options are under active study.
Why we have a cluster function inside of the simplification method?
Why are you asking three times the same question?
Is it possible to run the model without the simplification method / rule?
I tryed to run the snakemake without the s for simplification.
No, the network clustering methods in PyPSA's networkclustering module don't work reliably with multiple voltage levels and transformers. If it is somehow necessary for you we could include switches to make Step 2 and 3 optional as well. But that's about it.
Prepare Network Prepare Network
=============== ===============

View File

@ -1,3 +1,16 @@
"""
Test module description
Examples
--------
Test example
`Example <http://www.example.com>`_
:ref:`Installation <installation>`
``code``
"""
import os import os
from six import iteritems from six import iteritems
from itertools import product from itertools import product