Merge branch 'master' of github.com:PyPSA/pypsa-eur
This commit is contained in:
commit
5b2d4047df
@ -38,17 +38,15 @@ scenario:
|
||||
simpl:
|
||||
- ''
|
||||
ll:
|
||||
- v1.5
|
||||
- vopt
|
||||
clusters:
|
||||
- 37
|
||||
- 128
|
||||
- 256
|
||||
- 512
|
||||
- 1024
|
||||
opts:
|
||||
- ''
|
||||
sector_opts:
|
||||
- Co2L0-3H-T-H-B-I-A-dist1
|
||||
- ''
|
||||
planning_horizons:
|
||||
# - 2020
|
||||
# - 2030
|
||||
|
@ -15,7 +15,7 @@ scenario:
|
||||
clusters:
|
||||
- 5
|
||||
opts:
|
||||
- Co2L-24h
|
||||
- ''
|
||||
|
||||
countries: ['BE']
|
||||
|
||||
@ -24,6 +24,7 @@ snapshots:
|
||||
end: "2013-03-08"
|
||||
|
||||
electricity:
|
||||
co2limit_enable: true
|
||||
co2limit: 100.e+6
|
||||
|
||||
extendable_carriers:
|
||||
@ -63,6 +64,8 @@ renewable:
|
||||
|
||||
clustering:
|
||||
exclude_carriers: ["OCGT", "offwind-ac", "coal"]
|
||||
temporal:
|
||||
resolution_elec: 24h
|
||||
|
||||
lines:
|
||||
dynamic_line_rating:
|
||||
|
@ -18,7 +18,7 @@ scenario:
|
||||
clusters:
|
||||
- 5
|
||||
sector_opts:
|
||||
- 24h-T-H-B-I-A-dist1
|
||||
- ''
|
||||
planning_horizons:
|
||||
- 2030
|
||||
- 2040
|
||||
@ -34,7 +34,6 @@ sector:
|
||||
central_heat_vent: true
|
||||
|
||||
electricity:
|
||||
co2limit: 100.e+6
|
||||
|
||||
extendable_carriers:
|
||||
Generator: [OCGT]
|
||||
@ -69,6 +68,10 @@ renewable:
|
||||
solar:
|
||||
cutout: be-03-2013-era5
|
||||
|
||||
clustering:
|
||||
temporal:
|
||||
resolution_sector: 24h
|
||||
|
||||
industry:
|
||||
St_primary_fraction:
|
||||
2030: 0.6
|
||||
|
@ -17,7 +17,7 @@ scenario:
|
||||
clusters:
|
||||
- 5
|
||||
sector_opts:
|
||||
- CO2L0-24h-T-H-B-I-A-dist1
|
||||
- ''
|
||||
planning_horizons:
|
||||
- 2030
|
||||
|
||||
@ -28,7 +28,6 @@ snapshots:
|
||||
end: "2013-03-08"
|
||||
|
||||
electricity:
|
||||
co2limit: 100.e+6
|
||||
|
||||
extendable_carriers:
|
||||
Generator: [OCGT]
|
||||
@ -63,6 +62,10 @@ renewable:
|
||||
solar:
|
||||
cutout: be-03-2013-era5
|
||||
|
||||
clustering:
|
||||
temporal:
|
||||
resolution_sector: 24h
|
||||
|
||||
sector:
|
||||
gas_network: true
|
||||
H2_retrofit: true
|
||||
|
@ -18,7 +18,7 @@ scenario:
|
||||
clusters:
|
||||
- 5
|
||||
sector_opts:
|
||||
- 8760h-T-H-B-I-A-dist1
|
||||
- ''
|
||||
planning_horizons:
|
||||
- 2030
|
||||
- 2040
|
||||
@ -31,7 +31,6 @@ snapshots:
|
||||
end: "2013-03-08"
|
||||
|
||||
electricity:
|
||||
co2limit: 100.e+6
|
||||
|
||||
extendable_carriers:
|
||||
Generator: [OCGT]
|
||||
@ -70,6 +69,10 @@ renewable:
|
||||
solar:
|
||||
cutout: be-03-2013-era5
|
||||
|
||||
clustering:
|
||||
temporal:
|
||||
resolution_sector: 8760h
|
||||
|
||||
industry:
|
||||
St_primary_fraction:
|
||||
2020: 0.8
|
||||
|
@ -19,7 +19,7 @@ scenario:
|
||||
clusters:
|
||||
- 5
|
||||
opts:
|
||||
- Co2L-24H
|
||||
- ''
|
||||
|
||||
countries: ['BE']
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
voltages,kV,"Any subset of {220., 300., 380.}",Voltage levels to consider
|
||||
gaslimit_enable,bool,true or false,Add an overall absolute gas limit configured in ``electricity: gaslimit``.
|
||||
gaslimit,MWhth,float or false,Global gas usage limit
|
||||
co2limit_enable,bool,true or false,Add an overall absolute carbon-dioxide emissions limit configured in ``electricity: co2limit``.
|
||||
co2limit_enable,bool,true or false,Add an overall absolute carbon-dioxide emissions limit configured in ``electricity: co2limit`` in :mod:`prepare_network`. **Warning:** This option should currently only be used with electricity-only networks, not for sector-coupled networks..
|
||||
co2limit,:math:`t_{CO_2-eq}/a`,float,Cap on total annual system carbon dioxide emissions
|
||||
co2base,:math:`t_{CO_2-eq}/a`,float,Reference value of total annual system carbon dioxide emissions if relative emission reduction target is specified in ``{opts}`` wildcard.
|
||||
agg_p_nom_limits,file,path,Reference to ``.csv`` file specifying per carrier generator nominal capacity constraints for individual countries if ``'CCL'`` is in ``{opts}`` wildcard. Defaults to ``data/agg_p_nom_minmax.csv``.
|
||||
|
Can't render this file because it has a wrong number of fields in line 5.
|
@ -1,5 +1,5 @@
|
||||
Trigger, Description, Definition, Status
|
||||
``nH``, i.e. ``2H``-``6H``, "Resample the time-resolution by averaging over every ``n`` snapshots, ``prepare_network``: `average_every_nhours() <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L110>`_ and its `caller <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L146>`__)", In active use
|
||||
``nH``, i.e. ``2h``-``6h``, "Resample the time-resolution by averaging over every ``n`` snapshots, ``prepare_network``: `average_every_nhours() <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L110>`_ and its `caller <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L146>`__)", In active use
|
||||
``Co2L``, Add an overall absolute carbon-dioxide emissions limit configured in ``electricity: co2limit``. If a float is appended an overall emission limit relative to the emission level given in ``electricity: co2base`` is added (e.g. ``Co2L0.05`` limits emissisions to 5% of what is given in ``electricity: co2base``), ``prepare_network``: `add_co2limit() <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L19>`_ and its `caller <https://github.com/PyPSA/pypsa-eur/blob/6b964540ed39d44079cdabddee8333f486d0cd63/scripts/prepare_network.py#L154>`__, In active use
|
||||
``carrier+{c|p|m}factor``,"Alter the capital cost (``c``), installable potential (``p``) or marginal costs (``m``) of a carrier by a factor. Example: ``solar+c0.5`` reduces the capital cost of solar to 50\% of original values.", ``prepare_network``, In active use
|
||||
``T``,Add land transport sector,,In active use
|
||||
|
|
@ -35,7 +35,7 @@ For instance, an invocation to
|
||||
|
||||
.. code:: bash
|
||||
|
||||
.../pypsa-eur % snakemake -call results/networks/elec_s_128_ec_lvopt_Co2L-3H.nc
|
||||
.../pypsa-eur % snakemake -call results/networks/elec_s_128_ec_lvopt_.nc
|
||||
|
||||
follows this dependency graph
|
||||
|
||||
@ -50,7 +50,7 @@ preceding rules which another rule takes as input data.
|
||||
|
||||
.. note::
|
||||
The dependency graph was generated using
|
||||
``snakemake --dag results/networks/elec_s_128_ec_lvopt_Co2L-3H.nc -F | sed -n "/digraph/,/}/p" | dot -Tpng -o doc/img/intro-workflow.png``
|
||||
``snakemake --dag results/networks/elec_s_128_ec_lvopt_.nc -F | sed -n "/digraph/,/}/p" | dot -Tpng -o doc/img/intro-workflow.png``
|
||||
|
||||
For the use of ``snakemake``, it makes sense to familiarize yourself quickly
|
||||
with the `basic tutorial
|
||||
|
@ -9,6 +9,9 @@ Release Notes
|
||||
|
||||
Upcoming Release
|
||||
================
|
||||
|
||||
* Bump minimum ``powerplantmatching`` version to v0.5.15.
|
||||
|
||||
* Add floating wind technology for water depths below 60m
|
||||
|
||||
* Group existing capacities to the earlier grouping_year for consistency with optimized capacities.
|
||||
@ -224,6 +227,8 @@ Upcoming Release
|
||||
|
||||
* Clarify suffix usage in `add_existing_baseyear`.
|
||||
|
||||
* The ``{sector_opts}`` wildcard is now not used by default. All scenario definitions are now done in the ``config.yaml`` file.
|
||||
|
||||
PyPSA-Eur 0.10.0 (19th February 2024)
|
||||
=====================================
|
||||
|
||||
|
@ -32,7 +32,7 @@ configuration, execute
|
||||
.. code:: bash
|
||||
:class: full-width
|
||||
|
||||
snakemake -call results/test-elec/networks/elec_s_6_ec_lcopt_Co2L-24H.nc --configfile config/test/config.electricity.yaml
|
||||
snakemake -call results/test-elec/networks/elec_s_6_ec_lcopt_.nc --configfile config/test/config.electricity.yaml
|
||||
|
||||
This configuration is set to download a reduced cutout via the rule :mod:`retrieve_cutout`.
|
||||
For more information on the data dependencies of PyPSA-Eur, continue reading :ref:`data`.
|
||||
@ -114,9 +114,9 @@ clustered down to 6 buses and every 24 hours aggregated to one snapshot. The com
|
||||
|
||||
.. code:: bash
|
||||
|
||||
snakemake -call results/test-elec/networks/elec_s_6_ec_lcopt_Co2L-24H.nc --configfile config/test/config.electricity.yaml
|
||||
snakemake -call results/test-elec/networks/elec_s_6_ec_lcopt_.nc --configfile config/test/config.electricity.yaml
|
||||
|
||||
orders ``snakemake`` to run the rule :mod:`solve_network` that produces the solved network and stores it in ``results/networks`` with the name ``elec_s_6_ec_lcopt_Co2L-24H.nc``:
|
||||
orders ``snakemake`` to run the rule :mod:`solve_network` that produces the solved network and stores it in ``results/networks`` with the name ``elec_s_6_ec_lcopt_.nc``:
|
||||
|
||||
.. literalinclude:: ../rules/solve_electricity.smk
|
||||
:start-at: rule solve_network:
|
||||
@ -133,7 +133,7 @@ This triggers a workflow of multiple preceding jobs that depend on each rule's i
|
||||
node[shape=box, style=rounded, fontname=sans, fontsize=10, penwidth=2];
|
||||
edge[penwidth=2, color=grey];
|
||||
0[label = "solve_network", color = "0.38 0.6 0.85", style="rounded"];
|
||||
1[label = "prepare_network\nll: copt\nopts: Co2L-24H", color = "0.53 0.6 0.85", style="rounded"];
|
||||
1[label = "prepare_network\nll: copt", color = "0.53 0.6 0.85", style="rounded"];
|
||||
2[label = "add_extra_components", color = "0.01 0.6 0.85", style="rounded"];
|
||||
3[label = "cluster_network\nclusters: 6", color = "0.03 0.6 0.85", style="rounded"];
|
||||
4[label = "simplify_network\nsimpl: ", color = "0.42 0.6 0.85", style="rounded"];
|
||||
@ -268,7 +268,7 @@ For example, you can explore the evolution of the PyPSA networks by running
|
||||
#. ``snakemake resources/networks/elec.nc -call --configfile config/test/config.electricity.yaml``
|
||||
#. ``snakemake resources/networks/elec_s.nc -call --configfile config/test/config.electricity.yaml``
|
||||
#. ``snakemake resources/networks/elec_s_6.nc -call --configfile config/test/config.electricity.yaml``
|
||||
#. ``snakemake resources/networks/elec_s_6_ec_lcopt_Co2L-24H.nc -call --configfile config/test/config.electricity.yaml``
|
||||
#. ``snakemake resources/networks/elec_s_6_ec_lcopt_.nc -call --configfile config/test/config.electricity.yaml``
|
||||
|
||||
To run all combinations of wildcard values provided in the ``config/config.yaml`` under ``scenario:``,
|
||||
you can use the collection rule ``solve_elec_networks``.
|
||||
@ -306,6 +306,6 @@ Jupyter Notebooks).
|
||||
|
||||
import pypsa
|
||||
|
||||
n = pypsa.Network("results/networks/elec_s_6_ec_lcopt_Co2L-24H.nc")
|
||||
n = pypsa.Network("results/networks/elec_s_6_ec_lcopt_.nc")
|
||||
|
||||
For inspiration, read the `examples section in the PyPSA documentation <https://pypsa.readthedocs.io/en/latest/examples-basic.html>`__.
|
||||
|
@ -101,7 +101,7 @@ The ``{opts}`` wildcard
|
||||
The ``{opts}`` wildcard is used for electricity-only studies. It triggers
|
||||
optional constraints, which are activated in either :mod:`prepare_network` or
|
||||
the :mod:`solve_network` step. It may hold multiple triggers separated by ``-``,
|
||||
i.e. ``Co2L-3H`` contains the ``Co2L`` trigger and the ``3H`` switch. There are
|
||||
i.e. ``Co2L-3h`` contains the ``Co2L`` trigger and the ``3h`` switch. There are
|
||||
currently:
|
||||
|
||||
|
||||
@ -121,7 +121,7 @@ The ``{sector_opts}`` wildcard
|
||||
|
||||
# Co2Lx specifies the CO2 target in x% of the 1990 values; default will give default (5%);
|
||||
# Co2L0p25 will give 25% CO2 emissions; Co2Lm0p05 will give 5% negative emissions
|
||||
# xH is the temporal resolution; 3H is 3-hourly, i.e. one snapshot every 3 hours
|
||||
# xH is the temporal resolution; 3h is 3-hourly, i.e. one snapshot every 3 hours
|
||||
# single letters are sectors: T for land transport, H for building heating,
|
||||
# B for biomass supply, I for industry, shipping and aviation,
|
||||
# A for agriculture, forestry and fishing
|
||||
|
@ -25,7 +25,7 @@ dependencies:
|
||||
- yaml
|
||||
- pytables
|
||||
- lxml
|
||||
- powerplantmatching>=0.5.13
|
||||
- powerplantmatching>=0.5.15
|
||||
- numpy
|
||||
- pandas>=2.1
|
||||
- geopandas>=0.11.0
|
||||
|
@ -285,7 +285,9 @@ def add_power_capacities_installed_before_baseyear(n, grouping_years, costs, bas
|
||||
i for i in inv_ind if (i + name_suffix_by) in n.generators.index
|
||||
]
|
||||
|
||||
p_max_pu = n.generators_t.p_max_pu[[i + name_suffix_by for i in inv_ind]]
|
||||
p_max_pu = n.generators_t.p_max_pu[
|
||||
[i + name_suffix_by for i in inv_ind]
|
||||
]
|
||||
p_max_pu.columns = [i + name_suffix for i in inv_ind]
|
||||
|
||||
n.madd(
|
||||
|
@ -3578,7 +3578,7 @@ if __name__ == "__main__":
|
||||
opts="",
|
||||
clusters="37",
|
||||
ll="v1.0",
|
||||
sector_opts="CO2L0-24H-T-H-B-I-A-dist1",
|
||||
sector_opts="CO2L0-24h-T-H-B-I-A-dist1",
|
||||
planning_horizons="2030",
|
||||
)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user