ECLIPSE(1)

πŸ’– ECLIPSE(1) β€” the group chat version πŸ’–

okay bestie, buckle up, this is the manual page for ECLIPSE, and it is long. we're doing this in parts. iykyk. πŸ¦‹


✨ NAME ✨

Eclipse β€” a microscopic, multi-modal traffic simulation. yes, microscopic. yes, multi-modal. she contains multitudes, periodt. πŸ’…


πŸš— SYNOPSIS πŸš—

sumo [OPTION]*

literally just run it with whichever options you want, no cap.


🌈 DESCRIPTION 🌈

Eclipse SUMO β€” sumo 1.27.1

Copyright (C) 2001-2026 German Aerospace Center (DLR) and others; https://sumo.dlr.de

A microscopic, multi-modal traffic simulation. that's the whole vibe. πŸš¦πŸš—πŸš²πŸšΆ


βš™οΈ Configuration Options βš™οΈ

like, the settings settings. how you tell her where to read from and where to dump stuff. 🌸

  • -c, --configuration-file FILE β€” loads the named config on startup. your lil startup recipe.
  • -C, --save-configuration FILE β€” saves the current configuration into FILE. so she remembers what you two did. 🫢
  • --save-configuration.relative β€” enforce relative paths when saving the configuration. keeps things cute and portable.
  • --save-template FILE β€” saves a configuration template (empty) into FILE. a blank lil canvas, iconic.
  • --save-schema FILE β€” saves the configuration schema into FILE.
  • --save-commented β€” adds comments to the saved template, configuration, or schema. so future you isn't confused, bestie.

πŸ“₯ Input Options πŸ“₯

where all the data comes in. the reading era.

  • -n, --net-file FILE β€” load the road network description from FILE. this is the actual map, the bones of it all. πŸ—ΊοΈ
  • -r, --route-files FILE β€” load route descriptions from FILE(s). plural, she can take many.
  • -a, --additional-files FILE β€” load further descriptions from FILE(s). the extras.
  • -w, --weight-files FILE β€” load edge/lane weights for online rerouting from FILE.
  • -x, --weight-attribute STR β€” name of the xml attribute which gives the edge weight.
  • --load-state FILE β€” loads a network state from FILE. mid-scene entry, main character energy.
  • --load-state.offset TIME β€” shifts all times loaded from a saved state by the given offset.
  • --load-state.remove-vehicles STR[] β€” removes vehicles with the given IDs from the loaded state. bye babes. πŸ‘‹
  • --junction-taz β€” initialize a TAZ for every junction, to use the attributes toJunction and fromJunction.

πŸ“€ Output Options πŸ“€

okay this is the big one. everything she can spit out at you. hydrate. πŸ’§

  • --write-license β€” include license info into every output file. receipts, legally.
  • --write-metadata β€” write parsable metadata (configuration etc.) instead of comments.
  • --output-prefix STR β€” prefix applied to all output files. the special string 'TIME' gets replaced by the current time. ✨
  • --output-suffix STR β€” suffix applied to all output files. also swaps 'TIME' for the current time.
  • --precision INT β€” how many digits after the comma for floating point output.
  • --precision.geo INT β€” how many digits after the comma for lon,lat output.
  • --output.compression STR β€” defines the standard compression algorithm (currently only for parquet output).
  • --output.format STR β€” defines the standard output format if it can't be derived from the file name ('xml', 'csv', 'parquet').
  • --output.column-header STR β€” how to derive column headers from attribute names ('none', 'tag', 'auto', 'plain').
  • --output.column-separator STR β€” the separator used in CSV output.
  • -H, --human-readable-time β€” write time values as hour:minute:second or day:hour:minute:second rather than seconds. she's being nice to your eyeballs.
  • --netstate-dump FILE β€” save complete network states into FILE.
  • --netstate-dump.empty-edges β€” write also empty edges completely when dumping. don't skip the quiet ones.
  • --netstate-dump.precision INT β€” write positions and speeds with the given precision (default 2).
  • --emission-output FILE β€” save the emission values of each vehicle.
  • --emission-output.precision INT β€” write emission values with the given precision (default 2).
  • --emission-output.geo β€” save the positions in emission output using geo-coordinates (lon/lat).
  • --emission-output.step-scaled β€” write emission values scaled to the step length rather than as per-second values.
  • --emission-output.attributes STR[] β€” list attributes that should be included in the emission output.
  • --battery-output FILE β€” save the battery values of each vehicle. πŸ”‹
  • --battery-output.precision INT β€” write battery values with the given precision (default 2).
  • --elechybrid-output FILE β€” save the elecHybrid values of each vehicle.
  • --elechybrid-output.precision INT β€” write elecHybrid values with the given precision (default 2).
  • --elechybrid-output.aggregated β€” write elecHybrid values into one aggregated file.
  • --chargingstations-output FILE β€” write data of charging stations.
  • --chargingstations-output.aggregated β€” write aggregated charging event data instead of single time steps.
  • --chargingstations-output.aggregated.write-unfinished β€” write aggregated charging event data for vehicles which have not arrived at simulation end.
  • --overheadwiresegments-output FILE β€” write data of overhead wire segments.
  • --substations-output FILE β€” write data of electrical substation stations.
  • --substations-output.precision INT β€” write substation values with the given precision (default 2).
  • --fcd-output FILE β€” save the Floating Car Data.
  • --fcd-output.geo β€” save the Floating Car Data using geo-coordinates (lon/lat).
  • --fcd-output.utm β€” save the Floating Car Data using utm/unshifted coordinates (x/y).
  • --fcd-output.signals β€” add the vehicle signal state to the FCD output (brake lights etc.).
  • --fcd-output.distance β€” add kilometrage to the FCD output (linear referencing).
  • --fcd-output.acceleration β€” add acceleration to the FCD output.
  • --fcd-output.speed-relative β€” add relative speed (vehicle speed / edge speed limit) to the FCD output.
  • --fcd-output.max-leader-distance FLOAT β€” add leader vehicle information to the FCD output (within the given distance).
  • --fcd-output.params STR[] β€” add generic parameter values to the FCD output.
  • --fcd-output.filter-edges.input-file FILE β€” restrict fcd output to the edge selection from the given input file.
  • --fcd-output.attributes STR[] β€” list attributes that should be included in the FCD output.
  • --fcd-output.filter-shapes STR[] β€” list shape names that should be used to filter the FCD output.
  • --fcd-output.skip-empty β€” do not save data for time steps which have no vehicles / transportables. silence, we love her.
  • --person-fcd-output FILE β€” save fcd for persons and container to a separate FILE.
  • --device.ssm.filter-edges.input-file FILE β€” restrict SSM device output to the edge selection from the given input file.
  • --full-output FILE β€” save a lot of information for each timestep (very redundant). she's an over-sharer, we stan. 😭
  • --queue-output FILE β€” save the vehicle queues at the junctions (experimental).
  • --queue-output.period TIME β€” save vehicle queues with the given period.
  • --vtk-output FILE β€” save complete vehicle positions inclusive speed values in the VTK format (usage: /path/out will produce /path/out_$TIMESTEP$.vtp files).
  • --amitran-output FILE β€” save the vehicle trajectories in the Amitran format.
  • --summary-output FILE β€” save aggregated vehicle departure info into FILE.
  • --summary-output.period TIME β€” save summary-output with the given period.
  • --person-summary-output FILE β€” save aggregated person counts into FILE.
  • --tripinfo-output FILE β€” save single vehicle trip info into FILE.
  • --tripinfo-output.write-unfinished β€” write tripinfo output for vehicles which have not arrived at simulation end.
  • --tripinfo-output.write-undeparted β€” write tripinfo output for vehicles which have not departed at simulation end because of depart delay.
  • --personinfo-output FILE β€” save personinfo and containerinfo to a separate FILE.
  • --vehroute-output FILE β€” save single vehicle route info into FILE.
  • --vehroute-output.exit-times β€” write the exit times for all edges.
  • --vehroute-output.last-route β€” write the last route only.
  • --vehroute-output.sorted β€” sorts the output by departure time.
  • --vehroute-output.dua β€” write the output in the duarouter alternatives style.
  • --vehroute-output.cost β€” write costs for all routes.
  • --vehroute-output.intended-depart β€” write the output with the intended instead of the real departure time.
  • --vehroute-output.route-length β€” include total route length in the output.
  • --vehroute-output.write-unfinished β€” write vehroute output for vehicles which have not arrived at simulation end.
  • --vehroute-output.skip-ptlines β€” skip vehroute output for public transport vehicles.
  • --vehroute-output.incomplete β€” include invalid routes and route stubs in vehroute output.
  • --vehroute-output.stop-edges β€” include information about edges between stops.
  • --vehroute-output.speedfactor β€” write the vehicle speedFactor (defaults to 'true' if departSpeed is written).
  • --vehroute-output.internal β€” include internal edges in the output.
  • --personroute-output FILE β€” save person and container routes to a separate FILE.
  • --link-output FILE β€” save link states into FILE.
  • --railsignal-block-output FILE β€” save railsignal-blocks into FILE.
  • --railsignal-vehicle-output FILE β€” record entry and exit times of vehicles for railsignal blocks into FILE.
  • --bt-output FILE β€” save bluetooth visibilities into FILE (in conjunction with device.btreceiver and device.btsender).
  • --lanechange-output FILE β€” record lane changes and their motivations for all vehicles into FILE.
  • --lanechange-output.started β€” record start of lane change manoeuvres.
  • --lanechange-output.ended β€” record end of lane change manoeuvres.
  • --lanechange-output.xy β€” record coordinates of lane change manoeuvres.
  • --stop-output FILE β€” record stops and loading/unloading of passenger and containers for all vehicles into FILE.
  • --stop-output.write-unfinished β€” write stop output for stops which have not ended at simulation end.
  • --collision-output FILE β€” write collision information into FILE. πŸ’€
  • --edgedata-output FILE β€” write aggregated traffic statistics for all edges into FILE.
  • --lanedata-output FILE β€” write aggregated traffic statistics for all lanes into FILE.
  • --statistic-output FILE β€” write overall statistics into FILE.
  • --deadlock-output FILE β€” write reports on deadlocks into FILE.
  • --save-state.times STR[] β€” use TIME[] as the times at which a network state gets written.
  • --save-state.period TIME β€” save state repeatedly after the TIME period.
  • --save-state.period.keep INT β€” keep only the last INT periodic state files.
  • --save-state.prefix FILE β€” prefix for network states.

