Skip to content

Commit 510942b

Browse files
committed
Merge branch 'secondary-destination-extension-for-result-printing' into helmet5-experimental
2 parents 27cb814 + 6e9bd8b commit 510942b

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

Scripts/modelsystem.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,30 @@ def run_iteration(self,
378378
self.resultdata.print_line(
379379
"{}\t{:1.2%}".format(m, hs15_modes_shares[m]),
380380
"result_summary")
381+
382+
#Modes for HS15 region (including secondary destination)
383+
hs15_modes_total = {mode: 0 for mode in self.dm.purpose_dict["hw"].modes}
384+
tour_generation = gen_param.tour_generation
385+
for pur in self.dm.purpose_dict:
386+
purpose = self.dm.purpose_dict[pur]
387+
if purpose.name in ["hw","hc","hu","hs","ho","hh","wo","oo"]:
388+
for mode in purpose.modes:
389+
demsum = purpose.generated_tours[mode].sum()
390+
if purpose.name == "hh":
391+
hs15_modes_total[mode] += demsum #one trip only
392+
elif mode=="park_and_ride":
393+
#2 trips split by mode
394+
hs15_modes_total["transit"] += 0.5 * demsum * 2
395+
hs15_modes_total["car"] += 0.5 * demsum * 2
396+
else:
397+
hs15_modes_total[mode] += demsum * (2+tour_generation["hoo"][purpose.name][mode]) #sec_dest included
398+
hs15_modes_shares = {m: hs15_modes_total[m]/sum(hs15_modes_total.values()) for m in hs15_modes_total}
399+
hs15_modes = [m for m in hs15_modes_total]
400+
self.resultdata.print_line("\nHS15 mode shares (trip-based with secondary destinations)", "result_summary")
401+
for m in hs15_modes:
402+
self.resultdata.print_line(
403+
"{}\t{:1.2%}".format(m, hs15_modes_shares[m]),
404+
"result_summary")
381405

382406
# Calculate and return traffic impedance
383407
for ap in self.ass_model.assignment_periods:

0 commit comments

Comments
 (0)