diff --git a/config.yaml b/config.yaml index e08502c9..6ae7357a 100644 --- a/config.yaml +++ b/config.yaml @@ -36,6 +36,7 @@ renewable: turbine: Vestas_V112_3MW # ScholzPhd Tab 4.3.1: 10MW/km^2 capacity_per_sqm: 3 + # correction_factor: 0.93 corine: #The selection of CORINE Land Cover [1] types that are allowed for wind and solar are based on [2] p.42 / p.28 # @@ -55,6 +56,7 @@ renewable: # ScholzPhd Tab 4.3.1: 10MW/km^2 capacity_per_sqm: 3 height_cutoff: 50 + # correction_factor: 0.93 corine: grid_codes: [44, 255] natura: true @@ -66,8 +68,10 @@ renewable: orientation: latitude_optimal # ScholzPhd Tab 4.3.1: 170 MW/km^2 capacity_per_sqm: 1.7 + correction_factor: 0.882 corine: - grid_codes: [44, 255] + grid_codes: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 26, 31, 32] natura: true hydro: cutout: europe-2012-2016-era5 diff --git a/scripts/build_renewable_profiles.py b/scripts/build_renewable_profiles.py index 6d7336ef..0e2dfe8c 100644 --- a/scripts/build_renewable_profiles.py +++ b/scripts/build_renewable_profiles.py @@ -29,7 +29,10 @@ indicatormatrix = cutout.indicatormatrix(regions.geometry) resource = config['resource'] func = getattr(cutout, resource.pop('method')) -capacity_factor = func(capacity_factor=True, **resource) +correction_factor = config.get('correction_factor', 1.) +if correction_factor != 1.: + logger.warning('correction_factor is set as {}'.format(correction_factor)) +capacity_factor = correction_factor * func(capacity_factor=True, **resource) layout = capacity_factor * potentials profile, capacities = func(matrix=indicatormatrix, index=regions.index, @@ -42,7 +45,7 @@ p_nom_max = xr.DataArray([np.nanmin(relativepotentials[row.nonzero()[1]]) for row in indicatormatrix.tocsr()], [capacities.coords['bus']]) * capacities -ds = xr.merge([profile.rename('profile'), +ds = xr.merge([(correction_factor * profile).rename('profile'), capacities.rename('weight'), p_nom_max.rename('p_nom_max')]) (ds.sel(bus=ds['profile'].mean('time') > config.get('min_p_max_pu', 0.))