quetzal.model.stepmodel module

class quetzal.model.stepmodel.StepModel(*args, **kwargs)[source]

Bases: quetzal.model.plotmodel.PlotModel, quetzal.model.analysismodel.AnalysisModel, quetzal.model.docmodel.DocModel

add_type_prefixes(prefixes={'links': 'link_', 'nodes': 'node_', 'zones': 'zone_'})

deprecated! * requires: links, nodes, zones * builds: links, nodes, zones

assert_convex_road_digraph()

deprecated! * requires: road_links

assert_lines_integrity()

deprecated! * requires: links * builds: broken_sequences

assert_no_circular_lines()

deprecated! The model does not work with circular lines

  • requires: links
  • builds: circular_lines
assert_no_collision(sets=('links', 'nodes', 'zones', 'road_links', 'road_nodes'))

deprecated! * requires: links, nodes, zones

assert_no_dead_ends(cutoff=5)

deprecated! look for dead-ends in the road network only the dead-ends with a dead-rank lower than the cutoff will be identified

  • requires: road_links
assert_nodeset_consistency()

deprecated! * requires: nodes, links

build_lines(line_columns='all', group_id='trip_id', *args, **kwargs)

deprecated! None

checkpoints(link_checkpoints=(), node_checkpoints=(), **loaded_links_and_nodes_kwargs)

deprecated! tree analysis (arborescences) :param link_checkpoints: mandatory transit links collection (set) :param nodes_checkpoints: mandatory transit nodes :param volume column: column of self.od_stack to assign :loaded_links_and_nodes_kwargs: …

example:

sm.checkpoints(link_checkpoints = {}, node_checkpoints={41})
export.assigned_links_nodes_to_shp(
    sm.checkpoint_links,
    sm.checkpoint_nodes,
    gis_path=gis_path,
    link_name='links_test.shp',
    node_name='nodes_test.shp'

)

clean_road_network(cutoff=10, recursive_depth=1)

deprecated! clean road_network

  • requires: road_links, road_nodes
  • builds: road_links, road_nodes
get_lines_integrity()

deprecated! * requires: links * builds: links

get_no_circular_lines()

deprecated! * requires: links * builds: links

get_no_collision(prefixes={'links': 'link_', 'nodes': 'node_', 'zones': 'zone_'})

deprecated! * requires: links, nodes, zones * builds: links, nodes, zones

linear_solver(constrained_links, nb_clusters=20, cluster_column=None, link_path_column='link_path', linprog_kwargs={'bounds_A': [0.75, 1.5], 'bounds_emissions': [0.8, 1.2], 'bounds_tot_emissions': [0.95, 1.05], 'maxiter': 3000, 'pas_distance': 200, 'tolerance': 1e-05}, **kwargs)

deprecated! To perform the optimization on a model object once it is built and run, in order to match the observed volumes.

  • requires: od_stack, constrained_links
  • builds: aggregated model, pivot_stack_matrix

Le but de linear_solver est de modifier la matrice des volumes par OD en la multipliant par un pivot, afin de coller aux observations recueillies sur certains nœuds/liens du réseau. Etapes: 0. Construction de l’indicatrice (matrice qui indique la présence des

liens contraints dans chaque OD)
  1. Agrégation du modèle.
  2. Résolution du problème d’optimisation linéaire pour construire
    pivot_stack_matrix (matrice pivot). Plus de détails dans linearsolver_utils.
  3. Désagrégation de la matrice pivot pour revenir au modèle de base.
renumber(max_zones=500, cluster_column=None, is_od_stack=False, **kwargs)

deprecated! clusterize zones

  • requires: zones, volumes
  • builds: zones, volumes, cluster_series
renumber_nodes(n_clusters, **kwargs)

deprecated! clusterize nodes

  • requires: nodes
  • builds: links, nodes
step_analysis()

deprecated! To perform on a model object once it is built and run, aggregate and analyses results.

  • requires: shared, zones, loaded_links, od_stack
  • builds: aggregated_shares, lines, economic_series
step_cast_network(nearest_method='nodes', weight='length', penalty_factor=1, speed=3, replace_nodes=False, dumb_cast=False, **nc_kwargs)

deprecated! Finds a path for the transport lines in an actual road network

  • requires: nodes, links, road_nodes, road_links
  • builds: links
Parameters:
  • nearest_method – if ‘links’, looks for the nearest link to a stop in road_links and links the stop to its end_node (b). If ‘node’ looks for the actual nearest node in road_nodes.
  • nodes_checkpoints – mandatory transit nodes
  • factor (penalty) –

Ng_kwargs:

step_desire(store_shp=False, **to_shp_kwarg)

deprecated! Builds the desire matrix

  • requires: zones, shares
  • builds: neighborhood, macro_neighborhood
step_footpaths(road=False, speed=3, max_length=None, n_clusters=None, **kwargs)

deprecated! * requires: nodes * builds: footpaths

step_modal_split(build_od_stack=True, **modal_split_kwargs)

deprecated! * requires: volumes, los * builds: od_stack, shared

Parameters:modal_split_kwargs – kwargs of engine.modal_split

example:

sm.step_modal_split(
    time_scale=1/1800,
    alpha_car=2,
    beta_car=600
)
step_ntlegs(short_leg_speed=2, long_leg_speed=10, threshold=1000, n_ntlegs=5, max_ntleg_length=5000, zone_to_transit=True, zone_to_road=False)

deprecated! Builds the centroids and the ntlegs

  • requires: zones, nodes
  • builds: centroids, zone_to_transit, zone_to_road
Parameters:
  • ntleg_speed – in km/h
  • n_ntlegs – int
  • max_ntleg_length – in m

example:

sm.step_ntlegs(
    n_ntlegs=5,
    walk_speed=2,
    short_leg_speed=3,
    long_leg_speed=15,
    threshold=500,
    max_ntleg_length=5000
)
step_pathfinder(walk_on_road=False, complete=True, **kwargs)

deprecated! * requires: links, footpaths, zone_to_transit, zone_to_road * builds: pt_los

quetzal.model.stepmodel.deprecated_method(method)[source]
quetzal.model.stepmodel.read_hdf(filepath, *args, **kwargs)[source]
quetzal.model.stepmodel.read_json(folder)[source]
quetzal.model.stepmodel.read_zip(filepath, *args, **kwargs)[source]
quetzal.model.stepmodel.read_zipped_hdf(filepath, *args, **kwargs)[source]
quetzal.model.stepmodel.read_zippedpickles(folder, *args, **kwarg)[source]