Merge pull request #452 from PyPSA/pz-max-patch-2

Fix EQ constraint in case no hydro exist
This commit is contained in:
Fabian Neumann 2023-01-28 08:26:38 +01:00 committed by GitHub
commit d2f2634bae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 10 deletions

View File

@ -12,6 +12,8 @@ Upcoming Release
* Carriers of generators can now be excluded from aggregation in clustering network and simplify network. * Carriers of generators can now be excluded from aggregation in clustering network and simplify network.
* Fix EQ constraint for the case no hydro inflow is available
* Bugfix in the reserve constraint will increase demand related reserve requirements * Bugfix in the reserve constraint will increase demand related reserve requirements
PyPSA-Eur 0.6.1 (20th September 2022) PyPSA-Eur 0.6.1 (20th September 2022)

View File

@ -216,18 +216,21 @@ def add_EQ_constraints(n, o, scaling=1e-1):
.T.groupby(ggrouper, axis=1) .T.groupby(ggrouper, axis=1)
.apply(join_exprs) .apply(join_exprs)
) )
lhs_spill = ( if not n.storage_units_t.inflow.empty:
linexpr( lhs_spill = (
( linexpr(
-n.snapshot_weightings.stores * scaling, (
get_var(n, "StorageUnit", "spill").T, -n.snapshot_weightings.stores * scaling,
get_var(n, "StorageUnit", "spill").T,
)
) )
.T.groupby(sgrouper, axis=1)
.apply(join_exprs)
) )
.T.groupby(sgrouper, axis=1) lhs_spill = lhs_spill.reindex(lhs_gen.index).fillna("")
.apply(join_exprs) lhs = lhs_gen + lhs_spill
) else:
lhs_spill = lhs_spill.reindex(lhs_gen.index).fillna("") lhs = lhs_gen
lhs = lhs_gen + lhs_spill
define_constraints(n, lhs, ">=", rhs, "equity", "min") define_constraints(n, lhs, ">=", rhs, "equity", "min")