allow additional functionality for solving to be added by file
To add this, overwrite the rule with a new argument: snakemake.input.additional_functionality
This commit is contained in:
parent
830019a6e5
commit
c5a123b4f4
@ -44,6 +44,7 @@ from pypsa.descriptors import get_switchable_as_dense as get_as_dense
|
||||
from prepare_sector_network import emission_sectors_from_opts
|
||||
|
||||
|
||||
|
||||
def add_land_use_constraint(n, planning_horizons, config):
|
||||
if "m" in snakemake.wildcards.clusters:
|
||||
_add_land_use_constraint_m(n, planning_horizons, config)
|
||||
@ -899,6 +900,13 @@ def extra_functionality(n, snapshots):
|
||||
logger.info(f"Add CO2 limit for each country")
|
||||
add_co2limit_country(n, limit_countries, nyears)
|
||||
|
||||
if "additional_functionality" in snakemake.input.keys():
|
||||
import importlib, os, sys
|
||||
sys.path.append(os.path.dirname(snakemake.input.additional_functionality))
|
||||
additional_functionality = importlib.import_module(os.path.splitext(os.path.basename(snakemake.input.additional_functionality))[0])
|
||||
|
||||
additional_functionality.additional_functionality(n, snapshots, snakemake.wildcards.planning_horizons)
|
||||
|
||||
|
||||
def solve_network(n, config, solving, opts="", **kwargs):
|
||||
set_of_options = solving["solver"]["options"]
|
||||
|
Loading…
Reference in New Issue
Block a user