Skip to content

Commit 52a14eb

Browse files
committed
Merge branch 'helmet5-experimental' into alpha7
2 parents 943cdda + 40adec5 commit 52a14eb

File tree

3 files changed

+28
-4
lines changed

3 files changed

+28
-4
lines changed

Scripts/helmet.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,8 @@ def main(args):
7272

7373
# Initialize event handler and load event listeners
7474
event_handler = EventHandler()
75-
# Load event listeners from 'events/examples' folder
76-
event_handler.load_listeners(Path(__file__).parent / 'events' / 'examples')
75+
# Load event listeners from 'events/results' folder
76+
event_handler.load_listeners(Path(__file__).parent / 'events' / 'results')
7777

7878
# Setup validation if validation folder exists
7979
validation = Validation()

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:

Scripts/tests/integration/test_models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ def test_models(self):
2727
print("Testing assignment..")
2828
log.initialize(Config())
2929
event_handler = EventHandler()
30-
# Load event listeners from 'events/examples' folder
31-
event_handler.load_listeners(Path(__file__).parent.parent.parent / 'events' / 'examples')
30+
# Load event listeners from 'events/results' folder
31+
event_handler.load_listeners(Path(__file__).parent.parent.parent / 'events' / 'results')
3232

3333
results_path = os.path.join(TEST_DATA_PATH, "Results")
3434
ass_model = MockAssignmentModel(

0 commit comments

Comments
 (0)