Skip to content

Architecture

Abstract Component

classDiagram class Component{ +_controller +_trace +validate_inputs() +run() +report_progress() +test_component() +write_top_sheet() }

Controllers

classDiagram Controller <|-- ModelController class Controller{ _config +_logger +_top_sheet +_trace +validate_inputs() +run() +report_progress() +test_component() +write_top_sheet() } class ModelController{ +_components: String model.Component +_iteration +validate_inputs() +run() +report_progress() +test_component() +write_top_sheet() +run_prepare_emme_networks() +run_non_motorized_skims() +run_airpassenger_model() +run_resident_model() +run_internal_external_model() +run_truck_model() +run_average_demand() +run_highway_assignment() +run_transit_assignment() } class Logger{ +controller +log() }

Configs

classDiagram class Configuration{ +load() +save() }

Utils

classDiagram class NetworkCalc{ +_scenario +_network_calc +__call__() +_add_calc() +run() } class OMX{ +_file_path +_mode +_scenario +_omx_key +_omx_file +_matrix_cache +_generate_name() +open() +close() +__enter__() +__exit__() +write_matrices() +write_clipped_array() +write_array() +read() +read_hdf5() } class EmmeProjectCache{ +close_all() +create_project() +project() } class MatrixCache{ +_scenario +_emmebanks +_timestamps +_data +get_data() +set_data() +clear() }

Demand

classDiagram Component -- AirPassenger: how? Component -- InternalExternal: how? Component -- Truck: how? Component <|-- ResidentsModel ResidentsModel -- InternalExternal: how? ResidentsModel -- AirPassenger: how? class Component{ } class AirPassenger{ +_parameter +_load_demand() +_sum_demand() +_interpolate() +_export_result() } class InternalExternal{ +_parameter +_ix_forecast() +_ix_time_of_day() +_ix_toll_choice() +_export_results() } class ResidentsModel{ +_start_household_manager() +_start_matrix_manager() +_run_resident_model() +_stop_java() } class Truck{ +_parameter +_generation() +_distribution() +_time_of_day() +_toll_choice() +_export_results() }

Assignment

classDiagram Component <|-- HighwayAssignment Component <|-- AssignMAZSPDemand Component <|-- ActiveModesAssignment ActiveModesAssignment -- TransitAssignment: how? HighwayAssignment -- AssignMAZSPDemand: how? ImportDemand -- HighwayAssignment: how? ActiveModesAssignment -- AssignMAZSPDemand: how? class Component{ } class HighwayAssignment{ +_num_processors +_root_dir +_matrix_cache +_emme_manager +_Emmebank +_skim_matrices +_setup() +_assign_and_skim() +_calc_time_skim() +_set_intrazonal_values() +_export_skims() +_base_spec() +_prepare_traffic_class() +_prepare_path_analyses() } class ImportDemand{ +_root_dir +_scenario +_period +_setup() +_read_demand() } class AssignMAZSPDemand{ +_scenario +_period +_modes +_modeller +_bin_edges +_net_calc +_debug_report +_debug +_mazs +_demand +_max_dist +_network +_root_index +_leaf_index +_setup() +_prepare_network() +_get_county_mazs() +_process_demand() +_group_demand() +_find_roots_and_leaves() +_run_shortest_path() +_assign_flow() } class ActiveModesAssignment{ +_scenario +_modeller +_setup() +_prepare_network() +_run_shortest_path() } class TransitAssignment{ +_root_dir +_emme_manager +_setup() }