Skip to content

Commit

Permalink
Merge pull request #659 from openego/fixes/#645-missing-generators-ti…
Browse files Browse the repository at this point in the history
…meseries-in-etrago-tables

Fixes/#645 missing generators timeseries in etrago tables
  • Loading branch information
CarlosEpia authored Feb 28, 2022
2 parents 1f66d22 + b4c7fc1 commit 906c991
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 26 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,8 @@ Bug fixes
`#610 <https://github.com/openego/eGon-data/issues/610>`_
* H2 steel tanks are removed again from saltcavern storage
`#621 <https://github.com/openego/eGon-data/issues/621>`_
* Timeseries not deleted from grid.etrago_generator_timeseries
`#645 <https://github.com/openego/eGon-data/issues/645>`_
* Fix function to get scaled hh profiles
`#674 <https://github.com/openego/eGon-data/issues/674>`_
* Change order of pypsa-eur-sec and scenario-capacities
Expand Down
57 changes: 31 additions & 26 deletions src/egon/data/datasets/fill_etrago_gen.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ class Egon_etrago_gen(Dataset):
def __init__(self, dependencies):
super().__init__(
name="etrago_generators",
version="0.0.4",
version="0.0.6",
dependencies=dependencies,
tasks=(fill_etrago_generators,),
)
Expand All @@ -22,9 +22,6 @@ def fill_etrago_generators():
con = db.engine()
cfg = egon.data.config.datasets()["generators_etrago"]

# Delete power plants from previous iterations of this script
delete_previuos_gen(cfg)

# Load required tables
(
power_plants,
Expand All @@ -34,6 +31,9 @@ def fill_etrago_generators():
pp_time,
) = load_tables(con, cfg)

# Delete power plants from previous iterations of this script
delete_previuos_gen(cfg, con, etrago_gen_orig, power_plants)

renew_feedin = adjust_renew_feedin_table(
renew_feedin=renew_feedin, cfg=cfg
)
Expand Down Expand Up @@ -142,13 +142,6 @@ def fill_etrago_gen_time_table(
etrago_pp_time["p_max_pu"] = etrago_pp_time["p_max_pu"].apply(list)
etrago_pp_time["temp_id"] = 1

db.execute_sql(
f"""DELETE FROM
{cfg['targets']['etrago_gen_time']['schema']}.
{cfg['targets']['etrago_gen_time']['table']}
"""
)

etrago_pp_time.to_sql(
name=f"{cfg['targets']['etrago_gen_time']['table']}",
schema=f"{cfg['targets']['etrago_gen_time']['schema']}",
Expand Down Expand Up @@ -232,21 +225,33 @@ def adjust_renew_feedin_table(renew_feedin, cfg):
return renew_feedin


def delete_previuos_gen(cfg):
db.execute_sql(
f"""DELETE FROM
{cfg['targets']['etrago_generators']['schema']}.
{cfg['targets']['etrago_generators']['table']}
WHERE carrier <> 'CH4' AND carrier <> 'solar_rooftop'
AND carrier <> 'solar_thermal_collector'
AND carrier <> 'geo_thermal'
AND bus IN (
SELECT bus_id FROM {cfg['sources']['bus']['schema']}.
{cfg['sources']['bus']['table']}
WHERE country = 'DE'
AND carrier = 'AC')
"""
)
def delete_previuos_gen(cfg, con, etrago_gen_orig, power_plants):
carrier_delete = list(power_plants.carrier.unique())

if carrier_delete:
db.execute_sql(
f"""DELETE FROM
{cfg['targets']['etrago_generators']['schema']}.
{cfg['targets']['etrago_generators']['table']}
WHERE carrier IN {*carrier_delete,}
AND bus IN (
SELECT bus_id FROM {cfg['sources']['bus']['schema']}.
{cfg['sources']['bus']['table']}
WHERE country = 'DE'
AND carrier = 'AC')
"""
)

db.execute_sql(
f"""DELETE FROM
{cfg['targets']['etrago_gen_time']['schema']}.
{cfg['targets']['etrago_gen_time']['table']}
WHERE generator_id NOT IN (
SELECT generator_id FROM
{cfg['targets']['etrago_generators']['schema']}.
{cfg['targets']['etrago_generators']['table']})
"""
)


def set_timeseries(power_plants, renew_feedin):
Expand Down

0 comments on commit 906c991

Please sign in to comment.