add temperature correction
This commit is contained in:
parent
bed2ef43d5
commit
8efe43f35f
@ -1535,8 +1535,13 @@ def add_EVs(n, nodes, avail_profile, dsm_profile, p_set, electric_share,
|
||||
options["EV_upper_degree_factor"],
|
||||
)
|
||||
|
||||
temp_eff = 1 / (1+dd_EV)
|
||||
|
||||
profile = p_set/p_set.max()
|
||||
efficiency = costs.at['Battery electric (passenger cars)', 'efficiency']
|
||||
|
||||
car_efficiency = costs.at['Battery electric (passenger cars)', 'efficiency']
|
||||
|
||||
efficiency = car_efficiency * temp_eff
|
||||
|
||||
n.madd(
|
||||
"Link",
|
||||
@ -1602,9 +1607,21 @@ def add_EVs(n, nodes, avail_profile, dsm_profile, p_set, electric_share,
|
||||
|
||||
def add_fuel_cell_cars(n, nodes, p_set, fuel_cell_share, temperature):
|
||||
|
||||
efficiency = options["transport_fuel_cell_efficiency"]
|
||||
# correction factors for vehicle heating + cooling
|
||||
dd_ICE = transport_degree_factor(
|
||||
temperature,
|
||||
options["transport_heating_deadband_lower"],
|
||||
options["transport_heating_deadband_upper"],
|
||||
options["ICE_lower_degree_factor"],
|
||||
options["ICE_upper_degree_factor"],
|
||||
)
|
||||
temp_eff = 1 / (1+dd_ICE)
|
||||
car_efficiency = options["transport_fuel_cell_efficiency"]
|
||||
efficiency = car_efficiency * temp_eff
|
||||
|
||||
|
||||
profile = p_set / p_set.max()
|
||||
p_nom = fuel_cell_share * p_set / efficiency
|
||||
p_nom = fuel_cell_share * p_set / car_efficiency
|
||||
|
||||
n.madd(
|
||||
"Link",
|
||||
@ -1624,10 +1641,22 @@ def add_fuel_cell_cars(n, nodes, p_set, fuel_cell_share, temperature):
|
||||
def add_ice_cars(n, nodes, p_set, ice_share, temperature):
|
||||
|
||||
add_carrier_buses(n, "oil")
|
||||
|
||||
ice_efficiency = options["transport_internal_combustion_efficiency"]
|
||||
|
||||
p_nom = ice_share * p_set.max() / ice_efficiency
|
||||
# correction factors for vehicle heating + cooling
|
||||
dd_ICE = transport_degree_factor(
|
||||
temperature,
|
||||
options["transport_heating_deadband_lower"],
|
||||
options["transport_heating_deadband_upper"],
|
||||
options["ICE_lower_degree_factor"],
|
||||
options["ICE_upper_degree_factor"],
|
||||
)
|
||||
temp_eff = 1 / (1+dd_ICE)
|
||||
|
||||
car_efficiency = options["transport_internal_combustion_efficiency"]
|
||||
|
||||
efficiency = car_efficiency * temp_eff
|
||||
|
||||
p_nom = ice_share * p_set.max() / car_efficiency
|
||||
suffix = " land transport ICE"
|
||||
p_nom.rename(lambda x: x + suffix, inplace=True)
|
||||
|
||||
@ -1639,7 +1668,7 @@ def add_ice_cars(n, nodes, p_set, ice_share, temperature):
|
||||
bus1=nodes + " land transport",
|
||||
bus2=["co2 atmosphere"],
|
||||
carrier="land transport oil",
|
||||
efficiency=ice_efficiency,
|
||||
efficiency=efficiency,
|
||||
efficiency2=costs.at["oil", "CO2 intensity"],
|
||||
p_nom_extendable=False,
|
||||
p_nom=p_nom,
|
||||
|
@ -921,19 +921,19 @@ def solve_network(n, config, solving, **kwargs):
|
||||
|
||||
return n
|
||||
|
||||
|
||||
#%%
|
||||
if __name__ == "__main__":
|
||||
if "snakemake" not in globals():
|
||||
from _helpers import mock_snakemake
|
||||
|
||||
snakemake = mock_snakemake(
|
||||
"solve_sector_network",
|
||||
configfiles="../config/test/config.perfect.yaml",
|
||||
# configfiles="../config/test/config.perfect.yaml",
|
||||
simpl="",
|
||||
opts="",
|
||||
clusters="37",
|
||||
ll="v1.0",
|
||||
sector_opts="CO2L0-1H-T-H-B-I-A-dist1",
|
||||
sector_opts="730H-T-H-B-I-A-dist1",
|
||||
planning_horizons="2030",
|
||||
)
|
||||
configure_logging(snakemake)
|
||||
|
Loading…
Reference in New Issue
Block a user