def make_summaries(networks_dict): outputs = [ "nodal_costs", "nodal_capacities", "nodal_cfs", "cfs", "costs", "capacities", "curtailment", "energy", "supply", "supply_energy", "prices", "weighted_prices", "price_statistics", "market_values", "metrics", ] columns = pd.MultiIndex.from_tuples( networks_dict.keys(), names=["cluster", "lv", "opt", "planning_horizon"]) df = {} for output in outputs: df[output] = pd.DataFrame(columns=columns, dtype=float) for label, filename in networks_dict.items(): print(label, filename) overrides = override_component_attrs(snakemake.input.overrides) n = pypsa.Network(filename, override_component_attrs=overrides) assign_carriers(n) assign_locations(n) for output in outputs: df[output] = globals()["calculate_" + output](n, label, df[output]) return df
snakemake = mock_snakemake( 'add_brownfield', simpl='', clusters="37", opts="", lv=1.0, sector_opts='168H-T-H-B-I-solar+p3-dist1', planning_horizons=2030, ) print(snakemake.input.network_p) logging.basicConfig(level=snakemake.config['logging_level']) year = int(snakemake.wildcards.planning_horizons) overrides = override_component_attrs(snakemake.input.overrides) n = pypsa.Network(snakemake.input.network, override_component_attrs=overrides) add_build_year_to_new_assets(n, year) n_p = pypsa.Network(snakemake.input.network_p, override_component_attrs=overrides) if year == 2050: print('Emulating year 2060 instead of 2050 for existing capacity end of lifetime decommissioning') add_brownfield(n, n_p, 2060) else: add_brownfield(n, n_p, year) n.export_to_netcdf(snakemake.output[0])