Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature road transport #269

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
a898b4a
copy jrc-idees.smk newest version into feature-road-transport
Aug 21, 2023
f5e0969
- add jrc-idees url to config file
SimonS898 Aug 21, 2023
146e083
- add transport.py file from feature-sector-coupling by brynpickering
Aug 21, 2023
98c498f
get jrc_idees_transport_processed to run in feature_road_transport br…
SimonS898 Aug 21, 2023
0dd8c18
copy eurostat_data_tsv rule from feature-sector-coupling into feature…
Aug 22, 2023
7c39862
transfer annual_energy_balances rule from feature-sector-coupling int…
Aug 22, 2023
f056224
transfer ch_data_xlsx rule from feature-sector-coupling into feature-…
SimonS898 Aug 22, 2023
af7318c
adjust default.yaml, configfile from feature-sector-coupling:
SimonS898 Aug 22, 2023
72545f3
transfer ch_annual_transport_energy_balance rule from feature-sector-…
Aug 22, 2023
72c979a
transfer sectoral_annual_energy_balances rule and transport_subsector…
Aug 22, 2023
f230747
created transport_subsector_annual_energy_balances as its own rule, n…
SimonS898 Aug 22, 2023
9a02429
transfer annual_road_transport_demand rule from feature-sector-coupli…
Aug 22, 2023
87480e6
adjust config file to reuse convert_country_code by bryn pickering in…
SimonS898 Sep 5, 2023
9f97c9a
adjust jrc files, to output csv files instead of nc files, so we can …
SimonS898 Sep 11, 2023
fc81acc
transfer annual_energy_balances: rule from sector-coupled-euro-callio…
SimonS898 Sep 11, 2023
2d038ff
expand annual_energy_balances: rule from sector-coupled-euro-calliope…
SimonS898 Sep 11, 2023
a09662a
transfer annual_transport_demand: rule and annual_transport_demand.py…
SimonS898 Sep 11, 2023
3447125
adjust annual_transport_demand.py from sector-coupled-euro-calliope i…
SimonS898 Sep 11, 2023
78a1ce6
adjust jrc-idees.smk so that the data for Malta and Greece also get f…
SimonS898 Sep 15, 2023
bbcfd7e
get transport.smk and annual_transport_demand.py to work:
SimonS898 Sep 15, 2023
c663957
first implementation for transport demand timeseries:
SimonS898 Sep 15, 2023
4d370b9
adjust implementation for road transport demand timeseries:
SimonS898 Sep 25, 2023
9ca1620
road_transport_timeseries.py:
SimonS898 Sep 25, 2023
82c5522
annual_transport_demand.py.py:
SimonS898 Sep 25, 2023
290652b
transport.smk:
SimonS898 Sep 25, 2023
4b6ac5c
jrc-idees.smk:
SimonS898 Sep 25, 2023
edef046
transport.py:
SimonS898 Sep 25, 2023
893a433
eurostat clean up:
SimonS898 Sep 25, 2023
8167b86
ch-stats cleanup:
SimonS898 Sep 25, 2023
1d799fb
config clean up:
SimonS898 Sep 25, 2023
214dc8b
road_transport_timeseries.py:
SimonS898 Sep 25, 2023
6915c73
road_transport_timeseries.py:
SimonS898 Sep 25, 2023
26eea0a
add rule aggregate_timeseries to transport.smk:
SimonS898 Sep 27, 2023
81be14c
add electrified_transport.yaml tech template and build it into snakef…
SimonS898 Sep 27, 2023
42f6077
documentation first draft
SimonS898 Sep 27, 2023
67d0843
clean up: csv files from _ to -
SimonS898 Sep 27, 2023
3954349
general clean up
SimonS898 Sep 27, 2023
e96d9d4
clean up utils and remove not needed functions ( were previously used…
SimonS898 Sep 27, 2023
b142301
clean up adjust config to match its style
SimonS898 Sep 27, 2023
894b548
bug fix: notices IS data was missing in annual-road-transport-distanc…
SimonS898 Oct 3, 2023
c2ec0ea
adjust fill missing countries and years function:
SimonS898 Oct 4, 2023
6ad7603
Merge remote-tracking branch 'public/feature-road-transport' into fea…
SimonS898 Oct 4, 2023
e0edbe7
fix merge hiccup
SimonS898 Oct 4, 2023
c8d5718
remove src=script_dir... out of rules, since it is no longer needed
SimonS898 Oct 4, 2023
7d8cf40
Review Changes:
SimonS898 Dec 13, 2023
c55ced9
Review Changes:
SimonS898 Dec 13, 2023
d7eb5c3
Review Changes:
SimonS898 Dec 15, 2023
05affe9
Review Changes:
SimonS898 Dec 15, 2023
089de45
Review Changes:
SimonS898 Mar 2, 2024
ec79a4f
Review Changes:
SimonS898 Mar 2, 2024
e958124
Review Changes:
SimonS898 Mar 2, 2024
138b72c
Review Changes:
SimonS898 Mar 2, 2024
6e9a82c
Review Changes:
SimonS898 Mar 2, 2024
044254c
Add changes from review
timtroendle Mar 7, 2024
ce74154
Rename BAU road transport to historically electrified road transport
timtroendle Mar 7, 2024
4909bce
Update networkx to 2.5
timtroendle Mar 7, 2024
7616ca2
Fix names of administrative units in road transport
timtroendle Mar 7, 2024
5a7ad6b
Fix historic electrified road transport demand
timtroendle Mar 7, 2024
a842491
Add minor cleanups
timtroendle Mar 7, 2024
d5bad10
Cleanup annual road transport
timtroendle Mar 8, 2024
28ae0e5
Fix schema
timtroendle Mar 8, 2024
71084ed
Update CHANGELOG
timtroendle Mar 8, 2024
a820166
Add tests for utils functions
timtroendle Mar 8, 2024
b546b29
Add minor updates from second review
timtroendle Mar 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@

### Added (models)

* **ADD** nuclear power plant technology with capacity limits. Capacity limits can be equals to today or be bound by a minimum and maximum capacity to represent an available range in future. In either case, capacities are allocated at a subnational resolution based on linear scaling from current capacity geolocations, using the JRC power plant database (#78).
* **ADD** fully-electrified road transportation (#270).

* **ADD** nuclear power plant technology with capacity limits. Capacity limits can be equal to today or be bound by a minimum and maximum capacity to represent an available range in future. In either case, capacities are allocated at a subnational resolution based on linear scaling from current capacity geolocations, using the JRC power plant database (#78).

### Added (workflow)

Expand Down
11 changes: 7 additions & 4 deletions Snakefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,14 @@ model_template_dir = f"{template_dir}models/"
techs_template_dir = f"{model_template_dir}techs/"

include: "./rules/shapes.smk"
include: "./rules/data.smk"
include: "./rules/wind-and-solar.smk"
include: "./rules/biofuels.smk"
include: "./rules/hydro.smk"
include: "./rules/transmission.smk"
include: "./rules/demand.smk"
include: "./rules/nuclear.smk"
include: "./rules/transport.smk"
include: "./rules/sync.smk"
min_version("7.8")
localrules: all, clean
Expand All @@ -35,7 +37,6 @@ ALL_CF_TECHNOLOGIES = [
"rooftop-pv", "rooftop-pv-n", "rooftop-pv-e-w", "rooftop-pv-s-flat", "hydro-run-of-river",
"hydro-reservoir"
]
ALL_DEMAND_CARRIERS = ["electricity"]

def ensure_lib_folder_is_linked():
if not workflow.conda_prefix:
Expand Down Expand Up @@ -152,6 +153,7 @@ rule model_template:
"interest-rate.yaml",
"locations.yaml",
"techs/demand/electricity.yaml",
"techs/demand/electrified-transport.yaml",
"techs/storage/electricity.yaml",
"techs/storage/hydro.yaml",
"techs/supply/biofuel.yaml",
Expand All @@ -167,9 +169,10 @@ rule model_template:
"build/models/{{resolution}}/timeseries/supply/capacityfactors-{technology}.csv",
technology=ALL_CF_TECHNOLOGIES
),
demand_timeseries_data = expand(
"build/models/{{resolution}}/timeseries/demand/{energy_carrier}.csv",
energy_carrier=ALL_DEMAND_CARRIERS
demand_timeseries_data = (
"build/models/{resolution}/timeseries/demand/electricity.csv",
"build/models/{resolution}/timeseries/demand/electrified-road-transport.csv",
"build/models/{resolution}/timeseries/demand/road-transport-historic-electrification.csv"
),
optional_input_files = lambda wildcards: expand(
f"build/models/{wildcards.resolution}/{{input_file}}",
Expand Down
26 changes: 26 additions & 0 deletions config/default.yaml
timtroendle marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ data-sources:
potentials: https://zenodo.org/record/5112963/files/possibility-for-electricity-autarky.zip
entsoe-tyndp: https://2020.entsos-tyndp-scenarios.eu/wp-content/uploads/2020/06/TYNDP-2020-Scenario-Datafile.xlsx.zip
jrc-ppdb: https://zenodo.org/record/3574566/files/JRC-PPDB-OPEN.ver1.0.zip
jrc-idees: https://jeodpp.jrc.ec.europa.eu/ftp/jrc-opendata/JRC-IDEES/JRC-IDEES-2015_v1/JRC-IDEES-2015_All_xlsx_{country_code}.zip
eurostat-energy-balance: https://github.com/calliope-project/euro-calliope-datasets/feature-sector-coupling/eurostat/nrg_bal_c.tsv.gz # FIXME do not use cached data
swiss-energy-balance: https://www.bfe.admin.ch/bfe/en/home/versorgung/statistik-und-geodaten/energiestatistiken/gesamtenergiestatistik.exturl.html/aHR0cHM6Ly9wdWJkYi5iZmUuYWRtaW4uY2gvZGUvcHVibGljYX/Rpb24vZG93bmxvYWQvNzUxOQ==.html
swiss-industry-energy-balance: https://www.bfe.admin.ch/bfe/en/home/versorgung/statistik-und-geodaten/energiestatistiken/teilstatistiken.exturl.html/aHR0cHM6Ly9wdWJkYi5iZmUuYWRtaW4uY2gvZGUvcHVibGljYX/Rpb24vZG93bmxvYWQvODc4OA==.html
root-directory: .
cluster-sync:
url: euler.ethz.ch
Expand Down Expand Up @@ -121,6 +125,28 @@ parameters:
proxy: population
biofuel-efficiency: 0.45
wind-and-solar-potential-scenario: technical-potential
transport:
future-vehicle-efficiency-percentile: 0.25 # FIXME Why so low? Why not 0.5?
# FIXME road-transport-conversion-factors are redundant, as they are derived using future-vehicle-efficiency-percentile
road-transport-conversion-factors: # MWh / mio km 25th percentile efficiency of all countries in 2015 [@Mantzos:2017]
light-duty-vehicles: 480
heavy-duty-vehicles: 3248 # based on buses
coaches-and-buses: 3248
passenger-cars: 324
motorcycles: 200 # based on passenger car electrical efficiency scaled by relative diesel efficiency
names:
light-duty-vehicles: Light duty vehicles
heavy-duty-vehicles: Heavy duty vehicles
coaches-and-buses: Motor coaches, buses and trolley buses
passenger-cars: Passenger cars
motorcycles: Powered 2-wheelers
fill-missing-values:
ALB: ['BGR', 'HRV', 'HUN', 'ROU', 'GRC']
BIH: ['BGR', 'HRV', 'HUN', 'ROU', 'GRC']
MNE: ['BGR', 'HRV', 'HUN', 'ROU', 'GRC']
SRB: ['BGR', 'HRV', 'HUN', 'ROU', 'GRC']
NOR: ['SWE', 'DNK']
CHE: ['DEU', 'AUT', 'FRA', 'ITA']
entsoe-tyndp:
scenario: National Trends
grid: Reference
Expand Down
75 changes: 75 additions & 0 deletions config/energy-balances/energy-balance-carrier-names.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
carrier_code,carrier_name,hh_carrier_name,com_carrier_name,ind_carrier_name,oth_carrier_name
TOTAL,TOTAL,,,,
FF,Fossil fuels,,,,
C0000X0350-0370,Solid fossil fuels,solid_fossil,solid_fossil,solid_fossil,solid_fossil
C0110,Anthracite,,,,
C0121,Coking coal,,,,
C0129,Other bituminous coal,,,,
C0210,Sub-bituminous coal,,,,
C0220,Lignite,,,,
C0311,Coke oven coke,,,,
C0312,Gas coke,,,,
C0320,Patent fuel,,,,
C0330,Brown coal briquettes,,,,
C0340,Coal tar,,,,
C0350-0370,Manufactured gases,,gas,manufactured_gas,gas
C0350,Coke oven gas,,,,
C0360,Gas works gas,,,,
C0371,Blast furnace gas,,,,
C0379,Other recovered gases,,,,
P1000,Peat and peat products,solid_fossil,solid_fossil,solid_fossil,solid_fossil
P1100,Peat,,,,
P1200,Peat products,,,,
S2000,Oil shale and oil sands,solid_fossil,oil,oil,oil
G3000,Natural gas,gas,gas,natural_gas,gas
O4000XBIO,Oil and petroleum products (excluding biofuel portion),oil,oil,oil,
O4100_TOT,Crude oil,,,,
O4200,Natural gas liquids,,,,
O4300,Refinery feedstocks,,,,
O4400X4410,Additives and oxygenates (excluding biofuel portion),,,,
O4500,Other hydrocarbons,,,,
O4610,Refinery gas,,,,
O4620,Ethane,,,,
O4630,Liquefied petroleum gases,,,,
O4640,Naphtha,,,,
O4651,Aviation gasoline,,,,
O4652XR5210B,Motor gasoline (excluding biofuel portion),,,,
O4653,Gasoline-type jet fuel,,,,
O4661XR5230B,Kerosene-type jet fuel (excluding biofuel portion),,,,
O4669,Other kerosene,,,,
O4671XR5220B,Gas oil and diesel oil (excluding biofuel portion),,,,
O4680,Fuel oil,,,,
O4691,White spirit and special boiling point industrial spirits,,,,
O4692,Lubricants,,,,
O4693,Paraffin waxes,,,,
O4694,Petroleum coke,,,,
O4695,Bitumen,,,,
O4699,Other oil products n.e.c.,,,,
RA000,Renewables and biofuels,,,,
RA100,Hydro,,renewable_heat,renewable_heat,renewable_heat
RA200,Geothermal,,renewable_heat,renewable_heat,renewable_heat
RA300,Wind,,renewable_heat,renewable_heat,renewable_heat
RA410,Solar thermal,solar_thermal,renewable_heat,renewable_heat,renewable_heat
RA420,Solar photovoltaic,,renewable_heat,renewable_heat,renewable_heat
RA500,Tide_wave_ocean,,renewable_heat,renewable_heat,renewable_heat
RA600,Ambient heat (heat pumps),ambient_heat,ambient_heat,ambient_heat,ambient_heat
R5110-5150_W6000RI,Primary solid biofuels,biofuel,biofuel,biofuel,biofuel
R5160,Charcoal,,biofuel,biofuel,biofuel
R5210P,Pure biogasoline,,oil,oil,oil
R5210B,Blended biogasoline,,oil,oil,oil
R5220P,Pure biodiesels,,oil,oil,oil
R5220B,Blended biodiesels,,oil,oil,oil
R5230P,Pure bio jet kerosene,,oil,oil,oil
R5230B,Blended bio jet kerosene,,oil,oil,oil
R5290,Other liquid biofuels,,oil,oil,oil
R5300,Biogases,gas,gas,natural_gas,gas
W6100,Industrial waste (non-renewable),,,,
W6210,Renewable municipal waste,,biofuel,biofuel,biofuel
W6220,Non-renewable municipal waste,,,,
W6100_6220,Non-renewable waste,biofuel,biofuel,biofuel,biofuel
N900H,Nuclear heat,,heat,heat,heat
E7000,Electricity,electricity,electricity,electricity,
H8000,Heat,heat,heat,heat,heat
BIOE,Bioenergy,,,,
O4000,,oil,,,
SFF_P1000_S2000,,solid_fossil,,,solid_fossil
Loading
Loading