Link Output Configuration

Link Output Configuration implementation

Description

DISCLAIMER: The naming is inconsistent, a link reflects both directions, while a link segment is only one of the two possible directions of a link. Currently, we only report link segment results, hence this configuration should have been called Link segment output configuration.

The link segment output configuration allows you to configure options regarding the link segment outputs of your traffic assignment run.

Link segment information is stored by Mode, Time Period, and Iteration, where the user can configure what information is persisted for each link segment under each available combination of these labels.

If you decide to add and remove output properties, ensure that at least one method of unique identification remains in place. Currently, this requires either including the external ids of the up and downstream node, or the link segment’s (external) id. If not, the assignment will fail.

Defaults

ID_PRIORITY fields

Name Value Type Unit
OutputProperty.TIME_PERIOD_ID activated OutputProperties.<enum> None
OutputProperty.TIME_PERIOD_EXTERNAL_ID activated OutputProperties.<enum> None
OutputProperty.MODE_ID activated OutputProperties.<enum> None
OutputProperty.MODE_EXTERNAL_ID activated OutputProperties.<enum> None
OutputProperty.LINK_SEGMENT_ID activated OutputProperties.<enum> None
OutputProperty.LINK_SEGMENT_EXTERNAL_ID activated OutputProperties.<enum> None
OutputProperty.UPSTREAM_NODE_ID activated OutputProperties.<enum> None
OutputProperty.UPSTREAM_NODE_EXTERNAL_ID activated OutputProperties.<enum> None
OutputProperty.DOWNSTREAM_NODE_ID activated OutputProperties.<enum> None
OutputProperty.DOWNSTREAM_NODE_EXTERNAL_ID activated OutputProperties.<enum> None

INPUT_PRIORITY fields

Name Value Type Unit
OutputProperty.UPSTREAM_NODE_LOCATION activated OutputProperties.<enum> None
OutputProperty.DOWNSTREAM_NODE_LOCATION activated OutputProperties.<enum> None
OutputProperty.NUMBER_OF_LANES activated OutputProperties.<enum> None
OutputProperty.LENGTH activated OutputProperties.<enum> None
OutputProperty.CAPACITY_PER_LANE activated OutputProperties.<enum> None
OutputProperty.MAXIMUM_SPEED activated OutputProperties.<enum> None

OUTPUT_PRIORITY fields

Name Value Type Unit
OutputProperty.FLOW activated OutputProperties.<enum> None
OutputProperty.CALCULATED_SPEED activated OutputProperties.<enum> None
OutputProperty.LINK_COST activated OutputProperties.<enum> None

Methods

Link output configuration exposes the following methods.

Name Description
.add(+) Add an output property to the be included in each link segment’s output entry
.remove(+) Exclude an output property from each link segment’s output entry
.remove_all_properties() Exclude all output properties from each link segment’s output entry

Properties

Link output configuration does not expose properties (yet)

Example 1

from planit import *

# prep
planit_instance = PLANit()
planit_instance.set(TrafficAssignment.TRADITIONAL_STATIC )


# add volume capacity ratio to output
planit_instance.assignment.link_configuration.add(OutputProperty.VC_RATIO)

# remove all internal PLANit ids from the output
planit_instance.assignment.link_configuration.remove(OutputProperty.MODE_ID)
planit_instance.assignment.link_configuration.remove(OutputProperty.TIME_PERIOD_ID)
planit_instance.assignment.link_configuration.remove(OutputProperty.LINK_SEGEMENT_ID)
planit_instance.assignment.link_configuration.remove(OutputProperty.UPSTREAM_NODE_ID)
planit_instance.assignment.link_configuration.remove(OutputProperty.DOWNSTREAM_NODE_ID)


Identification

Each link is by default identified by

  • OutputProperty.LINK_SEGEMENT_EXTERNAL_ID

Equally acceptable identification methods - that the user can configure - are

  • OutputProperty.LINK_SEGEMENT_ID,

or,

  • OutputProperty.UPSTREAM_NODE_EXTERNAL_ID, OutputProperty.DOWNSTREAM_NODE_EXTERNAL_ID

See also

General Output Configuration for general output configuration options
OutputProperty.<enum> for all available output properties across all output configurations in PLANit

Source code

Class LinkOutputTypeConfigurationWrapper in wrappers.py


.add(+)

Link output configuration method

.remove(+)

Link output configuration method

.remove_all_properties()

Link output configuration method