Use waste heat from FT and fuel cells in district heating
This commit is contained in:
parent
c723291ac4
commit
9ad0eb01e2
@ -2,7 +2,7 @@ logging_level: INFO
|
|||||||
|
|
||||||
results_dir: 'results/'
|
results_dir: 'results/'
|
||||||
summary_dir: results
|
summary_dir: results
|
||||||
run: '190512-underground_h2'
|
run: '190513-h2_waste_heat'
|
||||||
|
|
||||||
scenario:
|
scenario:
|
||||||
sectors: [E] # ,E+EV,E+BEV,E+BEV+V2G] # [ E+EV, E+BEV, E+BEV+V2G ]
|
sectors: [E] # ,E+EV,E+BEV,E+BEV+V2G] # [ E+EV, E+BEV, E+BEV+V2G ]
|
||||||
@ -86,7 +86,8 @@ sector:
|
|||||||
'SMR' : True
|
'SMR' : True
|
||||||
'ccs_fraction' : 0.9
|
'ccs_fraction' : 0.9
|
||||||
'hydrogen_underground_storage' : True
|
'hydrogen_underground_storage' : True
|
||||||
|
'use_fischer_tropsch_waste_heat' : True
|
||||||
|
'use_fuel_cell_waste_heat' : True
|
||||||
|
|
||||||
costs:
|
costs:
|
||||||
year: 2030
|
year: 2030
|
||||||
|
@ -533,7 +533,6 @@ def add_storage(network):
|
|||||||
else:
|
else:
|
||||||
h2_capital_cost = costs.at["hydrogen storage","fixed"]
|
h2_capital_cost = costs.at["hydrogen storage","fixed"]
|
||||||
|
|
||||||
|
|
||||||
network.madd("Store",
|
network.madd("Store",
|
||||||
["EU H2 Store"],
|
["EU H2 Store"],
|
||||||
bus="EU H2",
|
bus="EU H2",
|
||||||
@ -1253,6 +1252,21 @@ def add_industry(network):
|
|||||||
bus="co2 stored",
|
bus="co2 stored",
|
||||||
p_set = -industrial_demand.loc[nodes,"process emissions"].sum()*options["ccs_fraction"]/8760.)
|
p_set = -industrial_demand.loc[nodes,"process emissions"].sum()*options["ccs_fraction"]/8760.)
|
||||||
|
|
||||||
|
def add_waste_heat(network):
|
||||||
|
|
||||||
|
print("adding possibility to use industrial waste heat in district heating")
|
||||||
|
|
||||||
|
#AC buses with district heating
|
||||||
|
central_buses = n.buses.index[n.buses.index.str.contains("central CHP")].str[:-12]
|
||||||
|
|
||||||
|
if options['use_fischer_tropsch_waste_heat']:
|
||||||
|
n.links.loc[central_buses + " Fischer-Tropsch","bus3"] = central_buses + " urban heat"
|
||||||
|
n.links.loc[central_buses + " Fischer-Tropsch","efficiency3"] = 0.95 - n.links.loc[central_buses + " Fischer-Tropsch","efficiency"]
|
||||||
|
|
||||||
|
if options['use_fuel_cell_waste_heat']:
|
||||||
|
n.links.loc[central_buses + " H2 Fuel Cell","bus2"] = central_buses + " urban heat"
|
||||||
|
n.links.loc[central_buses + " H2 Fuel Cell","efficiency2"] = 0.95 - n.links.loc[central_buses + " H2 Fuel Cell","efficiency"]
|
||||||
|
|
||||||
|
|
||||||
def restrict_technology_potential(n,tech,limit):
|
def restrict_technology_potential(n,tech,limit):
|
||||||
print("restricting potentials (p_nom_max) for {} to {} of technical potential".format(tech,limit))
|
print("restricting potentials (p_nom_max) for {} to {} of technical potential".format(tech,limit))
|
||||||
@ -1318,6 +1332,9 @@ if __name__ == "__main__":
|
|||||||
if "I" in opts:
|
if "I" in opts:
|
||||||
add_industry(n)
|
add_industry(n)
|
||||||
|
|
||||||
|
if "I" in opts and "H" in opts:
|
||||||
|
add_waste_heat(n)
|
||||||
|
|
||||||
for o in opts:
|
for o in opts:
|
||||||
m = re.match(r'^\d+h$', o, re.IGNORECASE)
|
m = re.match(r'^\d+h$', o, re.IGNORECASE)
|
||||||
if m is not None:
|
if m is not None:
|
||||||
|
Loading…
Reference in New Issue
Block a user