Use MockSnakemake and logging.basicConfig everywhere

This commit is contained in:
Jonas Hörsch 2018-02-01 12:40:30 +01:00
parent 2fc2d09ad3
commit b7a1a090f1
4 changed files with 20 additions and 24 deletions

View File

@ -290,24 +290,23 @@ def base_network():
if __name__ == "__main__":
# Detect running outside of snakemake and mock snakemake for testing
if 'snakemake' not in globals():
from vresutils import Dict
import yaml
snakemake = Dict()
snakemake.input = Dict(
eg_buses='../data/entsoegridkit/buses.csv',
eg_lines='../data/entsoegridkit/lines.csv',
eg_links='../data/entsoegridkit/links.csv',
eg_converters='../data/entsoegridkit/converters.csv',
eg_transformers='../data/entsoegridkit/transformers.csv',
parameter_corrections='../data/parameter_corrections.yaml',
links_p_nom='../data/links_p_nom.csv'
from vresutils.snakemake import MockSnakemake, Dict
snakemake = MockSnakemake(
path='..',
wildcards={},
input=Dict(
eg_buses='data/entsoegridkit/buses.csv',
eg_lines='data/entsoegridkit/lines.csv',
eg_links='data/entsoegridkit/links.csv',
eg_converters='data/entsoegridkit/converters.csv',
eg_transformers='data/entsoegridkit/transformers.csv',
parameter_corrections='data/parameter_corrections.yaml',
links_p_nom='data/links_p_nom.csv'
),
output = ['networks/base_LC.nc']
)
with open('../config.yaml') as f:
snakemake.config = yaml.load(f)
snakemake.output = ['../networks/base_LC.nc']
logger.setLevel(level=snakemake.config['logging_level'])
logging.basicConfig(level=snakemake.config['logging_level'])
n = base_network()
n.export_to_netcdf(snakemake.output[0])

View File

@ -136,7 +136,6 @@ if __name__ == "__main__":
if 'snakemake' not in globals():
from vresutils.snakemake import MockSnakemake, Dict
snakemake = MockSnakemake(
path='..',
wildcards=Dict(network='elec', simpl='', clusters='45'),
input=Dict(
network='networks/{network}_s{simpl}.nc',
@ -150,8 +149,7 @@ if __name__ == "__main__":
)
)
logger = logging.getLogger()
logger.setLevel(snakemake.config['logging_level'])
logging.basicConfig(snakemake.config['logging_level'])
n = pypsa.Network(snakemake.input.network)

View File

@ -86,13 +86,12 @@ if __name__ == "__main__":
if 'snakemake' not in globals():
from vresutils.snakemake import MockSnakemake
snakemake = MockSnakemake(
path='..',
wildcards=dict(network='elec', simpl='', clusters='37', lv='2', opts='Co2L-3H'),
input=['networks/{network}_s{simpl}_{clusters}.nc'],
output=['networks/{network}_s{simpl}_{clusters}_lv{lv}_{opts}.nc']
)
logger.setLevel(snakemake.config['logging_level'])
logging.basicConfig(snakemake.config['logging_level'])
opts = snakemake.wildcards.opts.split('-')

View File

@ -1,8 +1,7 @@
import numpy as np
import pandas as pd
import logging
logging.basicConfig(filename=snakemake.log.python, level=logging.INFO)
logger = logging.getLogger(__name__)
import pypsa
@ -235,7 +234,6 @@ if __name__ == "__main__":
if 'snakemake' not in globals():
from vresutils.snakemake import MockSnakemake, Dict
snakemake = MockSnakemake(
path='..',
wildcards=dict(simpl='', clusters='45', lv='1.5', opts='Co2L'),
input=["networks/elec_s{simpl}_{clusters}_lv{lv}_{opts}.nc"],
output=["results/networks/s{simpl}_{clusters}_lv{lv}_{opts}.nc"],
@ -243,6 +241,8 @@ if __name__ == "__main__":
python="logs/s{simpl}_{clusters}_lv{lv}_{opts}_python.log")
)
logging.basicConfig(filename=snakemake.log.python, level=logging.INFO)
n = pypsa.Network(snakemake.input[0])
n = prepare_network(n)