2018-08-03 09:54:28 +00:00
|
|
|
import os
|
2018-01-29 21:28:33 +00:00
|
|
|
import atlite
|
|
|
|
import xarray as xr
|
|
|
|
import pandas as pd
|
|
|
|
|
|
|
|
from vresutils import landuse as vlanduse
|
|
|
|
|
|
|
|
config = snakemake.config['renewable'][snakemake.wildcards.technology]
|
|
|
|
|
2018-08-03 09:54:28 +00:00
|
|
|
cutout = atlite.Cutout(config['cutout'],
|
|
|
|
cutout_dir=os.path.dirname(snakemake.input.cutout))
|
2018-01-29 21:28:33 +00:00
|
|
|
|
|
|
|
total_capacity = config['capacity_per_sqm'] * vlanduse._cutout_cell_areas(cutout)
|
2018-08-03 09:53:14 +00:00
|
|
|
potentials = xr.DataArray(total_capacity *
|
|
|
|
vlanduse.corine_for_cutout(cutout, fn=snakemake.input.corine,
|
|
|
|
natura_fn=snakemake.input.natura, **config['corine']),
|
2018-01-29 21:28:33 +00:00
|
|
|
[cutout.meta.indexes['y'], cutout.meta.indexes['x']])
|
|
|
|
|
|
|
|
if 'height_cutoff' in config:
|
|
|
|
potentials.values[(cutout.meta['height'] < - config['height_cutoff']).transpose(*potentials.dims)] = 0.
|
|
|
|
|
|
|
|
potentials.to_netcdf(snakemake.output[0])
|