Skip to content

Commit

Permalink
integrated and stand alone works
Browse files Browse the repository at this point in the history
  • Loading branch information
Sven Eggimann committed Mar 5, 2019
1 parent c0ea78e commit 008968b
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 50 deletions.
55 changes: 20 additions & 35 deletions energy_demand/basic/demand_supply_interaction.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

def constrained_results(
results_constrained,
results_unconstrained,
#results_unconstrained,
results_unconstrained_no_heating,
submodels_names,
technologies,
Expand Down Expand Up @@ -65,7 +65,7 @@ def constrained_results(
# Add all constrained results (technology specific results)
# Aggregate according to submodel, fueltype, technology, region, timestep
# ----------------------------------------
summed_heating_demand = np.zeros((len(submodels_names), reg_nrs, fueltype_nrs, 8760))
#summed_heating_demand = np.zeros((len(submodels_names), reg_nrs, fueltype_nrs, 8760))
for submodel_nr, submodel in enumerate(submodels_names):
for tech, fuel_tech in results_constrained.items():
# ----
Expand All @@ -76,22 +76,9 @@ def constrained_results(
fueltype_int = technologies[tech_simplified].fueltype_int
key_name = "{}_{}_{}".format(submodel, fueltype_str, tech_simplified)

# KAMEL
#_fuel = np.zeros((len(submodels_names), reg_nrs, fueltype_nrs, 8760))
#for region in range(reg_nrs):
# _fuel[submodel_nr][region][fueltype_int] += fuel_tech[submodel_nr][region][fueltype_int]

#print("ffff " + str(np.sum(_fuel)))
#print("fff2 " + str(np.sum(fuel_tech[submodel_nr][:, fueltype_int, :])))
#print(_fuel.shape)
#print(fuel_tech[submodel_nr][:, fueltype_int, :].shape)
#print("--*--")
# Out results
supply_results[key_name] = fuel_tech[submodel_nr][:, fueltype_int, :]

summed_heating_demand[submodel_nr][:, fueltype_int, :] += fuel_tech[submodel_nr][:, fueltype_int, :]
#summed_heating_demand[submodel_nr][:, fueltype_int, :] += _fuel

#for key_name, values in supply_results.items():
# if testing_functions.test_if_minus_value_in_array(values):
# raise Exception("TTT {} {}".format(key_name, np.sum(values)))
Expand All @@ -100,26 +87,24 @@ def constrained_results(
# --------------------------------
#assert not testing_functions.test_if_minus_value_in_array(results_unconstrained)
#assert not testing_functions.test_if_minus_value_in_array(summed_heating_demand)
print(fuel_tech[submodel_nr][:, fueltype_int, :].shape)
print("ddddd")
print(np.sum(summed_heating_demand))
print(np.sum(results_unconstrained))
print(np.sum(results_unconstrained_no_heating))
print(results_unconstrained.shape)
print(summed_heating_demand.shape)
print(results_unconstrained_no_heating.shape)
print("DDdf --")
assert not testing_functions.test_if_minus_value_in_array(results_unconstrained_no_heating)
#print(fuel_tech[submodel_nr][:, fueltype_int, :].shape)
#print("ddddd")
#print(np.sum(summed_heating_demand))
#print(np.sum(results_unconstrained))
#print(np.sum(results_unconstrained_no_heating))
#print(results_unconstrained.shape)
#print(summed_heating_demand.shape)
#print(results_unconstrained_no_heating.shape)
#print("DDdf --")
#assert not testing_functions.test_if_minus_value_in_array(results_unconstrained_no_heating)
# Substract constrained fuel from nonconstrained (total) fuel
non_heating_ed_OLD = results_unconstrained - summed_heating_demand #sum(results_constrained.values())
non_heating_ed = results_unconstrained_no_heating
print("affff")
print(np.sum(non_heating_ed_OLD))
print(np.sum(non_heating_ed))
print(non_heating_ed_OLD.shape)
print(non_heating_ed.shape)
print("--")
assert not testing_functions.test_if_minus_value_in_array(non_heating_ed)
#non_heating_ed_OLD = results_unconstrained - summed_heating_demand #sum(results_constrained.values())

#print(np.sum(non_heating_ed_OLD))
#print(np.sum(non_heating_ed))
#print(non_heating_ed_OLD.shape)
#print(non_heating_ed.shape)
assert not testing_functions.test_if_minus_value_in_array(results_unconstrained_no_heating)

# ---------------------------------
# Add non_heating for all fueltypes
Expand All @@ -133,7 +118,7 @@ def constrained_results(
key_name = "{}_{}_{}".format(submodel, fueltype_str, "non_heating")

# Add fuel for all regions for specific fueltype
supply_results[key_name] = non_heating_ed[submodel_nr][:, fueltype_int, :]
supply_results[key_name] = results_unconstrained_no_heating[submodel_nr][:, fueltype_int, :]

# --------------------------------------------
# Check whether any entry is smaller than zero
Expand Down
20 changes: 10 additions & 10 deletions energy_demand/enduse_func.py
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ def __init__(
param_lf_improved_cy=strategy_vars['dm_improvement'][enduse][curr_yr],
make_all_flat=make_all_flat)

assert not testing_functions.test_if_minus_value_in_array(self.fuel_yh) #KAMEL
##assert not testing_functions.test_if_minus_value_in_array(self.fuel_yh)

else: #If technologies are defined for an enduse
mode_constrained = get_enduse_configuration(
Expand Down Expand Up @@ -292,9 +292,9 @@ def __init__(
if np.sum(fuel_tech) == 0:
self.enduse_techs.remove(tech)'''

for i in fuel_tech_y.values():
assert not testing_functions.test_if_minus_value_in_array(i)
assert not testing_functions.test_if_minus_value_in_array(self.fuel_y)
##for i in fuel_tech_y.values():
## assert not testing_functions.test_if_minus_value_in_array(i)
##assert not testing_functions.test_if_minus_value_in_array(self.fuel_y)

# ------------------------------------------
# Assign load profiles
Expand Down Expand Up @@ -329,10 +329,10 @@ def __init__(
assumptions.technologies,
fuel_yh,
param_lf_improved_cy=strategy_vars['dm_improvement'][enduse][curr_yr])
assert not testing_functions.test_if_minus_value_in_array(self.fuel_y)
for key, i in self.techs_fuel_yh.items():
assert not testing_functions.test_if_minus_value_in_array(i)

##assert not testing_functions.test_if_minus_value_in_array(self.fuel_y)
##for key, i in self.techs_fuel_yh.items():
## assert not testing_functions.test_if_minus_value_in_array(i)
else:
self.fuel_yh = load_shifting(
enduse,
Expand All @@ -341,8 +341,8 @@ def __init__(
param_lf_improved_cy=strategy_vars['dm_improvement'][enduse][curr_yr],
make_all_flat=make_all_flat)

if testing_functions.test_if_minus_value_in_array(self.fuel_yh):
raise Exception("Minus fuel value detected: {} {} {}".format(enduse, sector, np.sum(self.fuel_yh)))
##if testing_functions.test_if_minus_value_in_array(self.fuel_yh):
## raise Exception("Minus fuel value detected: {} {} {}".format(enduse, sector, np.sum(self.fuel_yh)))

def load_shifting_multiple_tech(
enduse,
Expand Down
9 changes: 4 additions & 5 deletions energy_demand/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -245,20 +245,20 @@ def aggregate_across_all_regs(
# Unconstrained results
# np.array of all fueltypes (submodel, region, fueltype, hours)
# ----------------------------------------------------
aggr_results['results_unconstrained'] = aggregate_result_unconstrained(
'''aggr_results['results_unconstrained'] = aggregate_result_unconstrained(
assumptions.nr_of_submodels,
assumptions.lookup_sector_enduses,
aggr_results['ed_enduse_fueltype_regs_yh'],
fueltypes_nr,
reg_nrs)
reg_nrs)'''

# ----------------------------------------------------
# Generate dict for supply model
# ----------------------------------------------------
if criterias['mode_constrained']:
aggr_results['supply_results'] = demand_supply_interaction.constrained_results(
aggr_results['results_constrained'],
aggr_results['results_unconstrained'],
#aggr_results['results_unconstrained'],
aggr_results['results_unconstrained_no_heating'],
assumptions.submodels_names,
technologies,
Expand Down Expand Up @@ -759,8 +759,7 @@ def aggregate_single_region(
for idx, name in enumerate(lookup_tables.basic_lookups()['submodels_names'])
}

# Iterate all simulation results
for enduse_object in all_submodels:
for enduse_object in all_submodels: # Iterate all simulation results
# -----------------------------------------------------------------
# Aggregate fuel of all technologies
# -----------------------------------------------------------------
Expand Down

0 comments on commit 008968b

Please sign in to comment.