Skip to content
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

Fix/#59 import generators #168

Merged
merged 4 commits into from
Sep 15, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 8 additions & 20 deletions edisgo/io/generators_import.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,20 +65,20 @@ def _import_conv_generators(session):
orm_conv_generators.columns.id,
orm_conv_generators.columns.subst_id,
orm_conv_generators.columns.la_id,
orm_conv_generators.columns.capacity,
(orm_conv_generators.columns.capacity).label("electrical_capacity"),
orm_conv_generators.columns.type,
orm_conv_generators.columns.voltage_level,
orm_conv_generators.columns.fuel,
(orm_conv_generators.columns.fuel).label("generation_type"),
func.ST_AsText(
func.ST_Transform(orm_conv_generators.columns.geom, srid)
),
).label("geom"),
)
.filter(
orm_conv_generators.columns.subst_id
== edisgo_object.topology.mv_grid.id
)
.filter(
orm_conv_generators.columns.voltage_level.in_([4, 5, 6, 7])
orm_conv_generators.columns.voltage_level.in_([4, 5])
)
.filter(orm_conv_generators_version)
)
Expand Down Expand Up @@ -110,11 +110,6 @@ def _import_res_generators(session):

"""

# Create filter for generation technologies
# ToDo: This needs to be removed when all generators can be imported
types_filter = orm_re_generators.columns.generation_type.in_(
["solar", "wind"]
)

# build basic query
generators_sqla = (
Expand Down Expand Up @@ -142,7 +137,6 @@ def _import_res_generators(session):
== edisgo_object.topology.mv_grid.id
)
.filter(orm_re_generators_version)
.filter(types_filter)
)

# extend basic query for MV generators and read data from db
Expand Down Expand Up @@ -183,11 +177,6 @@ def _import_res_generators(session):

return generators_mv, generators_lv

logging.warning(
"Right now only solar and wind generators can be "
"imported from the oedb."
)

def _validate_generation():
"""
Validate generation capacity in updated grids.
Expand All @@ -203,8 +192,7 @@ def _validate_generation():
capacity_imported = (
generators_res_mv["electrical_capacity"].sum()
+ generators_res_lv["electrical_capacity"].sum()
) # + \
# generators_conv_mv['capacity'].sum()
) + generators_conv_mv['electrical_capacity'].sum()

if p_target is not None:
capacity_imported = p_target
Expand Down Expand Up @@ -327,18 +315,18 @@ def _validate_sample_geno_location():

# get conventional and renewable generators
with session_scope() as session:
# generators_conv_mv = _import_conv_generators(session)
generators_conv_mv = _import_conv_generators(session)
generators_res_mv, generators_res_lv = _import_res_generators(session)

# generators_mv = generators_conv_mv.append(generators_res_mv)
generators_mv = generators_conv_mv.append(generators_res_mv)

# validate that imported generators are located inside the grid district
_validate_sample_geno_location()

update_grids(
edisgo_object=edisgo_object,
# generators_mv=generators_mv,
imported_generators_mv=generators_res_mv,
imported_generators_mv=generators_mv,
imported_generators_lv=generators_res_lv,
p_target=p_target
)
Expand Down