Skip to content

Commit

Permalink
cleaned industrial strategies
Browse files Browse the repository at this point in the history
added docu git ignore
  • Loading branch information
Sven Eggimann committed Mar 21, 2018
1 parent 72c4c04 commit 3c8a114
Show file tree
Hide file tree
Showing 6 changed files with 103 additions and 62 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ MANIFEST
# Model configuration
*.ini

docs/* #TODO REMOVE

# Model results
model_output/*.csv
model_output/*.pdf
Expand Down
2 changes: 2 additions & 0 deletions config_data/07-switches/_dummy.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ Fuel switches
# Residential
rs_space_heating,gas,boiler_hydrogen,2050,0.99

rs_lighting, ...

# Service
ss_space_heating,gas,heat_pumps_electricity,2050,0.9,

Expand Down
2 changes: 1 addition & 1 deletion docs/documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ to be stored in a local folder (`data_energy_demand`).
Documentation
===================

## 1. Introduction
## 1. Introduction TEST


The energy demand model of the ITRC-MISTRAL framework allows
Expand Down
117 changes: 67 additions & 50 deletions energy_demand/assumptions/non_param_assumptions.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ def __init__(
# Define all variables which are affected by regional diffusion
self.spatially_modelled_vars = []
# 'smart_meter_improvement_p'
#]
#] TODO

# Define technologies which are affected by spatial explicit diffusion
self.techs_affected_spatial_f = ['heat_pumps_electricity']
Expand Down Expand Up @@ -346,92 +346,109 @@ def __init__(

# --------------------------------------------
# lighting
# --------------------------------------------
# --> No scenario drivers but driven by switches
#
# We do not define individual technologies because e.g. unclear how much LED. Therfore overall efficiency increase
#--------------------------------------------
#is_lighting_eff_change = 0 #Efficiency of lighting TODO IMPLEMENT

# --------------------------------------------
# high_temp_ process
# high_temp_ process
#
# High temperature processing dominates energy consumption in the iron and steel,
# non-ferrous metal, bricks, cement, glass and potteries industries. This includes
# - coke ovens
# - blast furnaces and other furnaces
# - kilns and
# - glass tanks.

# High consumption in Chemicals, Non_metallic mineral products, paper, food_production
# Fuel use ratio - electric arc furnace over blast furnace steel making in cement sector
#BAF: basic_oxygen_furnace
#EAF: electric_arc_furnace
#BAT - iron & steel - Coke ovens Sectoral share (%)
#BAT - iron & steel - EAF/BOF Sectoral share - EOF %
#BAT - iron & steel - continous/Ingot casting Sectoral share - continuous %
#BAT - iron & steel - cold/hot rolling Sectoral share - cold % #DONE
#BAT - iron & steel - substitute Sectoral share - substitute %

# --------------------------------------------

# Share of cold rolling in steel manufacturing (total = hot and cold)
self.p_cold_rolling_steel_by = 0.5 #TODO
# *****************
# TODO Fuel use ratio - cold over hot rolling in cement sector
self.p_cold_rolling_steel_by = 0.5 #TODO
self.eff_cold_rolling_process = 1.0 #TODO
self.eff_hot_rolling_process = 1.0 #TODO

# ---------------
p_service_electric_arc_furnace = 0.5 #TODO: DEFINE FROM BASE YEAR FUEL MIX
p_service_basic_oxygen_furnace = 1 - p_service_electric_arc_furnace
p_SNG_furnace = 0 #biomass
# Sector metalic (steel industry)

assumpt_fraction_cement_of_high_temp_process = 0.5 # (non_metallic)
assumpt_fraction_netall_of_high_temp_process = 0.5 # (basic_metals)

# Steel production - Enduse: is_high_temp_process, Sector: basic_metals
# *****************
# With industry service switch, the future shares
# in 'basic_oxygen_furnace', 'electric_arc_furnace', and 'SNG_furnace'
# can be specified
# TODO: # blast furnace process, electric arc furnace, directe reduced iron
#scrap-based production: electric arc furnace
#direct reduction process: natrual gas based, electric arc furnace
#BF-BOF (blast furnace - basix oxgen furnace)
# Example service switch:
# is_high_temp_process,SNG_furnace,1.0,2050,basic_metals


# Sectors non_metallic_mineral_products

# --> Define efficiencis of technologies
# - Other (?)
# .ev refrigeration / compressed air / motors
#
#
#

# High consumption in Chemicals, Non_metallic mineral products, paper, food_production
''' 'is_high_temp_process': ['gva'],
'is_low_temp_process': ['gva'],
'is_drying_separation': ['gva'],
'is_motors': ['gva'],
'is_compressed_air': ['gva'],
'is_lighting': ['gva'],
'is_space_heating': ['gva'],
'is_other': ['gva'],
'is_refrigeration': ['gva']}'''

# Sectors
# Cement production - Enduse: is_high_temp_process, Sector: non_metallic_mineral_products
# *****************
# technologies: Dry kilns, semi
'''
Fuel use ratio - dry process over wet process in cement sector
Fuel use ratio - novel alkali cement over incumbent process in cement sector
Fuel use ratio - novel partially dehydrated cement over incumbent process in cement sector
Fuel use ratio - electric arc furnace over blast furnace steel making in cement sector
Fuel use ratio - continuous over ingot casting in cement sector
Fuel use ratio - cold over hot rolling in cement sector
'''
'''
BAT - cement - dry/wet process Dry/wet process (Dry %)
BAT - cement - Novel-Alkali-activated (alumino-silicate, geopolymer) Sectoral share of Alkali activated %
BAT - cement - Novel-Partially prehydrated Calcium silicate hydrate Sectoral share - Partially prehydrated %'''

# -----------------
# Steel production
# -----------------
# blast furnace process
# electric arc furnace
# directe reduced iron
# Hith temperature process -- cement, non-ferrous metla, coke ovens, blast furnaces, kilns,..
# CHEMICALs - Enduse: is_high_temp_process, Sector: CHEMICALS
# *****************

# ----------------
# Efficiency of motors
# ----------------
#is_motors_eff_change = 0

# ----------------
# Efficiency of others
# ----------------
#is_others_eff_change = 0

# ----------------
# Efficiency of others
# ----------------
#is_refrigeration_eff_change = 0

# ----------------
# Efficiency of is_compressed_air
# ----------------
#is_compressed_air_eff_change =

# ----------------
# Efficiency of is_drying_separation
# ----------------
#is_drying_separation_eff_change =

# ----------------
# Efficiency of is_low_temp_process
# ----------------
#is_low_temp_process_eff_change =

''' 'is_high_temp_process': ['gva'], DONE
'is_low_temp_process': ['gva'], DONE
'is_drying_separation': ['gva'] DONE,
'is_motors': ['gva'], DONE
'is_compressed_air': ['gva'], DONE
'is_lighting': ['gva'], DONE
'is_space_heating': ['gva'], DONE
'is_other': ['gva'] DONE,
'is_refrigeration': ['gva']} DONE'''


# ============================================================
# Assumption related to technologies
# Assumption related to heat pump technologies
# ============================================================
#
# Assumptions related to technologies
Expand Down
2 changes: 1 addition & 1 deletion energy_demand/enduse_func.py
Original file line number Diff line number Diff line change
Expand Up @@ -1976,7 +1976,7 @@ def industry_enduse_changes(
other_enduse_mode_info,
assumptions)

if sector == 'non_metallic_mineral_products':
elif sector == 'non_metallic_mineral_products':

# Calculate factor depending on cement processes
factor = cement_process()
Expand Down
40 changes: 30 additions & 10 deletions energy_demand/technologies/fuel_service_switch.py
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ def get_share_s_tech_ey(

return dict(enduse_tech_ey_p)

def create_switches_with_service_shares(
def create_switches_from_s_shares(
enduse,
s_tech_by_p,
switch_technologies,
Expand All @@ -125,7 +125,28 @@ def create_switches_with_service_shares(
sector,
switch_yr
):
"""TODO
"""
TODO
Arguments
----------
enduse : str
Enduse
s_tech_by_p :
Service share per technology in base year
switch_technologies : list
Technologies volved in switch
specified_tech_enduse_by :
enduse_switches :
s_tot_defined :
sector :
switch_yr :
"""
service_switches_out = []

Expand All @@ -141,7 +162,7 @@ def create_switches_with_service_shares(
tech_not_assigned_by_p[tech] = share_by / tot_share_not_assigned

# Calculate not defined share in switches
not_assigned_service = 1 - s_tot_defined
s_not_assigned = 1 - s_tot_defined

# Get all defined technologies in base year
for tech in specified_tech_enduse_by[enduse]:
Expand All @@ -158,7 +179,7 @@ def create_switches_with_service_shares(
service_switches_out.append(switch_new)
else:
# Reduce share proportionally
tech_ey_p = tech_not_assigned_by_p[tech] * not_assigned_service
tech_ey_p = tech_not_assigned_by_p[tech] * s_not_assigned

switch_new = read_data.ServiceSwitch(
enduse=enduse,
Expand Down Expand Up @@ -277,7 +298,7 @@ def autocomplete_switches(
switch_yr = switch.switch_yr

# Create switch
switches_new = create_switches_with_service_shares(
switches_new = create_switches_from_s_shares(
enduse=enduse,
s_tech_by_p=s_tech_by_p,
switch_technologies=switch_technologies,
Expand Down Expand Up @@ -308,7 +329,7 @@ def autocomplete_switches(
switch_yr = switch.switch_yr

# Calculate relative by proportion of not assigned technologies
switches_new = create_switches_with_service_shares(
switches_new = create_switches_from_s_shares(
enduse=enduse,
s_tech_by_p=s_tech_by_p,
switch_technologies=switch_technologies,
Expand Down Expand Up @@ -343,20 +364,19 @@ def capacity_switch(
base_yr
):
"""Create service switches based on assumption on
changes in installed fuel capacity (`capacty switches`).
changes in installed fuel capacity (`capacity switches`).
Service switch are calculated based on the assumed
capacity installation (in absolute GW) of technologies.
Assumptions on capacities are defined in the
CSV file `xx_capacity_switch.csv`
Note
-----
TODO: With the information about the installed capacity
With the information about the installed capacity
only the change in percentage in end year gets calulated.
This means that there is not absolute change in demand (
e.g. you cant add additional demand of an existing technology
--> It is only a switch
)
--> It is only a switch)
Arguments
---------
capacity_switches : list
Expand Down

0 comments on commit 3c8a114

Please sign in to comment.