okay bestie that's the config + input + output stack, and there's more coming, so don't go anywhere. πŸŽ€

  • --save-state.suffix STR β€” okay so this sets the suffix for network states, bestie, and the vibe is either .xml.gz or .xml. ✨
  • --save-state.files FILE β€” tells it which FILEs to use for network states. πŸ’–
  • --save-state.rng β€” saves random number generator states. The RNG gets its own little snapshot, periodt. 🎲
  • --save-state.transportables β€” saves person and container states. Heads up: this one is experimental, so it's giving handle-with-care energy, fr fr. 🫢
  • --save-state.constraints β€” saves rail signal constraints. 🚦
  • --save-state.precision INT β€” writes internal state values with the given precision (default is 2). πŸ”

⏰ Time Options ⏰

  • -b, --begin TIME β€” defines the begin time in seconds; the simulation starts at this time. ⏰
  • -e, --end TIME β€” defines the end time in seconds; the simulation ends at this time. πŸ›‘
  • --step-length TIME β€” defines the step duration in seconds. πŸ‘Ÿ

πŸ› οΈ Processing Options πŸ› οΈ

  • --step-method.ballistic β€” whether to use ballistic method for the positional update of vehicles (default is a semi-implicit Euler method). Physics bestie moment. πŸš—
  • --extrapolate-departpos β€” whether vehicles that depart between simulation steps should extrapolate the depart position. πŸ“
  • --threads INT β€” defines the number of threads for parallel simulation. Parallel besties, assemble. πŸ‘―
  • --lateral-resolution FLOAT β€” defines the resolution in m when handling lateral positioning within a lane (with -1 all vehicles drive at the center of their lane. πŸ›£οΈ
  • -s, --route-steps TIME β€” load routes for the next number of seconds ahead. πŸ—ΊοΈ
  • --no-internal-links β€” disable (junction) internal links. 🚧
  • --ignore-junction-blocker TIME β€” ignore vehicles which block the junction after they have been standing for SECONDS (-1 means never ignore). 🚫
  • --ignore-route-errors β€” do not check whether routes are connected. πŸ™ˆ
  • --ignore-accidents β€” do not check whether accidents occur. πŸ’₯
  • --collision.action STR β€” how to deal with collisions: [none,warn,teleport,remove]. πŸ’€
  • --intermodal-collision.action STR β€” how to deal with collisions between vehicle and pedestrian: [none,warn,teleport,remove]. 🚢
  • --collision.stoptime TIME β€” let vehicle stop for TIME before performing collision.action (except for action 'none'). ⏸️
  • --intermodal-collision.stoptime TIME β€” let vehicle stop for TIME before performing intermodal-collision.action (except for action 'none'). πŸ›‘
  • --collision.check-junctions β€” enables collisions checks on junctions. 🚦
  • --collision.check-junctions.mingap FLOAT β€” increase or decrease sensitivity for junction collision check. πŸ“
  • --collision.mingap-factor FLOAT β€” sets the fraction of minGap that must be maintained to avoid collision detection. If a negative value is given, the carFollowModel parameter is used. πŸ”
  • --keep-after-arrival TIME β€” after a vehicle arrives, keep it in memory for the given TIME (for TraCI access). 🧠
  • --max-num-vehicles INT β€” delay vehicle insertion to stay within the given maximum number. πŸš—
  • --max-num-persons INT β€” delay person insertion to stay within the given maximum number. 🚢
  • --max-num-teleports INT β€” abort the simulation if the given maximum number of teleports is exceeded. πŸ›‘
  • --scale FLOAT β€” scale demand by the given factor (by discarding or duplicating vehicles). βš–οΈ
  • --scale-suffix STR β€” suffix to be added when creating ids for cloned vehicles. 🏷️
  • --time-to-teleport TIME β€” specify how long a vehicle may wait until being teleported, defaults to 300, non-positive values disable teleporting. ⏳
  • --time-to-teleport.highways TIME β€” the waiting time after which vehicles on a fast road (speed > 69km/h) are teleported if they are on a non-continuing lane. πŸ›£οΈ
  • --time-to-teleport.highways.min-speed FLOAT β€” the waiting time after which vehicles on a fast road (default: speed > 69km/h) are teleported if they are on a non-continuing lane. πŸš—
  • --time-to-teleport.disconnected TIME β€” the waiting time after which vehicles with a disconnected route are teleported. Negative values disable teleporting. 🧭
  • --time-to-teleport.remove β€” whether vehicles shall be removed after waiting too long instead of being teleported. πŸ—‘οΈ
  • --time-to-teleport.remove-constraint β€” whether rail-signal-constraint based deadlocks shall be cleared by removing a constraint. 🚦
  • --time-to-teleport.ride TIME β€” the waiting time after which persons / containers waiting for a pickup are teleported. Negative values disable teleporting. πŸ›Ί
  • --time-to-teleport.bidi TIME β€” the waiting time after which vehicles on bidirectional edges are teleported. πŸ”
  • --time-to-teleport.railsignal-deadlock TIME β€” the waiting time after which vehicles in a rail-signal based deadlock are teleported. πŸš†
  • --waiting-time-memory TIME β€” length of time interval, over which accumulated waiting time is taken into account (default is 100s.). ⏱️
  • --startup-wait-threshold TIME β€” minimum consecutive waiting time before applying startupDelay. πŸ•’
  • --max-depart-delay TIME β€” how long vehicles wait for departure before being skipped, defaults to -1 which means vehicles are never skipped. 🚦
  • --sloppy-insert β€” whether insertion on an edge shall not be repeated in same step once failed. 🫠
  • --eager-insert β€” whether each vehicle is checked separately for insertion on an edge. 🏎️
  • --emergency-insert β€” allow inserting a vehicle in a situation which requires emergency braking. 🚨
  • --insertion-checks STR β€” override default value for vehicle attribute insertionChecks. πŸ”§
  • --random-depart-offset TIME β€” each vehicle receives a random offset to its depart value drawn uniformly from [0, TIME]. 🎲
  • --lanechange.duration TIME β€” duration of a lane change maneuver (default 0). πŸ”„
  • --lanechange.overtake-right β€” whether overtaking on the right on motorways is permitted. 🏁
  • --tls.all-off β€” switches off all traffic lights. 🚦
  • --tls.actuated.show-detectors β€” sets default visibility for actuation detectors. πŸ‘€
  • --tls.actuated.jam-threshold FLOAT β€” sets default jam-threshold parameter for all actuation detectors. πŸš—
  • --tls.actuated.detector-length FLOAT β€” sets default detector length parameter for all actuation detectors. πŸ“
  • --tls.delay_based.detector-range FLOAT β€” sets default range for detecting delayed vehicles. πŸ“‘
  • --tls.yellow.min-decel FLOAT β€” minimum deceleration when braking at yellow. 🟑
  • --railsignal-moving-block β€” let railsignals operate in moving-block mode by default. πŸš†
  • --railsignal.moving-block.default-classes STR[] β€” list vehicle classes that default to moving-block operations. πŸšƒ
  • --railsignal.moving-block.max-dist FLOAT β€” maximum signal distance above which zipper conflicts are ignored. πŸ“
  • --railsignal.max-block-length FLOAT β€” do not build blocks longer than FLOAT and issue a warning instead. ⚠️
  • --railsignal.default-classes STR[] β€” list vehicle classes that uses block-based insertion checks even when the network has no rail signals for them. 🚦
  • --time-to-impatience TIME β€” specify how long a vehicle may wait until impatience grows from 0 to 1, defaults to 300, non-positive values disable impatience growth. 😀
  • --default.departspeed STR β€” select default depart speed. πŸš—
  • --default.departlane STR β€” select default depart lane. πŸ›£οΈ
  • --default.action-step-length FLOAT β€” length of the default interval length between action points for the car-following and lane-change models (in seconds). If not specified, the simulation step-length is used per default. Vehicle- or VType-specific settings override the default. Must be a multiple of the simulation step-length. ⏱️
  • --default.carfollowmodel STR β€” select default car following model (Krauss, IDM, ...). πŸš—
  • --default.speeddev FLOAT β€” select default speed deviation. A negative value implies vClass specific defaults (0.1 for the default passenger class). 🎚️
  • --default.emergencydecel STR β€” select default emergencyDecel value among ('decel', 'default', FLOAT) which sets the value either to the same as the deceleration value, a vClass-class specific default or the given FLOAT in m/s^2. πŸ›‘
  • --overhead-wire.solver β€” use Kirchhoff's laws for solving overhead wire circuit. ⚑
  • --overhead-wire.recuperation β€” enable recuperation from the vehicle equipped with elecHybrid device into the overhead wire. πŸ”‹
  • --overhead-wire.substation-current-limits β€” enable current limits of traction substation during solving the overhead wire electrical circuit. ⚑
  • --emergencydecel.warning-threshold FLOAT β€” sets the fraction of emergency decel capability that must be used to trigger a warning. ⚠️
  • --parking.maneuver β€” whether parking simulation includes maneuvering time and associated lane blocking. πŸ…ΏοΈ
  • --use-stop-ended β€” override stop until times with stop ended times when given. ⏹️
  • --use-stop-started β€” override stop arrival times with stop started times when given. ▢️
  • --pedestrian.model STR β€” select among pedestrian models ['nonInteracting', 'striping', 'jupedsim', 'remote']. 🚢
  • --pedestrian.timegap-crossing FLOAT β€” minimal acceptable gap (in seconds) between two vehicles before starting to cross. 🚸
  • --pedestrian.striping.stripe-width FLOAT β€” width of parallel stripes for segmenting a sidewalk (meters) for use with model 'striping'. πŸ¦“
  • --pedestrian.striping.dawdling FLOAT β€” factor for random slow-downs [0,1] for use with model 'striping'. 🐒
  • --pedestrian.striping.mingap-to-vehicle FLOAT β€” minimal gap / safety buffer (in meters) from a pedestrian to another vehicle for use with model 'striping'. πŸ“
  • --pedestrian.striping.jamtime TIME β€” time in seconds after which pedestrians start squeezing through a jam when using model 'striping' (non-positive values disable squeezing). 🧍
  • --pedestrian.striping.jamtime.crossing TIME β€” time in seconds after which pedestrians start squeezing through a jam while on a pedestrian crossing when using model 'striping' (non-positive values disable squeezing). 🚸
  • --pedestrian.striping.jamtime.narrow TIME β€” time in seconds after which pedestrians start squeezing through a jam while on a narrow lane when using model 'striping'. 🧍
  • --pedestrian.striping.jamfactor FLOAT β€” factor for reducing speed of pedestrian in jammed state. 🐌
  • --pedestrian.striping.reserve-oncoming FLOAT β€” fraction of stripes to reserve for oncoming pedestrians. ↔️
  • --pedestrian.striping.reserve-oncoming.junctions FLOAT β€” what fraction of the stripes we're setting aside for the pedestrians coming the other way, on crossings and walkingareas. sharing is caring bestie πŸ’–
  • --pedestrian.striping.reserve-oncoming.max FLOAT β€” the maximum width, in m, that you'll reserve for those oncoming pedestrians.
  • --pedestrian.striping.legacy-departposlat β€” read departPosLat for walks the old-school legacy way, no cap.
  • --pedestrian.striping.walkingarea-detail INT β€” generate INT intermediate points so the lanes inside the walkingarea get smoothed out. it's giving ✨polished✨.
  • --ride.stop-tolerance FLOAT β€” the tolerance you apply when matching pedestrian and vehicle positions for boarding at individual stops. gotta line up perfectly πŸŽ€
  • --mapmatch.distance FLOAT β€” the farthest distance allowed when you're mapping input coordinates (like fromXY etc.) onto the road network. miss by more than this and it's a no πŸ’€
  • --mapmatch.junctions β€” match positions to junctions instead of edges, periodt.
  • --mapmatch.taz β€” match positions to taz instead of edges. girlboss behaviour 🫢
  • --weights.turnaround-penalty FLOAT β€” slap this time penalty on whenever routing costs get computed for turnaround internal lanes.
  • --weights.reversal-penalty FLOAT β€” same energy but for the routing costs of train reversal. heads up: negative values disable reversal entirely, so be careful what you wish for 😭
  • --persontrip.walk-opposite-factor FLOAT β€” use FLOAT as a factor on walking speed whenever someone's walking against the direction of vehicle traffic.

✨ Routing Options ✨

okay this is the part where the routes get chosen and honestly it's the main character of the whole simulation πŸ’…

  • --routing-algorithm STR β€” pick your fighter from 'dijkstra', 'astar', 'CH', 'CHWrapper'.
  • --weights.random-factor FLOAT β€” edge weights for routing get randomly disturbed, with the factor drawn uniformly from [1,FLOAT). yes it's chaotic, that's the point 🌈
  • --weights.random-factor.dynamic β€” when you're using --weights.random-factor, let that randomness vary over time.
  • --weights.minor-penalty FLOAT β€” apply this time penalty when computing the minimum routing costs for minor-link internal lanes.
  • --weights.tls-penalty FLOAT β€” scaled travel time penalties based on the green split, applied when computing minimum routing costs for internal lanes at traffic lights. traffic lights get their own lil weighting, iconic 🚦
  • --weights.priority-factor FLOAT β€” consider edge priorities on top of travel times, weighted by this factor.
  • --weights.separate-turns FLOAT β€” distinguish travel time by turn direction, and shift a fraction of the estimated time loss ahead of the intersection onto the internal edges. it's giving nuance ✨
  • --astar.all-distances FILE β€” initialize the astar lookup table from this given file (generated by marouter --all-pairs-output).
  • --astar.landmark-distances FILE β€” initialize the astar ALT-variant lookup table from this given file.
  • --persontrip.walkfactor FLOAT β€” use FLOAT as a factor on pedestrian maximum speed during intermodal routing.
  • --persontrip.transfer.car-walk STR[] β€” where are mode changes from car to walking even allowed? possible values: 'parkingAreas', 'ptStops', 'allJunctions' and combinations of them.
  • --persontrip.transfer.taxi-walk STR[] β€” where taxis can drop off customers ('allJunctions', 'ptStops', 'parkingAreas').
  • --persontrip.transfer.walk-taxi STR[] β€” where taxis can pick up customers ('allJunctions', 'ptStops', 'parkingAreas').
  • --persontrip.default.group STR β€” when you set this, trips going between the same origin and destination will share a taxi by default. carpool core πŸš•
  • --persontrip.taxi.waiting-time TIME β€” the estimated time it takes for a taxi pickup.
  • --persontrip.ride-public-line β€” only use the intended public transport line, not any alternative line that happens to stop at the destination. loyalty πŸ’…
  • --railway.max-train-length FLOAT β€” use FLOAT as the maximum train length when initializing the railway router.
  • --replay-rerouting β€” replay the exact rerouting sequence from vehroute-output. a little reroute rewind, we love to see it πŸ”
  • --device.rerouting.probability FLOAT β€” the probability that a vehicle has a 'rerouting' device.
  • --device.rerouting.explicit STR[] β€” assign a 'rerouting' device to named vehicles.
  • --device.rerouting.deterministic β€” the 'rerouting' devices get set deterministic using a fraction of 1000.
  • --device.rerouting.period TIME β€” the period with which the vehicle shall be rerouted.
  • --device.rerouting.pre-period TIME β€” the rerouting period before depart.
  • --device.rerouting.adaptation-weight FLOAT β€” the weight of prior edge weights for the exponential moving average.
  • --device.rerouting.adaptation-steps INT β€” the number of steps for the moving average weight of prior edge weights.
  • --device.rerouting.adaptation-interval TIME β€” the interval for updating the edge weights.
  • --device.rerouting.threshold.factor FLOAT β€” only reroute if the new route is faster than the current route by the given factor.
  • --device.rerouting.threshold.constant TIME β€” only reroute if the new route is faster than the current route by the given TIME.
  • --device.rerouting.with-taz β€” use zones (districts) as routing start and endpoints.
  • --device.rerouting.mode STR β€” set routing flags (8 ignores temporary blockages).
  • --device.rerouting.init-with-loaded-weights β€” use the weight files you passed with --weight-files for initializing edge weights.
  • --device.rerouting.threads INT β€” the number of parallel execution threads used for rerouting. multitasking queen πŸ‘‘
  • --device.rerouting.synchronize β€” let rerouting happen at the same time for all vehicles.
  • --device.rerouting.railsignal β€” allow rerouting triggered by rail signals.
  • --device.rerouting.bike-speeds β€” compute separate average speeds for bicycles. bikes deserve their own numbers fr fr 🚲
  • --device.rerouting.output FILE β€” save the adapting weights to FILE.
  • --person-device.rerouting.probability FLOAT β€” the probability that a person has a 'rerouting' device.
  • --person-device.rerouting.explicit STR[] β€” assign a 'rerouting' device to named persons.
  • --person-device.rerouting.deterministic β€” the 'rerouting' devices get set deterministic using a fraction of 1000.
  • --person-device.rerouting.period TIME β€” the period with which the person shall be rerouted.
  • --person-device.rerouting.mode STR β€” set routing flags (8 ignores temporary blockages).
  • --person-device.rerouting.scope STR β€” which part of the person plan is to be replaced (stage, sequence, or trip).

πŸ“‹ Report Options πŸ“‹

the "tell me everything" section, and honestly? we're nosy, we want the tea β˜•

  • -v, --verbose β€” switches to verbose output.
  • --print-options β€” prints option values before processing.
  • -?, --help β€” prints this screen, or selected topics.
  • -V, --version β€” prints the current version.
  • -X, --xml-validation STR β€” set the schema validation scheme for XML inputs ("never", "local", "auto" or "always").
  • --xml-validation.net STR β€” set the schema validation scheme for SUMO network inputs ("never", "local", "auto" or "always").
  • --xml-validation.routes STR β€” set the schema validation scheme for SUMO route inputs ("never", "local", "auto" or "always").
  • -W, --no-warnings β€” disables output of warnings. ignorance is bliss I guess πŸ™ˆ
  • --aggregate-warnings INT β€” aggregate warnings of the same type whenever more than INT of them occur.
  • -l, --log FILE β€” writes all messages to FILE (and yes, this implies verbose).
  • --message-log FILE β€” writes all non-error messages to FILE (implies verbose too).
  • --error-log FILE β€” writes all warnings and errors to FILE.
  • --log.timestamps β€” writes timestamps in front of all messages.
  • --log.processid β€” writes the process ID in front of all messages.
  • --language STR β€” language to use in messages.
  • --duration-log.disable β€” disable performance reports for individual simulation steps.
  • -t, --duration-log.statistics β€” enable statistics on vehicle trips. numbers girlies rise πŸ™Œ
  • --no-step-log β€” disable console output of the current simulation step.
  • --step-log.period INT β€” number of simulation steps between step-log outputs.

🌫️ Emissions Options 🌫️

vroom vroom but make it measurable 🌎

  • --emissions.volumetric-fuel β€” return fuel consumption values in the (legacy) unit l instead of mg.
  • --phemlight-path FILE β€” determines where to load PHEMlight definitions from.
  • --phemlight-year INT β€” enable fleet age modelling with the given reference year in PHEMlight5.
  • --phemlight-temperature FLOAT β€” set the ambient temperature to correct NOx emissions in PHEMlight5.
  • --device.emissions.probability FLOAT β€” the probability for a vehicle to have an 'emissions' device.
  • --device.emissions.explicit STR[] β€” assign an 'emissions' device to named vehicles.
  • --device.emissions.deterministic β€” the 'emissions' devices are set deterministic using a fraction of 1000.
  • --device.emissions.begin STR β€” recording begin time for emission-data.
  • --device.emissions.period STR β€” recording period for emission-output.

πŸ“‘ Communication Options πŸ“‘

bluetooth device girlies, this one's for you πŸ¦‹

  • --device.btreceiver.probability FLOAT β€” the probability for a vehicle to have a 'btreceiver' device.
  • --device.btreceiver.explicit STR[] β€” assign a 'btreceiver' device to named vehicles.
  • --device.btreceiver.deterministic β€” the 'btreceiver' devices are set deterministic using a fraction of 1000.
  • --device.btreceiver.range FLOAT β€” the range of the bt receiver.
  • --device.btreceiver.all-recognitions β€” whether all recognition points shall be written.
  • --device.btreceiver.offtime FLOAT β€” the offtime used for calculating detection probability (in seconds).
  • --device.btsender.probability FLOAT β€” the probability for a vehicle to have a 'btsender' device.
  • --device.btsender.explicit STR[] β€” assign a 'btsender' device to named vehicles.
  • --device.btsender.deterministic β€” the 'btsender' devices are set deterministic using a fraction of 1000.
  • --person-device.btsender.probability FLOAT β€” the probability for a person to have a 'btsender' device.
  • --person-device.btsender.explicit STR[] β€” assign a 'btsender' device to named persons.
  • --person-device.btsender.deterministic β€” the 'btsender' devices are set deterministic using a fraction of 1000.
  • --person-device.btreceiver.probability FLOAT β€” the probability for a person to have a 'btreceiver' device.
  • --person-device.btreceiver.explicit STR[] β€” assign a 'btreceiver' device to named persons.
  • --person-device.btreceiver.deterministic β€” the 'btreceiver' devices are set deterministic using a fraction of 1000.

πŸ”‹ Battery Options πŸ”‹

  • --device.stationfinder.probability FLOAT β€” the probability for a vehicle to have a 'stationfinder' device.
  • --device.stationfinder.explicit STR[] β€” hand out a stationfinder device to the vehicles you name, bestie, you pick 'em πŸ’–
  • --device.stationfinder.deterministic β€” makes the stationfinder devices deterministic by using a fraction of 1000 ✨
  • --device.stationfinder.rescueTime TIME β€” how long to wait for a rescue vehicle at the roadside when the battery's dead πŸ’€
  • --device.stationfinder.rescueAction STR β€” what to do with a vehicle that has to stop because the battery's low: [none, remove, tow] πŸš—
  • --device.stationfinder.reserveFactor FLOAT β€” scale the battery need by this factor so unexpected traffic situations don't catch you off guard 🫢
  • --device.stationfinder.emptyThreshold FLOAT β€” the battery percentage at which it goes into rescue mode 😭
  • --device.stationfinder.radius TIME β€” search radius, in travel time seconds ⏱️
  • --device.stationfinder.maxEuclideanDistance FLOAT β€” Euclidean search distance in meters (yes queen, a negative value disables that restriction entirely) πŸ“
  • --device.stationfinder.repeat TIME β€” when to trigger a brand new search if no station has been found πŸŽ€
  • --device.stationfinder.maxChargePower FLOAT β€” the max charging speed of the vehicle battery ⚑
  • --device.stationfinder.chargeType STR β€” type of energy transfer πŸ”Œ
  • --device.stationfinder.waitForCharge TIME β€” after this waiting time, the vehicle goes looking for a new station when the first one is blocked πŸ™ˆ
  • --device.stationfinder.minOpportunityDuration TIME β€” only stops predicted to last at least this threshold long get considered for opportunistic charging πŸ‘‘
  • --device.stationfinder.saturatedChargeLevel FLOAT β€” the target state of charge after which the vehicle stops charging 🌸
  • --device.stationfinder.needToChargeLevel FLOAT β€” the state of charge at which the vehicle starts searching for charging stations πŸ”
  • --device.stationfinder.opportunisticChargeLevel FLOAT β€” the state of charge below which the vehicle may hunt for charging opportunities along its planned stops πŸ¦‹
  • --device.stationfinder.replacePlannedStop FLOAT β€” the share of stopping time of the next independently planned stop that gets used for charging instead πŸ’…
  • --device.stationfinder.maxDistanceToReplacedStop FLOAT β€” max distance in meters from the original stop that can be replaced by the charging stop πŸ“
  • --device.stationfinder.chargingStrategy STR β€” set a charging strategy to alter time and charging load, from the set: [none, balanced, latest] 🧚
  • --device.stationfinder.checkEnergyForRoute β€” only search for charging stations if the battery charge isn't estimated as sufficient to complete the current route πŸ”₯
  • --device.battery.probability FLOAT β€” the probability that a vehicle has a battery device πŸ“
  • --device.battery.explicit STR[] β€” assign a battery device to named vehicles ✨
  • --device.battery.deterministic β€” the battery devices get set deterministic using a fraction of 1000 πŸ’«
  • --device.battery.track-fuel β€” track fuel consumption for non-electric vehicles β›½

🌈 Example Device Options 🌈

  • --device.example.probability FLOAT β€” the probability for a vehicle to have a example device πŸŽ€
  • --device.example.explicit STR[] β€” assign a example device to named vehicles πŸ’–
  • --device.example.deterministic β€” the example devices are set deterministic using a fraction of 1000 ✨
  • --device.example.parameter FLOAT β€” an exemplary parameter which can be used by every single instance of the example device πŸ‘‘

πŸ’œ SSM Device Options πŸ’œ

  • --device.ssm.probability FLOAT β€” the probability for a vehicle to have a ssm device πŸ¦‹
  • --device.ssm.explicit STR[] β€” assign a ssm device to named vehicles 🌸
  • --device.ssm.deterministic β€” the ssm devices are set deterministic using a fraction of 1000 ⭐
  • --device.ssm.measures STR β€” says which measures get logged (as a space- or comma-separated sequence of IDs in ('TTC', 'DRAC', 'PET', 'PPET', 'MDRAC')) πŸ“Š
  • --device.ssm.thresholds STR β€” space- or comma-separated thresholds that correspond to the specified measures (peep the documentation and watch the order!). Only events that exceed the thresholds get logged ⚠️
  • --device.ssm.trajectories β€” says whether trajectories get logged (if false, only the extremal values and times are reported) 🎯
  • --device.ssm.range FLOAT β€” the detection range in meters. For vehicles below this distance from the equipped vehicle, SSM values are traced πŸ“
  • --device.ssm.extratime FLOAT β€” the time in seconds to be logged after a conflict is over. Required >0 if PET is to be calculated for crossing conflicts πŸ‘€
  • --device.ssm.mdrac.prt FLOAT β€” the perception reaction time for MDRAC computation 🧠
  • --device.ssm.file STR β€” give a global default filename for the SSM output πŸ—‚οΈ
  • --device.ssm.geo β€” whether to use coordinates of the original reference system in the output πŸ—ΊοΈ
  • --device.ssm.write-positions β€” whether to write positions (coordinates) for each timestep πŸ“
  • --device.ssm.write-lane-positions β€” whether to write lanes and their positions for each timestep πŸ›£οΈ
  • --device.ssm.write-na β€” whether to write conflict outputs with no data as NA values or just skip it πŸ’€
  • --device.ssm.exclude-conflict-types STR β€” which conflicts get excluded from the log, based on the conflict type they've been classified as (a combination of values in 'ego', 'foe' , '', any numerical valid conflict type code). An empty value will log all of them, and 'ego'/'foe' refer to a certain conflict type subset πŸ™ˆ

πŸŽ€ ToC Device Options πŸŽ€

  • --device.toc.probability FLOAT β€” the probability for a vehicle to have a toc device πŸ’–
  • --device.toc.explicit STR[] β€” assign a toc device to named vehicles ✨
  • --device.toc.deterministic β€” the toc devices are set deterministic using a fraction of 1000 🌟
  • --device.toc.manualType STR β€” vehicle type for the manual driving regime πŸš™
  • --device.toc.automatedType STR β€” vehicle type for the automated driving regime πŸ€–
  • --device.toc.responseTime FLOAT β€” average response time a driver needs to take back control ⏱️
  • --device.toc.recoveryRate FLOAT β€” recovery rate for the driver's awareness after a ToC 🌱
  • --device.toc.lcAbstinence FLOAT β€” the attention level below which a driver restrains from performing lane changes (value in [0,1]) 🚫
  • --device.toc.initialAwareness FLOAT β€” the average awareness a driver has initially after a ToC (value in [0,1]) 🧠
  • --device.toc.mrmDecel FLOAT β€” the deceleration rate applied during a 'minimum risk maneuver' πŸ›‘
  • --device.toc.dynamicToCThreshold FLOAT β€” the time the vehicle requires to have ahead of it to continue in automated mode. The default value of 0 means no dynamic triggering of ToCs πŸ‘‘
  • --device.toc.dynamicMRMProbability FLOAT β€” the probability that a dynamically triggered TOR is not answered in time βŒ›
  • --device.toc.mrmKeepRight β€” if true, the vehicle tries to change to the right during an MRM ➑️
  • --device.toc.mrmSafeSpot STR β€” if set, the vehicle tries to reach the given named stopping place during an MRM πŸ…ΏοΈ
  • --device.toc.mrmSafeSpotDuration FLOAT β€” how long the vehicle stays at the safe spot after an MRM πŸ•
  • --device.toc.maxPreparationAccel FLOAT β€” the maximal acceleration that may be applied during the ToC preparation phase πŸš€
  • --device.toc.ogNewTimeHeadway FLOAT β€” timegap for the ToC preparation phase ⏳
  • --device.toc.ogNewSpaceHeadway FLOAT β€” extra spacing for the ToC preparation phase πŸ“
  • --device.toc.ogMaxDecel FLOAT β€” the maximal deceleration applied for establishing the increased gap in the ToC preparation phase πŸ›‘
  • --device.toc.ogChangeRate FLOAT β€” rate of adaptation towards the increased headway during ToC preparation πŸ”„
  • --device.toc.useColorScheme β€” whether a coloring scheme shall be applied to indicate the different ToC stages 🎨
  • --device.toc.file STR β€” switches on output by specifying an output filename πŸ“„

🧠 Driver State Device Options 🧠

  • --device.driverstate.probability FLOAT β€” the probability for a vehicle to have a driverstate device πŸ’­
  • --device.driverstate.explicit STR[] β€” assign a driverstate device to named vehicles πŸ’–
  • --device.driverstate.deterministic β€” the driverstate devices are set deterministic using a fraction of 1000 ✨
  • --device.driverstate.initialAwareness FLOAT β€” the initial value assigned to the driver's awareness 🌱
  • --device.driverstate.errorTimeScaleCoefficient FLOAT β€” the time scale for the error process ⏱️
  • --device.driverstate.errorNoiseIntensityCoefficient FLOAT β€” the noise intensity driving the error process πŸ“ˆ
  • --device.driverstate.speedDifferenceErrorCoefficient FLOAT β€” the general scaling coefficient for applying the error to the perceived speed difference (the error also scales with distance) πŸš—
  • --device.driverstate.headwayErrorCoefficient FLOAT β€” the general scaling coefficient for applying the error to the perceived distance (the error also scales with distance) πŸ“
  • --device.driverstate.freeSpeedErrorCoefficient FLOAT β€” the general scaling coefficient for applying the error to the vehicle's own speed when driving without a leader (the error also scales with own speed) 🏎️
  • --device.driverstate.speedDifferenceChangePerceptionThreshold FLOAT β€” the base threshold for recognizing changes in the speed difference (the threshold also scales with distance) πŸ‘€
  • --device.driverstate.headwayChangePerceptionThreshold FLOAT β€” the base threshold for recognizing changes in the headway (the threshold also scales with distance) πŸ”
  • --device.driverstate.minAwareness FLOAT β€” the minimal admissible value for the driver's awareness 🫢
  • --device.driverstate.maximalReactionTime FLOAT β€” the maximal reaction time (~action step length) induced by a decreased awareness level (it's reached for awareness=minAwareness) βŒ›

🚨 Bluelight Device Options 🚨

  • --device.bluelight.probability FLOAT β€” the probability for a vehicle to have a bluelight device πŸš”
  • --device.bluelight.explicit STR[] β€” assign a bluelight device to named vehicles ✨
  • --device.bluelight.deterministic β€” the bluelight devices are set deterministic using a fraction of 1000 πŸ’«
  • --device.bluelight.reactiondist FLOAT β€” set the distance at which other drivers react to the blue light and siren sound πŸ”Š
  • --device.bluelight.mingapfactor FLOAT β€” reduce the minGap for reacting vehicles by the given factor πŸ“‰

FCD Device Options: πŸ’–

  • --device.fcd.probability FLOAT β€” The probability for a vehicle to have a 'fcd' device.
  • --device.fcd.explicit STR[] β€” Assign a 'fcd' device to named vehicles.
  • --device.fcd.deterministic β€” The 'fcd' devices are set deterministic using a fraction of 1000.
  • --device.fcd.begin STR β€” Recording begin time for FCD-data.
  • --device.fcd.period STR β€” Recording period for FCD-data.
  • --device.fcd.radius FLOAT β€” Record objects in a radius around equipped vehicles.
  • --person-device.fcd.probability FLOAT β€” The probability for a person to have a 'fcd' device.
  • --person-device.fcd.explicit STR[] β€” Assign a 'fcd' device to named persons.
  • --person-device.fcd.deterministic β€” The 'fcd' devices are set deterministic using a fraction of 1000.
  • --person-device.fcd.period STR β€” Recording period for FCD-data.

ElecHybrid Device Options: ⚑

  • --device.elechybrid.probability FLOAT β€” The probability for a vehicle to have a 'elechybrid' device.
  • --device.elechybrid.explicit STR[] β€” Assign a 'elechybrid' device to named vehicles.
  • --device.elechybrid.deterministic β€” The 'elechybrid' devices are set deterministic using a fraction of 1000.

Taxi Device Options: πŸš•

  • --device.taxi.probability FLOAT β€” The probability for a vehicle to have a 'taxi' device.
  • --device.taxi.explicit STR[] β€” Assign a 'taxi' device to named vehicles.
  • --device.taxi.deterministic β€” The 'taxi' devices are set deterministic using a fraction of 1000.
  • --device.taxi.dispatch-algorithm STR β€” The dispatch algorithm [greedy|greedyClosest|greedyShared|routeExtension|traci].
  • --device.taxi.dispatch-algorithm.output FILE β€” Write information from the dispatch algorithm to FILE.
  • --device.taxi.dispatch-algorithm.params STR β€” Load dispatch algorithm parameters in format KEY1:VALUE1[,KEY2:VALUE].
  • --device.taxi.dispatch-period TIME β€” The period between successive calls to the dispatcher.
  • --device.taxi.dispatch-keep-unreachable TIME β€” The time before aborting unreachable reservations.
  • --device.taxi.idle-algorithm STR β€” The behavior of idle taxis [stop|randomCircling|taxistand].
  • --device.taxi.idle-algorithm.output FILE β€” Write information from the idling algorithm to FILE.
  • --device.taxi.vclasses STR[] β€” Network permissions that can be accessed by taxis.

GLOSA Device Options: 🚦

  • --device.glosa.probability FLOAT β€” The probability for a vehicle to have a 'glosa' device.
  • --device.glosa.explicit STR[] β€” Assign a 'glosa' device to named vehicles.
  • --device.glosa.deterministic β€” The 'glosa' devices are set deterministic using a fraction of 1000.
  • --device.glosa.range FLOAT β€” The communication range to the traffic light.
  • --device.glosa.max-speedfactor FLOAT β€” The maximum speed factor when approaching a green light.
  • --device.glosa.min-speed FLOAT β€” Minimum speed when coasting towards a red light.
  • --device.glosa.add-switchtime FLOAT β€” Additional time the vehicle shall need to reach the intersection after the signal turns green.
  • --device.glosa.use-queue β€” Use queue in front of the tls for GLOSA calculation.
  • --device.glosa.override-safety β€” Override safety features - ignore the current light state, always follow GLOSA's predicted state.
  • --device.glosa.ignore-cfmodel β€” Vehicles follow a perfect speed calculation - ignore speed calculations from the CF model if not safety critical.

Tripinfo Device Options: πŸ“

  • --device.tripinfo.probability FLOAT β€” The probability for a vehicle to have a 'tripinfo' device.
  • --device.tripinfo.explicit STR[] β€” Assign a 'tripinfo' device to named vehicles.
  • --device.tripinfo.deterministic β€” The 'tripinfo' devices are set deterministic using a fraction of 1000.

Vehroutes Device Options: πŸ›£οΈ

  • --device.vehroute.probability FLOAT β€” The probability for a vehicle to have a 'vehroute' device.
  • --device.vehroute.explicit STR[] β€” Assign a 'vehroute' device to named vehicles.
  • --device.vehroute.deterministic β€” The 'vehroute' devices are set deterministic using a fraction of 1000.

Friction Device Options: 🧊

  • --device.friction.probability FLOAT β€” The probability for a vehicle to have a 'friction' device.
  • --device.friction.explicit STR[] β€” Assign a 'friction' device to named vehicles.
  • --device.friction.deterministic β€” The 'friction' devices are set deterministic using a fraction of 1000.
  • --device.friction.stdDev FLOAT β€” The measurement noise parameter which can be applied to the friction device.
  • --device.friction.offset FLOAT β€” The measurement offset parameter which can be applied to the friction device -> e.g. to force false measurements.

FCD Replay Device Options: πŸ”

  • --device.fcd-replay.probability FLOAT β€” The probability for a vehicle to have a 'fcd-replay' device.
  • --device.fcd-replay.explicit STR[] β€” Assign a 'fcd-replay' device to named vehicles.
  • --device.fcd-replay.deterministic β€” The 'fcd-replay' devices are set deterministic using a fraction of 1000.
  • --device.fcd-replay.file FILE β€” FCD file to read.

TraCI Server Options: πŸ–₯️

  • --remote-port INT β€” Enables TraCI Server if set.
  • --num-clients INT β€” Expected number of connecting clients.

Mesoscopic Options: πŸ”¬

  • --mesosim β€” Enables mesoscopic simulation.
  • --meso-edgelength FLOAT β€” Length of an edge segment in mesoscopic simulation.
  • --meso-tauff TIME β€” Factor for calculating the net free-free headway time.
  • --meso-taufj TIME β€” Factor for calculating the net free-jam headway time.
  • --meso-taujf TIME β€” Factor for calculating the jam-free headway time.
  • --meso-taujj TIME β€” Factor for calculating the jam-jam headway time.
  • --meso-jam-threshold FLOAT β€” Minimum percentage of occupied space to consider a segment jammed. A negative argument causes thresholds to be computed based on edge speed and tauff (default).
  • --meso-multi-queue β€” Enable multiple queues at edge ends.
  • --meso-lane-queue β€” Enable separate queues for every lane.
  • --meso-ignore-lanes-by-vclass STR[] β€” Do not build queues (or reduce capacity) for lanes allowing only the given vclasses.
  • --meso-junction-control β€” Enable mesoscopic traffic light and priority junction handling.
  • --meso-junction-control.limited β€” Enable mesoscopic traffic light and priority junction handling for saturated links. This prevents faulty traffic lights from hindering flow in low-traffic situations.
  • --meso-tls-penalty FLOAT β€” Apply scaled travel time penalties when driving across tls controlled junctions based on green split instead of checking actual phases.
  • --meso-tls-flow-penalty FLOAT β€” Apply scaled headway penalties when driving across tls controlled junctions based on green split instead of checking actual phases.
  • --meso-minor-penalty TIME β€” Apply fixed time penalty when driving across a minor link. When using --meso-junction-control.limited, the penalty is not applied whenever limited control is active.
  • --meso-overtaking β€” Enable mesoscopic overtaking.
  • --meso-recheck TIME β€” Time interval for rechecking insertion into the next segment after failure.
  • --meso-interpolate-pos β€” Enable mesoscopic position interpolation.

Random Number Options: 🎲

  • --random β€” Initialises the random number generator with the current system time.
  • --seed INT β€” Initialises the random number generator with the given value.
  • --thread-rngs INT β€” Number of pre-allocated random number generators to ensure repeatable multi-threaded simulations (should be at least the number of threads for repeatable simulations).

GUI Only Options: 🎨

  • -g, --gui-settings-file FILE β€” Load visualisation settings from FILE.
  • -Q, --quit-on-end β€” Quits the GUI when the simulation stops.
  • -G, --game β€” Start the GUI in gaming mode.
  • --game.mode STR β€” Select the game type ('tls', 'drt').
  • -S, --start β€” Start the simulation after loading.
  • -d, --delay FLOAT β€” Use FLOAT in ms as delay between simulation steps.
  • -B, --breakpoints STR[] β€” Use TIME[] as times when the simulation should halt.
  • -m, --edgedata-files FILE β€” Load edge/lane weights for visualization from FILE.
  • -N, --alternative-net-file FILE β€” Load a secondary road network for abstract visualization from FILE.
  • --selection-file FILE β€” Load pre-selected elements from FILE.
  • -D, --demo β€” Restart the simulation after ending (demo mode).
  • -T, --disable-textures β€” Do not load background pictures.
  • --registry-viewport β€” Load current viewport from registry.
  • --window-size STR[] β€” Create initial window with the given x,y size.
  • --window-pos STR[] β€” Create initial window at the given x,y position.
  • --tracker-interval TIME β€” The aggregation period for value tracker windows.
  • --osg-view β€” Start with an OpenSceneGraph view instead of the regular 2D view.
  • --gui-testing β€” Enable overlay for screen recognition.
  • --gui-testing-debug β€” Enable output messages during GUI-Testing.
  • --gui-testing.setting-output FILE β€” Save gui settings in the given settings output file.

EXAMPLES πŸŽ€

Here are some examples, bestie:

sumo -b 0 -e 1000 -n net.xml -r routes.xml

start a simulation from time 0 to 1000 with given net and routes

sumo -c munich_config.cfg

start with a configuration file

sumo --help

print help


and that's the tea for now, but we're not done yet πŸ’…βœ¨

πŸ› REPORTING BUGS πŸ’–

okay bestie, found something cursed? it happens to everyone, no shame. tell the maintainers! πŸ’…

fr fr, the devs wanna hear about it. that's how the slay continues ✨


🌈 the build tea β˜•

this is how the binary you're holding was compiled, and it's giving very specific:

Build features: Linux-6.8.0-139-generic x86_64 GNU 15.3.0 None
FMI Proj GUI Intl SWIG Eigen GDAL FFmpeg OSG GL2PS
Copyright (C) 2001-2026 German Aerospace Center (DLR) and others;
https://sumo.dlr.de

FMI, Proj, GUI, Intl, SWIG, Eigen, GDAL, FFmpeg, OSG, GL2PS β€” that's the whole roster, all present and accounted for πŸ‘‘


Eclipse SUMO sumo 1.27.1 is part of SUMO. periodt.

this program and the stuff that ships with it? made available under the terms of the Eclipse Public License v2.0 that comes with this distribution β€” you can also grab it right here:

<https://www.eclipse.org/legal/epl-v20.html>

and ALSO 🌸, when the conditions for that availability set out in the Eclipse Public License 2.0 are satisfied, this program may be made available under these Secondary Licenses: the GNU General Public License, version 2 or later, which lives at

<https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html>

so the SPDX line is exactly this, no notes:

SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
🫢 two licenses, one absolute icon. do not lose this information, bestie, it's literally the receipts.

and that's the whole page, we ate and left no crumbs πŸ“ this one's Eclipse SUMO sumo 1.27.1, from August 2026, and you'll find it filed under ECLIPSE(1) ✨ mwah πŸ’–

πŸ“¦ where this page comes from